Back to index
OtherAbout 10 weeks of lectures, modules and problem sets·Free to audit through the public course site, several thousand dollars for credit through Stanford SCPD

CS221: Artificial Intelligence: Principles and Techniques

4.4

The best single course for understanding that AI is much larger than deep learning. CS221 walks through search, planning, probabilistic reasoning and logic with the kind of coherence that most modern AI content has abandoned.

What We Liked

  • Covers the whole classical AI toolkit rather than treating neural networks as the entire field
  • The modelling, inference, learning framing gives the material a spine that holds it together
  • Problem sets are properly designed and force you to actually implement search and MDP algorithms
  • Materials are broken into short modules with notes and video, so it works well for self study
  • Search and constraint satisfaction turn out to be immediately useful once you start building agent systems

What Could Be Better

  • The breadth means nothing gets the depth that CS229 or CS231n give their subjects
  • Assignment autograders and starter code are not always available to people outside the class
  • Coverage of modern language models is thin because that is not what the course is for
  • Requires solid Python, probability and linear algebra, and does not slow down for anyone lacking them
  • The public site rotates with each offering, so older archived versions are sometimes easier to follow end to end

Detailed review

Almost everyone learning AI right now enters through deep learning, then language models, then agents, and never sees the fifty years of work that sits underneath all of it. CS221 is the correction. It is Stanford's general artificial intelligence course, and it treats search, constraint satisfaction, Markov decision processes, game playing, graphical models, logic and machine learning as parts of one subject rather than as separate historical curiosities. The organising idea is a simple three step loop that gets repeated for every topic.

You take a real world problem, you model it as a formal object, you run an inference algorithm on that object, and where you lack the parameters you learn them from data. Once that pattern clicks, the course stops feeling like a tour of unrelated techniques. Reflex models, state based models, variable based models and logic based models all become answers to the same question asked at different levels of structure. The state based section is where most people get their money's worth.

You implement search, then uniform cost search, then A star with real heuristics, then you move into MDPs and value iteration and finally into reinforcement learning. Doing that sequence properly changes how you think about any planning problem. It also explains why so much agent tooling in 2026 is quietly reinventing search with worse vocabulary. If you have ever watched an LLM agent thrash around a task and wondered why nobody gave it a frontier and a cost function, this course answers that.

The probabilistic section covers Bayesian networks, variable elimination and particle filtering, which is material that has become weirdly rare in modern curricula. It is a genuine loss, because reasoning under uncertainty with explicit structure is exactly what you need when a neural model gives you a distribution and you have to do something responsible with it. The logic section at the end is the part students complain about most, and I understand why. Propositional and first order logic feel dated next to everything else.

I would still not skip it. Knowing what a resolution procedure does and where it breaks gives you a much better instinct for what symbolic tools can and cannot add to a language model pipeline. Practically, the course is well suited to self study. The content is chopped into short modules with slides, recorded video and written notes, and the lectures move through the same material more slowly with interaction.

What you will not reliably get from outside Stanford is the autograder infrastructure, so the assignments become somewhat honour system. Work through them anyway. The specifications are detailed enough that you can check your own results, and the implementations are the point. Prerequisites are real.

You need to be comfortable in Python, you need probability rather than a vague memory of probability, and linear algebra should not scare you. The course does not stop to teach these. Where CS221 falls short is depth and currency. Ten weeks across that much ground means every topic gets a competent introduction and no topic gets mastery.

There is very little here about transformers, and nothing meaningful about how modern language models are trained or served. That is not a flaw so much as a scope decision, but it does mean CS221 is a complement to a deep learning course rather than a replacement for one. My 4.4 reflects a course that does something almost nobody else does well. If you already know how to fine tune a model but could not explain what an admissible heuristic is, this is the gap in your education and this course is the cheapest way to close it.

[ final ]

The verdict.

Take this if you want to understand AI as a field rather than as a set of PyTorch recipes. It is the course that fills the gap most self taught engineers do not know they have.