Below is a full list of all modules which are expected to be available to students on this programme across the semesters. In addition to these, as part of the taught module requirement, an MSc student may also choose up to two approved Level-6 undergraduate mathematics or statistics modules and up to two approved MSc Astrophysics modules offered by the School of Physics and Astronomy. You must also submit a project dissertation, which is completed during the summer - see the module description below for more details.
An MSc taught module typically comprises 24 hours of lectures and 12 hours of tutorials, given during one of the two 12-week teaching semesters. Our current offered MSc modules in mathematics and statistics are listed below.
Modules are assessed by a mixture of in-term assessment and final examinations, with examinations being held between late April and early June.
Please note that this is for information only and may be subject to change.
This module builds on the combinatorial ideas of the modules Combinatorics and Extremal Combinatorics and introduces some of the more advanced tools for solving combinatorial and graph theoretic problems. The topics covered will depend on the module organiser's expertise but significant emphasis will be on the techniques used as well as the results proved. This module aims to introduce students to some of the more advanced techniques used in combinatorics such as the Regularity Lemma, probabilistic techniques, the discrete Fourier transform, eigenvalue methods and generating functions with the intention that the students will be able to recognise and then apply the appropriate tools in unfamiliar situations.
This module builds on the earlier module "Machine Learning with Python", covering a number of advanced techniques in machine learning, such as dimensionality reduction, support vector machines, decision trees, random forests, and clustering. Although the underlying theoretical ideas are clearly explained, this module is very hands-on, and you will implement various applications using Python in the weekly coursework assignments.
The semester will be divided into three four-week 'months'. In each month there is a genuine piece of applied statistics, led by a different lecturer. The lecturer will set it up with at most two lectures. At the end of the month the student will hand in a report of 10-15 pages. Statistical techniques and statistical computing packages from previous statistics courses will be needed. The three topics will be chosen from the following list:
The module aims to introduce you to the Bayesian paradigm. The module will show you some of the problems with frequentist statistical methods, show you that the Bayesian paradigm provides a unified approach to problems of statistical inference and prediction, enable you to make Bayesian inferences in a variety of problems, and illustrate the use of Bayesian methods in real-life examples.
The Bayesian paradigm: likelihood principle, sufficiency and the exponential family, conjugate priors, examples of prior to posterior analysis, mixtures of conjugate priors, non-informative priors, two sample problems, predictive distributions, constraints on parameters, point and interval estimation,hypothesis tests, nuisance parameters.
Complex systems can be defined as systems involving many coupled units whose collective behaviour is more than the sum of the behaviour of each unit. Examples of such systems include coupled dynamical systems, fluids, transport or biological networks, interacting particle systems, etc. The aim of this module is to introduce students to a number of mathematical tools and models used to study complex systems and to explain the mathematical meaning of key concepts of complexity science, such as self-similarity, emergence, and self-organisation. The exact topics covered will depend on the module organiser's expertise with a view to cover practical applications using analytical and numerical tools drawn from other applied modules.
Introduction to the field of complex systems via a number of representative examples and models of these systems (e.g., coupled dynamical systems, time-delayed systems, stochastic processes, networks, time series, fractals, multifractals, particle models).
This module introduces modern methods of statistical inference for small samples, which use computational methods of analysis, rather than asymptotic theory. Some of these methods such as permutation tests and bootstrapping, are now used regularly in modern business, finance and science.
The techniques developed will be applied to a range of problems arising in business, economics, industry and science. Data analysis will be carried out using the user-friendly, but comprehensive, statistics package R.
A dynamical system is any system which evolves over time according to some pre-determined rule. The goal of dynamical systems theory is to understand this evolution. This module develops the theory of dynamical systems systematically, starting with first-order differential equations and their bifurcations, followed by phase plane analysis, limit cycles and their bifurcations, and culminating with the Lorenz equations and chaos. Much emphasis is placed on applications.
This module provides an introduction to advanced group theory. The aim is to explore the theory of finite groups by studying important examples in detail, such as simple groups. In particular, the projective special linear groups over small fields provide a rich vein of interesting cases on which to hang the general theory. This module covers a review of undergraduate group theory, permutation group theory, matrix groups and simple groups.
This module provides exposure to advanced techniques in algebra at an MSc or MSci level. Algebra encompasses familiar objects such as integers, fields, polynomial rings and matrices and has applications throughout mathematics including to geometry, number theory and topology. The module will complement the algebra module offered in Semester A and will cover topics either in commutative or noncommutative algebra. Included will be basic definitions and theorems in either case, normally with rings or fields as a starting point. The aim of this module is to expose students to advanced techniques in algebra, which complement those presented in the module Group Theory. The module is also seen as a way to prepare students to study more advanced algebra subjects at PhD level. The topics covered will depend on the expertise of the lecturer. These could be drawn from the theory of rings and their modules, Galois theory or elements of algebraic geometry. Commutative algebra or noncommutative algebra could also be covered.
This module will introduce you to some of the most widely-used techniques in machine learning (ML). After reviewing the necessary background mathematics, we will investigate various ML methods, such as linear regression, polynomial regression and classification with logistic regression. The module covers a very wide range of practical applications, with an emphasis on hands-on numerical work using Python. At the end of the module, you will be able to formalise a ML task, choose the appropriate method to process it numerically, implement the ML algorithm in Python, and assess the method’s performance.
This is an introductory module on the Lebesgue theory of measure and integral with application to probability. You are expected to know the theory of Riemann integration. Measure in the line and plane, outer measure, measurable sets, Lebesgue measure, non-measurable sets. Sigma-algebras, measures, probability measures, measurable functions, random variables. Simple functions, Lebesgue integration, integration with respect to general measures. Expectation of random variables. Monotone and dominated convergence theorems, and applications. Absolute continuity and singularity, Radon-Nikodym theorem, probability densities. Possible further topics: product spaces, Fubini's theorem.
This module is designed to provide students with the skills and expertise to access, read and understand research literature in a wide range of mathematics and its applications. In addition, students will gain the necessary background for delivering efficient and professional oral presentations, poster presentations and scientific writing. Finally, the course is aimed to constitute a guide as well as a first training in research oriented tools and careers.
This module aims to:
This module aims to present some advanced probabilistic concepts and demonstrate their application to stochastic modelling of real-world situations. The topics covered include renewal theory, continuous-time Markov processes and Brownian motion. In addition to exposure to proofs and theoretical material, students develop practical skills through a large number of problems and worked examples. A stochastic process is a system evolving in time in a random way. Besides being of fundamental interest to probability theory, stochastic processes have applications in diverse fields such as financial mathematics, operations research and mathematical biology. This module is an introduction to stochastic processes and related probabilistic concepts. The focus is on continuous time stochastic processes, for which time is an element of the real numbers.Topics include:
This module focuses on the use of computers for solving applied mathematical problems. Its aim is to provide students with proper computational tools to solve problems they are likely to encounter while doing their MSc or MSci, and to provide them with a sound understanding of a programming language used in applied sciences. The topics covered will include basics of scientific programming, numerical solution of ordinary differential equations, random numbers and Monte Carlo methods, simulation of stochastic processes, algorithms for complex networks analysis and modelling. The emphasis of the module would be on numerical aspects of mathematical problems, with a focus on applications rather than theory.