Computer Science with Artificial Intelligence MSci

   
   
  

Fact file - 2017 entry

UCAS code:G4G1
Qualification:MSci Hons
Type and duration:4 year UG
Qualification name:Computer Science with Artificial Intelligence
UCAS code
UCAS code
G4G1
Qualification
Computer Science with Artificial Intelligence | MSci Hons
Duration
4 years full-time UG
A level offer
AAA or AAB if A levels include computing/computer science
(Please note, A level ICT or IT do not qualify for the lower entry requirements)
Required subjects
5 GCSEs at grade B including maths
IB score
34-32 (5 in maths at Standard/Higher Level or GCSE maths grade B)
Course location
Jubilee Campus 
Course places
approximately 115 places for all courses in the school except BSc Data Science
School/department
 

This course may still be open to international applicants for 2016 entry. Please visit our international pages for details of courses and application procedures from now until the end of August.

Overview

This course is designed to offer both a general understanding of computer science as well as specialist skills in artificial intelligence.
Read full overview

All our courses are compliant with the Association for Computing Machinery (ACM) and the Institute of Electrical and Electronic Engineers (IEEE). We are one of the first higher education institutions in the country to be in line with these internationally recognised educational requirements. This course is designed to offer both a general understanding of computer science as well as specialist skills in artificial intelligence. In addition to fundamental computer science classes and laboratories, the course covers topics including expert systems, intelligent agents, the history and philosophy of artificial intelligence, machine learning, computer vision, neural networks, heuristic optimisation and other intelligent systems. 

This course is designed to produce high-quality graduates who show independent thought, flexibility and maturity, and who command a sound technical knowledge of the broad aspects of computer science and artificial intelligence. You will gain an appreciation of current practice in both computer science and in artificial intelligence that can be applied immediately after graduation, as well in foundational aspects of the disciplines that will be of lasting value as technology changes over time. You will also be exposed to research-level topics, particularly in artificial intelligence, that will allow you to appreciate, and perhaps participate in, future developments in the field.

Year one

You will be introduced to the key concepts and tools underpinning modern computer science with artificial intelligence. You will learn how to program in Java, study the architecture and applications of computer systems and will be introduced to the areas of artificial intelligence that you will focus on in later years.

Year two

In this year you will consolidate what you have learnt so far by taking part in a group project accompanied by a course of lectures. At the same time, you will study artificial intelligence and programming in greater depth and meet other new core computing topics. In addition, you will be able to choose optional modules from a wide range of topics.

Year three

In your third year, whilst selecting the majority of your modules from an extensive list of options, you will undertake modules in Professional Ethics and Computer Security. The other compulsory module this year is the individual project, which has a major artificial intelligence focus. You will agree a project in discussion with your supervisor and may select a topic from a list proposed by a member of staff or propose an idea of your own.

The University of Nottingham carries out world-leading research in artificial intelligence and there will be a wide range of exciting projects available. You will select the remainder of your modules from an extensive list of options, including at least four modules from a list of specialist artificial intelligence topics including Computer Graphics, Automated Decision Support Methodologies and Collaboration Communication Technologies.

Year four

In your final year you will undertake either an individual or group project. The rest of your course will be made up of optional modules.

 

Entry requirements

A levels: AAA or AAB if A levels include computing/computer science

(Please note, A level ICT or IT do not qualify for the lower entry requirements)

Required subjects: 5 GCSEs at grade B including maths

English language requirements

IELTS 6.5 (no less than 6.0 in any element)

Students who require extra support to meet the English language requirements for their academic course can attend a presessional course at the Centre for English Language Education (CELE) to prepare for their future studies. Students who pass at the required level can progress directly to their academic programme without needing to retake IELTS. Please visit the CELE webpages for more information.

Alternative qualifications

For details please see the alternative qualifications page.

Foundation Year - a foundation year is available for this course.

Flexible admissions policy

We may make some applicants an offer lower than advertised, depending on their personal and educational circumstances.

 
 

Modules

Typical Year One Modules


Compulsory

Programming and Algorithms

The module introduces basic principles of programming and algorithms. It covers fundamental programming constructs, such as types and variables, expressions, control structures, and functions.  You’ll learn how to design and analyse simple algorithms and data structures that allow efficient storage and manipulation of data. You’ll also become familiar with basic software development methodology. You will spend around six hours per week in lectures, computer classes and tutorials. 

 
Computer Fundamentals

