Students select four taught courses, subject to the stated restrictions. In addition to the four selected courses, the compulsory elements of the degree must all be completed. These are: the Introduction to Prolog, two MRes research projects, the Research Skills course, the Academic Writing course and the Individual Project.

Course 496 Mathematics for Machine Learning must be taken if any of the following courses are taken: 424H Reinforcement Learning, 433 Advanced Robotics, 493 Data Analysis and Probabilistic Inference, 495 Advanced Statistical Machine Learning and Pattern Recognition.