production
Skip to Content

Postgraduate Computing Science 2020-2021

CS5022: APPLIED ARTIFICIAL INTELLIGENCE

15 credits

Level 5

First Term

This course will allow students to use cutting-edge AI technologies to investigate the creation and application of AI systems. Such tools include deep learning libraries and simulation environments.

CS5037: SYSTEM ANALYSIS AND DESIGN

15 credits

Level 5

First Term

This course will be of interest to anyone who wishes to learn about the processes associated with modern systems analysis and design. In the course you will develop a critical understanding of how to analyse and evaluate systems, and to design and specify corresponding functionalities in a succinct and official way. The course will introduce you to the tools and techniques used by business and system analysts/designers and cover the fundamental issues associated with software engineering and project management.





CS5060: FOUNDATIONS OF AI

15 credits

Level 5

First Term

This course presents the fundamental techniques of Artificial Intelligence, used in system such as Google Maps, Siri, IBM Watson, as well as industrial automation systems, and which are core to emerging products such as self-driving vehicles. This course will equip the student to understand how such AI technologies operate, their implementation details, and how to use them effectively. This course therefore provides the building blocks necessary for understanding and using AI techniques and methodologies.

CS5062: MACHINE LEARNING

15 credits

Level 5

First Term

This course will deliver the most sophisticated Machine Learning methodologies and algorithms which would be illustrated across a wide range of applications including but not limited to images, videos, health, time series data, language processing, etc. This course provides students with the Machine Learning principles for continuing learning and working in the area of Data Science and Artificial Intelligence. 

CS5075: HUMAN COMPUTER INTERACTION

15 credits

Level 5

First Term

This course looks at why a computer system that interacts with human beings needs to be usable. It covers a set of techniques that allow usability to be taken into account when a system is designed and implemented, and also a set of techniques to assess whether usability has been achieved. Weekly practical sessions allow students to practice these techniques. The assessed coursework (which is normally carried out by groups of students) gives an opportunity to go through the design process for a concrete computer system, with a particular focus on ensuring usability.



CS5076: INTRODUCTION TO PROGRAMMING

15 credits

Level 5

First Term

Students will be exposed to the basic principles of computer programming, e.g. fundamental programming techniques, concepts, algorithms, data structures, and object orientated programming. The course contains lectures where the principles are systematically developed. As the course does not presuppose knowledge of these principles, we start from basic intuitions so that students know the basics of programming as the foundation for their future study.

CS5077: WEB DEVELOPMENT

15 credits

Level 5

First Term

Students will learn to develop modern web applications using a variety of languages and frameworks as part of their degree, and prepare them for whatever they do after graduation. A key focus will be on the integration of HTML with CSS and Javascript with other backing frameworks to develop dynamic applications.

CS5079: APPLIED ARTIFICIAL INTELLIGENCE

15 credits

Level 5

First Term

This course will allow students to use cutting-edge AI technologies to investigate the creation and application of AI systems. Such tools include deep learning libraries and simulation environments.

CS5097: DATABASE SYSTEMS AND BIG DATA

15 credits

Level 5

First Term

This course will be of interest to anyone who wishes to learn to design and query databases. The course aims to teach the material using case studies from real-world applications. You will develop a critical understanding of the principal theories, principles and concepts, such as modelling techniques used in the design, administration and security of database systems. You will also learn core theoretical concepts such as relational algebra, file organisation and indexing. At the end of this course you will be able to design and build Web and cloud-based databases and have a critical understanding of how database-driven applications operate.







CS5099: INFORMATION SECURITY

15 credits

Level 5

First Term

This course provides a comprehensive introduction to techniques for engineering secure information systems. Identity theft and fraudulent scams are some examples where computer systems have been utilised and compromised, and information exploited in ways not intended or authorized. In addition to developing critical knowledge of the theories, principles and concepts associated with information security and systems, this course will enhance your understanding of core topics such as access control, usability and psychology, security policy, ethical hacking, and cryptography. Students study how users and organisations must become better prepared to best exploit emerging technologies and issues arising.

CS551A: FUNDAMENTALS OF SOFTWARE PROJECT MANAGEMENT

15 credits

Level 5

Second Term

Software Project Management skills are fundamental in current software-centric industrial development projects, whether these focus on purchasing and customising an off-the-shelf application or on developing a complete system from scratch. However, computer science courses and programmes typically teach specific technical skills that tend to leave out SWPM principles and the practice. This course thus addresses such shortcomings, providing students with much project management skills for the software sector that are highly sought in the job market for CS graduates and post-grads.

CS551G: DATA MINING AND VISUALISATION

15 credits

Level 5

Second Term

This course aims to make students familiar with basic data mining and visualisation techniques and software tools. Students will learn how to analyse complex datasets by applying data pre-processing, exploration, clustering and classification, time series analysis, and many other techniques. This course will also cover text mining and qualitative modelling. Through this course students will be able to analyse real-world datasets in various domains and discover novel patterns from them. This course is particularly suitable for those who are interested in working as data analysts or data scientists in the future.



CS551H: NATURAL LANGUAGE GENERATION

15 credits

Level 5

Second Term

