Compulsory modules

Computer Science and Mathematics Project

The aim of this module is to allow students to demonstrate their mathematical skills and their analysis, design and programming skills acquired in previous modules by applying what they have learned to use the tools of both computer science and mathematics to solve a substantial problem.

Optional modules

Software Engineering: Practices and Principles

More information to follow.

Enterprise Resource Planning Systems

The aims of this module are to:

  • Introduce students to the need for enterprise-wide information systems.
  • Introduce students to the underlying principles behind enterprise resource planning (ERP) systems.
  • Provide students with experience of using a leading ERP system.

Agent-Based Systems

The aim of this module is to introduce the student to distributed AI systems through the notion of an agent, how it can be constructed, and how multiple agents can be made to co-operate effectively with one another to solve complex AI problems.

Algorithm Analysis

The aims of this module are to enable students to analyse the amount of resources needed to solve a given computational problem and to compare the efficiency of different algorithms for that problem. The design of algorithms for solving a variety of computational problems will be studied. Techniques for proving statements about the complexity of computational problems are also explored.

Distributed Systems

With the advance of networking, distributed systems are essential and omnipresent in information technology.

The aims of the module are for students to learn:

  • Skills and knowledge on distributed systems with their benefits and challenges.
  • Techniques and algorithms to solve problems in distributed computing.
  • Skills to design and analyse distributed algorithms.

Cyber Risk Management

More information to follow.

Human Factors and Cyber Security

More information to follow.

Analysis 3

The aims of this module are:

  • To give students some real understanding of mathematical concepts involved in higher dimensional calculus.
  • To prove theorems involving functions in more than one dimension.

Probability Theory

The aims of this module are:

  • To introduce basic concepts and methods of probability theory.
  • To provide the requisite theoretical background for later probability and statistics modules.

Applied Statistics

The aims of this module are:

  • To introduce fundamental statistical concepts.
  • To introduce statistical methods and associated theory for design and analysis of studies and experiments.
  • To develop statistical software skills.
  • To reinforce skills regarding the interpretation of statistical analyses.

Introduction to Differential Geometry

The aim of this module is to introduce the basic ideas and methods of the classical differential geometry of curves and surfaces in three-dimensional Euclidean space.

Computational Methods for Differential Equations

The aim of this module is to give a theoretical and practical knowledge of numerical methods for the approximation of ordinary and partial differential equations.

Introduction to Dynamical Systems

The aim of this module is to introduce students to the notions and methods of the theory of dynamical systems with an emphasis on its applications.

Asymptotic Methods

The aims of this module are:

  • To introduce the concept of small and large parameters in equations and how they can be exploited to simplify difficult mathematical problems.
  • To introduce a wide range of approximation techniques to analyse differential equations and integrals.

Operational Research

The aims of this module are:

  • To introduce students to the nature of operational research and its techniques.
  • To study linear programming, its applications and associated algorithms.

Robotics

The aims of this module are to provide students with the relevant concepts of robotics from the AI perspective and the skills for developing learning systems that apply to robotics.

Advanced Artificial Intelligence Systems

The aim of this module is to cover the main algorithms in advanced artificial intelligence, intended as those that recently have seen considerable impact in science, technology and applications.

The module will introduce specific methods and their algorithmic features and implementations, linking those methods to the particular problems that can be solved.

Medical Statistics

The aims of this module are to reinforce students' skills in interpreting statistical tests and using statistical software, and to introduce the methods and theory for the design and analysis of medical trials.

Studies in Science and Mathematics Education

The aims of the module are:

  • To develop a range of skills within students and provide an early introduction to teaching for those interested in pursuing it, or a related field, as a career.
  • To develop confidence and competence in communicating their subject.
  • To provide opportunities to devise and develop science and mathematics projects and teaching methods appropriate to the age and ability of those the student is working with.

Computational Methods in Finance

This module aims to:

  • Introduce numerical methods and associated theory for modelling of financial options.
  • Teach students how to implement such numerical methods on computers.
  • Gain experience in interpreting numerical results.

Mobile Application Development

The aim of this module is to introduce the essentials and some advanced topics in mobile application development using mainly an open source platform.

Web Systems: Security, Architecture, Development

More information to follow.

Data Mining and Machine Learning

This module aims to introduce key concepts in data mining and machine learning by focusing on the fundamental ideas that are applicable in both fields.

The module will provide students with the knowledge and experience of using existing tools to analyse and model data associated with practical applications.

The module will also provide a general overview of artificial intelligence (AI), its scope and applications.

Cryptography and Network Security

The aim of this module is to introduce the students to the main cryptographic techniques in use today as well as their application to various areas of network security.

Computer Vision

The aim of this module is to introduce students to commonly used computer vision and image/video processing/analysis techniques and algorithms.

Computer Animation

The aim of this module is to introduce students to commonly used techniques and algorithms for computer generated animations.

Digital Forensics

More information to follow.

Applied Cryptography

More information to follow.

Elements of Topology

The aim of this module is to give a grounding in the central ideas of topology, sufficient for the main applications in geometry, analysis and mathematical physics.

Linear Differential Equations

The aims of this module are:

  • that students gain familiarity with linear ODEs with non-constant coefficients
  • to introduce linear PDEs with constant and non-constant coefficients

Vibrations and Waves

The aim of this module is to investigate physical phenomena that involve vibrations and waves using appropriate mathematical tools.

Game Theory

The aims of this module are:

  • To introduce rigorous mathematical tools which are useful in economics analysis.
  • To give students a solid mathematical background in game theoretic models.

Mathematical Biology

The aims of this module are:

  • To introduce some mathematical models of biological systems and various techniques for analysing them.
  • To enable students to appreciate how mathematics can be used to model biological systems.