Download the most updated version here.


By the end of the semester, students should be able to:


  1. Identify the major classical and modern AI paradigms, and explain how they relate to each other
  2. Analyze the structure of a given problem such that they can choose an appropriate paradigm in which to frame that problem
  3. Implement a wide variety of both classical and modern AI algorithms





Five (5) programming assignments (roughly matching the major course sections) will be given during the class. Any material regarding the set solution will be submitted electronically. Homework will be due two weeks from assigned date at midnight. Late assignments are penalized at 20% for each 24 hours’ delay. No homework will be accepted after one week.



Reading assignments in which students will be asked to read a section from the textbook. Occasionally, an exercise or two will be given in class to be solved at home. The results of the homework will be discussed in class.



There will be four (4) tests over the course of the semester (see the tentative schedule below). The tests will be a combination of multiple choices and open-ended answers. Books must be closed, and no electronic devices are allowed.

If, for any reason you need to miss any of the tests, you must inform me before the scheduled day so that a make-up session can be arranged.




If you wish to dispute a grade, it is mandatory that you do so within one week of receiving the grade. After such a term, the grade will be considered final.

Final grades: You must show proficiency in all grading areas to pass the class. A failing average (below 50%) in any of the grading areas (problem sets or tests) will result in a failing grade in the class. Your final grade will be determined using the following percentage breakdown:

Problem sets40%
Behavior and attitudeMatters a great deal

Piazza will be our primary mean of communication. All course announcements will also be made through Piazza.


Rather than emailing questions to the teaching staff, we encourage you to post your questions as a public discussion. You are also encouraged to help each other, as long as the question does not contain any code or portion of a problem set answer. In such a case, the question must be made private (please, refer to the section Academic Honesty below).

To schedule office hours outside the posted times, please email any of the teaching staff or post a private message on Piazza.



Please respect your classmates’ right to learn without unwanted distractions by silencing your cell phones and other electronic devices before class begins. The teaching staff will be doing the same. There will be no text messaging, instant messaging, gaming, or surfing the web during class. You may use laptops to take notes during lectures, but a single violation of this policy will result in the loss of that privilege. An exception will be made in the case of a disability, if the student approaches the instructor beforehand and an arrangement is agreed to.


If you are disruptive in class, the teaching staff will ask you not to be. If you continue to be disruptive, we will ask you to leave.




Science is, to its core, a collaborative effort. The advantages of coming together for examination or comparison, sometimes even just to explain the problem, are well known. I strongly encourage students to discuss course material, problems, and applications outside the classroom with the teaching staff and other students. You are also encouraged to form study groups for the tests.

Having said that, integrity and honesty are equally important qualities of any future academic, scientist or engineer. We take plagiarism very seriously. You must do homework, the problem sets and the final projects on your own. If you need help, the teaching staff will be more than happy to help you!


We are required to report any suspected violation of academic integrity to the University's Judicial Officer. As described in Tufts' brochure on academic integrity, penalties for violation can be very severe, including suspension or expulsion from Tufts. If any student does not understand these terms or any outlined in the Academic Code of Conduct , it is his/her responsibility to talk to the instructor.




To maximize each student’s participation of the Tuft experience, Tufts and the teaching staff are committed to providing equal access and support to all qualified students through the provision of reasonable accommodations.



Please be aware that accommodations cannot be enacted retroactively, making timeliness a critical aspect for this provision. If you need special accommodations for exams, please do not wait until just before the exam to contact SAS. Please, give sufficient time to arrange the necessary accommodations.




Tufts and the Artificial Intelligence teaching staff strive to create a learning environment that is welcoming to students of all backgrounds.


Your thoughts and concerns are important. You are encouraged to give feedback to the instructor throughout the term. If you feel uncomfortable talking to members of the teaching staff, consider reaching out to your academic advisor, department chair, or dean.