This module introduces, in a practical way, how the computer, its operating system and the network it connects to talk. You will see how a single fundamental component, the NAND gate, can be arranged to build all aspects of the computer's hardware and how that hardware can be programmed directly. You will also see how to communicate over a network to other computers. You'll spend around five hours per week in tutorials, lectures and computer classes. 

 
Systems and Architecture

This module runs alongside 'Computer Fundamentals' and provides an expanded view by considering how real computer systems (such as ARM, x86, Linux and *BSD) and networks work. You’ll also cover the principles of the lower level implementation of I/O using polling and interrupts, and the use of exceptions; how memory and storage is organized as well addressing the issues arising from multicore systems. You’ll spend around five hours per week in tutorials, lectures and computer classes.

 
Mathematics for Computer Scientists

You’ll cover the basic concepts in mathematics which are of relevance to the computer scientists. Topics which will be covered include: logic; sets, functions and relations; graphs; induction, basic probability and statistics; matrices. You’ll spend around four hours per week in lectures and tutorials.

 
Database and Interfaces

This module considers both the structure of databases, including how to make them fast, efficient and reliable, and the appropriate user interfaces which will make them easy to interact with for users. You will start by looking at how to design a database, gaining an understanding of the standard features that management systems provide and how you can best utilise them, then develop an interactive application to access your database. Throughout the lectures and computing sessions you will learn how to design and implement systems using a standard database management system, web technologies and GUI interfaces through practical programming and system examples. 

 
Software Engineering

This modules focuses on the fact that programming is only one step of the larger software engineering process. To develop good software, you must gather requirements, design it well, plan the development, do the programming, have a testing strategy, test the parts and the product as a whole, and have a maintenance strategy for after it is delivered.

You will spend around two to three hours per week in lectures, whilst carrying out activities in labs that help you understand the underlying issues. 

 
Programming Paradigms

In this module you will learn the basic principles of the object-oriented and functional approaches to programming, using the languages Java and Haskell.  You will also see how they can be used in practice to write a range of different kinds of programs.  You will spend around five hours per week in lectures and labs for this module.  

 
Fundamentals of Artificial Intelligence

Through a two-hour lecture once a week, this module gives you a broad overview of the fundamental theories and techniques of artificial intelligence (AI). You’ll explore how computers can produce intelligent behaviour, and will consider topics such as the history of AI, AI search techniques, neural networks, data mining, philosophical and ethical issues, and knowledge representation and reasoning. 

 

 

 

Typical Year Two Modules

Compulsory

Algorithms Correctness and Efficiency

This module covers important aspects of algorithms, namely their correctness and efficiency. You’ll study topics such as: proofs in propositional logic and predicate logic; classical vs. intuitionistic reasoning; basic operations on types; verification of list based programs; and introduction to program specification and program correctness. You’ll cover the use of mathematical descriptions of the computational resources needed to support algorithm design decisions. The emphasis is upon understanding data structures and algorithms so as to be able to design and select them appropriately for solving a given problem. 

 
Software Engineering Group Project

Working in groups of around five to six people, you’ll be assigned a supervisor who will provide you with a short written description of a computer application to be designed, programmed, and documented during the course of the module. Each group will meet twice a week, once with your supervisor and once without; you’ll also have four introductory one hour lectures.

 
Operating Systems

This module covers a range of issues relating to operating systems, and distributed and parallel computing. Topics in operating systems include the architecture of operating systems, process and memory management, storage, I/O, and virtualisation. Topics in parallel and distributed computing include parallelism vs concurrency, task and data-parallel based decomposition, parallel architectures, parallel algorithms and programming.

 
Languages and Computability

In this module you will investigate classes of formal language and the practical uses of this theory, applying this to a series of abstract machines ultimately leading to a discussion on what computation is and what can and cannot be computed. You will focus in particular on language recognition, but will study a range of topics including: finite state machines, regular expressions, context-free grammars, Turing machines and Lambda calculus. This module builds on parts of the ACE module addressing data structures and formal reasoning and introduces concepts which are important to understand the analysis of algorithms in terms of their complexity.

 
Software Application and Design

This module builds on and further develops basic software design practices. It covers design patterns, data processing, regression testing, networking, and GUI programming. You’ll learn how to read, understand, modify and extend a large piece of software. You’ll also become familiar with GUI design guidelines and usability heuristics. You will spend around six hours per week in lectures, computer classes and tutorials. 

 
Artificial Intelligence Methods

This module builds on the first Introduction to Artificial Intelligence module. You will study some of the more important AI topics (e.g. search) and some of the more modern AI techniques (e.g. artificial neural networks). This is a practical module and you will expect to have two hours in lectures and two hours in computer labs per week implementing the ideas in appropriate modern software. 

 

