Skip to content

CSC 481: Artificial Intelligence (Spring 2016)


This course provides the basic formalisms and techniques underlying modern artificial intelligence. By the end of this course you will have developed skills which are required to build computational systems that can interact with their environment and make intelligent decisions.

Main topics include: problem solving using search, planning, game playing, knowledge representation, probabilistic reasoning, and machine learning. The techniques you learn in this course apply to a wide variety of industrial, financial, information, engineering, and robotic systems.

This course closely follows the UC Berkeley CS188 course. Special thanks to Dan Klein and Pieter Abbeel for making all course materials freely available.


  • CSC 301: Fundamentals of Programming Languages. Students are expected to have solid programming experience and a good understanding of data structures. Course assignments will be in Python. Although students are not required to have previous experience with Python, we expect you to learn the basics early in the course;
  • Students are also expected to have basic understanding of probability, statistics, and linear algebra.

Course Info

  • Instructor: Prof. Marco Alvarez
  • Lectures: TR 3:30 - 4:45p @ Crawford 221
  • Office Hours: MW 1 - 3p @ Tyler Lounge and F 3 - 4p @ Tyler 257


Piazza will be used for announcements and to manage questions and discussions related to this course. Anything announced at least 24 hours prior is considered your responsibility to know. Piazza is a FREE tool that will help to ensure consistent answers while mitigating duplication of efforts. Make sure to sign-up using your * e-mail address here.

Students are strongly encouraged to participate not only by posting questions/notes, but also by answering or commenting on other’s posts. The course staff will monitor discussions closely. If you need to contact the course staff privately, please make a private post on Piazza, so we can make sure to follow-up with you.


Task How Many? Percentage
Programming Assignments 4 25%
Homework Assignments 7 15%
Midterm Exam 1 25%
Final Exam 1 35%

Homework assignments and programming projects will by default be graded automatically for correctness, unless stated otherwise. However, we will review projects individually as necessary to ensure that they receive the credit they deserve.

Your final letter grade will be calculated using the cutoffs in the table below. Cutoffs might be lowered, but they will not be raised. Your final letter grade will be the letter corresponding to the highest cutoff value less or equal than your final grade. Consider that those values are strict. For example, a final grade of 93.99 is an A- and not an A.

A    A-    B+    B    B-    C+    C    C-    D+    D    F
94   90    87    83   80    77    73   70    67    60   0

Academic Honesty

Discussions with others to understand general programming and class-related concepts is strongly encouraged. Students may help each other answering questions from the textbook and other materials. However, discussions should end when you are working on your assignments. Except for team members, students are prohibited from accessing or comparing assignment answers with those of other students prior to submitting the assignment. You may not use any website that contains answers to programming assignments. Copying another individual or team solution is plagiarism, a serious offense, and the one most common in computer science courses. Anyone that provides program code for a lab or programming assignment to another individual or team is also guilty of academic dishonesty. Both will be prosecuted in accordance with the University’s Policy of Academic Honesty. If you do not have sufficient time to complete an assignment, then submit a partial solution. Do not get solutions or compare solutions from others.

Disability Accommodations

Any student with a documented disability is welcome to contact me as early in the semester as possible so that we may arrange reasonable accommodations. As part of this process, please be in touch with Disability Services for Students Office.