7th September - 12th September 2020

This course is organized by the Translational Neuromodeling Unit (TNU) , University of Zurich & ETH Zurich and is designed to provide students across fields (neuroscience, psychiatry, physics, biology, psychology....) with the necessary toolkit to master challenges in computational psychiatry research.

The CPC Zurich is meant to be practically useful for students at all levels (MDs, Master, PhD, Postdoc, PI) coming from diverse backgrounds (neuroscience, psychology, medicine, engineering, physics, etc.), who would like to apply modeling techniques to study learning, decision-making or brain physiology in patients with psychiatric disorders. The course will teach not only the theory of computational modeling, but also demonstrate software in application to example data sets.

We strongly believe in open source and open science, therefore, the content of the course will be made freely accessible on the web.




5 days + 1 day (Practical Tutorials)
(between 8am MESZ and 6pm MESZ)

7th – 12th September 2020

Registration Start
28. February 2020

Registration Ends
23. August 2020

Designed For
Master Students, PhDs, PostDocs, Clinicians and anyone interested in Computational Psychiatry

3 ECTS for University of Zurich & ETH Zurich students
This course is part of the HS (fall term) 2020 and will be available on ETH MyStudies and the UZH course catalogue in due time. For ECTS you will need to sign up in ETH myStudies in addition to registering here. UZH students must register and sign up in ETH myStudies as “UZH Fachstudent/in”.

Perfomance Assessment
Oral examination on 18th September 2020.


The CPC is divided into two parts: The main course (day 1-5) and in-depth practical tutorials (day 6).


The first day will cover topics in Psychiatry providing a conceptual basis for the type of questions that Computational Psychiatry will need to address.

The second day will explain basic modelling principles (basic mathematical terminology, step-by-step guide on how to build a model, model fitting, model inversion and model selection) and will finish with a first introduction to a possible learning model (Reinforcement Learning).

The third day will include models of perception (Psychophysics, Bayesian Models od Perception, Predicitve Coding) and action selection (Markov Decision Processes, Active Inference, Drift Diffusion Models).

The fourth day (only half a day) will include Machine Learning (basics and advanced) and models of connectivity (Dynamic Causal Modeling and Advanced Models of Connectivity).

The fifth day will feature a series of talks on practical applications of computational models to problems from psychiatry.

The sixth day of the course will provide in-depth practical sessions of a subset of the presented models for a smaller fraction of students (seperate registration).


The practical tutorials on the sixth day will provide 3-hour, small-group, in-depth and hands-on sessions on a specific modelling approach. To get the most out of the tutorial, students are advised to bring their own laptops along. The practical sessions cover only open-source software packages. The code can be found under the respective links below.

  • Practical Session A with Tore Erdmann, Sandra Iglesias, & Lilian Weber
    Bayesian Learning using the Hierarchical Gaussian Filter (HGF, TNU Tapas)

    In this tutorial, we will recap the theory underlying the HGF (a Hierarchical Bayesian Inference Model) and introduce the model in an accessible way. We will then discuss practical issues when fitting computational models to behavioral data and go through code examples using the HGF Toolbox.

  • Practical Session B with Thomas Parr & Philipp Schwartenbeck
    Active Inference using the Active Inference Toolbox

    This tutorial provides a practical guide on developing computational models. You will be taught to build simple simulations using Matlab, and will use these to explore the behavioral and electrophysiological manifestations of active inference. We aim to develop an intuitive understanding of the theoretical principles, without requiring detailed technical knowledge.

  • Practical Session C with Woo-Young Ahn, Nathaniel Haines & Jaeyeong Jayce Yang
    Reinforcement Learning & Decision-Making using the hBayesDM Package

    In this tutorial, you will learn how to use a Bayesian package called hBayesDM for modeling various reinforcement learning and decision making (RLDM) tasks. A short overview of (hierarchical) Bayesian modeling will also be provided. You will also learn the most important things you need to check when reporting modeling results in publications.

  • Practical Session D with Lionel Rigoux & Eduardo A. Aponte
    Model Inversion using the Variational Bayes Toolbox

    This hands-on tutorial is a crash course on practical computational modelling. You will build a simple model (delay discounting) and learn how to apply it on empirical data to perform parameter estimation and model selection. We will use the VBA-toolbox which contains all the tools to simulate, estimate, and diagnose your models, as well as a collection of ready-to-use models (e.g. Q-learning, DCM). No previous experience with modelling is required, but basic knowledge of Matlab is recommended.

  • Practical Session E with Thomas Wolfers & Saige Rutherford
    Machine Learning using NISPAT

    Would you like to learn more about normative modelling in psychiatry? In this tutorial you will learn the “why” and the “how” of simple normative models. You will take home a better understanding of this technique, machine learning, and some transferable Python programming skills.

  • Practical Session F with Jakob Heinzle & Herman Galioulline
    Dynamic Causal Modelling using the SPM-DCM Package

    In this tutorial you will learn how to use the SPM software to perform a dynamic causal modeling (DCM) analysis in Matlab. We will first guide you through all steps of a basic DCM analysis of a single subject: Data extraction, Model setup, Model inversion and, finally, inspection of results. We will then proceed to look at a group of subjects. Here, we will focus on model comparison and inspection of model parameters. We will provide a point-by-point recipe on how to perform the analysis. However, it is of advantage if you have worked with neuroimaging (fMRI) data and Matlab before.

  • Practical Session G with Stefan Frässle & Cao Tri Do
    regression DCM - An Advanced Model of Connectivity using Tapas rDCM

    Regression dynamic causal modeling (rDCM) represents a novel variant of DCM for fMRI that allows inferring effective (directed) connectivity in whole-brain networks with high computational efficiency. In this tutorial, you will familiarize yourself with the rDCM toolbox, get insights into the theoretical concepts and practical applications of the model, and learn how to set-up your own whole-brain effective connectivity analyses. Experience with (standard) DCM and Matlab programming is beneficial for this tutorial.

  • Practical Session H with Yu Yao & Matthias Müller-Schrader
    Hierarchical Unsupervised Generative Embedding - An Advanced Model of Connectivity using Tapas HUGE

    In this tutorial, you will learn how to use the HUGE-toolbox to perform model-based group-level analysis on task fMRI data. HUGE is a hierarchical extension of dynamic causal model (DCM) for fMRI which provides a unified framework for performing fitting of DCM and group-level analysis, such as empirical Bayesian analysis or stratification, i.e. the identification of subgroups, of heterogeneous cohorts. For this tutorial, we expect that you have experience with classical fMRI analysis and classical DCM, and a basic level of familiarity with the Matlab programming language.