The aim of the course is to introduce students who have some background in computing to (1) the varied aims for which Natural Language Generation (NLG) is pursued, (2) the main rule based and statistical methods that are used in NLG, and (3) some of the main NLG algorithms and systems. The course will cover NLG both as a theoretical enterprise (e.g., for constructing models of language production) and as practical language engineering, paying particular attention to the link between NLG and data science. Some programming experience is expected.



CS551J: KNOWLEDGE REPRESENTATION AND REASONING

15 credits

Level 5

Second Term

Recent advances in AI have changed the perception of what machines can do, from on-line search to answering questions. An underlying feature of many AI systems concern how knowledge is acquired, represented, and reasoned with. Companies such as Google, IBM, and Facebook have been developing sophisticated tools for knowledge representation and reasoning. This module provides the theory and practice of knowledge representation and reasoning, also presenting cutting-edge technologies, libraries and tools. At the end of the course students will be able to design, implement and evaluate knowledge-intensive AI systems.

CS551K: SOFTWARE AGENTS AND MULTI-AGENT SYSTEMS

15 credits

Level 5

Second Term

The global autonomous systems market is expected to be valued at over £13 billion by 2025, involving both software systems and robots. Such autonomous systems act to achieve goals with no human intervention, and are already found in Tesla's self-driving cars, NASA space probes and systems such as Amazon's Echo. This course provides the student with a solid grounding in the theory and tools which underpin such systems, teaching them both how to develop such systems, and use them effectively as part of a larger product.

CS551N: INTRODUCTION TO PROGRAMMING

15 credits

Level 5

Second Term

Students will be exposed to the basic principles of computer programming, e.g. fundamental programming techniques, concepts, algorithms, data structures, and object orientated programming. The course contains lectures where the principles are systematically developed. As the course does not presuppose knowledge of these principles, we start from basic intuitions so that students know the basics of programming as the foundation for their future study.

CS551O: WEB DEVELOPMENT

15 credits

Level 5

Second Term

Students will learn to develop modern web applications using a variety of languages and frameworks as part of their degree, and prepare them for whatever they do after graduation. A key focus will be on the integration of HTML with CSS and Javascript with other backing frameworks to develop dynamic applications.

CS551P: ADVANCED PROGRAMMING

15 credits

Level 5

Second Term

Students will learn the context of software development and engineering so that they know they are building the application needed by the client, and that it is being built well. This course is about the design of the software, and the software development life-cycle. We focus on moving from the idea of the software to its deployment and use by someone through the delivery of small working solutions that grow in features based on regular feedback, which helps improve the working solution. 

CS551Q: ENTERPRISE SOFTWARE DEVELOPMENT

15 credits

Level 5

Second Term

This is a look at data science with respect to business intelligence, dashboards whereby students learn to create applications for handling larger datasets, as well as as a knowledge of visualisations for different situations. This also covers networking and fault tolerance issues as part of learning to development for continuous integration and continuous deployment of the applications.

CS551R: MSC PROJECT IN INFORMATION TECHNOLOGY

60 credits

Level 5

Second Term

The project is a group project where you will work with fellow students to build an application for an external client. In order to do this successfully you will follow practicals that procude successful projects, which will be introduced to you during the first week of the project and continued during the rest of the summer.

Past teams have worked with Survival International, Grampain Fire and Rescue, the Small Isles, local volunteer groups, and an Edinburgh film company.

CS551S: WEB DEVELOPMENT

15 credits

Level 5

Second Term

Students will learn to develop modern web applications using a variety of languages and frameworks as part of their degree, and prepare them for whatever they do after graduation. A key focus will be on the integration of HTML with CSS and Javascript with other backing frameworks to develop dynamic applications.

CS551T: MSC PROJECT IN ARTIFICIAL INTELLIGENCE

60 credits

Level 5

Second Term

This course will provide students of our MSc in AI programme with the opportunity to develop their own AI research project, under the supervision of a member of staff. Typical projects include extending, improving or adapting existing AI theories or techniques to solve different problems, comparing competing techniques or tools to solve a particular problem, and so on. Students will improve their problem-solving and communication skills, as well as broaden, deepen and consolidate knowledge obtained in other components of the degree.

CS5917: MSC PROJECT IN ARTIFICIAL INTELLIGENCE

60 credits

Level 5

Third Term

This course will provide students of our MSc in AI programme with the opportunity to develop their own AI research project, under the supervision of a member of staff. Typical projects include extending, improving or adapting existing AI theories or techniques to solve different problems, comparing competing techniques or tools to solve a particular problem, and so on. Students will improve their problem-solving and communication skills, as well as broaden, deepen and consolidate knowledge obtained in other components of the degree.

CS5942: PROJECT IN INFORMATION TECHNOLOGY

60 credits

Level 5

Third Term

The Project in Information Technology is a  group project where you will  work with a number of fellow students to build an application for an external client.  In order to do this successfully you will follow practices that produce successful projects, which will be introduced to you during the first week of the project, and continued during the rest of the summer.

Past teams have worked with Survival International, Grampian Fire and Rescue, the Small Isles, local volunteer groups, and an Edinburgh film company.




Compatibility Mode

We have detected that you are have compatibility mode enabled or are using an old version of Internet Explorer. You either need to switch off compatibility mode for this site or upgrade your browser.