MSc Advanced Computing Science (Part time)

Article

Computer Scientists have developed a new programme that will unearth the missing links in our planet’s past

Read It

Key facts

(2014 Research Excellence Framework)

Program your future, just the way you want it. Whether you’re an aspiring programmer, software engineer, data or computer scientist, this Master’s course is the ideal opportunity to set yourself apart from other graduates.   

Taking your BSc degree in computing science (or equivalent), you’ll broaden and deepen your knowledge to an advanced level – especially in research-led subjects such as advanced programming concepts, artificial intelligence, data mining, computer games and graphics and much more.

Your studies will culminate in an MSc research project on a topic of your choice – giving you the chance to showcase everything you’ve learnt and demonstrate your research ability. This heavy slant on research is perfect preparation for the job market once you graduate or for further research studies or posts.

Overview

This degree follows the same programme as its full-time equivalent but is spread over two years. A study plan should be discussed with the course director.

Course Modules 2018/9

Students must study the following modules for 40 credits:

Name Code Credits

ADVANCED PROGRAMMING CONCEPTS AND TECHNIQUES

You will cover advanced programming topics and state of the art software engineering concepts as part of medium to large software product development. More specifically, the following subjects are included: 1. Programming languages: Covering the vast array of programming languages, including older languages (both surviving and obsolete ones), current popular languages and new kids on the block. Different programming paradigms are discussed with code samples and applications to illustrate the underlying theoretical concepts. 2. Advanced software engineering including design patterns, modern iterative and incremental methods such as agile programming and software testing. 3. Program optimisation, parallel programming and high performance computing (HPC): Including underlying laws (Amdahl, Gustafson-Barsis), multi-threading, various languages and/or platforms, GPU programming (CUDA and OpenCL). 4. State of the art coverage of specific languages including C, F#, C#, C++11,14 etc. 5. Specific architectures such as Window's .NET/CLR, DLL programming, templates and type systems.

CMP-7009A

20

RESEARCH TECHNIQUES (RESEARCH METHODS)

This module aims to prepare postgraduate students with necessary intellectual and practical skills for successfully carrying out research work for their MSc Dissertation in Computing Sciences and Computational Biology. Specifically, it teaches research methodologies, techniques and tools used in computing sciences, and more importantly, provides systematic trainings to enhance students' transferable skills and their understanding in ethics, social and legal issues involved in computing professions.

CMP-7030Y

20

Students will select credits from the following modules:

Students will select 20-40 credits from the following modules:

Name Code Credits

ARTIFICIAL INTELLIGENCE

This module will introduce you to core techniques in Artificial Intelligence. Topics covered may include introduction to Prolog programming, state space representation and search algorithms, knowledge representation, expert systems, Bayesian networks, neural networks and deep learning.

CMP-7028A

20

COMPUTER GAMES LABORATORY

You will learn about advanced methodologies and technologies used in computer games programming, computer graphics and virtual reality (VR). You will be taught the module through seminars (some are delivered by experts from industry) and lab sessions. Seminars typically cover games related subjects such as game physics and artificial intelligence (AI), avatar animation and modelling, procedural content generation (PCG), augmented reality (AR), modelling natural phenomena (plants, trees, fluids), stereo viewing, haptic and force feedback, and motion capture. During lab sessions, you will develop a 3D game or simulation that, depending on previous experience, can be done using low level tools (e.g. C++ with OpenGL) or alternatively, established games engines such as Unity and Unreal.

CMP-7014B

20

DATA MINING

You will explore the methodologies of Knowledge Discovery and Data Mining (KDD). You will cover each stage of the KDD process, including preliminary data exploration, data cleansing, pre-processing and the various data analysis tasks that fall under the heading of data mining, focusing on clustering, classification and association rule induction. Through this module, you should gain knowledge of algorithms and methods for data analysis, as well as practical experience using leading KDD software packages.

CMP-7023B

20

HUMAN COMPUTER INTERACTION

Human Computer Interaction (or UX) covers a very wide range of devices, including conventional computers, mobile devices and "hidden" computing devices. In this module you will learn about interactions from a variety of perspectives, such as cognitive psychology, ethnographic methods, security issues, UI failures, the principles of good user experience, heuristic and experimental evaluation approaches and the needs of a range of different audiences.

CMP-7018A

20

Students will select 20 credits from the following modules:

Name Code Credits

APPLIED STATISTICS

This is a module designed to give you the opportunity to apply statistical methods in realistic situations. While no advanced knowledge of probability and statistics is required, we expect you to have some background in probability and statistics before taking this module. The aim is to teach the R statistical language and to cover 3 topics: Linear regression, ANOVA, and Survival Analysis.

CMP-7008B

20

ARTIFICIAL INTELLIGENCE

