Register

Search

and / or

Advanced Search

Related Programmes

Did you study here?

Write a short review & help students like you! Over 1,500 students already shared their experience.

Share your study experience now

Stay up-to-date?

Receive relevant New and Updated programmes: personal updates!

PU_Light.jpg

Advanced Computing Science (MSc) – (M.Sc.)

University of Nottingham

Computer Science
- Advertisement -
- Advertisement -
Disciplines:
Found a mistake?
Annual Tuition Fee: ≈ € 5,282 ≈ € 16,975 (non-EEA)
Location: Nottingham / United Kingdom / View location on map ▾ Hide location on map ▴
Duration: 12 months Start Date: September
Educational Form:
  • Taught
Education Variants:
  • Parttime
  • Fulltime
Languages: English 
-1.150926,52.957736

Location of University of Nottingham

Course Content

During semester one, you will take compulsory modules in:

* Algorithm Design and Operations Research
* Mathematical Foundations of Programming
* Advanced Data Structures

You will then have the option to take the following elective module:

* Computer-Aided Formal Reasoning

During semester two you will take two or three of the following compulsory modules:

* Non-standard Computation
* Computer-aided Formal Reasoning
* Decision-support Methodologies
* Programming Algebra
* Heuristic Search Methods
* Vision and Graphics

Please note that all module details are subject to change.
Over the summer period towards the end of the course, you will undertake an Individual Project.

Course Structure
The MSc in Advanced Computing Science is offered on a full-time basis over one year or part-time over two to four years.
The course comprises 180 credits, split across 120 credits´ worth of compulsory and optional modules and a 60-credit research project.
The first semester provides a rigorous basis for the development of advanced software. The second semester gives the opportunity to specialise in an area close to the research strengths of the School. This specialisation is reinforced by the individual project completed over the summer months.
Modules
Algorithm Design and Operations ResearchThis course exploits formal mathematical reasoning in the design of reliable computer algorithms. The principles of program verification and their relationship to mathematical proof principles are applied to a variety of programming problems.
Fundamental techniques and algorithms for tackling optimisation and scheduling problems from a range of commercial and service sectors are discussed. The module presents the latest approaches and algorithms from Operational Research and Artificial Intelligence.Advanced Data StructuresEfficiency of algorithms. Worst-case, best-case and average-case analyses. Big-Oh notation. Recurrence relations and other supporting mathematics. Review of standard data structures (lists, ordered binary trees, etc.) Advanced data structures (selection from red-black trees, 2-3 trees etc.) Pointer manipulation. Amortized computations. Use of software libraries.Mathematical Foundations of ProgrammingThe development of programming languages and their underlying mathematical foundations are closely linked. Many of the concepts in modern languages have their origins in basic research, and the development of new theory is often inspired by practical problems. This module focusses on some of the fundamental mathematical concepts that underly modern programming and programming languages, including aspects of recent and current research. The precise topics covered will vary from year to year, but will include the following: * Type theory; * Program logics; * Program semantics; * Program correctness; * Program analysis. Decision Support MethodologiesThis module introduces a wide range of advanced concepts, methods and techniques of Operational Research and Artificial Intelligence that can help in design of intelligent decision support systems. The module will present a variety of examples of intelligent decision support systems from industrial and service sectors.Heuristic Search Methodshis module explores selected state-of-the-art heuristic search methods and their application to find solutions for complex optimisation and other search problems. The methods studied are selected from the latest specialised research literature. The issues to be studied include: working principles, design and implementation, parameter tuning and experimental testing. Students will achieve awareness of the latest advances in heuristic search methods research and will also implement one of these methods to solve a given problem. Programming AlgebraRecursion is a very powerful problem-solving technique that is used widely in computing science. It is used, for example, in the definition of programming languages, as a fundamental programming structure in functional and logic programming, and in the definition of data structures. A complete understanding of recursion can only be achieved by studying its algebraic properties. This course will introduce the fundamental algebraic structures in the mathematics of program construction with a focus on the algebraic properties of recursion and how these are applied to the generic solution of programming problems.Computer-Aided Formal ReasoningThis module introduces the student to computer aided formal reasoning an emerging technology with interesting applications such as proof carrying code or certified safety critical systems. The course includes a practical component by using a proof assistant (e.g. Coq) and a theoretical component providing some background on the theory of formal reasoning. The theoretical part of the module introduces the student to various aspects of Computer Aided Formal Reasoning, such as:
* Formal proofs in propositional logic and predicate logic
* Proof by induction and coinduction
* Equational reasoning
* Formalisation of Mathematics
* Proving program correctness formally
* Computer representations of proofs
* Use of tactics for the partial automatisation of proofs
* Applications of CAFR
* Dependently typed programming (Epigram, Agda)
* Comparison of different system (COQ,ELF,Isabelle,PVS,...)

In the practical part the students will use a system of their choice to develop a medium sized project, thus gaining experience with using Computer Aided Formal Reasoning and advanced software engineering methods.Non-Standard ComputationNon-standard computation (NSC) attempts to go beyond the traditional models of computation initiated by Post, Church, Turing and Gödel in the early decades of the last century. In traditional computability and complexity theory no specific physical embodiment of the computing device is assumed, that is, the "computer" is an idealized object that bears no relation to the physical laws of the universe. On the other hand, Non-standard computation is based on the fundamental observation that any computation must obey all extant physical laws; hence the computer embodiment is both a crucial constraints and a source of computational power. Non-standard computational metaphors and mechanisms draw inspiration from natural phenomena, most notably the quantum, molecular and biological realms. NSC is a rich interdisciplinary arena where computer science meets physics, chemistry and biology. This module introduces students to embodied computational models. It starts with the smallest computational scales possible, the quantum realm, and moves up towards the molecular (DNA, RNA and other nanoparticles based Computing) and cellular (P systems) levels. If term permits, we will also study other examples of non-standard computation (e.g. relativistic computation). Research Project in Advanced Computing ScienceThis module involves conducting a piece of empirical and/or theoretical research in an appropriate strand of the degree. This research will be in-depth, and carried out under supervision of a member of academic staff. Where appropriate, projects may also be conducted in conjunction with an external organisation. Projects may or not involve a substantial software implementation.


IELTS

You are normally required to take an English Proficiency Test.

Most European Universities recognise the IELTS test.

Take test

Requirements

Entry requirements:2.1 (Upper 2nd class hons degree or international equivalent)Including:Computer Science or related Science or Engineering discipline, some Physics/Chemistry/Science courses, some Mathematics courses may be considered.Excluding:Humanities or Arts subjectsIELTS:6.5 (no less than 6.0 in any element)TOEFL paper based:573 with 4.5 in TWETOEFL computer based:230 with 4.5 in TWETOEFL IBT:88 (no less than 19 in any element)

Language Proficiency

Cambridge English: Advanced (CAE): Grade B (Score: 75)

Ask a Question

You can contact Postgraduate Enquiry to ask a question about Advanced Computing Science (MSc) at University of Nottingham.

Relevant Links


MastersPortal.eu - Finds the Masters for you!
 

Portals

Relevant Articles

We have written a number of relevant articles that will help you get started.

Why study in Europe?

Best Practice and Country Guides

Other useful resources

Erasmus Mundus

Erasmus Mundus is a scholarship and co-operation programme in the field of higher education which promotes the European Union as a centre of excellence in learning around the world.

Read the article

Why Europe?

Why would you study your Master's abroad? Why in Europe, and, why not? Globalisation is ongoing, the world is your backyard. A new world of study options becomes available!

Read the article

Read about Study Options in Europe

Overseas

Institutes Overseas

anywhere