Syllabus for Computer Science 370


[Home]

Artificial Intelligence, Spring 2025


MW 2:30 - 3:45 p.m., Davies Auditorium.

Stephen Slade
113 AKW, 432-1246 stephen.slade@yale.edu
Office hours: Wednesday 4 to 6 pm, via zoom, meeting ID 459 434 2854, and by appointment.

Teaching Assistants: Please see Instructor and TA contact information.

Course Description

How can we enable computers to make rational, intelligent decisions? This course explores fundamental techniques for Artificial Intelligence (AI), covering topics such as search, planning, learning, and reasoning under uncertainty. Through hands-on programming projects, students learn conceptual, algorithmic, and practical considerations for implementing foundational AI algorithms. By the end of this class, students have an understanding of the history and breadth of AI problems and topics, and are prepared to undertake more advanced courses in robotics, computer vision, natural language processing, and machine learning.

Prerequisites: CPSC 202 and CPSC 223. Students should also be familiar with basic object-oriented programming concepts in Python.

Textbooks

Other Resources

Web page
The course web page is at http://zoo.cs.yale.edu/classes/cs370.
Canvas
Canvas
Ed discussions
Ed Discussions
Zoo accounts
Although we will primarily use Gradescope for submission of assignments, we will expect students to have access to the zoo undergraduate computing facility.
Gradescope
We will use Gradescope for submitting assignments.
Course directory
The course directory, /c/cs370 is accessible from your Zoo course account. It contains copies of handouts.

Course Requirements

The course requirements consist of class attendance, including in class canvas quizzes, (more-or-less) weekly programming assignments in Python and occasional written homework, a midterm exam and a final exam. Plan on spending between 6-8 hours per week on the course outside of class. The programming assignments are an integral part of the course.

Please try not to leave the homework to the last minute. You will be more efficient, learn more, have more chance to get help, and generally be calmer and happier if you do the associated reading first and start the programming or other problems early.

Course Requirements: CS 570

CS 370 is cross listed as a graduate course: CS 570. The requirements for CS 570 are the same as those for CS 370, with the addition of a final project, which will count as 10% of the total grade, and the other homeworks will be 30%.

The student will be able to propose a topic of her choice, within certain guidelines. We would like to encourage independent research. We will also provide a list of suggested topics.

Grading

The final grade in the course will be based on class participation, including in-class canvas quizzes, your performance on the programming assignments and other homework, and the exams. The weighting of these components will be approximately 40% on homework and 60% on exams. (For CS 570: 10% project, 30% homework, 60% exams).

Late Policy

Late work without a Dean's extension will be assessed a penalty of 5 points per day, based on the day and time recorded by the Zoo electronic submit program. At the end of term, up to 50 points will be deducted from the total lateness penalties your homework has accrued. However, according to Yale College regulations, *no* homework can be accepted after the end of Reading Week without a Temporary Incomplete (TI) authorized by your dean.

If you have a Dean's extension or a TI, making up missed work may involve alternative assignments, at the discretion of the instructor; please check with the instructor in this case.

Policy on Working Together

Unless otherwise specified, the homework assignments are your individual responsibility. Plagiarism is a violation of University rules and will not be tolerated. You must neither copy work from others (at Yale or elsewhere) nor allow your own work to be copied. You are definitely on the wrong side of the boundary if you give or receive a printed or electronic copy of your or anyone else's work for the course from this term or previous terms.

You are encouraged to ask others for help with the computers and Unix, with questions about Python, general questions about the concepts and material of the course, but if you need more extensive help with a program or other assignment, please ask a ULA or the instructor for assistance. Working in groups to solve homework problems is not permitted in this course. Please talk to the instructor if you have any questions about this policy.

Usability, Disability and Design

I am committed to creating a course that is inclusive in its design. If you encounter barriers, please let me know immediately so that we can determine if there is a design adjustment that can be made or if an accommodation might be needed to overcome the limitations of the design. I am always happy to consider creative solutions as long as they do not compromise the intent of the assessment or learning activity. You are also welcome to contact Student Accessibility Services to begin this conversation or to establish accommodations for this or other courses. I welcome feedback that will assist me in improving the usability and experience for all students.

This semester, we have a dedicated accomodation assistant for Computer Science, Amma. Her contact email is: cpscaccommodatedexams@yale.edu. Students who would like to use approved testing accommodations in the course should send their letter to Amma (with a copy to stephen.slade@yale.edu) and coordinate with her at that email address. Use the course identifier CPSC 370 in all communication to Amma since she will be working with other CPSC courses.

During my years at Yale, I have had students who were either blind or deaf. They were generally among the best in the class. I want to make you succeed.

Course Outline

AIMA = "Artificial Intelligence: A Modern Approach, Fourth Edition"
Jupyter = Python Jupyter Notebooks

Week Date Topic Reading Jupyter Notebook
1 Jan 13, 15 Introduction. Python. Jupyter Notebooks. AIMA 1
Jan 20 Martin Luther King, Jr. Holiday
2 Jan 22, 24 Intelligent Agents. AIMA 2 Agents
3 Jan 27, 29 Search. AIMA 3-4 Search
4 Feb 3, 5 Adversarial Search and Game Playing. AIMA 5 Games
5 Feb 10, 12 Constraint Satisfaction, Propositional Logic,
First Order Logic.
AIMA 6-9 Constraint Satisfaction Problems
and Logic
6 Feb 17, 19 Planning and Knowledge Representation. AIMA 10-12 Planning
7 Feb 24, 26 (2/26) Midterm Exam. Reasoning Under Uncertainty. AIMA 13-18 Probability
and Making Complex Decisions
8 Mar 3, 5 Learning. AIMA 19-21 Learning
Mar 7 - Mar 24 Spring Recess
9 Mar 24, 26 Reinforcement Learning. AIMA 22 Reinforcement Learning
10 Mar 31, Apr 2 Natural Language Processing. AIMA 23-24 Statistical Learning Tools (Text)
and Natural Language Processing
11 Apr 7, 9 Computer Vision. AIMA 25
12 Apr 14, 16 Robotics. AIMA 26
13 Apr 21, 23 Philosophical Foundations and the Future of AI. AIMA 27-28
May 6th, 9am Final Exam, RTBA


[Home]