M.Tech Curriculum
M. Tech (CSE) Curriculum – Dept. of Computer Science & Engineering - July 2024 onwards
Approved in DCC Meeting Part A, held on Nov 2nd, 2023; Approved by Senate.
Sem. | Course No. | Course Title | Lecture | Tutorial | Ext. Tut. | Lab | Time to be spent outside of class | Credits |
1 | DPE1, DPE2 | ONE course each from THREE baskets of electives: Theory, Systems, and AI/ML (can be taken in Semester 1 or 2) | 3 | 1 | 0 | 0 | 8 | 24 |
1 | CS5800 | Advanced Data Structures and Algorithms | 3 | 1 | 0 | 0 | 8 | 12 |
1 | CS6150 | Advanced Programming | 1 | 0 | 0 | 3 | 8 | 12 |
| Semester 1 | Total Credits: | | | | | | 48 |
2 | DPE3 | ONE course each from THREE baskets of electives: Theory, Systems, and AI/ML | 3 | 1 | 0 | 0 | 8 | 12 |
2 | DPE4 | Dept. Elective 4 | 3 | 1 | 0 | 0 | 8 | 12 |
2 | DPE5 | Dept. Elective 5 | 3 | 1 | 0 | 0 | 8 | 12 |
2 | DPE6 | Dept. Elective 6 | 3 | 1 | 0 | 0 | 8 | 12 |
2 | DPE7 | Dept. Elective 7 | 3 | 1 | 0 | 0 | 8 | 12 |
| Semester 2 | Total Credits: | | | | | | 60 |
3 | CS5931 | M.Tech Project Phase I (includes 20 summer credits) | 0 | 0 | 0 | 0 | 50 | 50 |
| Semester 3 | Total Credits: | | | | | | 50 |
4 | CS5932 | M.Tech Project Phase II | 0 | 0 | 0 | 0 | 36 | 36 |
| Semester 4 | Total Credits: | | | | | | 36 |
| | Total Program Credits | | | | | | 194 |
Notes:
- Three course baskets will be broadly defined: Theory, Systems, AI/ML (in other words, every PG course in the department will be part of one of the three baskets).
Each MTech student must credit at least one course from each of the three baskets (also called the “three-basket requirement”). Every student must take* these three courses within the first two semesters.
- Project Phase I is a prerequisite for Project Phase II. Project Phase I will be evaluated by a PG committee in the month of November/December (the third semester in the program).
Students who obtain a grade of U, D, or E for Project I will not be permitted to register for Project II. They must register for three Dept. elective courses (equivalent total credits of 36) in lieu of Project II. The total project credits for these students will be 50 credits.
Students who fail in Project I will be required to register for Project I again in the fourth semester and complete it successfully.
- For students with CGPA of 6.5 or below at the end of the second semester, the Faculty Advisor and Head of the Dept. may recommend, on a case-by-case basis, that the student register for M.Tech. Project credits of 50 (CS5931) in the fourth semester or later, after completing an additional 36 credits of Dept. electives in the third semester.
- Only students who have completed all required courses except at most one course, at the end of the second semester, will be permitted to register for M.Tech. Project Phase-I in the third semester.
Students with more than one uncompleted course must complete all coursework by the end of the third semester and then register for M.Tech. project credits, in consultation with the Faculty Advisor and the Head of the Dept.
*Clarification: The term "take" means "enroll and get a grade for the course." If a student does not get a pass grade in any basket’s course that they “take,” they can complete the backlog (either repeat the same course or another course in that basket) anytime during their MTech program, in order to complete the three-basket requirement towards the degree.
Summary of Changes
- Ensuring breadth of courses: one course from each of the three baskets of electives in 1st semester.
- One additional course (5th course of 12 credits) in 2nd semester.
- Redistribution of MTP I+II credits from 48+48 to 50+36 respectively.
Course Baskets
Theory Basket
Course ID | Course Name | Course Acronym (if any) |
CS5130 | Mathematical Tools for Theoretical Computer Science | Toolkit |
CS5210 | Linear Programming & Combinatorial Optimization | LPCO |
CS5666 | Foundations of Blockchain Technology | |
CS5820 | Probability and Computing | |
CS6014 | Computability and Complexity | CoCo |
CS6025 | Sublinear Algorithms | |
CS6030 | Logic and Combinatorics for Computer Science | |
CS6100 | Topics in Algorithm Design and Analysis | TADA |
CS6101 | Parameterized Algorithms | PA |
CS6110 | Computational Geometry | |
CS6111 | Foundations of Cryptography | |
CS6115 | Structure versus Hardness in Cryptography | |
CS6122 | Probabilistic and Smoothed Analysis of Algorithms | |
CS6130 | Advanced Graph Algorithms | AGA |
CS6170 | Randomized Algorithms | |
CS6190 | Recent Developments in Theoretical Computer Science | |
CS6240 | Structural Graph Theory | SGT |
CS6535 | Matching Theory | |
CS6741 | Algorithmic Foundations of Data Science | |
CS6840 | Modern Complexity Theory | MCT |
CS6841 | Approximation Algorithms | AA |
CS6842 | Algorithmic Algebra | |
CS6845 | Pseudorandomness | |
CS6846 | Quantum Algorithms and Quantum Complexity | |
CS6850 | Topics in Complexity Theory | TCT |
CS6851 | Distributed Algorithms | |
CS6854 | Topics in Distributed Algorithms | |
CS6858 | Distributed Trust | |
CS7111 | Topics in Cryptography | |
CS7260 | Post-Quantum Cryptography | |
Systems Basket
Course ID | Course Name | Course Acronym (if any) | Remarks |
CS5030 | Automated Program Verification | APV | proglang |
CS5205 | Internet of Things: Protocols and Programming | IOTPP | |
CS5360 | Computer Graphics | CG | |
CS6013 | Modern Compilers - Theory & Practice | | proglang |
CS6023 | GPU Programming | | proglang |
CS6040 | Router Architectures and Algorithms | RAA | networks |
CS6045 | Software Defined Networking | SDN | networks |
CS6120 | Wireless Communications and Networks | WCN | networks |
CS6210 | Performance Evaluation of Computer Systems | PECS | |
CS6225 | Programs and Proofs | | proglang |
CS6230 | CAD for VLSI | | vlsi |
CS6235 | Analysis of Parallel Programs | AOPP | proglang |
CS6330 | Digital System Testing and Testable Design | | vlsi |
CS6500 | Network Security | NetSec | security |
CS6530 | Applied Cryptography | | security |
CS6560 | Parallel Computer Architecture | PCA | Arch |
CS6570 | Secure Systems Engineering | SSE | security |
CS6600 | Computer Architecture | | arch |
CS6630 | Secure Processor Microarchitecture | SPM | security |
CS6650 | Smart Sensing for Internet of Things | | embedded |
CS6666 | Blockchain and Distributed Ledger Technologies | | |
CS6720 | Data Mining | | |
CS6747 | Advanced Wireless Networks | | |
CS6760 | Digital Design Verification | | vlsi |
CS6843 | Program Analysis | | proglang |
CS6844 | Advanced Wireless Communications and Networks | AWCN | networks |
CS6847 | Cloud Computing | | |
CS6848 | Principles of Programming Languages | POPL | proglang |
CS6852 | Theory and Applications of Ontolologies | TAO | |
CS6868 | Concurrent Programming | CP | proglang |
CS7030 | Recent Topics in Compilers | RTOC | proglang |
AI/ML Basket
Course ID | Course Name | Course Acronym (if any) |
CS5011 | Machine Learning | |
CS5020 | Non-linear Optimisation : Theory and Algorithms | NLO |
CS5691 | Pattern Recognition and Machine Learning | PRML |
CS6012 | Social Network Analysis | |
CS6015 | Linear Algebra and Random Processes | LARP |
CS6024 | Algorithmic Approaches to Computational Biology | AACB |
CS6046 | Multi armed Bandits | MAB |
CS6250 | Memory Based Reasoning in AI | |
CS6251 | Computational Models of Cognition | CMC |
CS6300 | Speech Technology | |
CS6350 | Computer Vision | CV |
CS6360 | Computer Graphics | CG |
CS6370 | Natural Language Processing | NLP |
CS6380 | Artificial Intelligence | |
CS6464 | Concepts in Startistical Learning Theory | CSLT |
CS6515 | Stochastic Optimization | |
CS6680 | Planning and Constraint Satisfaction | |
CS6700 | Reinforcement learning | |
CS6710 | Advances in Visual Perception | |
CS6720 | Data Mining | |
CS6730 | Probabilistic Graphical Models | PGM |
CS6740 | Searching and Indexing in Big Data Sets | |
CS6770 | Knowledge Representation and Reasoning | |
CS6777 | Optimization Methods for Computer Vision Applications | |
CS6780 | Algorithmic Game Theory | |
CS6790 | Geometry and Photometry based Image Formation | |
CS6870 | Digital Video Processing | |
CS6886 | Systems Engineering for Deep Learning | |
CS6910 | Fundamentals of Deep Learning | DL |
CS7011 | Topics in Reinforcement Learning | |
CS7012 | Multilayer Network Models and Algorithms | |
CS7016 | Topics in Deep Learning | |
CS7020 | Advances in Theory of Deep Learning | |
CS7370 | Causal Inference | |
Annexure: List of non-CSE department courses that can be taken as department electives
Sl No. | Course No. | Course Title |
1 | BT6270 | Computational Neuroscience |
2 | BT5420 | Computer Simulations of Biomolecular Systems |
3 | EE5120 | Applied Linear Algebra |
4 | EE5121 | Convex Optimization |
5 | EE5130 | Digital Signal Processing |
6 | EE5140 | Digital Modulation and Coding |
7 | EE5142 | Introduction to Information Theory and Coding |
8 | EE5154 | Complex Network Analytics |
9 | EE5162 | Information Theory |
10 | EE5170 | Speech Signal Processing |
11 | EE5175 | Image Signal Processing |
12 | EE5176 | Computational Photography |
13 | EE6132 | Machine Learning for Computer Vision |
14 | MA5011 | Advanced Graph Theory |
15 | MA5014 | Applied Stochastic Processes |
16 | MA5015 | Number Theory |
17 | MA5440 | Combinatorics and Number Theory |
18 | MA5850 | Operations Research |
19 | MA5890 | Numerical Linear Algebra |
20 | MA6001 | Introduction to Coding Theory |
21 | MA6005 | Applied Linear Algebra |
22 | MA6190 | Mathematical Logic |
23 | MA6210 | Combinatorial Optimization |
24 | MA6312 | Mathematical theory of Games |
25 | MA6420 | Algebraic Theory of Codes and Automata |
26 | MA6470 | Commutative algebra |
27 | MA6480 | Galois theory |
28 | DA5400 | Foundation of Machine Learning |
29 | DA6300 | Quantum Computing and Machine Learning |
30 | DA6400 | Introduction to Reinforcement Learning |
31 | DA6401 | Introduction to Deep Learning |
32 | DA7450 | Topics in AI Privacy |