You have the chance to study a subject area in depth. By selecting different elective and restricted elective courses you can either compose your own study track or specialize within one of these areas with a recommended course structure.
This study track gives you an in-depth knowledge of algorithmic paradigms and techniques, and their supporting data structures. The recommended courses give you a comprehensive background in algorithmics, covering both foundational aspects, such as computational complexity and randomization, and practical applications within optimization or bioinformatics, including performance engineering for real-world hardware.
This track focuses on the theory and practice of programming languages, with a particular emphasis on how language technology supports the development of correct, secure, and high-performance software for a variety of application domains. You will get a solid background in areas such formal semantics, program analysis, and the principles of high-level parallel programming, relevant for both development-tool building and complex programming tasks.
The purpose of this track is to give the student in-depth working knowledge of computational and mathematical models, algorithms and techniques used for image processing in computer vision and automated image analysis, especially in the biomedical domain. The suggested courses cover core foundational aspects, such as image formation and geometry, signal processing, numerical optimization and simulation, and image segmentation and feature extraction - as well as principles of data mining of image-based sources, such as medical, geographical, or astronomical image repositories.
The Data Science study track educates specialists in extracting knowledge from data. The track offers a solid and broad program ranging from theoretical foundations to practical aspects of large-scale (“big”) data analysis. It provides a wide range of courses covering various aspects of contemporary data analysis, including machine learning, information retrieval, parallel processing, and visualization. Graduates of the data science track will come out with a solid background and hands-on experience in this fascinating and rapidly growing area of computer science. They will be well prepared for solving challenging data analysis tasks and pursuing a career in science or industry.
This track focuses on the design, implementation, and evaluation of interactive computing systems for human use. It covers the main technological aspects, including classical and emerging interface modalities, such as haptics or virtual reality, with a particular emphasis on mobile interfaces - but also the psychological and cognitive aspects involved in interaction and collaboration, including proper design, execution, and analysis of experiments and user studies.
While almost all of computer science involves some amount of program design and implementation, the Software Engineering track focuses particularly on the process of team-based development of large, complex applications and systems. It covers classical technical aspects of software engineering and architecting, but also issues of how the developed systems fit into a larger human or organizational context, through focus on aspects such as requirements elicitation, participatory design, and innovation.
This track offers a unique combination of classic computer science and game development. In the first semester of the the elective part of the programme, you follow courses from the other tracks based on your particular interests, e.g., algorithmics for game AI, simulation for game physics, languages for game scripting, or mobile-interface technology; while in the second, you participate in a large, cross-institutional development project at DADIU (the Danish National Academy of Digital Interactive Entertainment), in which you collaborate with animators, sound designers, game directors, and other technical-artistic competences to create a substantial computer game.
This track may be relevant for you not only if you are specifically interested in game programming, but also in related areas such as gamification for health or learning, or simply if you want practical experience working in a large, multidisciplinary development team.
Shared section of the curriculum for all programmes at the Faculty of SCIENCE.