Search results
Showing courses for all available years.Filter courses by 2025
Enter the dynamic world of Artificial Intelligence with AIML 131. Delve deep into Large Language Models, such as ChatGPT, addressing challenges like bias and hallucinations. Witness the power of text-to-image generation through tools like Midjourney....
Techniques in Machine Learning
AIML 231
This course introduces core concepts and techniques in machine learning, as well as commonly used software libraries for implementing machine learning pipelines. It includes an overview of the machine learning field, including supervised and unsuperv...
This course introduces various concepts and techniques of broad applicability to artificial intelligence and machine learning. It includes an introduction to common machine learning paradigms such as neural networks and evolutionary learning; gradien...
Artificial Intelligence
AIML 320
This course addresses concepts and techniques of artificial intelligence (AI). It provides a brief overview of AI history and search techniques, as well as covering important machine learning topics, tools, and algorithms with their applications, inc...
Computer vision and image processing has a wide range of real-world applications, such as automated vehicles and face recognition. This course addresses key AI techniques, tasks, and applications in this area. The course covers a range of topics, sta...
AI Natural Language Processing
AIML 332
This course introduces the basic concepts, applications and algorithms for natural language processing, with a particular focus on processing and analysing large natural language data sets. The course will cover topics such as text representation, te...
Acting, Planning, and Scheduling
AIML 333
This course introduces key concepts, techniques and algorithms for AI systems that perform actions. It starts with reactive systems that respond intelligently to observations, expands to AI systems that use their knowledge about the world to plan or ...
Directed Individual Study
AIML 338
A supervised programme of study approved by the Head of School.
Artificial Intelligence Project
AIML 339
A capstone project to construct a solution to an AI task. The project may be an individual or a group project.
Artificial Intelligence
AIML 420
This course addresses concepts and techniques of artificial intelligence (AI). It provides a brief overview of AI history and search techniques, as well as covering important machine learning topics, tools, and algorithms with their applications, inc...
Neural Networks and Deep Learning
AIML 425
Uncover the fundamentals of neural network-based deep learning. In this course you will learn the state-of-the-art methods for classification, regression, and generative modelling, giving you the building blocks for designing your own chatbots as wel...
This course addresses evolutionary approaches in machine learning and optimisation. The course will cover both evolutionary algorithms and swarm intelligence as well as some other population-based techniques for problem solving. It will include a ran...
Big Data
AIML 427
Big Data refers to the large and often complex datasets generated in the modern world: data sources such as commercial customer records, internet transactions, environmental monitoring. This course provides an introduction to the theory and practice ...
This course focuses on text mining and natural language processing. It covers a variety of topics including text representation, document classification and clustering, opinion mining, information retrieval, recommender systems, query expansion, and ...
AIML 430 explores AI's diverse applications in today's world and what the future might hold. We go beyond just understanding AI solutions, diving into how AI techniques can have real-world consequences and ramifications. Develop your ability to criti...
This course addresses several current topics in artificial intelligence. Possible topics include Reinforcement Learning, AI for robotics, AI in games, Intelligent image analysis, AI and optimisation, AI Planning.
Directed Individual Study
AIML 440
Content depends on the individual student.
Directed Individual Study
AIML 441
Content depends on the individual student.
Research Project
AIML 487
A supervised research project in an area of Artificial Intelligence.
An investigation and literature review of an advanced topic in an area of artificial intelligence, reported in a project description and a literature review essay.
Research Project
AIML 589
A supervised research project in an area of Artificial Intelligence.
Thesis in Artificial Intelligence
AIML 591
MSc thesis in Artificial Intelligence.
Artificial Intelligence for PhD
AIML 690
PhD course.
Artificial Intelligence Thesis for PhD (Engineering).
Artificial Intelligence Thesis for PhD (Agriculture).
Introduces necessary background, fundamental concepts, and basic algorithms of Computer Graphics, including human visual perception, representation of colour and images, representation of 2D and 3D spaces, manipulation, movement and drawing of 2D and...
Directed Individual Study
CGRA 440
Course content will vary on individual programme of study.
Computer Graphics Practicum
CGRA 463
The practicum is an opportunity for students to engage with a supervised computer graphics project in the context of an external company or organisation.
Research Project
CGRA 489
A research project on a topic in computer graphics approved by the Head of School.
Today, most problems are solved using computers. An understanding of programming is needed to harness the full potential of computers. This course serves as an introduction to the foundational principles of programming utilising the high-level object...
This course focuses on the techniques for designing, building and analysing computer programs that deal with large collections of data. The course addresses techniques for programming with collections of data, and the data structures and algorithms n...
This course addresses the fundamental programming skills required to process, transform, analyse and present data. The course will explore a range of kinds of data, kinds of analysis and kinds of visualisation that can be performed on the data, and g...
Algorithms and Data Structures
COMP 261
This course covers a range of algorithms and data structures building on the fundamental structures and algorithms from COMP 103. The major areas covered are: graph algorithms, graphics algorithms and advanced data structures. This course takes a pra...
Directed Individual Study
COMP 440
A supervised programme of study approved by the Head of School.
Directed Individual Study
COMP 441
A supervised programme of study approved by the Head of School.
Research Project
COMP 489
A research project on a topic approved by the Head of School.
Research Essay in Computer Science
COMP 501
An investigation into an advanced topic in an area of computer science, reported in an essay.
Project
COMP 589
Individual project under the supervision of an academic staff member.
Thesis
COMP 591
MSc thesis in Computer Science.
Computer Science for PhD
COMP 690
PhD course.
PhD course.
Cybersecurity Fundamentals
CYBR 171
Hacker—hero or villain? Explore the world of cyber criminals, state-sponsored hackers, and commercial and government defenders. Engage directly with cybersecurity professionals as you explore diverse career paths—from incident response to digital for...
Code Security
CYBR 271
This course covers measures taken to protect software code and applications from unauthorized access, modification, or exploitation. It involves identifying and addressing potential security vulnerabilities in the source code, design, and architectur...
System and Network Security
CYBR 371
This course covers system and network security, emphasizing secure design, access control, and TCP/IP protocol security. Students will gain practical skills in Linux ACLs, shell scripting, and the deployment of defence mechanisms, preparing them for ...
Applied Cryptography
CYBR 372
This course covers key cryptography concepts and services, encryption, hash functions, digital signatures, public key certificates, cryptographic protocols, and applications like SSL/TLS and blockchain.
Governance, Risk and Compliance
CYBR 373
This course offers a detailed exploration of risk management in cybersecurity, covering concepts from basic principles to advanced applications. It includes practical exercises on security controls, incident response, and policy development, alongsid...
This course provides an in-depth journey into cybersecurity attacks and defences. It begins with the basics of reconnaissance, scanning, and exploitation, moving into advanced topics such as exploitation tools, post-exploitation techniques, and threa...
Cybercrime Investigations
CYBR 472
This course offers an in-depth look at digital forensics, emphasizing its role in civil and criminal investigations including the legal context. Students will learn to analyse computer systems, mobile devices, and cloud environments, while understand...
Malware Analysis
CYBR 473
This course introduces techniques and tools for analysing and detecting malicious software (malware). It covers in-depth analysis techniques for identifying, dissecting, and neutralising malware threats, including viruses, worms, trojans, and ransomw...
Mechatronic Design and Prototyping
EEEN 201
This course will equip students with a basic understanding of mechanical theory and the skills of electronic and mechanical design and construction so that they can successfully design and complete a moderately complex project. A presentation of this...
An introduction to the design and construction of digital electronic instruments. Following a review of binary arithmetic and Boolean algebra, the course will focus on the design of digital circuits using both combinatorial and sequential logic. Furt...
Circuit Analysis
EEEN 203
This course covers the analysis of analogue electrical and electronic circuits. Topics covered include basic circuit theorems, operational amplifier circuits, the use of phasors for AC circuit analysis and the Laplace transform for switched systems. ...
Electronic Devices
EEEN 204
This course introduces fundamental electronic devices and their circuit applications. Topics include semiconductor fundamentals, diodes, transistors and operational amplifiers and the operation and application of special function diodes such as light...
Signals, Systems and Statistics 1
EEEN 220
The course introduces analysis techniques for signals and linear time-invariant systems as well as fundamentals of engineering statistics. The first part of the course focuses on continuous time signals and systems and Fourier transform techniques, w...
The course develops an understanding of the structure of computers, how they execute programs and how they interface to the real world. The course first covers ARM assembly language programming, data representation, computer arithmetic, microprocesso...
This course covers the theory, design and application of electrical machines, power electronic circuits, electric drives, and the transformation and control of electrical energy. The course introduces the fundamentals of electromagnetics and electric...
Control and Instrumentation
EEEN 315
The course shows how models can be used to analyse, describe and predict the behaviour of mechanical and electrical systems. The use of feedback to alter the properties of these systems to meet desired specifications is presented. A variety of method...
Signals, Systems and Statistics II
EEEN 320
The course introduces analysis techniques for discrete-time signals and linear time-invariant systems as well as topics in engineering statistics. The first part of the course focuses on discrete-time signals and systems and discrete Fourier transfor...
Robotic Engineering
EEEN 325
This course presents the principles of robotic and mechatronic design, construction and control. It covers both the theoretical and practical aspects of integrating mechanical, electronic and software components.
This course will address the engineering applications of electromagnetism, including propagation of signals, low EM emissions circuit board design, radio waves and antennas, grounding, high voltage insulators, and electrical safety design and testing...
Programmable Digital Logic
EEEN 402
The course develops an understanding of the structure of Field Programmable Gate Arrays, how to program them and how to interface them to the real world. The topics covered are VHDL programming, logic design, state machine design, I/O, design tools, ...
The course covers key topics in modern coding theory (finite vector spaces, linear codes, coding bounds, perfect codes, cyclic codes) as applied to wireless communication systems. Further topics include cryptography (classical ciphers, the one-time p...
Advanced Control Systems Engineering
EEEN 415
This course extends previous control studies to cover the use of modern control techniques in shaping the behaviour of complex systems having multiple inputs and outputs, in both discrete and continuous time. Optimal control (LQR) and estimation (the...
Advanced Robotic Engineering
EEEN 425
This course presents advanced principles of robotic and mechatronic design, prototyping, construction and control. It covers both the theoretical and practical aspects of integrating the mechanical, electronic and software components and applies rele...
Engineering Mathematics Foundations
ENGR 121
An introduction to the range of mathematical techniques employed by engineers, including functions, calculus, linear algebra, vector geometry, set theory, logic and probability. This course emphasises engineering applications and modelling.
Further mathematical techniques employed by electrical and electronic engineers, with a focus on methods of calculus, differential equations, and linear algebra. There is an emphasis on engineering applications and use of software.
Mathematical techniques employed by cybersecurity and software engineers, including combinatorics, logic, probability distributions, model fitting and estimation. The course emphasises engineering applications.
Systems Programming
NWEN 241
This course considers the issues raised when programming at a low-level, for example in embedded systems, OS system level, or network protocol stacks. It includes an introduction to C language programming and motivating examples related to a wide var...
Clouds and Networking
NWEN 243
The course provides a broad introduction to computer networks and a basic understanding of network application programming, with an emphasis on the working principles and application of computer networks. It covers a range of introductory topics incl...
Software Development
SWEN 221
This course develops a deeper understanding of object-oriented programming and associated practices. The focus is on programming techniques at the micro scale. Topics include: inheritance, polymorphism, genericity, error handling, testing and debuggi...
Software Design
SWEN 225
This course develops a strong understanding of object-oriented design. Students will study modelling and programming techniques that support the analysis, design and development of large and maintainable programs. Students will work together in group...
Scalable Software Development
SWEN 301
This course introduces the processes, practices, and tools required to engineer medium to large software systems, and to address challenges arising from the emerging complexity of such systems. Topics include software craft, architecture, design, imp...
User Experience Engineering
SWEN 303
This course addresses the engineering of user experiences (UX). It presents principles and guidelines for design and covers a range of design and engineering processes. It presents techniques for user testing of applications, digital systems, and phy...
Database System Engineering
SWEN 304
The course addresses fundamental principles underlying databases and database management systems. It covers the structure and principles of the relational data model, including SQL, and the principled design of the relational database schema. It also...
Safety-Critical Systems
SWEN 326
This course addresses the concepts, techniques and tools required for developing computer systems that are applicable where safety and reliability is paramount. Topics include: the concepts and principles underlying safety-critical systems & standard...
Showing results 1 - 75 of 75 results
Showing 1 - 75 of 75 results for Computer Science