Study year 2

Master's Programme, Computer Science, 120 credits (TCSCM), Programme syllabus for studies starting in autumn 2019

The following courses are part of study year two.

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

General

Students from CTFYS or CINTE, KTH, 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 cr.
- SF1662 Discrete Mathematics 7,5 cr, SF1610 Discrete Mathematics, 7,5 cr. or SF1679 Discrete Mathematics 7.5 cr.

The course ID2200 Operating system 6 hp is compulsory for students from CDATE, who started 2011 or earlier.

The course DM2573 Sustainability and Media Technology 7.5 credits is compulsory for studenter from CMETE.

The course IK2218 Protocols and Principles of the Internet. should be replaced by an elective course, of at least 6 cr. for students from CINTE.

Mandatory Appl.code Scope Study period
 1   2   3   4 
DD2300 Program Integrating Course in Computer Science
One credit each academic year
2.0 hp 0.2 0.3 0.2 0.3
DA231X Degree Project in Computer Science and Engineering, Second Cycle 60509 30.0 hp 15.0 15.0

Specialisations

Prerequisits: SF1626 Mulitvariate Calculus, 7,5 credits (or equivalent).

The student should choose one of the subtrack with following mandatory courses:

  1. Vision and Robotics:
    DD2410, DD2423, DD2424.
  2. Conversational system:
    Conditionally elective courses: DT2112 och DT2119 (one must be chosen), and
    choose at least 7,5 credits from: DD2424, DD2437, DT2140, DD2418,
    in addition, read: DT2151 (replaces DT2150 from Autumn20).

Subject to changes.

Mandatory Appl.code Scope Study period
 1   2   3   4 
DD2300 Program Integrating Course in Computer Science 50706 2.0 hp 0.2 0.3 0.2 0.3
DA231X Degree Project in Computer Science and Engineering, Second Cycle 60509 30.0 hp 15.0 15.0

Conditionally elective Appl.code Scope Study period
 1   2   3   4 
DD2410 Introduction to Robotics
Compulsory for the subtrack Vision and robotics
50645 7.5 hp 7.5
DD2437 Artificial Neural Networks and Deep Architectures
Conditionally elective for the subtrack Conversational systems
50719 7.5 hp 7.5
DD2423 Image Analysis and Computer Vision
Compulsory for the subtrack Vision and robotics
50603 7.5 hp 7.5
DT2140 Multimodal Interaction and Interfaces
Conditionally elective for the subtrack Conversational systems
50460 7.5 hp 7.5
DT2151 Project in Conversational Systems
Compulsory for the subtrack Conversational systems
50499 7.5 hp 7.5
Recommended Appl.code Scope Study period
 1   2   3   4 
SF2940 Probability Theory 50680 7.5 hp 7.5
DD2434 Machine Learning, Advanced Course 50618 7.5 hp 7.5
DD2447 Statistical Methods in Applied Computer Science 50689 6.0 hp 6.0
DT2410 Audio Technology 50661 7.5 hp 7.5
EL2320 Applied Estimation 50687 7.5 hp 7.5
DD2438 Artificial Intelligence and Multi Agent Systems 60501 15.0 hp 7.0 8.0
DD2476 Search Engines and Information Retrieval Systems 60493 9.0 hp 6.0 3.0
DD2418 Language Engineering 60512 6.0 hp 6.0
SF1861 Optimization 60019 6.0 hp 6.0

Prerequisits: SF1626 Multivariate Calculus, 7,5 credits (or equivalent).

One of the subtracks must be chosen:

1. Machine Learning:
   - Mandatory course: DD2424.
   - Conditionally elective courses (one of the courses must be chosen): DD2434, DD2437, DD2420.

2. Natural Language Processing:
    Mandatory courses: DD2476 and DD2418.

3. Bioinformatics:
    Mandatory course: SF2940.

Subject to changes.

Mandatory Appl.code Scope Study period
 1   2   3   4 
DD2430 Project Course in Data Science 50734 7.5 hp 3.5 4.0
DD2300 Program Integrating Course in Computer Science 50706 2.0 hp 0.2 0.3 0.2 0.3
DA231X Degree Project in Computer Science and Engineering, Second Cycle 60509 30.0 hp 15.0 15.0

Conditionally elective Appl.code Scope Study period
 1   2   3   4 
DD2437 Artificial Neural Networks and Deep Architectures
Conditionally elective for the subtrack Machine learning
50719 7.5 hp 7.5
SF2940 Probability Theory
Compulsory for the subtrack Bioinformatics
50680 7.5 hp 7.5
DD2434 Machine Learning, Advanced Course
Conditionally elective for the subtrack Machine learning
50618 7.5 hp 7.5
Recommended Appl.code Scope Study period
 1   2   3   4 