This module will introduce you to core techniques in Artificial Intelligence. Topics covered may include introduction to Prolog programming, state space representation and search algorithms, knowledge representation, expert systems, Bayesian networks, neural networks and deep learning.

CMP-7028A

20

AUDIO AND VISUAL PROCESSING

This module explores how computers process audio and video signals. In the audio component, the focus is on understanding how humans produce speech and how this can be processed by computer for speech recognition and enhancement. Similarly, the visual component considers the human eye and camera, and how video is processed by computer. The theoretical material covered in lectures is reinforced with practical laboratory sessions. The module is coursework only and requires you to build a speech recogniser capable of recognising the names of students studying the module using both audio and visual speech information.

CMP-7016A

20

COMPUTER GAMES LABORATORY

You will learn about advanced methodologies and technologies used in computer games programming, computer graphics and virtual reality (VR). You will be taught the module through seminars (some are delivered by experts from industry) and lab sessions. Seminars typically cover games related subjects such as game physics and artificial intelligence (AI), avatar animation and modelling, procedural content generation (PCG), augmented reality (AR), modelling natural phenomena (plants, trees, fluids), stereo viewing, haptic and force feedback, and motion capture. During lab sessions, you will develop a 3D game or simulation that, depending on previous experience, can be done using low level tools (e.g. C++ with OpenGL) or alternatively, established games engines such as Unity and Unreal.

CMP-7014B

20

COMPUTER GRAPHICS

You are likely to enjoy this module if you have an interest in working in the games industry or in the development of real-time graphics applications. This module covers the fundamentals in 3D graphics including transformations, lighting, shading, texture mapping and collision detection. You will study the fundamentals of programming real-time 3D graphics using OpenGL and the OpenGL Shading Language (GLSL). Ability to program in a high level language such as C++ or Java is required.

CMP-7013A

20

COMPUTER VISION

Computer Vision is about "teaching machines how to see". You will study methods for acquiring, analysing and understanding images in both lectures and laboratories. The practical exercises and projects that you undertake in the laboratory will support the underpinning theory and enable you to implement contemporary computer vision algorithms.

CMP-7026B

20

DATA MINING

You will explore the methodologies of Knowledge Discovery and Data Mining (KDD). You will cover each stage of the KDD process, including preliminary data exploration, data cleansing, pre-processing and the various data analysis tasks that fall under the heading of data mining, focusing on clustering, classification and association rule induction. Through this module, you should gain knowledge of algorithms and methods for data analysis, as well as practical experience using leading KDD software packages.

CMP-7023B

20

HUMAN COMPUTER INTERACTION

Human Computer Interaction (or UX) covers a very wide range of devices, including conventional computers, mobile devices and "hidden" computing devices. In this module you will learn about interactions from a variety of perspectives, such as cognitive psychology, ethnographic methods, security issues, UI failures, the principles of good user experience, heuristic and experimental evaluation approaches and the needs of a range of different audiences.

CMP-7018A

20

INFORMATION VISUALISATION

This module is an introduction to information visualisation. You will learn techniques for summarising and presenting a wide range of data. There is a strong emphasis on understanding the appropriate context and use of visualisation techniques. You will also learn about problems and techniques for dealing with large data flows and issues of integrating multiple data sources.

CMP-7022B

20

INTERNET and MULTIMEDIA TECHNIQUES

In this module you will learn about the development and core technologies of the web, website design, deployment on desktop and mobile devices, current issues (e.g. security), and its impact on society. In the practical part of the module you will work on the design and integration of web sites, emphasising maintainability, accessibility and usability.

CMP-7003A

20

INTRODUCTION TO CYBER SECURITY

This module will provide you with a broad understanding of the key topics and issues relating to cyber security. In the module we will use real-world examples and case studies to illustrate the importance of security. You will learn about a variety of cyber security topics including: the value of information and data, vulnerabilities and exploits, tools for defence and mitigation and the human elements of cyber security. Security is fast becoming an essential part of all aspects of our daily lives and this module will provide you with the fundamental skills and knowledge for working in a range of industries.

CMP-7033B

20

MACHINE LEARNING

This module covers the core topics that dominate machine learning research: classification, clustering and reinforcement learning. We describe a variety of classification algorithms (e.g. Neural Networks, Decision Trees and Learning Classifier Systems) and clustering algorithms (e.g. k-NN and PAM) and discuss the practical implications of their application to real world problems. We then introduce reinforcement learning and the Q-learning problem and describe its application to control problems such as maze solving.

CMP-7031B

20

MODERN EMBEDDED TECHNOLOGY

Embedded processors are at the core of a huge range of products such as mobile telephones, cameras, passenger cars, washing machines, DVD players and medical equipment. The embedded market is currently estimated to be worth around 100x the 'desktop' market and is projected to grow exponentially over the next decade. You will consider the design and development of real-time embedded system applications for commercial off the shelf (COTS) processors running real time operating systems (RTOS) such as ARM-RT, uCLinux etc.

