Year 1
All students on the artificial intelligence pathway will take the following six required modules in their first year:
Computing Fundamentals
This module covers the principles of computer systems, hardware components, the essence of operating systems, and relevant computing-related mathematics. This module will provide the foundational underpinning to enable students to progress deeper into the disciplines of computing and networking, and a grasp of the history of computing, recent developments and its possible future.
Networking Overview
This module introduces the concepts of communications and networking. It explores the Open Systems Interconnectivity (OSI) 7-layer reference model and TCP/IP Routing Suite (the 5-layer Internet reference model). TCP/IP is the model which is most commonly deployed in the majority of modern-day networks.
Introduction to Web Design
The module introduces the concepts of web design, with a focus on designing responsive web sites that are targeted at mobile platforms. Students are introduced to HTML, CSS and JavaScript to provide with them the understanding of what goes into the front end of modern web sites. Using a series of case studies, students will analyse the design and layout of a range of existing sites using a number of common analysis techniques.
Introduction to Programming
This module introduces students to the concepts and practice of computer programming. It is aimed at providing students with an understanding of the fundamentals of computer programming by having them work through a range of tasks focused upon layout, structure and functionality. The core language taught is Python but C++ is also introduced.
Operating Systems
This module will introduce the concepts of operating systems, including their structure, memory and storage management, protection and security. Designed with software developers in mind, it will look closely at real-world operating systems such as Windows and UNIX.
Introduction to AI and Data Science
This module provides an introduction to the artificial intelligence and data science fields, covering the history of the discipline, exploring a variety of “classical AI” topics and the application of Python to solve data problems.
Year 2
All students on the artificial intelligence pathway will take the following six required modules in their second year:
Software Design, Development and Engineering
This module focuses on all phases of the modern software engineering lifecycle and advanced software engineering topics, including critical software, secure software, formal methods and project management from the practitioner’s perspective. This will be put into practice through the requirements gathering, design, implementation and testing of an extensive project that meets the needs of a particular enterprise.
Introduction to Relational Databases
This module provides essential knowledge and appreciation of the role of relational database systems, including basic principles and practice of design, implementation and development for both system designers and software engineers. It will include practical exercises in Structured Query Language.
Computing Research Skills, Professional Practice and Ethics
Research skills are an essential set of capabilities in the toolkit of a professional software engineer. In this module, students will develop knowledge and understanding of the purpose, processes, methods (surveys, experiments, interviews, case studies, etc.), analysis (qualitative and quantitative), and outputs of research and will be able to apply them. This module also delves into the professional, legal and ethical standards and guidelines that inform and guide best practice in business and computing.
Data Structures, Algorithms and Advanced Programming
This module focuses on data structures (e.g. linked lists, trees, heaps, hash tables, etc), algorithms (sorting, searching, dynamic programming, greedy, graph, geometric, cryptographic, string matching and compression algorithms, etc), and advanced programming techniques and other language paradigms.
Data Mining and Statistics
Data science includes many techniques for classification, analysis and prediction. This module focuses on those techniques relating to data mining and statistically driven approaches. These techniques also have the advantage of being “explainable AI”, more so than deep learning approaches, and some are long established techniques of “business intelligence”.
NoSQL Databases
Industry, commerce and research are being transformed by the potential to capture, store, manipulate, analyse and visualise data and information on a massive scale. The advent of Big Data with its variety, velocity and volume disrupted the way we store and manage data. During this module you will learn NoSQL approaches to data modelling, database design and manipulation.
Year 3
All students on the artificial intelligence pathway will take the following three module in their third year:
Project and Dissertation
The module provides the opportunity for students to apply and develop some of the knowledge and skills acquired in their degree by engaging in a significant project in a specialist area of computing, typically software or networks. It will enable and require students to utilise practical, intellectual and decision-making skills in novel situations and develop their autonomy and self-direction.
Neural Networks and Deep Learning
A sufficiency of inexpensive computing power, sufficiently large datasets and a number of key theoretical advances created deep learning techniques which have facilitated a wave of accuracy increases across many computational tasks (computer vision, natural language processing, speech recognition, autonomous driving, etc.), making many applications practical. Deep learning is central to modern artificial intelligence. This module explains the underlying mathematics and techniques and how to use them to achieve similar feats of computational accuracy.
AI and Data Science Applications
This module provides an opportunity to explore in greater depth several areas of artificial intelligence and data science. This will include an understanding of the domain theory, typical problems faced in the domain and how these might be solved.