CS4100 // artificial intelligence // spring 2017 //
Course details
Byron Wallace
Office: 476 West Village H
[email protected]
Rohan Sapre [email protected]

TF Richards Hall 160
Tuesdays and Fridays
Office hours
Byron Wallace 5:15pm-6:15pm Tuesdays (after class, in 476 WVH)
or by appointment.

Rohan Sapre (TA) 3:00pm-5:00pm Thursdays 462 WVH
Note: Questions about PacMan homeworks should be brought to Rohan (first).
Here is a link to the course Piazza site.

Artificial Intelligence: A Modern Approach, 3rd Edition
Russell and Norvig
ISBN: 978-0-13-604259-4
Course description

This is an introductory course on artificial intelligence, which may broadly be thought of as the art and science of making dumb computers act (or be?) clever. Coverage will be relatively broad, spanning (e.g.): planning, knowledge representation, basic probability and uncertainty, statistical machine learning (supervised and reinforcement) and (at least briefly) philosophical considerations. This is a lot of gound to cover. But you'll be able to dive in to a specific topic via the course project.

A note on attribution: We will be using some materials from the CS188 Berkeley AI class, with permission. I am indebted to John DeNero and Dan Klein for developing such excellent resources and making them available.

10%In class exercises
25%Final project

Homeworks will consist of both written assignments and programming projects. For the latter, we will use the Pacman AI environment and accompanying homeworks developed at UC Berkeley. All programming assignments must be completed using Python and are due at midnight on the day indicated on the schedule. Late assignment policy: Late homeworks will be docked 10 points (out of 100) for every day late.

In class exercises

In some classes, we will have in-class exercises relevant to the material covered in the lecture; these may be done in groups or individually. Grading on these will be largely participatory. The lowest of these will be dropped (e.g., if you are absent for class and miss one exercise, this will have no effect).


Assignments will be in Python. You must be willing to pick it up as we go if you don't know it already. We will be using some linear algebra, (basic) calculus and probability, although I will generally introduce what we need.

Academic integrity policy

A commitment to the principles of academic integrity is essential to the mission of Northeastern University. The promotion of independent and original scholarship ensures that students derive the most from their educational experience and their pursuit of knowledge. Academic dishonesty violates the most fundamental values of an intellectual community and undermines the achievements of the entire University. For more information, please refer to the Academic Integrity Web page.

More specific to this class: the Pacman programming assignments you will complete are widely used. Do not copy solutions to these from the web; we will recognize if you have done this, and there will be consequences! You are expected to complete all assignments on your own.

Schedule (subject to change!)

01/10 TOverview and a brief history of AI; course aims, expectations, logistics, etc.Ch. 1 (R&N)a nice read: One hundred year study on AI. Cf., Godel, Escher, Bach.
01/13 FProblem Solving as Search (BFS, DFS, UCS)Ch. 2; 3-3.5 (R&N)HW 1: due in two weeks!
01/17 TSearch II: Informed search, A* and BeyondCh. 3.5-4 (R&N)
01/20 FConstraint Satisfaction Problems (CSPs)Ch. 6 (R&N)exercise on CSPs
01/24 TAdverserial SearchCh. 5-5.4 (R&N)exercise on minimax
01/27 FExpectimax Search and UtilitiesCh. 5.4-5.7; 16-16.4 (R&N)HW 1 due; HW 2 due in two weeks (written component here); exercise on expectimax
01/31 TMarkov Decision Processes (MDPs) ICh. 16.4-17.3 (R&N)exercise on value iteration
02/03 FMarkov Decision Processes (MDPs) IICh. 17.3-18 (R&N)scribbled solution to value iteration exercise
02/07 TNo class meeting
02/10 FReinforcement Learning ICh. 21-21.4 (R&N)HW 2 due (delayed to 2/12); HW 3: due on 2/26! + written exercises 5.16, 5.21, 17.4 and 17.8; TDL exercise, and solution
02/14 TReinforcement Learning IICh. 21.4-22 (R&N)
02/17 FProbabilityCh. 13-13.5 (R&N)
02/21 TMarkov ModelsCh. 15 (R&N)Markov model exercise; and a scribbled solution
02/24 FHidden Markov Models (HMMs) Ch. 15 (R&N)HW 3 due (delayed to 2/26)
02/28 TMid-term review Midterm sample problems + solutions (compiled from Berkeley AI materials)
03/03 FMidterm (in-class)Midterm, with solutions!
03/07 Tspring break
03/10 Fspring break
03/14 Tsnow day! HW 4: due on (3/31)+ written exercises 14.4 and 14.8!
03/17 FBayes nets ICh. 13.5-; Ch. 14 (R&N)Project guidelines/details
03/21 TBayes nets IICh. 14 (R&N)
03/24 FSupervised Machine Learning ICh. 18 (R&N)
03/28 TSupervised Machine Learning IICh. 20 (R&N)
03/31 FUnsupervised LearningUnsupervised Learning (Ghahramani)HW 4 due; HW 5: due in two weeks (4/14)
04/04 TNatural Language Processing IStatistical Techniques for Natural Language Parsing (Charniak)Project proposals due! Submit via git.
04/07 F[Optional session] Practical tutorials on ML in Python (sklearn + Theano)Silvio Moreira will provide hands-on advice, tips and &etc. for doing ML in Python -- helpful for projects; come w/questions!
04/11 TDeep learning for NLP (and beyond)Neural network survey: pages 1-10 (although the whole thing is good!); Ch. 24-24.3
04/14 FDeep reinforcement learningPlaying atari with deep reinforcement learning
04/18 TFinal project presentations!Final project deliverables (code and write ups) due 4/21

HTML/CSS/JS used (and modified), with permission, courtesy of Prof. Alan Mislove, (c) 2015