CS 3600
Introduction to Artificial Intelligence
(Spring 2013)

Meets: Mondays and Wednesdays 3:05-4:25pm in ES&T L1205

Instructor: Prof. Mark Riedl (riedl@cc.gatech.edu)
Office hours: Tuesdays: 3:00-5:00pm, TSRB 234

Home Schedule Projects Grading Resources Piazza


  1. Project 0: Introduction to Python (0% of grade) [No due date]
  2. Project 1: Search (10% of grade) [Due Feb. 10, 2013, 11:55pm] [Submit by Feb. 7, 11:55pm for autograder pass/fail check]
  3. Project 2: Adversarial Search (10% of grade) [Due March 3, 2013, 11:55pm] [Submit by Feb. 28, 11:55pm for autograder pass/fail check]
  4. Project 3: Dynamic Bayesian Networks (10% of grade) [Due April 7, 11:55pm] [Submit by April 4, 11:55pm for autograder pass/fail check]
  5. Project 4: Decision Tree Learning (10% of grade) [Due April 28, 11:55pm]

Codebases for each project can be downloaded from T-square.

Homework exercises

  1. Missionaries and cannibals (problem | solution)
  2. Search (problem | solution)
  3. Search 2 (problem | solution)
  4. Rook Jumping Maze Generation. See this for more information on how the puzzles work. As a thought exercise, consider different ways to represent states using the complete-state formulation. Consider different operations for moving from possible puzzle to possible puzzle. Consider different factors that you might incorporate into an evaluation function. For example, you might want a "hard" puzzle or an "easy" puzzle; how can you write a formal definition of "easy" and "hard". Think about different algorithms that might perform well on this problem. Solution: none given: but see evaluation function designs and different possible algorithms. If you are feeling ambition, implement a puzzle generator.
  5. Expectiminimax (problem | solution)
  6. Constraint satisfaction (problem | solution)
  7. Resolution with propositional logic: wumpus world (problem | solution)
  8. Bayes net inference (problem | solution)
  9. Bayes net inference 2 (problem | solution)
  10. Markov decision process (problem | solution)
  11. MDP Vvalue iteration problem from class (problem | solution)
  12. Decision tree learning (problem | solution)