Woo-Young AhnSeoul National University, South Korea
Eduardo A Aponte Pharma Research & Early Development Informatics, Roche Innovation Center Basel, Switzerland
Sonia BishopUC Berkeley, United States
Michael BreakspearUniversity of Newcastle, Australia
Jean DaunizeauBrain and Spine Institute, ICM, France
Cao Tri Do University of Zurich & ETH Zurich, Switzerland
Tore ErdmannScuola Internazionale Superiore di Studi Avanzati, Italy
Stefan FrässleUniversity of Zurich & ETH Zurich, Switzerland
Marta GarridoUniversity of Melbourne, Australia
Herman GalioullineUniversity of Zurich & ETH Zurich, Switzerland
Nathaniel HainesOhio State University, USA
Jakob HeinzleUniversity of Zurich & ETH Zurich, Switzerland
Marcus HerdenerUniversity of Zurich, Switzerland
Philipp Homan University Hospital of Psychiatry Zurich, Switzerland
Sandra IglesiasUniversity of Zurich & ETH Zurich, Switzerland
Sahib Khalsa Laureate Institute for Brain Research, United States
Roland von KänelUniversity Hospital Zurich, Switzerland
Andre MarquandDonders Institute, Netherlands
Christoph MathysScuola Inernazionale Superiore di Studi Avanzati, Italy
Matthias Müller-SchraderUniversity of Zurich & ETH Zurich, Switzerland
Gina PaoliniKlinik für Psychiatrie und Psychotherapie, Clienia Schlössli AG Switzerland
Thomas ParrUCL London, UK
Mads Lund PedersenUniversity of Oslo, Norway
Frederike PetzschnerBrown University, USA
Lionel RigouxMax Planck Institute Cologne, Germany
Saige RutherfordDonders Institute, Netherlands
Helen SchmidtUniversity of Zurich & ETH Zurich, Switzerland
Philipp SchwartenbeckUCL London, UK
Jakob SiemerkusUniversity of Zurich & ETH Zurich, Switzerland
Klaas Enno StephanUniversity of Zurich & ETH Zurich, Switzerland
Lilian WeberUniversity of Zurich & ETH Zurich, Switzerland
Katja WiechUniversity of Oxford, UK
Thomas WolfersDonders Institute, Netherlands
Jaeyeong Jayce YangSeoul National University, South Korea
Yu YaoUniversity of Zurich & ETH Zurich, Switzerland

The Computational Psychiatry Course does not receive any sponsoring from the pharmaceutical industry.


The Translational Neuromodeling Unit (TNU) has been organizing the Computational Psychiatry Course in Zurich since 2015. All materials from previous courses can be found here.

Dr. Frederike Petzschner


Prof. Klaas Enno Stephan


Katharina V. Wellstein


Nicole Jessica Zahnd

Contact Person

Heidi Brunner


Inês Pereira

Contact Person