The following courses are part of study year one.
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
Students who in a previous degree have read a course corresponding to DD2380, DD2395, IK2218 or DD2440 may apply to read a replacement course instead. The application is submitted to the master coordinator who, after reviewing the previously read course, helps the student to choose an appropriate replacement course. The course should be at least 6 credits, advanced level and broad in computer science. It must not be included in the student's track and the subject matter may not be close to any of the other compulsory courses.
The choice of replacement course must be approved by the programme director.
Students at KTH:
- from CTFYS or CINTE, who miss the equivalent courses in previous degree are also required to take:
- DD2350 Algorithms, Data Structures and Complexity 9,5 credits or DD2352 Algorithms and Complexity 7,5 credits.
- SF1662 Discrete Mathematics 7,5 credits/SF1610 Discrete Mathematics, 7,5 credits /SF1679 Discrete Mathematics 7,5 credits.
- from CINTE who have read any of the following courses can apply to read a replacement course: IK1203 Network and Communication, ID1214 Artificial Intelligence and Applications, IV1013 Introduction to Computer Security. Contact the master coordinator according to the instructions above.
- from CDATE, who started 2011 or earlier, have to take the compulsory course ID2200 Operating System 6 credits in the master's programme.
Mandatory courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2395 Computer Security | 6.0 credits | 6.0 | ||||
IK2218 Protocols and Principles of the Internet | 6.0 credits | 6.0 | ||||
DA2210 Introduction to the Philosophy of Science and Research Methodology for Computer Scientists | 6.0 credits | 1.5 | 4.5 | |||
DD2440 Advanced Algorithms | 6.0 credits | 1.5 | 4.5 | |||
DD2300 Program Integrating Course in Computer ScienceOne credit each academic year | 2.0 credits | 0.2 | 0.3 | 0.2 | 0.3 | |
DD2380 Artificial Intelligence | 6.0 credits | 6.0 |
Specialisations
Track, Cognitive Systems (CSCS)
Courses (CSCS)
Prerequisites:
SF1626 Calculus in Several Variable, 7,5 credits (or equivalent).
Mandatory courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2421 Machine Learning | 7.5 credits | 7.5 |
One of the subtracks must be taken:
Subtrack 1: Vision and Robotics
Mandatory courses (read in year 2):
- DD2410 Introduction to Robotics
- DD2423 Image Analysis and Computer Vision
- DD2424 Deep Learning in Data Science
Subtrack 2: Conversational System
Mandatory course:
- DT2151 Project in Conversational Systems
At least one must be taken:
- DT2112 Speech Technology
- DT2119 Speech and Speaker Recognition
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 may be given every two years.
Conditionally elective courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DT2112 Speech TechnologyConditionally elective for the subtrack Conversational systems | 7.5 credits | 7.5 | ||||
DD2417 Language EngineeringConditionally elective for the subtrack Conversational systems | 7.5 credits | 7.5 | ||||
DD2424 Deep Learning in Data ScienceCompulsory for the subtrack Vision and robotics, Conditionally elective for the subtrack Conversational systems | 7.5 credits | 7.5 | ||||
DT2119 Speech and Speaker RecognitionConditionally elective for the subtrack Conversational systems | 7.5 credits | 7.5 |
Recommended courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2438 Artificial Intelligence and Multi Agent Systems | 15.0 credits | 7.0 | 8.0 | |||
DD2477 Search Engines and Information Retrieval Systems | 7.5 credits | 4.5 | 3.0 |
Track, Data Science (CSDA)
Courses (CSDA)
Prerequisites:
SF1626 Calculus in Several Variable, 7,5 credits (or equivalent).
Mandatory courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2421 Machine LearningOne can be given credit for an equivalent earlier course | 7.5 credits | 7.5 |
One of the subtracks must be chosen:
Subtrack 1: Machine Learning
Mandatory course:
- DD2421 Machine Learning
- DD2424 Deep Learning in Data Science
One of these courses must be taken:
- DD2434 Machine Learning Advanced Course
- DD2437 Artificial Neural Networks and Deep Architectures
- DD2420 Probabilistic Graphical Models.
Subtrack 2: Natural Language Processing
Mandatory courses:
- DD2421 Machine Learning
- DD2477 Search Engines and Information Retrieval Systems
- DD2417 Language Engineering.
Some courses may be given every two years.
Conditionally elective courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2420 Probabilistic Graphical ModelsConditionally elective for the subtrack Machine learning | 7.5 credits | 7.5 | ||||
DD2477 Search Engines and Information Retrieval SystemsCompulsory for the subtrack Natural Language Processing | 7.5 credits | 4.5 | 3.0 | |||
DD2417 Language EngineeringCompulsory for the subtrack Natural Language Processing | 7.5 credits | 7.5 | ||||
DD2424 Deep Learning in Data ScienceCompulsory for the subtrack Machine Learning | 7.5 credits | 7.5 |
Recommended courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DH2320 Introduction to Visualization and Computer Graphics | 6.0 credits | 6.0 | ||||
DH2321 Information Visualization | 6.0 credits | 6.0 | ||||
DT2112 Speech Technology | 7.5 credits | 7.5 | ||||
DD2438 Artificial Intelligence and Multi Agent Systems | 15.0 credits | 7.0 | 8.0 | |||
DT2119 Speech and Speaker Recognition | 7.5 credits | 7.5 |
Track, Interaction Design (CSID)
Courses (CSID)
Mandatory courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DH2628 Interaction Design Methods | 7.5 credits | 7.5 | ||||
DH2629 Interaction Design as a Reflective Practice | 7.5 credits | 7.5 |
At least 15 credits (ie either 7,5+7,5 credits, or 7,5+6+3 credits) must be taken:
- DH2321 Information Visualization
- DH2400 Physical Interaction Design and Realization
- DH2632 Human-Computer Interaction Research Seminars
- DH2408 Evaluation Methods in Human-Computer Interaction
- DH2413 Advanced Graphics and Interaction
- DM2630 User Experience Design and Evaluation
- DT2140 Multimodal Interaction and Interfaces.
Some courses may be given every two years.
Conditionally elective courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DH2321 Information Visualization | 6.0 credits | 6.0 | ||||
DH2400 Physical Interaction Design and Realization | 7.5 credits | 7.5 | ||||
DH2632 Human-Computer Interaction, Research Seminars | 3.0 credits | 1.5 | 1.5 |
Track, Scientific Computing (CSSC)
Courses (CSSC)
Prerequisites:
SF1626 Calculus in Several Variable, 7,5 credits.
Mandatory courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2356 Methods in High Performance ComputingMandatory in Subtrack 1 and 2 | 7.5 credits | 7.5 |
One of the subtracks must be taken:
Subtrack 1: High Performance Computing
Mandatory courses within the subtrack:
- DD2358 Introduction to High Performance Computing
- DD2356 Methods in High Performance Computing
- DD2360 Applied GPU Programming
One of the courses should be taken:
- DD2370 Computational Methods for Electromagnetics
- DD2375 Project Course in High-Performance Computing
Subtrack 2: Computational Science
Mandatory courses within the subtrack:
- DD2356 Methods in High Performance Computing
- DD2363 Methods in Scientific Computing
- DD2444 Project Course in Scientific Computing
One of the courses should be taken:
- DD2437 Artificial Neural Networks and Deep Architectures
- DD2257 Visualization
- DD2365 Advanced Computation in Fluid Mechanics.
Some courses may be given every two years.
Conditionally elective courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2358 Introduction to High Performance ComputingMandatory in Subtrack 1 | 7.5 credits | 7.5 | ||||
DD2363 Methods in Scientific ComputingMandatory in Subtrack 2 | 7.5 credits | 7.5 | ||||
DD2365 Advanced Computation in Fluid Mechanics | 7.5 credits | 7.5 |
Recommended courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2421 Machine Learning | 7.5 credits | 7.5 | ||||
DH2320 Introduction to Visualization and Computer Graphics | 6.0 credits | 6.0 | ||||
DT2212 Music Acoustics | 7.5 credits | 7.5 | ||||
DD2401 Neuroscience | 7.5 credits | 7.5 | ||||
CM2014 Simulation Methods in Medical Engineering | 7.5 credits |
Track, Security and Privacy (CSSP)
Courses (CSSP)
Mandatory courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2520 Applied Cryptography | 7.5 credits | 7.5 |
At least two of the courses must be taken:
- DD2448 Foundations of Cryptography
- DD2525 Language-Based Security
- DD2496 Privacy Enhancing Technologies
- DD2443 Parallel and Distributed Computing
At least one course must be taken:
- DD2497 Project course in System Security
- EP2510 Advanced Networked Systems Security.
Some courses may be given every two years.
Conditionally elective courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2448 Foundations of Cryptography | 7.5 credits | 7.5 | ||||
DD2525 Language-Based Security | 7.5 credits | 7.5 |
Recommended courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
EP2520 Building Networked Systems Security | 7.5 credits | 7.5 | ||||
IL1333 Hardware Security | 7.5 credits | 7.5 | ||||
DD2460 Software Safety and Security | 7.5 credits | 7.5 | ||||
ID2218 Design of Fault-tolerant Systems | 7.5 credits | 7.5 |
Track, Software Technology (CSST)
Courses (CSST)
Mandatory courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2480 Software Engineering Fundamentals | 7.5 credits | 7.5 |
One of the subtracks must be chosen:
Subtrack 1: Programming Languages
Mandatory courses:
- DD2481 Principles of Programming Languages
- DD2488 Compiler Construction
One course must be taken (given alternately every two years):
- DD2372 Automata and Languages (not given Spring 2021)
- DD2457 Program Semantics and Analysis (not given Spring 2022) replaces DD2557
Subtrack 2: Software Engineering
Mandatory course:
- DD2487 Large-Scale Software Development
At least two courses 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 (given every two years, not in Autumn 2022).
Some courses may be given every two years.
Conditionally elective courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2459 Software ReliabilityConditionally elective for the subtrack Software Engineering | 7.5 credits | 7.5 | ||||
DD2372 Automata and LanguagesConditionally elective for the subtrack Programming Languages | 6.0 credits | 6.0 | ||||
DD2460 Software Safety and SecurityConditionally elective for the subtrack Software Engineering | 7.5 credits | 7.5 | ||||
DD2481 Principles of Programming LanguagesMandatory for the subtrack Programming Languages and conditionally elective for the subtrack Software Engineering | 7.5 credits | 7.5 | ||||
DD2482 Automated Software Testing and DevOpsConditionally elective for the subtrack Software Engineering | 7.5 credits | 7.5 |
Recommended courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2421 Machine Learning | 7.5 credits | 7.5 | ||||
ID1217 Concurrent Programming | 7.5 credits | 7.5 | ||||
DD2477 Search Engines and Information Retrieval Systems | 7.5 credits | 4.5 | 3.0 |
Track, Theoretical Computer Science (CSTC)
Courses (CSTC)
Mandatory course for all:
DD2467 Individual Project in Theoretical Computer Science 7,5 credits
All should take at least one of these courses:
- SF2740 Graph Theory (will be given every two years, given in Fall 2021)
- SF2972 Game Theory (will be given every two years, given in Spring 2022)
- SF2940 Probability Theory
- SF2741 Enumerative Combinatorics (will be given every two years, given in Fall 2022).
The student may propose a change to other courses in mathematics at advanced level and a total of at least 7,5 credits. The proposal is submitted to the Master Coordinator well in advance of the course start. The course change must be approved by the Programme Director.
Subtrack 1: Algorithms, Complexity and Cryptography
Mandatory course:
- DD2448 Foundations of Cryptography
At least one of the courses must be taken:
- DD2542 Seminars on Theoretical Computer Science, Algorithms and Complexity (will be given every two years, given in Fall 2022)
- DD2445 Complexity Theory (will be given every two years, given in Fall 2021).
Subtrack 2: Formal Methods and Semantics
One mandatory course:
- DD2452 Formal Methods (will be given every two years, given in Fall 2022), or
- DD2552 Seminars on Theoretical Computer Science, Programming Languages and Formal Methods (will be given every two years, given in Fall 2021).
At least 7,5 credits must be taken:
- DD2459 Software Reliability
- DD2457 Program Semantics and Analysis (will be given every two years, given in Spring 2023)
- DD2460 Software Safety and Security
- DD2372 Automata and Languages (will be given every two years, given in Spring 2022)
- DD2443 Parallel and Distributed Computing.
Some courses may be given every two years.
Conditionally elective courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2459 Software ReliabilityConditionally elective for the subtrack Formal Methods and Semantics | 7.5 credits | 7.5 | ||||
SF2972 Game Theory | 7.5 credits | 7.5 | ||||
DD2372 Automata and LanguagesConditionally elective for the subtrack Formal Methods and Semantics | 6.0 credits | 6.0 | ||||
DD2448 Foundations of CryptographyMandatory for the subtrack Algorithms, Complexity and Cryptography | 7.5 credits | 7.5 | ||||
DD2460 Software Safety and SecurityConditionally elective for the subtrack Formal Methods and Semantics | 7.5 credits | 7.5 | ||||
DD2445 Complexity TheoryConditionally elective for the subtrack Algorithms, Complexity and Cryptography | 7.5 credits |
Recommended courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
ID1217 Concurrent Programming | 7.5 credits | 7.5 |
Track, Visualization and Interactive Graphics (CSVG)
Courses (CSVG)
Mandatory courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2258 Introduction to Visualization, Computer Graphics and Image/Video Processing | 7.5 credits | 7.5 |
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 may be given every two years.
Conditionally elective courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2257 Visualization | 7.5 credits | 7.5 | ||||
DH2413 Advanced Graphics and Interaction | 9.0 credits | 3.0 | 6.0 | |||
DH2321 Information Visualization | 6.0 credits | 6.0 | ||||
DH2323 Computer Graphics and Interaction | 6.0 credits | 6.0 | ||||
DH2650 Computer Game Design | 6.0 credits | 6.0 |
Recommended courses
Course code and name | Appl.code | Scope | P1 | P2 | P3 | P4 |
---|---|---|---|---|---|---|
DD2356 Methods in High Performance Computing | 7.5 credits | 7.5 | ||||
DD2424 Deep Learning in Data Science | 7.5 credits | 7.5 |