Year One
Academic year 2021
Compulsory
Autumn
- 40001 Introduction to Computer Systems
- 40002 Mathematics I: Foundations
- 40003 Logic
- 40004 Discrete Mathematics
- COMPM0101 Introduction to Remote Learning
Autumn , Spring and Summer
Spring
- 40005 Introduction to Computer Architecture
- 40006 Reasoning about Programs
- 40007 Introduction to Databases
- 40008 Graphs and Algorithms
Extracurricular
Autumn
Autumn , Spring and Summer
Year Two
Academic year 2021
Compulsory
Autumn
- 50001 Algorithm Design and Analysis
- 50002 Software Engineering Design
- 50003 Models of Computation
- 50004 Operating Systems
Autumn and Spring
Spring
- 50005 Networks and Communications
- 50006 Compilers
- 50007.2 Introduction to Prolog
- 50008 Mathematics 2: Probability and Statistics
- 50011 Computational Techniques
Spring and Summer
Summer
Extracurricular
Autumn
Autumn , Spring and Summer
Spring
Year Three
Academic year 2021
Compulsory
Autumn
Autumn and Spring
Selective Choose the equivalent of between five and six full courses from the list below. Courses whose number ends in H are half courses.
Autumn
- 60001 Advanced Computer Architecture
- 60002 Advanced Databases
- 60020 Simulation and Modelling
- 60023 Type Systems for Programming Languages
- 70050 Introduction to Machine Learning (Term1)
Spring
- 60003 Communicating Computer Science in Schools
- 60005 Graphics
- 60006 Computer Vision (Term2)
- 60008 Custom Computing
- 60009 Distributed Algorithms
- 60013 Logic-Based Learning
- 60015 Network and Web Security
- 60017 Performance Engineering
- 60018 Pervasive Computing
- 60019 Robotics
Optional Choose the equivalent of between zero and one full courses from the list below. Courses whose number ends in H are half courses.
Autumn and Spring
Extracurricular
Autumn
Autumn , Spring and Summer
Year Four
Academic year 2021
Compulsory
Autumn
Autumn , Spring and Summer
Spring
Selective Choose the equivalent of between three and five full courses from the list below. Courses whose number ends in H are half courses.
Autumn
- 60001 Advanced Computer Architecture
- 60020 Simulation and Modelling
- 70004 Advanced Computer Security
- 70005 Complexity
- 70008 Concurrent Processes
- 70015 Mathematics for Machine Learning
- 70018 Privacy Engineering
- 70020 Program Analysis
- 70022 Scalable Systems and Data
- 70023 Separation Logic: Scalable Reasoning about Programs
- 70028 Reinforcement Learning
Spring
- 70001 Advanced Computer Graphics
- 70003 Advanced Robotics
- 70009 Cryptography Engineering
- 70010 Deep Learning
- 70014 Machine Learning for Imaging
- 70016 Natural Language Processing
- 70017 Principles of Distributed Ledgers
- 70019 Probabilistic Inference
- 70024 Software Reliability
- 70025 Software Engineering for Industry
- 70029 Probabilistic Programming
- 70030 Knowledge Representation
- 70031 Modal Logic for Strategic Reasoning in AI
Optional Choose the equivalent of between zero and two full courses from the list below. Courses whose number ends in H are half courses.
Autumn and Spring
- BUSI96001 Entrepreneurship
- BUSI96003 Business Economics
- CLCC00020 Japanese Level 3
- COMPM0451 External Course 4I
- COMPM0452 External Course 4II