The modules offered in each year are listed below.
Year One
Academic year 25-26
Core
Autumn
- 40001 Introduction to Computer Systems
- 40007 Introduction to Databases
- 40016 Calculus
- COMPM0101 Introduction to DoC Systems
Autumn and Spring
Autumn, Spring and Summer
Spring
Unknown Term
Extracurricular
Autumn, Spring and Summer
- COMPM0193 Additional Tuition
- COMPM0701 Programming Competition Training
- COMPM0804 Student Support and Wellbeing
Year Two
Academic year 25-26
Compulsory
Autumn
- 50001 Algorithm Design and Analysis
- 50002 Software Engineering Design
- 50004 Operating Systems
- 50008 Probability and Statistics
Autumn and Spring
Spring
- 50003 Models of Computation
- 50005 Networks and Communications
- 50007.2 Computing Practical 2 (Intro to Compilers)
- 50013 Machine Learning
Spring and Summer
Summer
Elective - Choose 1 ECTS (should be equivalent to 0 modules)
Spring
Extracurricular
Autumn
Autumn, Spring and Summer
Year Three
Academic year 25-26
Core
Autumn
Spring
Summer
Elective - Choose from 15 to 20 ECTS (should be equivalent to 3 to 4 modules) from the following list
Autumn
- 60001 Advanced Computer Architecture
- 60012 Introduction to Machine Learning
- 60016 Operations Research
- 60023 Type Systems for Programming Languages
- 60029 Data Processing Systems
- 60033 Computing Research Collective
- 60884W Mathematics for Machine Learning
Spring
- 60003 Communicating Computer Science in Schools
- 60005 Graphics
- 60006 Computer Vision
- 60013 Logic-Based Learning
- 60017 System Performance Engineering
- 60019 Robotics
- 60021 Year 3 Software Engineering Group Project
- 60034 Deep Learning
- 60035 Natural Language Processing
Compulsory - Choose from 5 to 7.5 ECTS (should be equivalent to 1 module) from the following list
Autumn and Spring
Spring
- 60024 Researching Academic Integrity in an Artificial Intelligence Driven World
- 60028 Demystifying Machine Learning: Theory and Applications
Elective - Choose from 0 to 7.5 ECTS (should be equivalent to 0 to 1 modules) from the following list
Autumn and Spring
Extracurricular
Autumn
Autumn, Spring and Summer
Year Four
Academic year 25-26
Core
Autumn
Autumn, Spring and Summer
Elective - Choose from 5 to 25 ECTS (should be equivalent to 1 to 5 modules) from the following list
Autumn
- 70005 Complexity
- 70006 Computational Finance
- 70015 Mathematics for Machine Learning
- 70017 Principles of Distributed Ledgers
- 70021 Quantum Computing
- 70022 Scalable Systems and Data
- 70023 Scalable Software Verification
- 70025 Software Engineering for Industry
- 70028 Reinforcement Learning
- 70068 Scheduling and Resource Allocation
- 70086 Advanced Computer Architecture
- 70100 Computational Neurodynamics
- 70103 Statistical Information Theory
- 70887W Machine Learning Systems and Hardware
Spring
- 70001 Advanced Computer Graphics
- 70007 Computational Optimisation
- 70010 Deep Learning
- 70014 Machine Learning for Imaging
- 70016 Natural Language Processing
- 70019 Probabilistic Inference
- 70020 Program Analysis
- 70031 Formal Methods for Safe AI
- 70067 Robot Learning
- 70070 Custom Computing
- 70098 Introduction to Concrete Complexity
- 70105 Deep Graph-Based Learning
- 70112 Non-Euclidean Methods in Machine Learning
- 70886W Generative AI
Selective 1 - Choose from 10 to 20 ECTS (should be equivalent to 2 to 4 modules) from the following list
Autumn
Spring
Elective - Choose from 0 to 12.5 ECTS (should be equivalent to 0 to 2 modules) from the following list
Autumn and Spring
- COMPM0451 External Module I (5 ECTS)
- COMPM0452 External Module I (7.5 ECTS)
- COMPM0453 External Module II (5 ECTS)