Our course finder pages contain all the most up-to-date information about the Network Science MSc, including details of the programme structure, compulsory and elective modules and study options.
Below is a full list of all modules which are expected to be available to students on this programme across the semesters. Please note that this is for information only and may be subject to change. Click the link above for accurate information about which of these modules are compulsory and elective for each semester of your MSc programme. Modules with codes beginning MTH are taught by the School of Mathematical Sciences (SMS). Modules with codes beginning ECS are taught by the School of Electronic Engineering and Computer Science (EECS).
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. You must also submit a project dissertation, which is completed during the summer - see the module description below for more details.
Modules are assessed by a mixture of in-term assessment and final examinations, which are held between late April and early June.
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.
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.
This module is an introduction to databases and their language systems in theory and practice.The main topics covered by the course are:
The main aims of the module are:
Online social networks and digital media services such as Facebook, twitter, Flickr, YouTube are changing the way we interact with the Internet and receive our news, content and recommendations. In this module, I aim to introduce the concepts around measurement, analysis, usability and privacy aspects of OSNs. The module will bring together a number of studies from different measurement studies on the topic, designs for new systems, and the directions that such networks are taking with the new digital media plans. This module will develop a deep understanding and analysis approach to learning specifically about Social Media and their properties.
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 course covers methods for machine learning from signals and data, including statistical pattern recognition methods, neural networks, and clustering. The aim of the course is to give students an understanding of machine learning methods, including pattern recognition, clustering and neural networks, and to allow them to apply such methods in a range of areas.
This course aims at providing students with Machine Learning skills based on the Python programming language as it is currently used in industry. Some of the presented methods are regression and classification techniques (linear and logistic regression, least-square); clustering; dimensionality reduction techniques such as PCA, SVD and matrix factorization. More advanced methods such as generalized linear models, neural networks and Bayesian inference using graphical models are also introduced. The course is self-contained in terms of the necessary mathematical tools (mostly probability) and coding techniques. At the end of the course, students will be able to formalize a ML task, choose the appropriate method in order to tackle it while being able to assess its performance, and to implement these algorithms in Python.
The MSc Network Science Project is a 60 credit module, at the end of which students write a project dissertation. The module spans the full academic year; the first semester is devoted to the project selection, and the main work on the project is usually performed in semester 2 and during the summer (project work is spread over two academic years for part-time students). The project can cover different advanced Network Science topics, from applications of Network Science to interesting problems in Data Science (e.g. recommendation systems, analysis of functional brain networks), or relevant current research questions (e.g. multilayer networks, network modelling). Each student is allocated a personal academic supervisor to guide them through the project.
This module addresses one of the most important topics in network theory: the study of dynamical processes taking place on networks. This module is essential for understanding the rich interplay between structure and dynamics in complex networks. The dynamical processes considered in this module have important applications and implications for real systems. For instance percolation on scale-free networks is crucial for understanding the robustness of many networks ranging from infrastructures and technological systems to the network in the cell. Similarly epidemic spreading is important to devise strategies to contain influenza spreading but also to model the spread of ideas and behaviour.
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 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 during the MSc, 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.
This module introduces you to some of the key technologies that are widely used for developing software applications in the financial markets and banking sectors. In particular, we focus on three programming environments/languages (Excel, VBA and C++) which are often used in conjunction to build complete trading and risk management systems. It is a highly practical module, focusing on current industry practice, and therefore you will be well equipped to apply for a programming role in a financial institution.