Compulsory courses for all AI students

Methods in AI research (compulsory)

Because of its interdisciplinary character, the variety of techniques used in artificial intelligence is considerable. In this course an overview is provided in three modules which focus on different aspects of artificial intelligence: techniques from logic and linguistics (module 1), from computer science (module 2) and from cognitive neuroscience (module 3). Reasoning being the general theme, the course shows what forms this can take in the different areas, ranging from idealization (module 1) to computation (module 2) to experiments (module 3).In the first module the students will study the formal aspects of reasoning in artificial intelligence. After an introduction describing the emergence, through the ages, of formal reasoning in philosophy and the sciences, students will be introduced to various formal systems and methods of proof, such as natural deduction, sequent calculi, Hilbert-style systems and display calculi. It will be shown how different views on reasoning can be captured in these proof systems. As an example, intuitionistic logic, linear logic as used in linguistics and fuzzy logic will be discussed. The type theoretic Curry-Howard isomorphism that connects proofs to programs will be treated. It will be shown how one can in a precise way capture various aspects of reasoning, such as its complexity, by the structure and size of proofs. The relation to famous open problems in computer science is explained. At the end of this module students will be able to construct proofs in the various proof systems and to translate proofs from one format to another. They understand and can use the mentioned logics and understand the different views on reasoning underlying them. They understand the proofs-as-programs paradigm and know what a normal or cut-free proof is.The second module covers various foundational techniques that are used for the development of intelligent systems in general and artificial agents in particular. We begin by refreshing the memory of the student by giving a crash course into modal logic. We begin with the general framework (syntax and Kripke-style semantics) and review applications such as epistemic logic, doxastic logic, temporal logic, dynamic logic and deontic logic. Also so-called minimal model modal logic with neighbourhood semantics with as application coalition logic. Students will do exercises with these standard techniques to be properly prepared for the other courses in the curriculum, in particular Intelligent Agents. Following the modal logic part, we focus on multi-agent programming techniques that can be used to implement multi-agent systems. We present a multi-agent programming language, present its operational semantics, and explain how its properties can be analysed by means of modal logic. The students will work with some programming exercise to master the use of the programming language. The final part of this module discusses probabilistic techniques for multi-agent learning, such as conditional expectation, Markov chains, Markov reward chains, decision reward chains, Markov decision processes (MDPs), stochastic games (multiple-player MDP's).In the third module, students will be introduced to current methods in cognitive brain research with examples taken from vision and language research using classroom lectures and practicals. This module will cover the entire spectrum of skills and techniques available to the cognitive neuroscience community, including neurophysiological research methods (such as fMRI and EEG), psychophysics, experimental design, modeling and basics data analyses. The practicals will give students hands-on experience with a number of techniques to create experiments in vision and/or language, acquire data and analyze the results from these experiments using SPSS and Matlab.

Philosophy of A.I. (compulsory)

In this course wewill consider questions such as "Can computers think?", "Can the Turing test determine whether computers can think?", "Can physical symbol systems think?", "Can Chinese rooms think?", "Can connectionist networks think?", "Can computers think in images?", "Do computers have to be conscious to think?", "Are thinking computers mathematically possible?". The course starts with two introductory sessions, after which the students present papers on topics pertaining to the topics listed above. The students are required to participate actively during the course, not only by preparing a stimulating presentation, but also by providing references to websites and literature, advance reading in order to be able to participate in the discussion afterwards. There are two presentations each meeting, both of around 25 minutes with an ensuing discussion of 20 minutes. At the beginning of the course students can sign up for the topic they would like to present a paper on. This course is very much a joint effort of students and teaching staff.There will be an entrance test at a very early stage in the course. For those students who hold a bachelor's degree in AI or have taken courses in philosophy of cognitive science or in philosophy of computer science, this test will prove to be easy. All other students are advised to do both of the following: 1) study Copeland's book before the start of the course, and 2) get in touch with the contact person for this course at an early stage.

This course is for Students History and Philosophy of Science, RMA Philosophy. Students of other MA-programmes, please contact the Course Coordinator. 


Intelligent agents

This course is about the theory and realisation of intelligent agents, pieces of software that display some degree of autonomy, realised by incorporating "high-level cognitive / mental attitudes" into both modelling and implementation of this kind of software. The agent concept calls for an integration of several topics in artificial intelligence, such as knowledge representation and reasoning (in particular reasoning about action and change) and planning. In the course time is devoted to the philosophical and theoretical (mostly logical) foundations of the area of intelligent agents. Furthermore, ways of realising them by special architectures and so-called agent-oriented programming languages in which one can program the "mental states" of agents are described. This course presents the introductory theory for the agent-oriented courses in the Master programme.

Multi-agent learning

This seminar focuses on forms of machine learning that typically occur in multi-agent systems. Topics include learning and teaching, fictitious play, rational learning, no-regret learning, targeted learning, multi-agent reinforcement learning and evolutionary learning.

