Contact information


for all your questions and remarks related to the contents, organisation and examination of this course:

for all your questions and remarks related to the topic of probabilistic programming and the associated assignment:


How can I register for the course?

Registration for this course proceeds through OSIRIS. Also note that registration generally closes about 8 weeks before the start of the course (see registration dates). If you are planning on taking this course in your first year, you will be notified how to register during the Master Introduction in the first week. A lecturer has no OSIRIS-access to register you for the course! In case of problems, please contact the student desk of the graduate school of natural sciences.

Can I do a (thesis) project on a topic related to this course?

Sure! See this projects page to see whom in the department does research on related topics and just contact one of them.

Where can I get solutions to the exercises?

This (master) courses is not scheduled with exercise classes, so please consult your fellow students (through Blackboard or Teams) or the lecturer when you need help with solving exercises or checking your solutions. The lecturer is always available to answer your questions during or after the lectures. Exercises can be found in the syllabus and for each class, the schedule indicates what useful exercises are for the topics of that lecture.

For most types of exercise completely worked out examples are available either among the theory in the syllabus chapters, in the syllabus answer section (Chapter 8), or in the slides (note that, especially in the beginning, some of the proofs and examples in the course slides are in fact exercises from the syllabus).

A lot of exercises (especially those involving Pearl's algorithm!) require practice; these seem simple if you look at completely worked out examples, which is why we provide more exercises than just the completely worked out ones. For almost all exercises, the syllabus provides at least the outcome or a hint. Numerous exercises can be solved in many different ways; if your outcome matches the one given this usually means that you used a correct approach to solve it.

Why does a course on probabilistic reasoning focus mostly on Bayesian networks ?

Probabilistic graphical models (PGMs) in general are compact representations of a joint probability distribution over a set of random variables, where a graph is used to explicitly code the probabilistic independence relation among the variables. Probabilities are assumed to adhere to the Kolmogorov axioms. Bayesian networks are PGMs in which all variables are discrete, a directed graph is used for the encoding of independences and algorithms for exact inference exist. As such they provide for a model that is considered intuitive and can be constructed both from domain knowledge and from data, while allowing for computing probabilities that adhere to the rules of probability theory.

Probabilistic models other than Bayesian networks can often be considered as special cases of Bayesian networks with restricted topology (e.g. Naive Bayes classifiers, Hidden Markov models) or as a Bayesian network with continuous variables (e.g. Kalman filters). Markov models assume that an undirected graph is used for coding independences (e.g. Markov Random Fields, Icing models). So although the topic of Bayesian networks seems a limited account of probabilistic reasoning, we pretty much cover a large area of probabilistic models that allow for exact inference. The probabilistic programming part of the course addresses other types of probabilistic model and approximate inference.