CMP-7029B

20

SYSTEMS ENGINEERING ISSUES

This module draws together a wide range of material and considers it in the context of developing modern large-scale computer systems. Topics such as Systems Thinking, Casual Loop Diagrams, Systems Failure, Outsourcing, Quality, Risk Management, Measurement, Project Management, Software Process Improvement, Configuration Management, Maintainability, Testing and Peopleware are covered in this module. The module is supported by well documented case studies and includes guest speakers from the industry.

CMP-7004B

20

Students must study the following modules for 60 credits:

Name Code Credits

DISSERTATION

In this module, each Masters student is required to carry out project work with substantial research and practical elements on a specified topic for their MSc dissertation from January to late August. The topic can be chosen and allocated from the lists of proposals from faculty members, or proposed by students themselves with an agreement from their supervisor and also an approval from the module organiser. The work may be undertaken as part of a large collaborative or group project. A dissertation must be written as the outcome of the module.

CMP-7027X

60

Students will select credits from the following modules:

Students will select 20-40 credits from the following modules:

Name Code Credits

APPLIED STATISTICS

This is a module designed to give you the opportunity to apply statistical methods in realistic situations. While no advanced knowledge of probability and statistics is required, we expect you to have some background in probability and statistics before taking this module. The aim is to teach the R statistical language and to cover 3 topics: Linear regression, ANOVA, and Survival Analysis.

CMP-7008B

20

ARTIFICIAL INTELLIGENCE

This module will introduce you to core techniques in Artificial Intelligence. Topics covered may include introduction to Prolog programming, state space representation and search algorithms, knowledge representation, expert systems, Bayesian networks, neural networks and deep learning.

CMP-7028A

20

AUDIO AND VISUAL PROCESSING

This module explores how computers process audio and video signals. In the audio component, the focus is on understanding how humans produce speech and how this can be processed by computer for speech recognition and enhancement. Similarly, the visual component considers the human eye and camera, and how video is processed by computer. The theoretical material covered in lectures is reinforced with practical laboratory sessions. The module is coursework only and requires you to build a speech recogniser capable of recognising the names of students studying the module using both audio and visual speech information.

CMP-7016A

20

COMPUTER GAMES LABORATORY

You will learn about advanced methodologies and technologies used in computer games programming, computer graphics and virtual reality (VR). You will be taught the module through seminars (some are delivered by experts from industry) and lab sessions. Seminars typically cover games related subjects such as game physics and artificial intelligence (AI), avatar animation and modelling, procedural content generation (PCG), augmented reality (AR), modelling natural phenomena (plants, trees, fluids), stereo viewing, haptic and force feedback, and motion capture. During lab sessions, you will develop a 3D game or simulation that, depending on previous experience, can be done using low level tools (e.g. C++ with OpenGL) or alternatively, established games engines such as Unity and Unreal.

CMP-7014B

20

COMPUTER GRAPHICS

You are likely to enjoy this module if you have an interest in working in the games industry or in the development of real-time graphics applications. This module covers the fundamentals in 3D graphics including transformations, lighting, shading, texture mapping and collision detection. You will study the fundamentals of programming real-time 3D graphics using OpenGL and the OpenGL Shading Language (GLSL). Ability to program in a high level language such as C++ or Java is required.

CMP-7013A

20

COMPUTER VISION

Computer Vision is about "teaching machines how to see". You will study methods for acquiring, analysing and understanding images in both lectures and laboratories. The practical exercises and projects that you undertake in the laboratory will support the underpinning theory and enable you to implement contemporary computer vision algorithms.

CMP-7026B

20

DATA MINING

You will explore the methodologies of Knowledge Discovery and Data Mining (KDD). You will cover each stage of the KDD process, including preliminary data exploration, data cleansing, pre-processing and the various data analysis tasks that fall under the heading of data mining, focusing on clustering, classification and association rule induction. Through this module, you should gain knowledge of algorithms and methods for data analysis, as well as practical experience using leading KDD software packages.

CMP-7023B

20

HUMAN COMPUTER INTERACTION

Human Computer Interaction (or UX) covers a very wide range of devices, including conventional computers, mobile devices and "hidden" computing devices. In this module you will learn about interactions from a variety of perspectives, such as cognitive psychology, ethnographic methods, security issues, UI failures, the principles of good user experience, heuristic and experimental evaluation approaches and the needs of a range of different audiences.

CMP-7018A

20

INTERNET and MULTIMEDIA TECHNIQUES

