Description

Course Focus
===========
Algorithms and methods in classical artificial intelligence

Course motivation
==============
This course is motivated by the need to provide computer science students with a thorough background in classical artificial intelligence. Classical artificial intelligence techniques such as efficient brute force search, heuristic search, constraint satisfaction, intelligent game design, logical reasoning and automatic planning play a critical role in the design and development of intelligent computer systems. This is a key course for students who want to work in artificial and computational intelligence.

Target Audience:
=============
The target audience for this course is graduate students and researchers in computer science.

Pre-Requisites:
===========
1. Undergraduate level data structures and algorithms course
2. Programming in C++ or any high level language

Course Objectives
==============
At the end of this course, successful candidates will:
- Know about the state of the art algorithms and theory in Artificial Intelligence
- Understand ‘agent models’ of Artificial Intelligence
- Be able to apply concepts of Artificial Intelligence in real life development projects

Course Schedule
=============
3 Credit Hours, 16 weeks

Course Design and Contents:
======================
- Basics (1 week): Introduction to AI, its scope and focus. Intelligent agent model of AI.
- Uninformed Search Techniques (1 week): Search problems in Computer Science, Uninformed Search (Breadth First Search, Depth First Search etc.,), Refinements and advancements in uninformed search.
- Heuristic Search (1 week) : Heuristics, Greedy Best First Search, A* search with Memory bounded heuristic search
- Local Search Techniques (1 week): Hill climbing, simulated annealing
- Constrained Satisfaction Problems (1 week): Introduction to constrained satisfaction problems (CSPs) in computer science, solving CSPs through search
- Intelligent Game Programming (1 weeks): Decision making in games, MIN-MAX, Alpha beta pruning, intelligent game design
- Logical Agents and Propositional Logic (2 weeks): Introduction to logic agents, propositional logic, reasoning with proposition logic and inference
- First Order Logic (2 weeks): First Order Logic, Inference in First Order Logic, Use of Prolog for reasoning
- Probabilistic Reasoning (2 weeks)
- Automatic Planning and Scheduling (1 weeks): Robotic Motion planning and scheduling
- Introduction to learning from data (1 week)
- Reinforcement Learning (2 weeks)

Course Books/References:
=====================
• Artificial Intelligence: A modern approach, 3rd Edition, Stuart Russell and Peter Norvig, Prentice Hall 2010.

• PROLOG programming for Artificial Intelligence, 3rd Edition, Ivan Bratko, Pearson Education Press.

• Latest research papers

General Information

Lecture Location
B106
Timings
Mon,Tue,Thurs,Fri: 8:15 - 9:30

Announcements

Uploading projects and presentations
8/21/16 6:47 PM

This is a reminder to upload your projects and project presentations as some of you havent done so.

FYI: There is no 16-Clue Sudoku: Solving the Sudoku Minimum Number of Clues Problem
8/21/16 6:13 PM

So what is the hardest solvable Sudoku puzzle out there:

https://arxiv.org/abs/1201.0749

-Fayyaz

Final Projects Upload
8/18/16 2:25 PM

Please upload your final project files here.

Thank you.

Complete Sessional Grades
8/18/16 11:52 AM

Here are your overall grades *out of 50*:

Adiba34
Amina38
Arslan40
Bismillah45
Javed44
Kanza38
Umar28
Uzair48


Here is how these are computed:

Total Marks: 50

Assignments: 20 marks

Total Assignments given: 5, Top 4 assignment scores are considered for each student. The two top scoring assignments receive a weight of 6 each and the remaining two a score of 4 each (

Mid term exam: 10 (Rescaled from 25)

Project Marks: 15

Quizzes: 3 Marks

Class Participation: 2 Marks

Bonus: Maximum bonus of 2 marks was given

Mid Term Grades
8/17/16 5:09 PM

Here are your mid term grades (out of 25):

Adiba18.5
Amina14
Arslan13.5
Bismillah18
Javed19
Kanza13
Umar12.5
Uzair22.5

Assignment 4 Tasks Scores (MDP and Reinforcement Learning)
8/17/16 12:21 AM

Arslan: 9

Bismillah: 9

Kanza: 9

Uzair: 10

Amina: 0 (not submitted)

Adiba: 0 (not submitted)

Umer: 0 (not submitted)

Assignment 3 Scores
8/17/16 12:06 AM

Uzair and Bismillah: 10

The objective function needed to be 1+(sin(2*pi*x)**2). Code works with changed function. As for the Rastrigin function you could have simply used a single function for *minimization*.

Javed and Arslan: 10

The objective function needed to be 1+(sin(2*pi*x)**2). Code works with this function. As for the Rastrigin function, you needed to minimize not maximize!

Kanza, Amina and Adiba: 10-2 = 8 (Late Submission).

Assignment 2B Scores
8/16/16 11:06 PM

Adiba: 0 copied code https://webstersprodigy.net/2009/10/31/8-queens-problem-hill-climbing-python/
Umar: 6 (incorrect implementation, the number of attacking queens should be non-increasing)
Amina: 6 (unclear logic, the number of attacking queens should be non-increasing)
Javed: 8 (potential infinite loop, unecessarily long code)
Bismillah: 10
Uzair: 10
Arslan: 0 (copied https://webstersprodigy.net/2009/10/31/8-queens-problem-hill-climbing-python/ )
Kanza: 6 (unclear hill climbing logic)

Staff Office Hours
NameOffice Hours
Dr. Fayyaz ul Amir Afsar Minhas
When?
Where?

Homework

Homework Solutions

General Resources