15-381 / 681, Fall 2017

Artificial Intelligence: Representation and Problem Solving


Key Information

Tuesdays + Thursdays, 1:30pm - 2:50pm, GHC 4401

Noam Brown, Kevin Yang, William Xiao, Nathan Eliason, Ziyang Wang

Tuesdays 3-4 PM - by either Prof. Sandholm (in GHC 9205) or Prof. Lee (GHC 7103), depending on which professor gave the lecture

15-381: Homeworks 50%, midterm 15%, final 25%, participation in class 10%

15-681: Homeworks 37.5%, midterm 11.25%, final 18.75%, participation in class 7.5%, final project 25%

Are available here for registered students.

We will use Piazza for questions, so please try to post your questions there.

Students will turn in their homeworks electronically using autolab.

This course is about the theory and practice of Artificial Intelligence. We will study modern techniques for computers to represent task-relevant information and make intelligent (i.e., satisficing or optimal) decisions towards the achievement of goals. The search and problem solving methods are applicable throughout a large range of industrial, civil, medical, financial, robotic, and information systems. We will investigate questions about AI systems such as: how to represent knowledge, how to effectively generate appropriate sequences of actions and how to search among alternatives to find optimal or near-optimal solutions. We will also explore how to deal with uncertainty in the world and how to learn from experience. We will cover the aggregation of conflicting preferences and computational game theory. We will also cover the AI-brain interface. We expect that by the end of the course students will have a thorough understanding of the algorithmic foundations of AI, how probability and AI are closely interrelated, and how automated agents learn. We also expect students to acquire a strong appreciation of the big-picture aspects of developing fully autonomous intelligent agents.


The 381 version is for undergraduates and the 681 version is for MS students.


There are no formal pre-requisites for the course, but students should have previous programming experience (programming assignments will be in Python), as well as general CS background. Please see the instructors if you are unsure whether your background is suitable for the course.

Office Hours

Name Email Hours Location
Tuomas Sandholm sandholm@cs.cmu.edu Tuesdays 3-4pm (Tuesdays when he lectures) GHC 9205
Tai Sing Lee tai@cnbc.cmu.edu Tuesdays 3-4pm (Tuesdays when he lectures) GHC 7103
Noam Brown noamb@cmu.edu Tuesdays 4-5 PM GHC 9225
Kevin Yang kzy@andrew.cmu.edu Fridays 1:30-2:30 PM GHC 5th Floor Teaching Commons
William Xiao williamx@andrew.cmu.edu Mondays 3-4 PM GHC 5th Floor Teaching Commons
Nathan Eliason eliason@cmu.edu Wednesdays 11:30-12:30 GHC 5th Floor Teaching Commons
Ziyang Wang ziyangw@andrew.cmu.edu Wednesdays 12:30-1:30 PM GHC 5th Floor Teaching Commons

Draft Schedule (Subject to change)

Dates Topic Instructor Slides Video Read
8/29 Introduction Sandholm ppt video R&N Chapters 1 and 2
8/31 Uninformed Search Sandholm ppt video R&N Ch. 3.1-3.4
9/5 Constraint Satisfaction Problems (CSPs) Sandholm ppt video R&N Ch. 6
9/7 Constraint Satisfaction Problems (CSPs) Sandholm video
9/12 Constraint Satisfaction Problems (CSPs) Sandholm video
9/14 Local Search in CSPs, Then Informed Search Sandholm pptx (and see end of CSP deck for local search in CSPs) video R&N Ch. 3.5-3.7
9/19 Informed Search and Generating Heuristics Sandholm video
9/21 Integer Programming
HW1 Out
Sandholm pptx video
9/26 Probabilistic Reasoning Lee pptx video
9/28 Bayes Networks Lee pptx video
10/3 Inference in Bayes Net Lee pptx video
10/5 Deep Belief Net
HW1 Due
Lee pptx video
10/10 Deep Belief Net


Lee pptx video
10/12 MIDTERM Sandholm & Lee
10/17 Reinforcement Learning Lee pptx n/a
10/18 HW 2 Out
10/19 Machine Learning Lee
10/24 Deep Learning Lee
10/26 Deep Learning Lee
10/29 HW 2 Due
10/31 Robotics Guest Speaker: Howie Choset
11/2 Natural Language Processing Guest Speaker: Taylor Berg-Kirkpatrick
11/7 Computational Game Theory Sandholm / Noam Brown
11/9 Computational Game Theory Sandholm
11/14 Computational Game Theory Sandholm
11/16 Social Choice Sandholm
11/21 AI and the Brain: Mind Reading Lee
11/23 Thanksgiving NO CLASS
11/28 AI and the Brain: Brain-Computer Interface Lee
11/30 AI and the Brain: Neural Modeling Lee
12/5 Conclusion, Future of AI, Q&A Sandholm
12/7 Poster Session (MS students present their 681 projects; all should attend) Sandholm & Lee
TBA FINAL EXAM Sandholm & Lee


There will be four homework assignments. They will involve both written questions and programming assignments. Written questions will involve working through algorithms presented in the class, deriving and proving mathematical results, and critically analyzing material presented in class. Programming assignments will involve writing code in Python to implement various algorithms.

Homework due dates

Topic Files Due Dates
Homework 1 handout 10/5
Homework 2 writeup, handout 10/29
Homework 3 [...] [...]
Homework 4 [...] [...]

Homework Policies

  • Homework is due on autolab by the posted deadline. Assignments submitted past the deadline will incur the use of late days.

  • You have 6 late days, but cannot use more than 2 late days per homework. No credit will be given for homework submitted more than 2 days after the due date. After your 6 late days have been used you will receive 20% off for each additional day late.

  • You can discuss the exercises with your classmates, but you should write up your own solutions. If you find a solution in any source other than the material provided on the course website or the textbook, you must mention the source. All homeworks (programming and theoretical) are always submitted individually. Make sure that you include a README file with your andrew id.

  • Strict honor code with severe punishment for violators. CMU’s academic integrity policy can be found here. You may discuss assignments with other students as you work through them, but writeups must be done alone. No downloading / copying of code or other answers is allowed. If you use a string of at least 5 words from some source, you must cite the source

15-681 Project

  • Students enrolled in 15-681 will also complete a course project. Late days may not be used on the course project. The projects are to be approved by the professors. They can be done individually or in a pair of students. Projects done by a pair of students should be roughly double in scope.

  • Project proposals are due in hardcopy on 10/5/2017 at the beginning of class. The proposal should be as concrete as possible so it can be evaluated for topical fit, feasibility, and scope. Of the 25% of the grade that comes from the project, 2% will be from the proposal and 23% of the actual project.

  • We encourage creativity in the projects. Projects could include using one of the algorithms from class on a new application, making a new algorithm, or both. Projects can also inlcude developing a system that uses AI techniques. Typically projects involve programming, but they can also be proving theorems.

  • Each project must be presented as a poster in the class's poster session on 12/7/2017. Final project write-ups are due by 12/9/2017 11:59 PM ET.


The class includes both a midterm and final exam. The material for the midterm includes all lectures up to (and including) reinforcement learning.


Accommodations for Students with Disabilities:
If you have a disability and have an accommodations letter from the Disability Resources office, we encourage you to discuss your accommodations and needs with us as early in the semester as possible. We will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, we encourage you to contact them at access@andrew.cmu.edu.

Statement of Support for Students’ Health & Well-being
Take care of yourself.  Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress.
All of us benefit from support during times of struggle. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is almost always helpful.
If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at http://www.cmu.edu/counseling/. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.
If you have questions about this or your coursework, please let us know. Thank you, and have a great semester.