Skip to main content
Till KTH:s startsida

Study year 2

The following courses are part of study year two.

The course application codes and study periods are valid for the academic year 2021/2022. For other academic years, different application codes and study periods may apply

General Courses

General Courses

Mandatory courses

Course code Course name Scope Educational level
DA231X Degree Project in Computer Science and Engineering, Second Cycle 30 hp Second cycle
DD2300 Program Integrating Course in Computer Science
One credit each academic year
2 hp Second cycle

Specialisations: Track, Cognitive Systems (CSCS)

Mandatory courses

Course code Course name Scope Educational level
DA231X Degree Project in Computer Science and Engineering, Second Cycle 30 hp Second cycle
DD2300 Program Integrating Course in Computer Science 2 hp Second cycle

Conditionally elective courses

Course code Course name Scope Educational level
DD2410 Introduction to Robotics
Compulsory for the subtrack Vision and robotics
7.5 hp Second cycle
DD2423 Image Analysis and Computer Vision
Compulsory for the subtrack Vision and robotics
7.5 hp Second cycle
DD2437 Artificial Neural Networks and Deep Architectures
Conditionally elective for the subtrack Conversational systems
7.5 hp Second cycle
DT2140 Multimodal Interaction and Interfaces
Conditionally elective for the subtrack Conversational systems
7.5 hp Second cycle
DT2151 Project in Conversational Systems
Compulsory for the subtrack Conversational systems
7.5 hp Second cycle

Recommended courses

Course code Course name Scope Educational level
DD2417 Language Engineering 7.5 hp Second cycle
DD2434 Machine Learning, Advanced Course 7.5 hp Second cycle
DD2438 Artificial Intelligence and Multi Agent Systems 15 hp Second cycle
DD2447 Statistical Methods in Applied Computer Science 6 hp Second cycle
DD2477 Search Engines and Information Retrieval Systems 7.5 hp Second cycle
EL2320 Applied Estimation 7.5 hp Second cycle
SF1861 Optimization 6 hp First cycle
SF2940 Probability Theory 7.5 hp Second cycle

Supplementary information

Prerequisits: SF1626 Calculus in Several Variables, 7,5 credits (or equivalent).

Information regarding conditionally elective courses

One of the subtracks must be chosen:

1. Vision and Robotics:

Mandatory courses:
DD2410 Introduction to Robotics,
DD2423 Image Analysis and Computer Vision, and
DD2424 Deep Learning in Data Science.

2. Conversational System:

- Mandatory course:
DT2151 Project in Conversational Systems.
- At least one must be taken:
DT2112 Speech Technology, or
DT2119 Speech and Speaker Recognition, and
 - At least 7,5 credits must be taken from:
DD2424 Deep Learning in Data Science,
DD2437 Artificial Neural Networks and Deep Architectures,
DT2140 Multimodal Interaction and Interfaces,
DD2417 Language Engineering.

Some courses are only given every two years.

Specialisations: Track, Data Science (CSDA)

Mandatory courses

Course code Course name Scope Educational level
DA231X Degree Project in Computer Science and Engineering, Second Cycle 30 hp Second cycle
DD2300 Program Integrating Course in Computer Science 2 hp Second cycle
DD2430 Project Course in Data Science 7.5 hp Second cycle

Conditionally elective courses

Course code Course name Scope Educational level
DD2434 Machine Learning, Advanced Course
Conditionally elective for the subtrack Machine learning
7.5 hp Second cycle
DD2437 Artificial Neural Networks and Deep Architectures
Conditionally elective for the subtrack Machine learning
7.5 hp Second cycle

Recommended courses

Course code Course name Scope Educational level
DD2257 Visualization 7.5 hp Second cycle
DD2423 Image Analysis and Computer Vision 7.5 hp Second cycle
DD2447 Statistical Methods in Applied Computer Science 6 hp Second cycle
EL2320 Applied Estimation 7.5 hp Second cycle
SF1811 Optimization 6 hp First cycle

Supplementary information

Prerequisits: SF1626 Calculus in Several Variable, 7,5 credits (or equivalent).

Information regarding conditionally elective courses

One of the subtracks must be chosen:

1. Machine Learning:
   - Mandatory course:
     DD2424 Deep Learning in Data Science.
   - One of the courses must be taken:
     DD2434 Machine Learning Advanced Course,
     DD2437 Artificial Neural Networks and Deep Architectures, or
     DD2420 Probabilistic Graphical Models.

2. Natural Language Processing:
    Mandatory courses:
    DD2476 Search Engines and Information Retrieval Systems, and 
    DD2418 Language Engineering.

Some courses are only given every two years.

Specialisations: Track, Interaction Design (CSID)

Mandatory courses

