Computation and Cognition: the Probabilistic Approach (Psych 204/CS 428, Fall 2018)


How can we understand intelligent behavior as computation? This course will introduce probabilistic modeling through probabilistic programs, and will explore the probabilistic approach to modeling human and artificial cognition. Examples will be drawn from areas including concept learning, causal reasoning, social cognition, and language understanding.

We will use Canvas to post announcements, collect assignments, and host discussion among students. We encourage students to post questions here instead of directly emailing the instructors: we hope students will attempt to answer each other’s questions as well (TAs will verify the answers). Trying to explain a concept to someone else is often the best way to check your own knowledge.

Assignments and grading

Students (both registered and auditing) will be expected to do assigned readings before class. Registered students will be graded based on:

or (see below),

Assignments should be submitted to Canvas in .pdf form; fixed-width font appreciated for code (e.g. using the editor at Homework assignments will be graded using letter grades:


Readings for each week will be linked from the calendar below. Readings will be drawn from the web-book Probabilistic Models of Cognition and selected research papers. (In some cases the papers will require an SUNet ID to access. See the instructor in case of trouble.)


There are no formal pre-requisites for this class. However, this is a graduate-level course, which will move quickly and have technical content. Students should be already familiar with the basics of probability and programming.

Other resources

In addition to the assigned readings below, here are notes from a few related short courses, that might prove useful:


Week of September 25

Introduction. Simulation, computation, and generative models. Probability and belief.

Homework: Exercises on Generative Models and (optionally) JavaScript Basics.


Week of October 2

Conditioning and inference. Causal vs. statistical dependency. Patterns of inference.

Homework: Exercises on conditioning, dependence, conditional dependence.


Week of October 9

Bayesian data analysis. Discussion on levels of analysis.

Homework: Exercises on Bayesian data analysis.


Week of October 16

Inference algorithms.

Project proposals due on Sunday!


Week of October 23

Process models. Learning as inference.


Week of October 30

Learning compositional hypotheses. The langauge of thought. Hierarchical models.


Week of November 6

Occam’s razor. Mixture models. Unbounded mixture models.


Week of November 13

Learning continuous functions. Deep probabilistic models.


Week of November 20

Thanksgiving – no class!

Week of November 27

Social cognition. Natural language pragmatics and semantics.


Week of December 4

Catch up. Project presentations!

Project option

Some students, especially graduate students may prefer to get in-depth experience applying the techniques we’ve discussed in class to a research question. To facilitate this, we will allow selected students to do a project instead of homework for the second half of the course. We encouraged (but don’t require) projects to be done in small groups of two or three people. Project proposals will be evaluated for plausibility and scientific value; about six projects will be selected to proceed.

Project proposal

Your proposal should be no more than one page long (single spaced). Make sure that you cover the background, key question, and methods of your project. The background should include the topic and the context of your project, including other research in this area. The specific question you are planning to ask through your project should be clearly stated. You should briefly describe the methods you plan to use (your experimental design, your modeling approach, your data analysis, and so on).

Upload your proposal to Canvas as a PDF file by midnight on TBA.

Project presentation

The presentations should describe your question, methods, and results at a high level.

Project writeup

Your final project should be described in the format of a conference paper, following the guidelines of paper submissions to the Cognitive Science Society conference. The easiest way is to download the pre-formatted template:

In particular, your paper should be no more than six pages long. Your paper should cover the background behind your project, the questions you are asking, your methods and results, and your interpretation of these results.