This page focuses on the course 6.034 Artificial Intelligence as it was taught by Professor Patrick Winston in Fall 2015.
This course introduces students to representations, techniques, and architectures used to build applied systems and to account for intelligence from a computational point of view. Students learn applications of rule chaining, heuristic search, constrain propagation, constrained search, inheritance, and other problem-solving paradigms. They also learn applications of identification trees, neural nets, genetic algorithms, support-vector machines, boosting, and other learning paradigms. The course introduces contributions of vision, language, and story-understanding systems to human-level intelligence. The teaching format includes three components: 1) lectures, which introduce core material and provide “big picture” context for the content; 2) Right Now Talks, which offer students a view into what’s happening in today’s research projects in a way that complements the material presented in lectures; and 3) recitations, which allow students to review lecture material in more technical detail, to work through practice problems, and to ask questions in a small venue.
Course Goals for Students
- Gain familiarity with basic approaches to problem solving and inference and areas of application
- Demonstrate familiarity with basic and advanced approaches to exploiting regularity in data and areas of application
- Demonstrate familiarity with computational theories of aspects of human intelligence and the role of those theories in applications
- Gain familiarity with techniques for improving human learning and influencing human thought
Patrick Winston, Ford Professor of Artificial Intelligence and Computer Science. (Photograph by Azeddine Tahiri. Used with permission.)
In the following pages, Professor Patrick Winston describes various aspects of how he teaches 6.034 Artificial Intelligence.
Note: For additional insights from Professor Winston, please see “Looking at the Numbers” in the MIT Faculty Newsletter.
Teaching Assistant Interview
Teaching assistants play an important role in the learning experiences of students enrolled in 6.034 Artificial Intelligence. Each teaching assistant holds office hours once a week, along with recitation sessions for two sections of 20 students once a week. A head teaching assistant coordinates and supports the work of the 12-member teaching assistant team. In the following pages, Jessica Noss, the head teaching assistant during the fall 2015 semester, and Dylan Holmes, a former head teaching assistant and a supervisor in the fall 2015 semester, share their insights about facilitating students’ learning in the course.
- Assessment Informed by a Student-Centered Ethic
- Managing an Online Forum
- Challenges Teaching Assistants Face
6.01 Introduction to Electrical Engineering and Computer Science I
6.034 Artificial Intelligence is not centered on programming, but most of the homework requires an understanding of programming and working out small programs. The quizzes and final exam do not include questions that require any knowledge of Python programming. Students who can program, but are unfamiliar with Python, will have to spend some time learning this language; students with no programming experience are advised not to take the subject.
6.034 Artificial Intelligence can be applied toward a Bachelor of Science in Computer Science and Engineering (PDF), but is not required.
Every fall semester
About 300 students
Breakdown by Year
Mostly Sophomores, Juniors, and Seniors
Breakdown by Major
Mostly computer science and engineering majors
The students’ grades were based on the following activities:
- 60% Assessment on core material
- 20% Assessment on spiritual and Right Now talk material.
- 20% Labs
“Spiritual” material refers to lectures not considered part of the core skill set; the “Right Now” material refers to lectures given by what’s-happening-right-now guest lecturers.
Instructor Insights on Assessment
All of the scores are on a 1-5 scale, averaged together like a GPA. The 1-5 scale is not based on a class average, but rather on what the instructors consider the scores to mean:
- 5: Thorough understanding of the topic
- 4: Acceptable understanding of the topic
- 3: Some understanding of the topic
- 2 or 1: Poor understanding of the topic
Students get an A if their average score is 4.5 or higher, a B if it is 3.5 or higher, but below 4.5, and so on. If they are near one of the transition points, the recitation instructor decides whether to round the grade up or down based on the student’s class participation.
Note: See Prof. Winston’s article, “Skills, Big Ideas, and Getting Grades Out of the Way” in the MIT Faculty News Letter for more information about his approach to assessment.