CS 590-133: Artificial Intelligence
Lectures: Tues/Thurs 3:30-4:45pm, Rm SN 014
Course Webpage: http://tamaraberg.com/teaching/Spring_14/

Instructor: Tamara Berg  (tlberg -at- cs.unc.edu)
Office: FB 236
Credits: 3 units
Textbook: "Artificial Intelligence: A Modern Approach", Russell and Norvig (3rd edition).
TAs: Shubham Gupta & Rohit Gupta

Office Hours (Tamara): Tuesdays/Thursdays 4:45-5:45pm FB 236
Office Hours (Shubham): Mondays 4-5pm & Friday 3-4pm SN 307
Office Hours (Rohit): Wednesday 4-5pm & Friday 4-5pm SN 312

Topics will include:
  • AI, Concepts and history
  • Solving problems by searching
  • Game Theory
  • Probabilistic reasoning
  • Machine Learning
  • NLP
  • Vision
Artificial Intelligence (AI) is the science and engineering of producing intelligent agents that can behave rationally. This includes methods for sensing the environment, planning, and acting to achieve goals. This course provides an introduction to a broad range of techniques and applications of modern AI, from combinatorial search to probabilistic models and reasoning. The course will also provide an introduction to some sub-areas of AI, including natural language understanding, robotics, and computer vision.


  • 4/22/14: We will have 2 review sessions for the final exam. Thursday 5pm, SN014 covering the first half of the course. Friday 5pm, SN014 covering the second half of the course.
  • 4/10/14: No office hours for Tamara on Tuesday, April 15 due to travel.
  • 4/8/14: Assignment 5 is online.
  • 3/18/14: Assignment 4 is online.
  • 3/18/14: Mid-term review + Q&A will be held by Rohit on March 24, 5pm in FB009.
  • 2/27/14: Assignment 3 is online.
  • Shubham will hold extra office hours for HW2 on Tuesday, Feb 25, 2-3:30pm.
  • 2/18/14: For the mid-term, last names starting with A-P will be in SN014 and Q-Z will be in SN011. Please arrive on time and sit every other seat.
  • 2/15/14: On Monday Feb 17, Tamara will have an extra office hour at 10am, Rohit will have an extra office hour at 3pm, and Shubham will have his regular office hour at 4pm.
  • 2/13/14: Due to storm, mid-term review moved to Monday, Feb 17, 5pm in FB009.
  • 2/12/14: The mid-term is still scheduled for Tuesday, Feb 18, but will only cover materials through the Feb 11 lecture.
  • 2/12/14: Classes on Feb 13 canceled due to storm. Schedule updated to reflect.
  • 2/11/14: Mid-term review + Q&A will be held by Shubham on Feb 14, 5pm in SN014.
  • 2/11/14: Assignment 1 has been graded. Grades are in your submission folders.
  • 2/6/14: Assignment 2 has been updated and deadline extended.
  • 2/4/14: Assignment 2 is online. Update -- tiny typo in the assignment fixed at 10pm.
  • 1/21/14: Assignment 1 with added extra credit (mini contest) available here
  • 1/20/14: schedule has been updated slightly (please see below).
  • 1/16/14: Assignment 1 is online.
  • 1/12/14: I've created a piazza mailing list for the class, piazza.com/unc/spring2014/comp590133/home. Please sign up here: piazza.com/unc/spring2014/comp590133
  • 1/12/14: The TAs will be holding drop-in python tutorials in SN 014, Tuesday Jan 14 and Wednesday Jan 15 at 6pm. Please install python on your laptops before attending.
  • 1/9/14: Welcome to AI!

Schedule (subject to change):

Jan 9Intro to AIIntroCh. 1learn or refresh yourself on python
Jan 14Agents and SearchAgentsCh. 2Do the python tutorial
Jan 16A* Search and HeuristicsSearchCh. 3Assignment 1
Jan 21Constraint Satisfaction ProblemsCSP IntroCh. 6.1-
Jan 23Constraint Satisfaction Problems IICSPsCh. 6.2-6.5-
Jan 28CSP examplesCSP Examples--
Jan 30Big Data for AI - Vicente Ordonez (guest)Guest1--
Feb 4GamesGamesCh 5.2-5.5Assignment 2
Feb 6Utility & Markov Decision ProcessesUtility_MDPsCh 16.1-16.3, Ch 17.1-17.3-
Feb 11Reinforcement LearningRL1Ch. 21-
Feb 13Classes canceled due to storm ---
Feb 18Midterm 1---
Feb 20Reinforcement Learning (cont)RL2--
Feb 25ProbabilityProbabilityCh. 13.1-13.5-
Feb 27Bayes' NetsBayesNets1Ch. 14Assignment 3
March 4Bayes' Nets (cont)BayesNets2--
March 6Bayes' Nets ExamplesBayesNets3--
March 11Spring Break---
March 13Spring Break---
March 18HMMsHMMsCh. 15Assignment 4
March 20Machine Learning OverviewLearningCh. 18.1-18.4, 18.8-
March 25Classification IClassification1--
March 27Midterm 2---
April 1Classification II Classification2Ch. 18.6-18.7-
April 3Classification IIIClassification3Ch. 18.9-18.10 -
April 8Computer Vision Vision1Ch. 24Assignment 5
April 10Computer Vision (cont)Vision2--
April 15Computer Vision Scene Parsing - Joe Tighe (guest)Parsing--
April 17Natural Language ProcessingNLPCh. 22-
April 22Review & Catch-up dayReview--
April 24AI, fun examples & discussion of where it's going next--Bring in your favorite AI example
April 29Final Exam (4pm)---


Students will complete 5-6 homework assignments, 2 midterm exams, and a final exam as part of the course. Assignments may include written questions and/or programming questions. Programming will be completed in python. Students are responsible for learning python if they are unfamiliar with it, but TAs will provide a brief tutorial during the second week of class. Midterms will be held in-class approximately 1/3 and 2/3 of the way through the semester. Readings will also be assigned for each class from the required textbook or posted to the course website.

Assignments must be turned in electronically by 11:59pm on the listed due date. Students will be allowed 5 free homework late days of their choice over the semester (you don't need to ask ahead of time, just use them and we will keep track). After those are used late homeworks will be accepted up to 1 week late, with a 10% reduction in value per day late.

Grading will consist of 60% assignments, 40% exams. For borderline cases participation will also be considered.

Honor Code:

Assignments may be completed alone or in groups of 2. All code and written responses should be original. To protect the integrity of the course, we will be actively checking for code plagiarism (both from current classmates and the internet). Exams will be closed book.

Prerequisites & Target Audience:

Basic programming knowledge and data structures (COMP 401 and 410) are required. Algorithms (COMP 550), basic calculus, and working familiarity with probability are also highly desired. Come talk to me if you have any questions! This course is targeted toward computer science majors in their junior or senior year of study. Students with an interest in general AI or areas related to AI, e.g. Natural Language Processing, Machine Learning or Computer Vision are encouraged to sign up.

The professor reserves to right to make changes to the syllabus, including project due dates and test dates. These changes will be announced as early as possible.