In this module you will learn about the development and core technologies of the web, website design, deployment on desktop and mobile devices, current issues (e.g. security), and its impact on society. In the practical part of the module you will work on the design and integration of web sites, emphasising maintainability, accessibility and usability.

CMP-7003A

20

INTRODUCTION TO CYBER SECURITY

This module will provide you with a broad understanding of the key topics and issues relating to cyber security. In the module we will use real-world examples and case studies to illustrate the importance of security. You will learn about a variety of cyber security topics including: the value of information and data, vulnerabilities and exploits, tools for defence and mitigation and the human elements of cyber security. Security is fast becoming an essential part of all aspects of our daily lives and this module will provide you with the fundamental skills and knowledge for working in a range of industries.

CMP-7033B

20

MACHINE LEARNING

This module covers the core topics that dominate machine learning research: classification, clustering and reinforcement learning. We describe a variety of classification algorithms (e.g. Neural Networks, Decision Trees and Learning Classifier Systems) and clustering algorithms (e.g. k-NN and PAM) and discuss the practical implications of their application to real world problems. We then introduce reinforcement learning and the Q-learning problem and describe its application to control problems such as maze solving.

CMP-7031B

20

MODERN EMBEDDED TECHNOLOGY

Embedded processors are at the core of a huge range of products such as mobile telephones, cameras, passenger cars, washing machines, DVD players and medical equipment. The embedded market is currently estimated to be worth around 100x the 'desktop' market and is projected to grow exponentially over the next decade. You will consider the design and development of real-time embedded system applications for commercial off the shelf (COTS) processors running real time operating systems (RTOS) such as ARM-RT, uCLinux etc.

CMP-7029B

20

SYSTEMS ENGINEERING ISSUES

This module draws together a wide range of material and considers it in the context of developing modern large-scale computer systems. Topics such as Systems Thinking, Casual Loop Diagrams, Systems Failure, Outsourcing, Quality, Risk Management, Measurement, Project Management, Software Process Improvement, Configuration Management, Maintainability, Testing and Peopleware are covered in this module. The module is supported by well documented case studies and includes guest speakers from the industry.

CMP-7004B

20

Disclaimer

Whilst the University will make every effort to offer the modules listed, changes may sometimes be made arising from the annual monitoring, review and update of modules and regular (five-yearly) review of course programmes. Where this activity leads to significant (but not minor) changes to programmes and their constituent modules, there will normally be prior consultation of students and others. It is also possible that the University may not be able to offer a module for reasons outside of its control, such as the illness of a member of staff or sabbatical leave. In some cases optional modules can have limited places available and so you may be asked to make additional module choices in the event you do not gain a place on your first choice. Where this is the case, the University will endeavour to inform students.

Further Reading

Entry Requirements

  • Degree Subject Computer Science or a related subject.
  • Degree Classification Good first degree (minimum 2.1 or equivalent).

Students for whom English is a Foreign language

We welcome applications from students whose first language is not English. To ensure such students benefit from postgraduate study, we require evidence of proficiency in English. Our usual entry requirements are as follows:

  • IELTS: 6.5 (minimum 6.0 in all components)
  • PTE (Pearson): 62 (minimum 55 in all components)

Test dates should be within two years of the course start date.

Other tests, including Cambridge English exams and the Trinity Integrated Skills in English are also accepted by the university. The full list of accepted tests can be found here: Accepted English Language Tests

INTO UEA also run pre-sessional courses which can be taken prior to the start of your course. For further information and to see if you qualify please contact intopre-sessional@uea.ac.uk

Fees and Funding

Tuition Fees for 2018/19

Tuition fees for the academic year 2018/19 are:

  • UK/EU Students: £7,550
  • International Students: £15,800

If you choose to study part-time, the fee per annum will be half the annual fee for that year, or a pro-rata fee for the module credit you are taking (only available for UK/EU students).

International applicants from outside the EU may need to pay a deposit.

We estimate living expenses at £1,015 per month.

Scholarships

A variety of Scholarships may be offered to UK/EU and International students. Scholarships are normally awarded to students on the basis of academic merit and are usually for the duration of the period of study. Please click here for more detailed information about funding for prospective students.

How to Apply

 

Applications for Postgraduate Taught programmes at the University of East Anglia should be made directly to the University.

You can apply online, or by downloading the application form.

Further Information

To request further information & to be kept up to date with news & events please use our online enquiry form.

If you would like to discuss your individual circumstances prior to applying please do contact us:

Postgraduate Admissions Office
Tel: +44 (0)1603 591515
Email: admissions@uea.ac.uk

International candidates are also encouraged to access the International Students section of our website.

    Next Steps

    We can’t wait to hear from you. Just pop any questions about this course into the form below and our enquiries team will answer as soon as they can.

    Admissions enquiries:
    admissions@uea.ac.uk or
    telephone +44 (0)1603 591515