Course code Course name Scope Educational level
DA231X Degree Project in Computer Science and Engineering, Second Cycle 30 hp Second cycle
DD2300 Program Integrating Course in Computer Science 2 hp Second cycle

Conditionally elective courses

Course code Course name Scope Educational level
DH2408 Evaluation Methods in Human-Computer Interaction 6 hp Second cycle
DH2413 Advanced Graphics and Interaction 9 hp Second cycle
DM2630 User Experience Design and Evaluation 9 hp Second cycle
DT2140 Multimodal Interaction and Interfaces 7.5 hp Second cycle

Information regarding conditionally elective courses

At least 15 credits must be taken: DH2321 Information Visualization, DH2400 Physical Interaction Design and Realization,
DH2632 Human-Computer Interaction Research Seminars, DH2642 Interaction Programming and the Dynamic Web.

Some courses are only given every two years.

Specialisations: Track, Scientific Computing (CSSC)

Mandatory courses

Course code Course name Scope Educational level
DA231X Degree Project in Computer Science and Engineering, Second Cycle 30 hp Second cycle
DD2300 Program Integrating Course in Computer Science 2 hp Second cycle
DD2444 Project Course in Scientific Computing 7.5 hp Second cycle

Conditionally elective courses

Course code Course name Scope Educational level
DD2257 Visualization 7.5 hp Second cycle
DD2360 Applied GPU Programming 7.5 hp Second cycle
DD2370 Computational Methods for Electromagnetics 7.5 hp Second cycle
DD2437 Artificial Neural Networks and Deep Architectures 7.5 hp Second cycle

Recommended courses

Course code Course name Scope Educational level
BB2280 Molecular Modeling 7.5 hp Second cycle
DD2402 Advanced Individual Course in Computational Biology 6 hp Second cycle
DD2421 Machine Learning 7.5 hp Second cycle
DD2435 Mathematical Modelling of Biological Systems 9 hp Second cycle
EL2820 Modelling of Dynamical Systems 7.5 hp Second cycle
SF2561 The Finite Element Method 7.5 hp Second cycle
SF2565 Program Construction in C++ for Scientific Computing 7.5 hp Second cycle

Supplementary information

Prerequisits: SF1626 Calculus in Several Variable, 7,5 credits.

Information regarding conditionally elective courses

At least one must be taken:
DD2437 Artificial Neural Networks and Deep Architectures,
DD2257 Visualization, 
DD2365 Advanced Computation in Fluid Mechanics.

Some courses are only given every two years.

Specialisations: Track, Security and Privacy (CSSP)

Mandatory courses

Course code Course name Scope Educational level
DA231X Degree Project in Computer Science and Engineering, Second Cycle 30 hp Second cycle
DD2300 Program Integrating Course in Computer Science 2 hp Second cycle
DD2520 Applied Cryptography 7.5 hp Second cycle

Conditionally elective courses

Course code Course name Scope Educational level
DD2443 Parallel and Distributed Computing 7.5 hp Second cycle
DD2496 Privacy Enhancing Technologies 7.5 hp Second cycle
DD2497 Project course in System Security 7.5 hp Second cycle
DD2525 Language-Based Security 7.5 hp Second cycle
EP2510 Advanced Networked Systems Security 7.5 hp Second cycle

Recommended courses

Course code Course name Scope Educational level
DD2528 Dependable Autonomous Systems 7.5 hp Second cycle
EN2720 Ethical Hacking 7.5 hp Second cycle
EP2790 Security Analysis of Large-Scale Computer Systems 7.5 hp Second cycle

Information regarding conditionally elective courses

At least two must be taken:
DD2448 Foundations of Cryptography, DD2525 Language-Based Security, DD2496 Privacy Enhancing Technologies,
DD2443 Parallel and Distributed Computing,
and at least one must be taken:
DD2497 Project course in System Security, EP2510 Advanced Networked Systems Security.

Some courses are only given every two years.

Specialisations: Track, Software Technology (CSST)

Mandatory courses

Course code Course name Scope Educational level
DA231X Degree Project in Computer Science and Engineering, Second Cycle 30 hp Second cycle
DD2300 Program Integrating Course in Computer Science 2 hp Second cycle

Conditionally elective courses

Course code Course name Scope Educational level
DD2372 Automata and Languages
Conditionally elective for the subtrack Programming Languages
6 hp Second cycle
DD2443 Parallel and Distributed Computing
Conditionally elective for the subtrack Software Engineering
7.5 hp Second cycle
DD2487 Large-Scale Software Development
Compulsory for the subtrack Software Engineering
7.5 hp Second cycle
DD2488 Compiler Construction
Compulsory for the subtrack Programming languages
9 hp Second cycle
DD2528 Dependable Autonomous Systems
Conditionally elective for the subtrack Software Engineering
7.5 hp Second cycle

