CS 2710  Foundations of Artificial Intelligence

Time:  TH 1:00-2:20pm,  5129 Sennott Square

Instructor:  Milos Hauskrecht
5329 Sennott Square, x4-8845
e-mail: milos@cs.pitt.edu
office hours: MW 2:00-3:00pm
TA: Tomas Singliar
5802 Sennott Square, x4-8832
e-mail: tomas@cs.pitt.edu
office hours: T 2:20-3:50, W 3-4:30

Announcements (check often)

Lectures  Topic(s)  Assignments
August 31 Administrivia and course overview.

Readings: RN - chapters 1, 2.

September 2 Problem solving by searching.

Readings: RN - chapters 3.1. - 3.4.

September 7 Uninformed search.

Readings: RN - chapters 3.1. - 3.4.

Homework assignment 1
Programs for HW-1
Assignment 1 solution
Solution programs for HW-1
September 9 Uninformed search (cont.) Informed search.

Readings: RN - Chapters 3 & 4.1.

September 14 Informed search. Constraint satisfaction.

Readings: RN - Chapters 4.2 & Chapters 5.1-2.

Homework assignment 2
Programs for HW-2
Assignment 2 solution
Solution programs for HW-2
September 16 Constraint satisfaction. Combinatorial optimization

Readings: Chapters 5.1-2.

September 21 Optimization search

Readings: Chapters 4.3.

Homework assignment 3
Programs for HW-3
Assignment 3 solution
Solution programs for HW-3
September 23 Adversarial Search

Readings: Chapter 6.

September 28 Propositional logic

Readings: Chapter 7.

Homework assignment 4
Programs for HW-4
Assignment 4 solution
September 30 First-order logic

Readings: Chapter 8.

October 5 Inference in the First-order logic

Readings: Chapters 8,9

October 7 Logical reasoning systems. Situation calculus.

Readings: Chapters 9,10

Homework assignment 5
Programs for HW-5
Assignment 5 solution
Solution programs for HW-5
October 19 Midterm

Readings: Chapters 1-9

October 21 Planning.

Readings: Chapter 11

Homework assignment 6
Assignment 6 solution
October 26 Planning . Uncertainty.

Readings: Chapter 12.

October 28 Modeling uncertainty using probabilities.

Readings: Chapter 13.

Homework assignment 7
Assignment 7 solution
November 2 Bayesian belief networks (BBNs)

Readings: Chapter 13.

November 4 Inferences in BBNs

Readings: Chapter 13.

Homework assignment 8
Programs for HW-8
Assignment 8 solution
Solution program for HW-8
November 2 Decision making in the presence of uncertainty

Readings: Lecture notes, Chapter 16.

November 11 Decision making in the presence of uncertainty

Readings: Lecture notes, Chapter 16.

Homework assignment 9
Assignment 9 solution
November 16 Utility theory. Learning.

Readings: Lecture notes, Chapter 16, Chapter 18.1-2.

November 18 Linear regression

Readings: Lecture notes, Chapter 20.

November 23 Logistic regression


Homework assignment 10
Programs for HW-10
Assignment 10 solution
Solution program for HW-10
November 30 Multilayer neural networks

Readings: Lecture notes, Chapter 20.

December 2 Learning probability distributions

Readings: Lecture notes, Chapter 20.

December 7 Learning BBNs. Naive Bayes Classifier.

Readings: Lecture notes, Chapter 20.

Homework assignment 11

Additional readings

An ever-growing collection of links to related material is found here.

Course description

This course will provide an introduction to the fundamental concepts and techniques underlying the construction of intelligent computer systems. Topics covered in the course include: problem solving and search, logic and knowledge representation, planning, reasoning and decision-making in the presence of uncertainty, and machine learning.

Prerequisites:   undergraduate level AI (CS 1571 or equivalent) or the permission of the instructor


Stuart Russell, Peter Norvig. Artificial Intelligence.  A modern approach. 2ed. Prentice Hall, 2002.
Note: The second edition of the book was published at the end of 2002. There are significant changes as compared to the first (1995) edition of the book. Please make sure to obtain the new (green color cover) edition.



There will be weekly homework assignments. The homeworks will include a mix of paper and pencil problems, and programming assignments. The assignments are due at the beginning of the class on the day specified on the assignment. In general, no extensions will be granted.

Programming assignments. Knowledge of C/C++ language is neccessary for the programming part. C/C++ programs submitted by you should compile with g++ compiler under unix. Please see the rules for submitting programming assignments.

Academic Honesty

All the work in this course should be done independently. Collaborations on homeworks are not permitted. Cheating and any other antiintellectual behavior, including giving your work to someone else, will be dealt with severely. If you feel you may have violated the rules speak to us as soon as possible.

Please make sure you read, understand and abide by the Academic Integrity Code for the Faculty and College of Arts and Sciences.

Students With Disabilities

If you have a disability for which you are or may be requesting an accommodation, you are encouraged to contact both your instructor and Disability Resources and Services, 216 William Pitt Union, (412) 648-7890/(412) 383-7355 (TTY), as early as possible in the term. DRS will verify your disability and determine reasonable accomodations for this course.