Master in Computer Science
The Master’s programme in computer science offers a profound and in-depth education in the core areas of computer science. The wide range of available courses and the flexible structure allow students to tailor their studies to meet their particular interests, needs, and goals.
There are five majors to choose from. They form the basis of the Master’s programme and ensure that students acquire a deep insight into specific subjects and achieve a high level of competence in their chosen area of specialisation. Each student, regardless of specialisation, graduates with the degree “Master of Science ETH in Computer Science”. Specialisations are enriched by interfocus laboratories which emphasise the design stages of computer science solutions, from modelling and algorithmics to programming and analyzing information processing results.
Computer science majors:
Modern data management involves a wide variety of systems and functionality that form the basis of any software endeavour. From machine learning to websites, from electronic commerce to the Internet of Things, any modern application involves the management of large amounts of data. This track covers the design, development, use, operation and application of data-management systems, including relational database engines, data streaming engines, key-value stores, noSQL, Spark/Hadoop and other big data platforms, as well as semi-structured/graph data management systems. In-terms of computing platforms, the track covers implementations ranging from single nodes to entire data centres, with a special emphasis placed on cloud computing. The track is organised to provide an in-depth look into data management systems via core courses, and to connect students, via elective courses, with relevant subjects closely related to modern data management systems.
Machine Intelligence pursues the goal of automatically creating models and design inference and decision procedures based on empirical evidence, i.e. data and human-provided knowledge. Notions of generalisation and learnability determine central conceptional challenges. Different modes of learning – including supervised, weakly supervised, unsupervised, online, and adaptive learning – are studied through a rigorous mathematical and statistical framework. The interplay of statistical estimation and computation touches on hardware architectures for machine learning, machine perception, high-performance computation, and efficient information systems. An important aspect consists of developing intelligent systems that can cope with unstructured real-world data.
Secure and reliable systems are a cornerstone of the continued expansion and acceptance of the information society. Their development and analysis is at the heart of several research disciplines within computer science, including information security, programming languages, and software engineering. Students in this major programme learn how to systematically construct and analyse a range of secure and reliable modern systems, including software, hardware, and networks.
The digital processing of visual information has become a core topic in modern computer science and information technology. Building on theoretical foundations from computer science and applied mathematics, visual computing is central to a diverse array of application domains: image generation and analysis, computational photography, modelling and control of robotic systems, virtual and augmented reality, computational fabrication, user interfaces, interaction techniques and interactive devices, and more. Methodologically, visual computing is rooted in computer graphics, algorithmic geometry, and digital image processing and computer vision. Strong conceptual and algorithmic links to computational sciences and machine learning provide visual computing with the tools that are necessary to solve large-scale visualisation and inference problems.
The goal of theoretical computer science is to understand the fundamental concepts of computation and information, which is comparable in spirit to the goal of physics: understanding fundamental concepts like matter and energy. Topics include models of computation (from automata theory to quantum computers), algorithms and data structures, computability and computational complexity theory, information theory, and cryptography. Randomness is a core concept that spans all areas of theoretical computer science.
Computer science minors:
The objective of a minor subject is to cover a further area of computer science or an interdisciplinary subject area. To avoid over-specialisation, certain combinations of majors and minors are not permissible. The minor must be chosen depending on the selected major, which can be found in the following chart. The available minors are:
- Computer Graphics
- Computer Vision
- Data Management
- Information Security
- Machine Learning
- Networking
- Programming Languages and Software Engineering
- Systems Software
- Theoretical Computer Science
Major/Minor combinations:
For prospect students:
Download Brochure "Master in Computer Science" (PDF, 8.9 MB)
- Department and faculty
- Study programme
- Professor and student voices
- Life after graduation
- Campus Life
- Future prospects
For current students:
Download Study Guide "Master in Computer Science" (PDF, 219 KB)
- General information
- Grading system
- Majors and Minors
- Guidelines