Skip to main content

Course Goals

This course covers practical approaches to designing intelligent systems.  We present a framework for building intelligent systems, organized into four modules:  1) Search,  2) Uncertainty, 3) Making a decision, and 4) Making sequences of decisions. Each module has an associated programming project focused on an application area such as video games, robotics, or natural language processing. We will also read selected research papers to study the newest advances in AI and cover case studies of industry applications such as IBM's Watson and Google's Self-Driving Car.

After successfully completing the course, you will be able to:

  • Understand theoretical and practical approaches to building intelligent systems.
  • Describe and implement searching and scoring algorithms for producing intelligent behavior.
  • Use artificial intelligence techniques to solve real-world problems.

Grading

This advanced undergraduate course will consist of:
  • Midterm (in class)           15% 
  • Final exam (in class)       15%
  • Projects                            45%
  • Homework                      25%
    • "Warm up" homeworks:   5%
    • Full homeworks:              20%

We expect the course to take roughly 15 hours per week in lecture, homeworks, projects, and exams.  Grading will be carried about by our talented staff of Undergraduate TAs. 

Late Policy

Up to three late days total on projects will be allowed.  A single day cannot be subdivided between assignments but the three days will be applied optimally at the end of the semester. After the three days are applied, a penalty of 10% per day will be in effect (i.e. max point will become 90, then 80, etc).
No late homework submissions will be accepted, but there is a small grace period on the submission deadline. In addition, your lowest warmup grade and your lowest homework grade will be dropped automatically by edX. 

Collaboration Policy

Warmup problems:  You may discuss the warmup problems with other students as much as you like, but you should enter solutions on your own. You have multiple tries to get the correct answer for warmup problems.

Homework problems:  You should complete the homework problems independently. These problems are for assessment. You will only have one try to get them correct unless otherwise noted.

Projects:  You may discuss the code design of the programming assignment with other students, but you may not share code or pseudocode with other students.  You may give or receive debugging help, but you should produce the solution on your own. No one else should type at your keyboard. You are also not allowed to share test cases with other students.

Exams: Exams will be completed in class. No collaboration is permitted on exams.

Textbook

The textbook is Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig. 3rd edition.  (2010). 

Special Needs 

Please inform Professor Tellex if you have a disability or other condition that might require some modification of any of these course procedures. You may speak with her after class or during office hours.  For more information, contact Students and Employee Accessibility Services at 401-863-9588 or SEAS@brown.edu.