Optional

Introduction to Image Processing

This module introduces the field of digital image processing, a fundamental component of digital photography, television, computer graphics and computer vision. You’ll cover topics including: image processing and its applications; fundamentals of digital images; digital image processing theory and practice; and applications of image processing. You’ll spend around three hours in lectures and computer classes each week. 

 
Graphical User Interfaces

This module will introduce you to programming concepts and structures by considering the Java Swing packages in depth. You’ll explore a wide range of components, and will consider the other APIs, which allows easy incorporation of high-quality 2D graphics, text, and images in applications, and the use of Integrated Development Environments (IDEs), which simplify the construction of graphical user interfaces. You’ll spend around four hours each week in lectures and computer classes.

 
Advanced Functional Programming

Building upon the introductory Functional Programming module in year one, you’ll focus on a number of more advanced topics such as:  programming with effects; reasoning about programs; control flow; advanced libraries; improving efficiency; type systems; and functional pearls. You’ll spend around four hours per week in lectures and computer classes for this module.

 
C++ Programming

You will cover the programming material and concepts necessary to obtain an understanding of the C++ programming language. You will spend around four hours per week in lectures and computer classes and will be expected to take additional time to practice and to produce your coursework.

 
Software Engineering Specification
In this module you’ll cover three main aspects of the software development process in depth: the system analysis and design process, the project management process and software documentation. You’ll spend around two hours per week in lectures
 
 

Typical Year Three Modules

Compulsory

Individual Dissertation (Single Honours)
Through a one hour lecture and a tutorial with your supervisor each week, you’ll develop your own independent research project and written report. Topics can range from purely theoretical studies to practical work building a system for a third party.
 

 

Optional

Computability
You’ll begin by considering the attempts to characterise the problems that can theoretically be solved by physically-possible computational processes. You’ll then consider the area of complexity theory, looking at whether or not problems can be solved under limitations on resources such as time or space. A key topic is an examination of the classes P and NP and the definition of the term NP-complete. You’ll spend around two hours a week in lectures. 
 
Automated Decision Support Methodologies
The main aim of this module is to provide a sound understanding of wide range of fundamental concepts, techniques and methods of operational research and artificial intelligence that can help in design of automated intelligent decision support systems. The module will present a variety of applications from industrial and service sectors.
 
Software Quality Management
Through a two hour lecture each week, you’ll be introduced to concepts and techniques for software testing and will be given an insight into the use of artificial and computational intelligence for automated software testing. You’ll also review recent industry trends on software quality assurance and testing.
 
Computer Security
Spending four hours a week in lectures and computer classes, you’ll cover the following topics: security of the computer; security of networks; security and the internet; software and hardware security; mobile security; and basic cryptography.
 
Knowledge, Representation and Reasoning
This module examines how knowledge can be represented symbolically and how it can be manipulated in an automated way by reasoning programs. Some of the topics you’ll cover include: first order logic; resolution; description logic; default reasoning; rule-based systems; belief networks and fuzzy logic. You’ll have two hours of lectures each week for this module.
 
Machine Learning
Providing you with an introduction to machine learning, pattern recognition, and data mining techniques, this module will enable you to consider both systems which are able to develop their own rules from trial-and-error experience to solve problems as well as systems that find patterns in data without any supervision. You’ll cover a range of topics including: machine learning foundations; pattern recognition foundations; artificial neural networks; deep learning; applications of machine learning; data mining techniques and evaluating hypotheses. You’ll spend around six hours each week in lectures and computer classes.
 
New Media Design
This is a practical module covering the critical elements of New Media Design, with a particular focus on its use in the web. Critical elements such as colour, images, audio, video and animation will be introduced and discussed, in addition to broader issues around usability and interaction. Processes to support effective design work will also be considered. You’ll gain hands-on experience of technologies used to manipulate New Media in a professional context. Such tools will be put into context with emerging paradigms, including new media for mobile platforms.
 
Collaboration and Communication Technologies
In this module you’ll consider the design of collaboration and communication technologies used in a variety of different contexts including workplace, domestic and leisure environments. You’ll consider the basic principles of such technologies, explore the technologies from a social perspective, consider their impact on human behaviour and critically reflect on their design from a human-centred perspective. You’ll spend around two hours per week in lectures.
 
Computer Graphics
You’ll examine the principles of 3D computer graphics, focusing on modelling the 3D world on the computer, projecting onto 2D display and rendering 2D display to give it realism. Through two hours per week of lectures and laboratory sessions, you’ll explore various methods and requirements in 3D computer graphics, balancing efficiency and realism.
 