Recommended courses

Course code Course name Scope Educational level
DD2421 Machine Learning 7.5 hp Second cycle
DD2477 Search Engines and Information Retrieval Systems 7.5 hp Second cycle
ID1217 Concurrent Programming 7.5 hp First cycle

Information regarding conditionally elective courses

One of the subtracks must be chosen:

1. Programming Languages
- Mandatory courses: 
DD2481 Principles of Programming Languages, and 
DD2488 Compiler Construction.
- One must be taken: 
DD2372 Automata and Languages, or 
DD2457 Program Semantics and Analysis.

2. Software Engineering
- Mandatory course: 
DD2487 Large-Scale Software Development.
- At least two must be taken: 
DD2443 Parallel and Distributed Computing, 
DD2459 Software Reliability,
DD2460 Software Safety and Security, 
DD2481 Principles of Programming Languages, 
DD2482 Automated Software Testing and DevOps, 
DD2528 Dependable Autonomous Systems.

Some courses are only given every two years.

Specialisations: Track, Theoretical Computer Science (CSTC)

Mandatory courses

Course code Course name Scope Educational level
DA231X Degree Project in Computer Science and Engineering, Second Cycle 30 hp Second cycle
DD2300 Program Integrating Course in Computer Science 2 hp Second cycle
DD2467 Individual Project in Theoretical Computer Science 7.5 hp Second cycle

Conditionally elective courses

Course code Course name Scope Educational level
DD2372 Automata and Languages
Conditionally elective for the subtrack Formal Methods and Semantics
6 hp Second cycle
DD2443 Parallel and Distributed Computing
Conditionally elective for the subtrack Formal Methods and Semantics
7.5 hp Second cycle
DD2445 Complexity Theory
Conditionally elective for the subtrack Formal Methods and Semantics
7.5 hp Second cycle
DD2552 Seminars on Theoretical Computer Science, Programming Languages and Formal Methods
Compulsory for the subtrack Formal Methods and Semantics
7.5 hp Second cycle

Recommended courses

Course code Course name Scope Educational level
DD2447 Statistical Methods in Applied Computer Science 6 hp Second cycle
ID1217 Concurrent Programming 7.5 hp First cycle

Supplementary information

Mandatory courses for all:
- DD2467 Individual Project in Theoretical Computer Science, 7,5 credits,
- SF2xxx, any course in Mathematics, second cycle, 7,5 credits.

Information regarding conditionally elective courses

One of the subtracks must be chosen:

1. Algorithms, Complexity and Cryptography:
- Mandatory course: 
DD2448 Foundations of Cryptography.
- At least one of the courses must be taken: 
DD2445 Complexity Theory
or DD2442 Seminars on Theoretical Computer Science.

2. Formal Methods and Semantics:
- Mandatory course: 
DD2452 Formal Methods (replaced by DD2552 every second year).
- At least 7,5 credits must be taken:
DD2459 Software Reliability
DD2448 Foundations of Cryptography
DD2457 Program Semantics and Analysis
DD2460 Software Safety and Security
DD2372 Automata and Languages
DD2443 Parallel and Distributed Computing
DD2442 Seminars on Theoretical Computer Science
DD2445 Complexity Theory.

Some courses are only given every two years.

Specialisations: Track, Visualization and Interactive Graphics (CSVG)

Mandatory courses

Course code Course name Scope Educational level
DA231X Degree Project in Computer Science and Engineering, Second Cycle 30 hp Second cycle
DD2300 Program Integrating Course in Computer Science 2 hp Second cycle
DD2470 Advanced Topics in Visualization and Computer Graphics 6 hp Second cycle

Conditionally elective courses

Course code Course name Scope Educational level
DD2257 Visualization 7.5 hp Second cycle
DH2321 Information Visualization 6 hp Second cycle
DH2323 Computer Graphics and Interaction 6 hp Second cycle
DH2413 Advanced Graphics and Interaction 9 hp Second cycle
DH2650 Computer Game Design 6 hp Second cycle

Recommended courses

Course code Course name Scope Educational level
DD2356 Methods in High Performance Computing 7.5 hp Second cycle
DD2423 Image Analysis and Computer Vision 7.5 hp Second cycle
DD2424 Deep Learning in Data Science 7.5 hp Second cycle
DM2350 Human Perception for Information Technology 7.5 hp Second cycle

Information regarding conditionally elective courses

At least 18 credits must be taken:
DD2257 Visualization, DH2321 Information Visualization, DH2323 Computer Graphics and Interaction, DH2413 Advanced Graphics and Interaction,
DH2650 Computer Game Design.

Some courses are only given every two years.