DD2257 Visualization 50670 7.5 hp 7.5
DD2423 Image Analysis and Computer Vision 50603 7.5 hp 7.5
DD2447 Statistical Methods in Applied Computer Science 50689 6.0 hp 6.0
EL2320 Applied Estimation 50687 7.5 hp 7.5
SF1811 Optimization 50328 6.0 hp 6.0
DD2419 Project Course in Robotics and Autonomous Systems 61280 9.0 hp 4.5 4.5

At least 15 credits from the conditionally elective courses must be taken during study year 1-2.

Subject to changes.

Mandatory Appl.code Scope Study period
 1   2   3   4 
DD2300 Program Integrating Course in Computer Science 50706 2.0 hp 0.2 0.3 0.2 0.3
DA231X Degree Project in Computer Science and Engineering, Second Cycle 60509 30.0 hp 15.0 15.0

Conditionally elective Appl.code Scope Study period
 1   2   3   4 
DH2413 Advanced Graphics and Interaction 50669 9.0 hp 3.0 6.0
DM2630 User Experience Design and Evaluation 50739 9.0 hp 4.5 4.5
DH2408 Evaluation Methods in Human-Computer Interaction 50650 6.0 hp 6.0
DT2140 Multimodal Interaction and Interfaces 50460 7.5 hp 7.5
Recommended Appl.code Scope Study period
 1   2   3   4 
DM2518 Mobile Development with Web Technologies 60332 7.5 hp 7.5

Prerequisits: SF1626 Multivariate Calculus, 7,5 credits.

Conditionally elective courses (one must be taken): DD2437, DD2257, DD2365.

Subject to changes.

Mandatory Appl.code Scope Study period
 1   2   3   4 
DD2300 Program Integrating Course in Computer Science 50706 2.0 hp 0.2 0.3 0.2 0.3
DD2444 Project Course in Scientific Computing 51735 7.5 hp 7.5
DA231X Degree Project in Computer Science and Engineering, Second Cycle 60509 30.0 hp 15.0 15.0

Conditionally elective Appl.code Scope Study period
 1   2   3   4 
DD2257 Visualization 50670 7.5 hp 7.5
DD2437 Artificial Neural Networks and Deep Architectures 50719 7.5 hp 7.5
Recommended Appl.code Scope Study period
 1   2   3   4 
EL2820 Modelling of Dynamical Systems 50762 7.5 hp 7.5
SF2561 The Finite Element Method 50752 7.5 hp 7.5
DD2435 Mathematical Modelling of Biological Systems 50673 9.0 hp 6.0 3.0
SF2565 Program Construction in C++ for Scientific Computing 50753 7.5 hp 3.5 4.0
BB2280 Molecular Modeling 50921 7.5 hp 7.5
DD2360 Applied GPU Programming 50350 7.5 hp 7.5
DD2421 Machine Learning 60334 7.5 hp 7.5
DD2402 Advanced Individual Course in Computational Biology 60489 6.0 hp 3.0 3.0

Mandatory course:
DD2520 Applied Crypotography, 7,5 hp.

Conditionally elective courses:
- at least two must be taken of following: DD2448, DD2525, DD2496, DD2443, and also
- at least one must be taken of following: DD2497, EP2510.

Mandatory Appl.code Scope Study period
 1   2   3   4 
DD2300 Program Integrating Course in Computer Science 50706 2.0 hp 0.2 0.3 0.2 0.3
DA231X Degree Project in Computer Science and Engineering, Second Cycle 60509 30.0 hp 15.0 15.0

Conditionally elective Appl.code Scope Study period
 1   2   3   4 
DD2443 Parallel and Distributed Computing 50743 7.5 hp 7.5
DD2496 Privacy Enhancing Technologies 50345 7.5 hp 7.5
DD2497 Project course in System Security 50324 7.5 hp 7.5
EP2510 Advanced Networked Systems Security 50632 7.5 hp 7.5
Recommended Appl.code Scope Study period
 1   2   3   4 
EN2720 Ethical Hacking 50048 7.5 hp 7.5
EP2790 Security Analysis of Large-Scale Computer Systems 50608 7.5 hp 7.5

One of the two subtracks must be taken:

1. Programming Languages
- Mandatory courses: DD2481 and DD2488.
- Condtionally elective courses (one of the courses must be taken): DD2372, DD2457.

2. Software Engineering
- Conditionally elective courses (at least two must be taken): DD2443, DD2459, DD2460, DD2481, DD2482.
- Conditionally elective courses (at least one must be taken): DD2487, DD2497.