Autonomous Robotic Systems
This module introduces you to the computer science of robotics, giving you an understanding of the hardware and software principles appropriate for control and localisation of autonomous mobile robots. A significant part of the module is laboratory-based, utilising physical robotic hardware to reinforce the theoretical principles covered. Spending around three to four hours each week in lectures and practicals, you’ll cover a range of topics including basic behavioural control architectures, programming of multiple behaviours, capabilities and limitations of sensors and actuators and filtering techniques for robot localisation.
 
Fuzzy Sets and Fuzzy Logic Systems
You’ll review classical Boolean logica and set theory, including the common operations of union, intersection and complement. Fuzzy Logic Systems (FLSs) will be introduced and illustrated in conjunction to examples of real world applications in industrial control and other areas. You’ll spend around four hours each week in lectures and workshops, and will be given the opportunity to design, programme and deploy a fuzzy logic system, providing a tangible real world example of some underlying concepts of FLSs.
 

 

 

Typical Year Four Modules

Compulsory

MSci Individual AI Project

This module is very similar to the individual MSci project; however you are able to join into a group of at least two students to work on a project together. The project may be based on theoretical or empirical research, or software development, and must relate to current research and/or professional practice. Agreed elements of the work must be conducted and coordinated as a group. Collaboration with business, industry, and other outside bodies is encouraged and by the end of this module you will have produced a 10,000 word common group project report and a 10,000 word individual report.  

 

Or

MSci Group AI Project
This module is very similar to that of the individual MSci project; however you are able to join into a group of at least two students to work on a project together. The project may be based on theoretical or empirical research, or software development, and must relate to current research and/or professional practice. Agreed elements of the work must be conducted and coordinated as a group. Collaboration with business, industry, and other outside bodies is encouraged and by the end of this module you will have produced a 10,000 word common group project report and a 10,000 word individual report. 
 

Optional
Students must take a minimum of 50 credits and a maximum of 80 from this group

Ubiquitous Computing
You’ll explore the emerging field of ubiquitous computing, in which computation spreads away from the desktop to become embedded into the world around us, including into artefacts, furniture, buildings and ultimately into our own bodies. You’ll cover the distinctive design challenges in this field including designing for public settings, adapting to context and coping with uncertainty in positioning and wireless communications. You’ll spend around three hours in lectures and computer classes each week.  
 
Advanced Computer Communications
This module will provide you with an advanced knowledge of computer communications networks, using examples from all-IP core telecommunications networks to illustrate aspects of transmission coding, error control, media access, internet protocol, routing, presentation coding, services and security. You’ll spend around three hours per week in lectures and computer classes. 
 
Mobile Device Programming
You’ll look at the development of software applications for mobile devices, with a practical focus on the Android operating system. You’ll consider and use the software development environments for currently available platforms and the typical hardware architecture of mobile devices. You’ll spend around three hours per week in lectures and computer classes. 
 
Operations Research and Modelling

The module provides an entry point to operations research with emphasis in techniques for computational optimisation. Operations research (OR) is a discipline that uses modelling techniques, analytics and computational methods to solve complex optimisation problems in industry and business. You will learn to interpret and create formal models of optimisation problems and to develop computer-based solutions to solve those problems. You’ll cover topics such as linear programming, integer programming, combinatorial optimisation, modelling and optimisation software, and multi-objective optimisation among others. You will spend around three hours per week in lectures and workshops.

 
Design Ethnography
This module introduces you to the theory and practice of design ethnography. You’ll cover a range of topics including: origins and evolution of ethnography; foundations and nature of the ethnomethodological approach; ethnographic analysis; and the perceived problems with the approach. You’ll spend around two hours each week in lectures and tutorials.
 
 
Computer Vision 
You’ll examine current techniques for the extraction of useful information about a physical situation from individual and sets of images. You’ll cover a range of methods and applications, with particular emphasis being placed on the identification of objects, recovery of three-dimensional shape and motion, and the recognition of events. You’ll spend around three hours a week in lectures and tutorials. 
 
Selected Topics in Artificial Intelligence
Artificial intelligence is the science and engineering of making intelligent machines, especially intelligent computer programs, and covers a variety of topics including, agents, bio-inspired computational systems, computer vision, data mining, fuzzy logic, machine learning, modelling and optimization, operational research, pattern recognition, scheduling, and simulation. The module will introduce students to the latest developments and technological trends in selected topics in artificial intelligence, offered by staff in the school who are world leading researchers in the areas.
 

Development Experience 

