Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Welcome to Artificial Intelligence!

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 will learn conceptual, algorithmic, and practical considerations for implementing foundational AI algorithms. By the end of this class, students will have an understanding of the history and breadth of AI problems and topics, and will be prepared to undertake more advanced courses in robotics, computer vision, natural language processing, and machine learning.

Instructor:
Prof. Tesca Fitzgerald (tesca.fitzgerald at yale dot edu)
AKW 502

Teaching Staff:
Bhavya Kasera (bhavya.kasera at yale dot edu)
Suba Ramesh (suba.ramesh at yale dot edu)
Rebecca Ramnauth (rebecca.ramnauth at yale dot edu)
Ziyao Shangguan (ziyao.shangguan at yale dot edu)

Office Hours Calendar

Class Hours: Tu/Th 1-2:15pm
Class Location: Luce Hall 101
Canvas Link

Learning Objectives

At the end of this course, students will have gained an understanding of:

  • the history and breadth of problems and topics that exist in the field of artificial intelligence;
  • an introduction to the frontier of recent research in AI, including robotics, computer vision, natural language processing, and deep learning; and
  • how to implement and test foundational algorithms for…
    • search (breadth-first, depth-first, uniform-cost, and A-star search)
    • Markov Decision Processes (value-iteration and policy-iteration)
    • reinforcement learning (temporal-difference learning, q-learning, and epsilon-greedy)
    • probabilistic inference (Markov models, state estimation, sampling, and particle filters)
    • classification (decision trees, ensemble methods, support-vector machines, and k-nearest neighbors)
    • regression (perceptrons, neural networks, and kernels)

Prerequisites

Required Prerequisites: CPSC 202 and 223

Students will be expected to be comfortable with…

  • Data Structures: stacks, queues, sets, linked lists, trees, graphs
  • Discrete Math: set theory, propositional logic, predicate logic
  • Linear Algebra: vectors, matrices, dot products
  • Computing Concepts: object inheritance, computational complexity, dynamic programming, proofs, recursion, pseudocode, debugging tools (e.g., the Python debugger ‘pdb’)

Topics

Grading

Textbook

Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig. Make sure you have the 4th edition (purple cover). 

Late Policy

  • 3-hr Grace Period: All homework and projects have an automatic grace period of 3 hours (i.e., until 2:59 AM). This will be automatically applied; there is no action required by you.
  • Late Penalty: Late assignments will be penalized 10% per day for up to 5 days. After 5 penalized days, the assignment will receive 0 points.
  • Extenuating Circumstances: Whenever possible, please obtain a Dean’s Extension (undergraduate students) or contact your DGS (graduate students) for an extension. This will help us accommodate you fairly while also respecting your privacy. If this is not possible, contact Prof. Fitzgerald via email right away, as we generally do not provide retroactive extensions.