Multi-agent systems

This course focuses on multi-agent issues and will consist of lecture, seminar and lab sessions.
The lectures will cover the following topics:

  • Game theory
  • Auctions
  • Communication
  • Social choice
  • Mechanism Design
  • Normative Multi-Agent Systems

The seminar sessions consists of student presentations and will cover other multi-agent system issues such as:

  • Logics for Multi-Agent Systems
  • Multi-Agent Organisations and Electronic Institutions
  • Normative Multi-Agent Systems
  • Argumentation and Dialogues in Multi-Agent Systems
  • Multi-Agent Negotiation
  • Communication and coordination in Multi-Agent Systems
  • Development of Multi-Agent Systems

Each student is expected to present some papers on one of the abovementioned topics.
In the lab sessions the students will develop multi-agent systems on different platforms such as 2APL and Jade.

Cognitive Processing

Cognitive Modeling

Formal models of human behavior and cognition that are implemented as computer simulations - cognitive models - play a crucial role in science and industry.
In science, cognitive models formalize psychological theories. This formalization allows one to predict human behavior in novel settings and to tease apart the parameters that are essential for intelligent behavior. Cognitive models are used to study many domains, including learning, decision making, language use, multitasking, and perception and action. The models take many forms including dynamic equation models, neural networks, symbolic models, and Bayesian networks.
In industry, cognitive models predict human behavior in intelligent 'user models'. These user models are used for example for human-like game opponents and intelligent tutoring systems that adaptively change the difficulty of a game or training program to a model of the human's capacities. Similarly, user models are used in the design and evaluation of interfaces: what mistakes are humans likely to make in a task, what information might they overlook on an interface, and what are the best points to interrupt a user (e.g., with an e-mail alert) such that this interruption does not overload them?
To be able to develop, implement, and evaluate cognitive models and user models, you first need to know which techniques and methods are available and what are appropriate (scientific or practical) questions to test with a model. Moreover, you need practical experience in implementing (components of) such models.
In this course you will get an overview of various modeling techniques that are used world-wide and also by researchers in Utrecht (esp. in the department of psychology and the department of linguistics). You will learn their characteristics, strengths and weaknesses, and their theoretical and practical importance. Moreover, you will practice with implementing (components of) such models during lab sessions.

Relationship between goals and examination
The learning goals will be examined in three ways:

  1. Students will implement components of cognitive models in computer simulations during computer practicals. These assignments will be graded.
  2. Students will evaluate the scientific literature by orally presenting and critiquing scientific papers that include cognitive models. The presentation and critiquing will be graded.
  3. Students will be tested on their general knowledge of cognitive models in an exam.

Experimentation in Psychology and Linguistics

Both science and industry are interested in creating precise formal models of human behaviour and cognition. To help build, test and optimise such models, one needs to create and run experiments. Students participating in this course will learn (I) how to design experiments given an existing model, (II) how to implement experiments using various tools and, finally, (III) how to extract data from the recorded responses for analysis purposes.
Most theoretical claims in linguistics and psychology are made by positing a formal model. The aim of such models is to make precise predictions. Moreover, the predictions of a model need to tested with formal experiments. The results of the experiment may or may not lead to changes in the model and thus lead to a new set of testable predictions.   Essential in the modelling-experimenting cycle is careful experimental design. The course covers the practical and theoretical considerations for experimental research, from posing the research question to interpreting and reporting experimental results.
In industry, experiments are also used frequently. For example, to assess how people use interfaces (e.g., where do they look or click, or how particular text influences their subsequent choices?), to test what the best design of a product is, or to test the appropriateness of a user model (e.g., do people learn what the model predicts them to learn, do they have a more immersive experience when a model guides adaptation of the software?).
In this course you will get an overview of various experimenting techniques that are used world-wide and also by researchers in Utrecht (esp. in the department of psychology and the department of linguistics). You will learn how to use such techniques for testing specific models, as well as where the limits of these technique lie. In the practicals you will also gain hands-on experience with the implementation, data manipulation and data analysis steps of experimenting.
The learning goals will be examined in three ways:

  1. Students will read and critically reflect on selected articles from the experimental literature. They will prepare a short presentation based on the critical reflection. The presentation will be graded.
  2. Students will implement experiments and work with experimental data during practicals. These will be graded.
  3. Students will design and implement an experiment on a topic of their own choice and write a note reporting on the experiment. Implementation and report will be graded.

Advanced Topics in Cognitive Science