Students taking part in activities relating to programming experience such as developing apps in their spare time, contributing to open source projects, or building things in hackathons may receive academic credit for showing they have experience and are an excellent developer. The emphasis of this experience module is that you provide evidence of your significant extra-curricular software development experience. Students will only be able to register for this module with the approval of the convenor/school, once the material for assessment has been checked.

 

Industrial Experience 

Students taking part in activities relating to industrial experience in a computer science or software engineering enterprise may obtain academic credit for them. Activities will be related to demonstration of involvement in development of complex software in a team situation, subject to quality control procedures of an industrial or business practice. Evidence of working to and completing tasks relating to targets set by an employer and directly related to software development/programming will be required. Students will have undertaken an agreed number of hours on the activities, identified personal goals and targets in relation to these activities and maintained a reflective portfolio as a record of evidence of their competence and achievements. The nature of the activities undertaken will be subject to the approval of the module convenor before acceptance on the module.

 
 

The modules we offer are inspired by the research interests of our staff and as a result may change for reasons of, for example, research developments or legislation changes. The above list is a sample of typical modules we offer, not a definitive list.

 
 

Careers

You will graduate with: general knowledge and understanding of computers and computer science; specialised knowledge of theoretical and practical aspects of artificial intelligence; an understanding of a variety of approaches, techniques and tools needed to solve the different types of problem encountered in computer science in general and artificial intelligence in particular; and an understanding of the professional, legal, and ethical aspects of the discipline.  The MSci will allow you to engage with cutting-edge research in artificial intelligence and computer science.

Average starting salary and career progression

In 2014, 96% of first-degree graduates in the School of Computer Science who were available for employment had secured work or further study within six months of graduation. The average starting salary was £25,852 with the highest being £45,000.*

*Known destinations of full-time home and EU first-degree graduates, 2013/14.

Careers Support and Advice

Studying for a degree at The University of Nottingham will provide you with the type of skills and experiences that will prove invaluable in any career, whichever direction you decide to take. Throughout your time with us, our Careers and Employability Service can work with you to improve your employability skills even further; assisting with job or course applications, searching for appropriate work experience placements and hosting events to bring you closer to a wide range of prospective employers.

Have a look at our Careers page for an overview of all the employability support and opportunities that we provide to current students.  

 
 

Fees and funding

Scholarships and bursaries

The University of Nottingham offers a wide range of bursaries and scholarships. These funds can provide you with an additional source of non-repayable financial help. For up to date information regarding tuition fees, visit our fees and finance pages.

Home students*

Over one third of our UK students receive our means-tested core bursary, worth up to £2,000 a year. Full details can be found on our financial support pages.

* A 'home' student is one who meets certain UK residence criteria. These are the same criteria as apply to eligibility for home funding from Student Finance.

Scholarships and bursaries

The University of Nottingham offers a wide range of bursaries and scholarships. These funds can provide you with an additional source of non-repayable financial help.

Home students*

There are several types of bursary and scholarship on offer. Download our funding guide or visit our financial support pages to find out more about tuition fees, loans, budgeting and sources of funding.

To be eligible to apply for most of these funds you must be liable for the £9,000 tuition fee and not be in receipt of a bursary from outside the University.

* A 'home' student is one who meets certain UK residence criteria. These are the same criteria as apply to eligibility for home funding from Student Finance.

International/EU students

The University of Nottingham provides information and advice on financing your degree and managing your finances as an international student. The International Office offers a range of High Achiever Prizes for students from selected schools and colleges to help with the cost of tuition fees.  
 
 

Key Information Sets (KIS)

Key Information Sets (KIS)

KIS is an initiative that the government has introduced to allow you to compare different courses and universities.

 

How to use the data

Imagine...

being the brains behind the machine
It's #MeantToBe
Get in touch: 
+44 (0)115 846 6550
Find us on FacebookFollow us

Disclaimer
This online prospectus has been drafted in advance of the academic year to which it applies. Every effort has been made to ensure that the information is accurate at the time of publishing, but changes (for example to course content) are likely to occur given the interval between publishing and commencement of the course. It is therefore very important to check this website for any updates before you apply for the course where there has been an interval between you reading this website and applying.

Contact

Admissions and Communications Officer
bengeorge

Video

 

   

Michael-Coward

Video

 

 

 

Student Recruitment Enquiries Centre

The University of Nottingham
King's Meadow Campus
Lenton Lane
Nottingham, NG7 2NR

t: +44 (0) 115 951 5559
w: www.nottingham.ac.uk/faqs
Make an enquiry