Mandatory Appl.code Scope Study period
 1   2   3   4 
DD2300 Program Integrating Course in Computer Science 50706 2.0 hp 0.2 0.3 0.2 0.3
DA231X Degree Project in Computer Science and Engineering, Second Cycle 60509 30.0 hp 15.0 15.0

Conditionally elective Appl.code Scope Study period
 1   2   3   4 
DD2443 Parallel and Distributed Computing
Conditionally elective for the subtrack Software Engineering
50743 7.5 hp 7.5
DD2488 Compiler Construction
Compulsory for the subtrack Programming languages
50089 9.0 hp 4.5 4.5
DD2487 Large-Scale Software Development
Conditionally elective for the subtrack Software Engineering
50043 7.5 hp 7.5
DD2497 Project course in System Security
Conditionally elective for the subtrack Software Engineering
50324 7.5 hp 7.5
DD2457 Program Semantics and Analysis
Conditionally elective for the subtrack Software Engineering
60195 6.0 hp 6.0
Recommended Appl.code Scope Study period
 1   2   3   4 
DD2458 Problem Solving and Programming under Pressure 51623 9.0 hp 4.5 4.5
DD2421 Machine Learning 60334 7.5 hp 7.5
ID1217 Concurrent Programming 60321 7.5 hp 7.5
DD2476 Search Engines and Information Retrieval Systems 60493 9.0 hp 6.0 3.0

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

One of the subtracks must be taken:

1. Algorithms, Complexity and Cryptography:
- Mandatory course: DD2448.
- Conditionally elective courses (at least one of the courses must be taken): DD2445, DD2442.

2. Formal Methods and Semantics:
- Mandatory course: DD2452.
- Conditionally elective courses (at least 7,5 credits must be taken): DD2459, DD2448, DD2457, DD2460, DD2372, DD2443, DD2442.

Mandatory Appl.code Scope Study period
 1   2   3   4 
DD2467 Individual Project in Theoretical Computer Science 50360 7.5 hp 4.0 3.5
DD2300 Program Integrating Course in Computer Science 50706 2.0 hp 0.2 0.3 0.2 0.3
DA231X Degree Project in Computer Science and Engineering, Second Cycle 60509 30.0 hp 15.0 15.0

Conditionally elective Appl.code Scope Study period
 1   2   3   4 
DD2442 Seminars on Theoretical Computer Science
Conditionally elective for the subtrack Algorithms, Complexity and Cryptography; Conditionally elective for the subtrack Formal Methods and Semantics
50705 7.5 hp 7.5
DD2443 Parallel and Distributed Computing
Conditionally elective for the subtrack Formal Methods and Semantics
50743 7.5 hp 7.5
DD2452 Formal Methods
Compulsory for the subtrack Formal Methods and Semantics
50757 7.5 hp 7.5
DD2457 Program Semantics and Analysis
Conditionally elective for the subtrack Formal Methods and Semantics
60195 6.0 hp 6.0
Recommended Appl.code Scope Study period
 1   2   3   4 
DD2458 Problem Solving and Programming under Pressure 51623 9.0 hp 4.5 4.5
DD2447 Statistical Methods in Applied Computer Science 50689 6.0 hp 6.0
ID1217 Concurrent Programming 60321 7.5 hp 7.5

At least 18 credits must be taken from the conditionally elective courses.

Mandatory Appl.code Scope Study period
 1   2   3   4 
DD2300 Program Integrating Course in Computer Science 50706 2.0 hp 0.2 0.3 0.2 0.3
DD2470 Advanced Topics in Visualization and Computer Graphics 50668 6.0 hp 6.0
DA231X Degree Project in Computer Science and Engineering, Second Cycle 60509 30.0 hp 15.0 15.0

Conditionally elective Appl.code Scope Study period
 1   2   3   4 
DD2257 Visualization 50670 7.5 hp 7.5
DH2413 Advanced Graphics and Interaction 50669 9.0 hp 3.0 6.0
DH2650 Computer Game Design 50647 6.0 hp 6.0
DH2321 Information Visualization 60459 6.0 hp 6.0
DH2323 Computer Graphics and Interaction 60484 6.0 hp 6.0
Recommended Appl.code Scope Study period
 1   2   3   4 
DM2350 Human Perception for Information Technology 50462 7.5 hp 7.5
DD2423 Image Analysis and Computer Vision 50603 7.5 hp 7.5
DD2356 Methods in High Performance Computing 60540 7.5 hp 7.5
DD2424 Deep Learning in Data Science 60491 7.5 hp 7.5