In order to be a good scientist and a good practitioner within the fields of Cognitive Science and Artificial Intelligence, it is important that you are up to date with the latest theories and models in your field. Moreover, you should be able to critically evaluate such research. For example by being critical about its contribution, the applied method, and its application.
Once you understand these theories, you should be able to develop your own new hypotheses, experiments, and models based on existing theory such that you can further science and practice.
You will train these skills in this course. Specifically, you will gain insight in the various novel findings within Cognitive Science and Artificial Intelligence, in particular as made by researchers at Utrecht's department of Psychology and department of Linguistics. You will discuss research with the PIs that conducted the research, you will critique this work, and you will develop your own research proposals that build on this and other work.
The course goals will be examined in the following ways:

  1. Students will read recent research papers and attend seminars on recent research. They will submit questions about this research upfront and actively discuss the research with the expert researcher and fellow students. This will help them improve their ability to evaluate research. The lecturers will assess performance.
  2. Students will develop and present their own research proposals for new experiments, models, and/or theories. These will be graded.
  3. Students will critique the proposals of other students. This will again help them to develop proposals and to evaluate novel theories and models. The lecturers will assess performance.


Logic and Language

This course covers advancedmethods and ideas in the logical analysis of language, especially in relation to type-logical grammars, the parsing-as-deduction paradigm, and their combination with formal semantics of natural language. The course has a 'capita selecta' format, focusing on various aspects of the connection between language and reasoning. The 2014-2015 installment studies discourse dynamics from the perspective of continuations and continuation-passing-style interpretations. In the first part of the course, we study the origin of these concepts computer science (the control operators from programming language theory) and logic (double negation embeddings of classical logic into intuitionistic logic). In the second part of the course, we discuss the growing body of literature on natural language semantics that uses continuations to explicitly include the context of evaluation as a parameter in the meaning composition process. Topics include quantifier scope and evaluation order, cross-sentential anaphora, dynamic logic with exceptions.

Students Artificial Intelligence, for registration please contact your programme coordinator during the enrollment period.

Commonsense reasoning and argumentation

In commonsense reasoning, people are often faced with incomplete, uncertain or even inconsistent information. To deal with this, they use reasoning patterns where it can be rational to accept a conclusion even if its truth is not guaranteed by the available information. This course focuses on logics that systematise rationality criteria for such `defeasible' reasoning patterns. Logics of this kind are often called `nonmonotonic logics', since new information may invalidate previously drawn conclusions. This course covers some of the best-known nonmonotonic logics, in particular default logic, circumscription and argumentation systems, as well as formal theories of abductive reasoning. Attention is paid to the use of these formalisms in the specification of dynamic systems and in models of multi-agent interaction.

Logic and Computation

Students will learn how to answer one or more of the following research questions by means of an actor-based methodology in which each question will be addressed from multiple perspectives.+ What is a program?+ What is a computer?+ What are the practical implications of undecidability?+ What is the distinction between a stored-program computer and a universal Turing machine?+ What is the difference between a model (of computation) and a physical computer?  This is a reading &writing course. Attendance is obligatory. Homework will already be handed out during the first week of class with a firm deadline in the second week. Late arrivals in class will only be tolerated once; in other cases, they can lead to a deduction of the student’s final grade. The aim of the course on proofs as programs is to get an understanding of type theory and its role within logic, linguistics, and computer science and get acquainted to the Curry-Howard correspondence, relating types to propositions and programs to proofs. Students History and Philosophy of Science and Artificial Intelligence experiencing problems with enrollment, please contact the Student Desk Humanities,

This course is for Students History and Philosophy of Science, RMA Philosophy and Artificial Intelligents. Students of other MA-programmes, please contact the Course Coordinator. 

Free choice options (30 EC):

  • Choose from the mandatory courses of all three tracks
  • Do a research internship (7,5 or 15 EC)
  • Choose master courses within or outside the UU (subject to approval)
  • Choose courses freely from the following UU master programmes:

Neuroscience and Cognition 
e.g. Neurocognition of memory and attention

e.g. Linguistic data analysis, Acquisition and Linguistic Theory

e.g. Philosophy of Mind, Science and Epistemology III

Computing Science
e.g. Probabilistic reasoning, Evolutionary Computing, Datamining.

Game and Media Technology
e.g. Multimedia Retrieval, Computer Animation, Path Planning, Games and Agents.

Business Informatics
e.g. Software Architecture, Business Intelligence.

Master thesis project (45 EC)

In the final thesis project the student carries out a research project under the supervision of one of the staff members of the research groups offering the AI programme. The project can be done within Utrecht University or in a research-and-development department of a company or research institute, or at a foreign university. In the past, students have carried out external thesis projects in such companies as KPN, Origin, The Dutch Tax and Customs Office, Vitatron Medical B.V, TNO, NS, ING, STRO, VSTEP, LibRT and Playlogic Game Factory, and at foreign universities or with companies in Australia, Finland, Sweden, Germany, Italy, Spain, the UK, the USA and Switzerland.

When done within the Utrecht University, your final thesis project is monitored by a supervisor from the AI-programma teaching staff. When the final project is conducted within a company or external institute, you will be guided by both a local supervisor within the company/institute and a supervisor of the AI-programme teaching staff.