DepartmentOfCSE Course Description
DepartmentOfCSE Course Description
220
Courses of Study 2023-2024 Computer Science and Engineering
COL331 Operating Systems matching, KMP and Rabin-Karp. Universal hashing and applications.
5 Credits (3-0-4) Geometric algorithms like convex hulls, multidimensional data
structures, plane sweep paradigm.
Pre-requisite(s): COL106 COP290
COL352 Introduction to Automata & Theory of
Overlaps with: ELL405
Computation
Primary UNIX abstractions: threads, address spaces, file system,
devices, inter process communication; Introduction to hardware 3 Credits (3-0-0)
support for OS (e.g., discuss x86 architecture); Processes and Pre-requisite(s): COL202
Memory; Address Translation; Interrupts and Exceptions; Context Regular Languages, Finite Automata, equivalence, minimization,
Switching; Scheduling; Multiprocessors and Locking; Condition Myhill-Nerode Theorem, introduction to non-determinism, Context
Variables, Semaphores, Barriers, Message Passing, etc.; File system free grammars, Pushdown automata, equivalence and applications.
semantics, design and implementation; File system Durability and Turing machines, Recursive and Recursively enumerable sets, non-
Crash recovery; Security and Access Control. determinism, RAMs and equivalence, Universal Turing Machines,
COL333 Principles of Artificial Intelligence undecidability, Rice’s theorems for RE sets, Post machines, Basics of
Recursive function theory. Equivalence, Church’s thesis, computational
4 Credits (3-0-2) complexity, space and time complexity of Turing Machines,
Pre-requisite(s): COL106 Relationships, Savage’s theorem, Complexity classes, Complete
problems, NP-completeness, Cook-Levin theorem.
Overlaps with: COL671, COL770, ELL789
Philosophy of artificial intelligence, problem solving, search techniques, COL362 Introduction to Database Management Systems
constraint satisfaction, game playing (minimax, expectiminimax), 4 Credits (3-0-2)
automated planning, knowledge representation and reasoning
through logic, knowledge representation and reasoning through fuzzy Pre-requisite(s): COL106
logic and Bayesian networks, Markov decision processes, machine Data models (ER, relational models, constraints, normalization),
learning, neural networks, reinforcement learning, soft computing, declarative querying (relational algebra, datalog, SQL), query
introduction to natural language processing. processing/optimization (basics of indexes, logical/physical
query plans, views) and transaction management (introduction
COL334 Computer Networks to concurrency control and recovery). Overview of XML data
4 Credits (3-0-2) management, text management, distributed data management.
Course project to build a web-based database application.
Pre-requisite(s): COL106, COL216
Overlaps with: ELL402 COL380 Introduction to Parallel & Distributed
Students will be exposed to common network algorithms and Programming
protocols, including physical layer modulation (analog AM/FM, 3 Credits (2-0-2)
digital ASK/FSK/PSK), encoding (NRZ, Manchester, 4B/5B), link layer
Pre-requisite(s): COL106, COL351, COL331
framing, error control, medium access control (TDMA, FDMA, CSMA/
CA, CSMA/CD), bridging, SDN, addressing (IPv4/v6), name resolution Overlaps with: COL730
(DNS), routing (DV, LS, protocols RIP, OSPF, BGP), transport protocols Concurrency, Consistency of state and memory, Parallel architecture,
(TCP), congestion avoidance (window based AIMD), and application Latency and throughput, Models of parallel computation, performance
design models (client-server, P2P, functioning of HTTP, SMTP, metrics and speedup, Message-passing and Shared-memory
IMAP). Programming assignments will be designed to test network programming paradigms, Communication networks and primitives,
application design concepts, protocol design towards developing error Concepts of Atomicity, Consensus, Conditions and Synchronization,
detection and correction methods, efficient network utilization, and Security, Fault tolerance, Replication of state and memory.
familiarization with basic tools such as ping, trace route, wires hark.
COD492 B.Tech. Project Part-I
COL341 Fundamentals of Machine Learning 6 Credits (0-0-12)
4 Credits (3-0-2) Pre-requisite(s): EC 100
Pre-requisite(s): COL106, MTL106 Overlaps with: COD490
Overlaps with: ELL409, ELL784 This course is part-1 of a large project and is designed for CSE B.Tech.
Supervised Learning Algorithms: 1. Logistic Regression 2.Neural students seeking department specialization. This project is done
Networks 3.Decision Trees 4.Nearest Neighbour 5. Support individually, or sometimes in small groups, under the supervision of
Vector Machines 6. Naive Bayes. ML and MAP estimates. Bayes’ one or more faculty member of the computer science department.
Optimal Classifier. Introduction to Graphical Models. Generative Vs. This project spans also the course COD494. Hence it is expected
Discriminative Models. Unsupervised learning algorithms: K-Means that the problem specification and the milestones to be achieved
clustering, Expectation Maximization, Gaussian Mixture Models. PCA in solving the problem are clearly specified. Students not seeking
and Feature Selection, PAC Learnability, Reinforcement Learning. specialization may takes this course of if they are interested in the
Some application areas of machine learning e.g. Natural Language COD490-COD492 sequence.
Processing, Computer Vision, applications on the web. Introduction
to advanced topics such as Statistical Relational Learning. COD494 B.Tech. Project Part-II
8 Credits (0-0-16)
COL351 Analysis and Design of Algorithms
Pre-requisite(s): COD492, EC 100
4 Credits (3-1-0)
The student(s) who work on a project are expected to work towards
Pre-requisite(s): COL106 the goals and milestones set in COD492. At the end there would
Overlaps with: MTL342, COL702 be a demonstration of the solution and possible future work on the
Checking 2-edge, 2-node and strong connectivity using DFS, Strongly same problem. A dissertation outlining the entire problem, including
connected components. Greedy algorithms, minimum spanning a survey of literature and the various results obtained along with
trees (Prim/Kruskal), Union-find data structure. Matroids. Divide and their solutions is expected to be produced.
conquer algorithms. Polynomial multiplication, DFT and FFT. Dynamic COL632: Introduction to Database Systems
Programming, All pairs shortest paths (Bellman-Ford, Floyd Warshall).
s-t flows, Ford-Fulkerson, Edmonds-Karp, applications of maxflow 4 Credits (3-0-2)
Intractability, NP-completeness, Polynomial time reductions. String Pre-requisite(s): COL106 OR Equivalent
221
Computer Science and Engineering Courses of Study 2023-2024
222
Courses of Study 2023-2024 Computer Science and Engineering
and Finite State Machine encoding. Logic synthesis, consisting Data flow. Abstract interpretation. Correctness issues in code
of combinational logic optimisation and technology mapping, is optimizations. Algorithms and implementation techniques for type-
covered next. Popular chip architectures - standard cells and FPGA checking, code generation and optimization. Students will design and
are introduced. The course concludes with a brief overview of layout implement translators, static analysis, type-checking and optimization.
synthesis topics: placement and routing. This is a praxis-based course. Students will use a variety of software
tools and techniques in implementing a complete compiler.
COL720 Real Time Systems
4 Credits (3-0-2) COL729 Compiler Optimization
Pre-requisite(s): COL331, COL216 4.5 Credits (3-0-3)
Types of real time systems; hard and soft real time systems; Pre-requisite(s): COL 216, COL 226 OR Equivalent
reference models; priority driven approaches for real time Program representation – symbol table, abstract syntax tree;
scheduling; clock based scheduling, schedulability tests; scheduling Control flow analysis; Data flow analysis; Static single assignment;
aperiodic and sporadic jobs; slack stealing; resource access control Def-use and Use-def chains; Early optimizations – constant folding,
mechanics; priority ceiling protocols; multiprocessor scheduling; algebraic simplifications, value numbering, copy propagation, constant
scheduling flexible computations; real time communication; real propagation; Redundancy Elimination – dead code elimination,
time operating systems; real time embedded systems. loop invariant code motion, common sub-expression elimination;
Register Allocation; Scheduling – branch delay slot scheduling, list
COL722 Introduction to Compressed Sensing
scheduling, trace scheduling, software pipelining; Optimizing for
3 Credits (3-0-0) memory hierarchy – code placement, scalar replacement of arrays,
Pre-requisite(s): COL106 OR Equivalent register pipelining; Loop transformations – loop fission, loop fusion,
Sparsity, L1 minimization, Sparse regression, deterministic and loop permutation, loop unrolling, loop tiling; Function inlining and tail
probabilistic approaches to compressed sensing, restricted recursion; Dependence analysis; Just-in-time compilation; Garbage
isometry property and its application in sparse recovery, collection. Laboratory component would involve getting familiar with
robustness in the presence of noise, algorithms for compressed internal representations of compilers; profiling and performance
sensing. Applications in magnetic resonance imaging (MRI), evaluation; and the design and implementation of novel compiler
applications in analog-to-digital conversion, low-rank matrix optimizations.
recovery, applications in image reconstruction.
COL730 Parallel Programming
COL724 Advanced Computer Networks
4 Credits (3-0-2)
4 Credits (3-0-2)
Pre-requisite(s): COL106, COL331
Pre-requisite(s): COL334 OR Equivalent Parallel computer organization, Parallel performance analysis,
Review of the Internet architecture, layering; wired and wireless Scalability, High level Parallel programming models and framework,
MAC; intra- and inter-domain Internet routing, BGP, MPLS, MANETs; Load distribution and scheduling, Throughput, Latency, Memory and
error control and reliable delivery, ARQ, FEC, TCP; congestion and Data Organizations, Inter-process communication and synchronization,
flow control; QoS, scheduling; mobility, mobile IP, TCP and MAC Shared memory architecture, Memory consistency, Interconnection
interactions, session persistence; multicast; Internet topology, network and routing, Distributed memory architecture, Distributed
economic models of ISPs/CDNs/content providers; future directions. shared memory, Parallel IO, Parallel graph algorithms, Parallel
Algorithm techniques: Searching, Sorting, Prefix operations, Pointer
COL726 Numerical Algorithms
Jumping, Divide-and-Conquer, Partitioning, Pipelining, Accelerated
4 Credits (3-0-2) Cascading, Symmetry Breaking, Synchronization (Locked/Lock-free).
Pre-requisite(s): COL106 OR Equivalent
COL731 Advanced Compiler Techniques for Optimization,
Overlaps with: MTL704
Safety and Security
Number representation, fundamentals of error analysis, conditioning,
stability, polynomials and root finding, interpolation, singular value 4 Credits (3-0-2)
decomposition and its applications, QR factorization, condition Pre-requisite(s): COL729 or equivalent
number, least squares and regression, Gaussian elimination, Polyhedral analysis for locality and parallelism transformations. The
eigenvalue computations and applications, iterative methods, linear topics will include the affine transform theory in the polyhedral
programming, elements of convex optimization including steepest framework, space-partitioning constraints and associated code-
descent, conjugate gradient, Newton’s method. generation algorithms, primitive affine transformations, and pipelining.
Lab work will include experimentation and development within
COL727 Rapid Mixing in Markov Chains existing polyhedral analysis tools, such as LLVM's Polly; Undefined
Credits: 3 (3-0-0) Behaviour will be discussed in the context of performance-sensitive
Pre-requisite(s): MTL106 programming languages such as C/C++/Rust/etc. The manifestation
of Undefined Behaviour at the Intermediate Representation (IR) level
Basic of finite Markov chains; classical Markov Chains including
will be discussed through examples of real-world IRs such as LLVM
Coupon collection, Gambler’s Ruin, Polya’s um, Birth and Death
IR; Symbolic analysis approaches based on dataflow analysis/abstract
chains; Total Variation Distance; the Convergence Theorem; Mixing
interpretation will be introduced. Hoare logic and associated predicate
Time; bounding mixing time via couplings; bounding mixing time via
transformers (weakest-precondition, strongest-postcondition) will
strong stationary times; random walks on networks; bounding mixing
be introduced. Optionally, algorithms for automatic inference of
time via hitting times; cover times; spectral bounds on mixing time;
inductive invariants and bisimulations may be discussed. Optionally,
mixing time bounds via comparison between chains.
superoptimization techniques may be discussed too.
COL728 Compiler Design
4.5 Credits (3-0-3) COL732 Virtualization and Cloud Computing
Pre-requisite(s): COL 216, COL 226 OR Equivalent 4 Credits (3-0-2)
Compilers and translators; lexical and syntactic analysis, top-down Pre-requisite(s): COL331
and bottom up parsing techniques; internal form of source programs; Introduction to Virtualization and Cloud Computing; Binary
semantic analysis, symbol tables, error detection and recovery, code Translation; Hardware Virtualization; Memory Resource Management
generation and optimization. Type checking and static analysis. Static in Virtual Machine Monitor; Application of Virtualization; Cloud-scale
analysis formulated as fixpoint of simultaneous semantic equations. Data Management and Processing; I/O Virtualization.
223
Computer Science and Engineering Courses of Study 2023-2024
224
Courses of Study 2023-2024 Computer Science and Engineering
Steiner tree and bin packing. Randomized rounding with applications. Pre-requisite(s): COL351, MTL106 OR Equivalent
Primal-dual algorithms and applications in facility location and network
Overlaps with: MTL730
design. Cuts and metrics with applications to multi-commodity flow.
Semi-definite programming and applications: max-cut, graph coloring. Part 1: Foundations: Perfect secrecy and its limitations, computational
Hardness of approximation. security, pseudorandom generators and one time encryption,
pseudorandom functions, one way permutations, message
COL755 Algorithmic Game Theory authentication and cryptographic hash functions.
3 Credits (3-0-0) Part 2: Basic Constructions and proofs: Some number theory,
symmetric key encryption, public key encryption, CPA and CCA security,
Pre-requisite(s): COL351 digital signatures, oblivious transfer, secure multiparty computation.
Games, Strategies, Costs, Payoff, Solution Concepts. Pure and Part 3: Advanced Topics: Zero knowledge proofs, identity based
Mixed Nash Equilibria. Two player Zero-Sum Games and Proof of encryption, broadcast encryption, homomorphic encryption, lattice
Nash Equilibria using Linear Programming Duality. Nash's theorem based cryptography.
using FPT's. Complexity of finding Nash Equilibrium, Lemke Howson
Algorithm, The Class PPAD. Hierarchy of Equilibria, Best-case and COL760 Advanced Data Management
strong Nash Equilibria, Best-response dynamics, and no-regret
4 Credits (3-0-2)
dynamics. Social Choice, Arrow's and Gibbard-Satherthwaite
theorems. Auctions and Optimal Mechanism Design, Myerson's Pre-requisite(s): COL362 OR Equivalent
lemma, VCG mechanisms. Revenue maximizing Auctions. Inefficiency Storage and file structures, advanced query processing and
of Equilibria. Price of Anarchy in network routing games, Atomic optimization for single server databases, distributed data management
routing games, Potential function games. Mechanism Design without (including distributed data storage, query processing and transaction
money: Stable matchings. Market equilibria and their computation, management), web-data management (including managing the web-
Fisher's and Arrow-Debreu Models, Eisenberg-Gale convex program. graph and implementation of web-search), big data systems.
225
Computer Science and Engineering Courses of Study 2023-2024
COL768 Wireless Networks Networks (GANs). Graph Convolutional Networks, Graph Attention
4 Credits (3-0-2) Networks, and variations. Deep Reinforcement Learning - basics of
(Deep) RL, More Advanced topics such as visual question answering,
Pre-requisite(s): COL334 OR Equivalent Neuro-symbolic reasoning, self-supervised learning, Explainability and
Radio signal propagation, advanced modulation and coding, medium Fairness, Domain Adaptation etc.
access techniques, self-configurable networks, mesh networks,
cognitive radio and dynamic spectrum access networks, TCP over COL776 Learning Probabilistic Graphical Models
wireless, wireless security, emerging applications. 4 Credits (3-0-2)
COL770 Advanced Artificial Intelligence Pre-requisite(s): MTL106 OR Equivalent
Basics: Introduction. Undirected and Directed Graphical Models.
4 Credits (3-0-2) Bayesian Networks. Markov Networks. Exponential Family Models.
Pre-requisite(s): COL106 OR Equivalent Factor Graph Representation. Hidden Markov Models. Conditional
Overlap with: COL333, ELL789 Random Fields. Triangulation and Chordal Graphs. Other Special
Cases: Chains, Trees. Inference: Variable Elimination (Sum Product
Philosophy of artificial intelligence, fundamental and advanced search
and Max-Product). Junction Tree Algorithm. Forward Backward
techniques (A*, local search, suboptimal heuristic search, search
Algorithm (for HMMs). Loopy Belief Propagation. Markov Chain Monte
in AND/OR graphs), constraint optimization, temporal reasoning,
Carlo. Metropolis Hastings. Importance Sampling. Gibbs Sampling.
knowledge representation and reasoning through propositional
Variational Inference. Learning: Discriminative Vs. Generative
and first order logic, modern game playing (UCT), planning under
Learning. Parameter Estimation in Bayesian and Markov Networks.
uncertainty (Topological value iteration, LAO*, LRTDP), reinforcement
Structure Learning. EM: Handling Missing Data. Applications in Vision,
learning, introduction to robotics, introduction to probabilistic
Web/IR, NLP and Biology. Advanced Topics: Statistical Relational
graphical models (Bayesian networks, Hidden Markov models,
Learning, Markov Logic Networks.
Conditional random fields), machine learning, introduction to
information systems (information retrieval, information extraction).
COL777 Deep Reinforcement Learning
COL772 Natural Language Processing 4 Credits (3-0-2)
4 Credits (3-0-2) Pre-requisite(s): Any one of EEL409/EEL784/COL774/COL341/
Pre-requisite(s): COL106 OR Equivalent COL333/COL671
Overlaps with: MTL785 Overlaps with: AIL722, ELL729
NLP concepts: Tokenization, lemmatization, part of speech tagging, Introduction and Basics of RL, Markov Decision Processes (MDPs),
noun phrase chunking, named entity recognition, co-reference Dynamic Programming, Monte Carlo Methods (Prediction), Temporal
resolution, parsing, information extraction, sentiment analysis, difference Methods (Prediction), Monte Carlo, TD Method (Control),
question answering, text classification, document clustering, N-step TD, Eligibility Traces, Model based RL, (Action-)Value Function
document summarization, discourse, machine translation. Approximation, Value Function Approximation, Policy Gradient, Policy
Gradient, Recent Applications, Misc./Advanced Topics.
Machine learning concepts: Naïve Bayes, Hidden Markov Models, EM,
Conditional Random Fields, MaxEnt Classifiers, Probabilistic Context COL778 Principles of Autonomous Systems
Free Grammars.
Credits: 4 (3-0-2)
COL774 Machine Learning Pre-requisite(s): Any one of COL333 / COL774 / ELL784 /
4 Credits (3-0-2) ELL409
Intelligent Agent/Robot Representation. Software and simulation
Pre-requisite(s): MTL106 OR Equivalent
tools. Classical Planning. Anytime and incremental search. Decision-
Overlaps with: COL341 ELL784, ELL888 making under Uncertainty. Reinforcement Learning. Imitation learning.
Supervised learning algorithms: Linear and Logistic Regression, State Estimation using Bayesian Networks. Particle Filtering. World
Gradient Descent, Support Vector Machines, Kernels, Artificial Neural Representations. Map representations. Exploration and coverage.
Networks, Decision Trees, ML and MAP Estimates, K-Nearest Neighbor, Interaction and Intent Inference. Execution and monitoring. Advanced
Naive Bayes, Introduction to Bayesian Networks. Unsupervised epics and case study. Programming Assignments.
learning algorithms: K-Means clustering, Gaussian Mixture Models,
Learning with Partially Observable Data (EM). Dimensionality COL780 Computer Vision
Reduction and Principal Component Analysis. Bias Variance Trade- 4 Credits (3-0-2)
off. Model Selection and Feature Selection. Regularization. Learning
Theory. Introduction to Markov Decision Processes. Application Pre-requisite(s): EC 80
to Information Retrieval, NLP, Biology and Computer Vision. Overlaps with: ELL793
Advanced Topics. Camera models. Calibration, multi-views projective geometry and
invariants. Feature detection, correspondence and tracking. 3D
COL775 Deep Learning structure/motion estimation. Application of machine learning in
4 Credits (3-0-2) object detection and recognition, category discovery, scene and
activity interpretation.
Pre-requisite(s): Any one of ELL 409/ELL 774 / COL 341/ COL
333/ COL 671 COL781 Computer Graphics
Overlaps with: AIL721, APL745 4.5 Credits (3-0-3)
B asics: Introduction, Why Deep Learning, Multi-layered
Pre-requisite(s): COL106 OR Equivalent
Perceptron, Neural Networks as Universal Function Approximators,
Backpropagation, Regularization, Ll-L2 Norms, Early Stopping, Overlaps with: ELL792
Dropouts. Optimization: Stochastic Gradient Descent, First-order Graphics pipeline; Graphics hardware: Display devices, Input devices;
and second order methods, Algorithms such as RMSProp, Adams, Raster Graphics: line and circle drawing algorithms; Windowing and
AdaGrad. Other Topics on Advanced Optimization. Convolutional 2D/3D clipping: Cohen and Sutherland line clipping, Cyrus Beck
Networks (CNNs) - kernels, pooling operations, Applications to clipping method; 2D and 3D Geometrical Transformations: scaling,
Computer Vision. Recurrent Neural Networks, LSTMs, Attention, translation, rotation, reflection; Viewing Transformations: parallel
Transformers, Language models: BERT, GPT2 etc. Applications in NLP. and perspective projection; Curves and Surfaces: cubic splines,
Generative Models: Variational Auto-encoders, Generative Adversarial Bezier curves, B-splines, Parametric surfaces, Surface of revolution,
226
Courses of Study 2023-2024 Computer Science and Engineering
Sweep surfaces, Fractal curves and surfaces; Hidden line/surface Mutual Exclusion, Coherence and Consistency, Register Constructions ,
removal methods; illuminations model; shading: Gouraud, Phong; Power of Synchronization Operations , Locks and Monitors, Concurrent
Introduction to Ray-tracing; Animation; Programming practices with queues, Futures and Work-Stealing, Barriers, Basics of Transactional
standard graphics libraries like openGL. Memory (TM), Regular Hardware TMs, Unbounded HadwareTMs,
Software TMs.
COL783 Digital Image Analysis
4.5 Credits (3-0-3) COL819 Advanced Distributed Systems
4 Credits (3-0-2)
Pre-requisite(s): COL106, ELL205 OR Equivalent
Pre-requisite(s): COL331, COL334, COL380 OR Equivalent
Overlap with: ELL715
Epidemic/Gossip based algorithms, Peer to peer networks, Distributed
Digital Image Fundamentals; Image Enhancement in Spatial Domain:
hash tables, Synchronization, Mutual exclusion, Leader election,
Gray Level Transformation, Histogram Processing, Spatial Filters;
Distributed fault tolerance, Large scale storage systems, Distributed
Image Transforms: Fourier Transform and their properties, Fast Fourier
file systems, Design of social networking systems.
Transform, Other Transforms; Image Enhancement in Frequency
Domain; Color Image Processing; Image Warping and Restoration; COP820 Processor Design Laboratory
Image Compression; Image Segmentation: edge detection, Hough
transform, region based segmentation; Morphological operators; 4 Credits (0-0-8)
Representation and Description; Features based matching and Bayes Pre-requisite(s): COL718
classification; Introduction to some computer vision techniques: This is a pure laboratory course that invloves the following activities.
Imaging geometry, shape from shading, optical flow; Laboratory Design of branch predictors, instruction fetch logic, Decode and
exercises will emphasize development and evaluation of image rename logic, Instruction window and scheduler, Select logic, Load-
processing methods. square queue, ALUs and by-pass paths, Instruction commit logic,
Misprediction and recovery techniques, Selective replay techniques.
COL785 Virtual and Augmented Reality
4 Credits (3-0-2) COL821 Reconfigurable Computing
3 Credits (3-0-0)
Pre-requisite(s): COL106
Modeling of VR environments, Basics of lighting and shading, VR/ Pre-requisite(s): COL719
AR devices and technology, software modules in a VR application, FPGA architectures, CAD for FPGAs: overview, LUT mapping, timing
Interaction and manipulation techniques, Locomotion, wayfinding, analysis, placement and routing, Reconfigurable devices - from
and orientation in 3D, Multi-user VR and Social interaction. fine-grained to coarse-grained devices, Reconfiguration modes
and multi-context devices, Dynamic reconfiguration, Compilation
COL786 Advanced Functional Brain Imaging from high level languages, System level design for reconfigurable
4 Credits (3-0-2) systems: heuristic temporal partitioning and ILP-based temporal
partitioning, Behavioral synthesis, Reconfigurable example systems’
Introduction to human Neuro-anatomy, Hodgkin Huxley model,
tool chains.
overview of brain imaging methods, introduction to magnetic
resonance imaging, detailed fMRI, fMRI data analysis methods,
COL828 Advanced Computer Vision
general linear model, network analysis, machine learning based
methods of analysis. 4 Credits (3-0-2)
Pre-requisite(s): COL780 or COL783 or ELL793 or ELL715
COL788 Advanced Topics in Embedded Computing Advanced topic in computer vision: data sources, features, and
3 Credits (3-0-0) learning algorithms useful for understanding and manipulating visual
data. Advanced architectures for image classification and visualization
Pre-requisite(s): COL216, COL331 OR Equivalent of CNNs for image analysis, traditional and modern techniques for
Overlaps with: ELL782 object detection, image segmentation, image synthesis, and object
Embedded Platforms, Embedded processor architectures, System tracking. Attack and defense techniques for computer vision systems.
initialization, Embedded operating systems (linux) , DSP and graphics Contemporary. Interdisciplinary topics (vision+x) such as vision and
acceleration, Interfaces, Device Drivers, Network, Security, Debug language.
support, Performance tuning. The course would involve substantial
programming assignments on embedded platforms. COL829 Advanced Computer Graphics
4 Credits (3-0-2)
COS799 Independent Study Pre-requisite(s): COL781
3 Credits (0-3-0) Rendering: Ray tracing, Radiosity methods, Global illumination
The student will be tasked with certain reading assignments and models, Shadow generation, Mapping, Anti-aliasing, Volume
related problem solving in a appropriate area of research in Computer rendering, Geometrical Modeling: Parametric surfaces, Implicit
Science under the overall guidance of a CSE Faculty member. The surfaces, Meshes, Animation: spline driven, quarternions, articulated
work will be evaluated through term paper. structures (forward and inverse kinematics), deformation- purely
geometric, physically-based, Other advanced topics selected from
research papers.
COL812 System Level Design and Modelling
3 Credits (3-0-0) COL830 Distributed Computing
Pre-requisite(s): COL719 3 Credits (3-0-0)
E m b e d d e d s y s t e m s a n d s y s t e m - l e ve l d e s i g n , m o d e l s o f Pre-requisite(s): COL226 OR Equivalent
computation, specification languages, hardware/software co-
Models of Distributed Computing; Basic Issues: Causality, Exclusion,
design, system partitioning, application specific processors and
Fairness, Independence, Consistency; Specification of Distributed
memory, low power design.
Systems: Transition systems, petri nets, process algebra properties:
Safety, Liveness, stability.
COL818 Principles of Multiprocessor Systems
4 Credits (3-0-2) COL831 Semantics of Programming Languages
Pre-requisite(s): COL216, COL351, COL331 OR Equivalent 3 Credits (3-0-0)
227
Computer Science and Engineering Courses of Study 2023-2024
COL860 Special Topics in Parallel Computation COL868 Special topics in Database Systems
3 Credits (3-0-0) 3 Credits (3-0-0)
The course will focus on research issues in areas like parallel Pre-requisite(s): COL334 / COL672 / Equivalent
computation models, parallel algorithms, Parallel Computer
The contents would include specific advanced topics in Database
architectures and interconnection networks, Shared memory
Management Systems in which research is currently going on in
parallel architectures and programming with OpenMP and Ptheards,
the department. These would be announced every time the course
Distributed memory message-passing parallel architectures and
is offered.
programming, portable parallel message-passing programming
using MPI. This will also include design and implementation of
parallel numerical and non-numerical algorithms for scientific and COL869 Special topics in Concurrency
engineering, and commercial applications. Performance evaluation 3 Credits (3-0-0)
and benchmarking high-performance computers.
The course will focus on research issues in concurrent, distributed
and mobile computations. Models of Concurrent, Distributed and
COL861 Special Topics in Hardware Systems
Mobile computation. Process calculi, Event Structures, Petri Nets
3 Credits (3-0-0) an labeled transition systems. Implementations of concurrent and
Under this topic one of the following areas will be covered: mobile, distributed programming languages. Logics and specification
Fault Detection and Diagnosability. Special Architectures. Design models for concurrent and mobile systems. Verification techniques
Automation Issues. Computer Arithmetic, VLSI. and algorithms for model checking. Type systems for concurrent/
mobile programming languages. Applications of the above models
COL862 Special Topics in Software Systems and techniques.
3 Credits (3-0-0)
Special topic that focuses on state of the art and research problems COL870 Special Topics in Machine Learning
of importance in this area. 3 Credits (3-0-0)
COL863 Special Topics in Theoretical Computer Science Pre-requisite(s): COL341 OR Equivalent
Contents may vary based on the instructor’s expertise and interests
3 Credits (3-0-0)
within the broader area of Machine Learning. Example topics include
Pre-requisite(s): COL351 (but not limiting to) Statistical Relational Learning, Markov Logic,
Under this topic one of the following areas will be covered: Design Multiple Kernel Learning, Multi-agent Systems, Multi-Class Multi-
and Analysis of Sequential and Parallel Algorithms. Complexity label Learning, Deep Learning, Sum-Product Networks, Active and
issues, Trends in Computer Science Logic, Quantum Computing and Semi-supervised Learning, Reinforcement Learning, Dealing with
Bioinformatics, Theory of computability. Formal Languages. Semantics Very High-Dimensional Data, Learning with Streaming Data, Learning
and Verification issues. under Distributed Architecture.
228
Courses of Study 2023-2024 Computer Science and Engineering
COL871 Special Topics in Programming Languages COV877 Special Module on Visual Computing
3 Credits (3-0-0) 1 Credit (1-0-0)
Pre-requisite(s): COL765 or (COL226+COL202) The course will be a seminar-based course where the instructor would
present topics in a selected theme in the area of visual computing
The course will focus on one or more specialised research topics
through research papers. Students will also be expected to participate
such as Operational and Denotational Semantics, Domain Specific
in the seminar.
Languages, Types Systems, Flow Analysis, Abstract Interpretation,
Static Analysis, Program Synthesis, etc.
COV878 Special Module in Machine Learning
COL872 Special Topics in Cryptography 1 Credit (1-0-0)
3 Credits (3-0-0) Contents may vary based on the instructor’s expertise and interests
Pre-requisite(s): COL759 OR Equivalent within the broader area of Machine Learning. Example topics include
(but not limiting to) Statistical Relational Learning, Markov Logic,
Contents may vary based on the instructor’s interests within
Multiple Kernel Learning, Multi-agent Systems, Multi-Class Multi-
the broader area of Cryptography. Examples include CCA secure
label Learning, Deep Learning, Sum-Product Networks, Active and
encryption, multiparty computation, leakage resilient cryptography,
Semi-supervised Learning, Reinforcement Learning, Dealing with
broadcast encryption, fully homomorphic encryption, obfuscation,
Very High-Dimensional Data, Learning with Streaming Data, Learning
functional encryption, zero knowledge, private information retrieval,
under Distributed Architecture.
byzantine agreement, cryptography against extreme attacks etc.
COL873 Special Topics in Natural Language Processing COV879 Special Module in Financial Algorithms
3 Credits (3-0-0) 1 Credit (1-0-0)
Pre-requisite(s): COL772 Pre-requisite(s): MTL106 OR Equivalent
The course will focus on one or two specialised research topics such Overlap with: MTL 732 & MTL 733
as conversational systems, question answering, semantic parsing, Special module that focuses on special topics and research problems
representation learning, linguistics in machine learning, automated of importance in this area.
summarisation systems, etc.
COV880 Special Module in Parallel Computation
COL874 Special Topics in Compilers and Language
Implementation 1 Credit (1-0-0)
3 Credits (3-0-0) Pre-requisite(s): Permission of Instructor
Special module that focuses on special topics and research problems
Pre-requisite(s): COL765 or (COL226+COL202)
of importance in this area.
The course will focus on one or more specialised research topics such
as Runtime Environments, Dynamic Analysis, Runtime Monitoring and
Verification, Code Optimisation, Code Generation, Machine Program COV881 Special Module in Hardware Systems
Synthesis, etc. 1 Credit (1-0-0)
Pre-requisite(s): Permission of Instructor
COL876 Special Topics in Formal Methods
Special module that focuses on special topics and research problems
3 Credits (3-0-0) of importance in this area.
Pre-requisite(s): COL765 or (COL703+COL226)
The course will focus on one or more specialised research topics COV882 Special Module in Software Systems
in: Model-checking; theorem-proving; rewriting; abstractions and 1 Credit (1-0-0)
abstraction refinement; formal frameworks for specification and Special module that focuses on special topics and research problems
modelling; game-theoretic techniques; verification of probabilistic of importance in this area.
systems; Markov decision processes; symbolic-, abstraction-
and automata-based methods and algorithms for the verification
of hardware, software, hybrid, real-time, concurrent and COV883 Special Module in Theoretical Computer Science
distributed systems. 1 Credit (1-0-0)
Pre-requisite(s): COL 351 OR equivalent
COL886 Special Topics in Operating Systems Special module that focuses on special topics and research problems
3 Credits (3-0-0) of importance in this area.
Special topic that focuses on the state of the art and research
problems of importance in this area. COV884 Special Module in Artificial Intelligence
1 Credit (1-0-0)
COV876 Special Module on Automated Reasoning
Methods for Program Analysis Pre-requisite(s): COL333 / COL671 / Equivalent
Course Categories: DE for CSI. PE for CS5. PE(SS) for MCS. Special module that focuses on special topics and research problems
of importance in this area.
1 Credit (1-0-0)
Pre-requisite(s): EC100 for UG COV885 Special Module in Computer Applications
Through the course students will (1) get exposure to fundamental 1 Credit (1-0-0)
concepts in building automated reasoning tools to support deployment Special module that focuses on special topics and research problems
of formal methods for software and cyber physical systems, (2) get of importance in this area.
an overview of the advanced state of the art approaches towards
building automated reasoning tools, (3) learn about foundational COV886 Special Module in Algorithms
aspects so as to prepare them to pursue these topics and related 1 Credit (1-0-0)
literature independently for research and use in system design and
other applications and (4) become aware of exciting new directions Pre-requisite(s): COL351 OR Equivalent
in research on software and system analysis, particularly techniques Special module that focuses on special topics and research problems
for automatically generating invariant properties. of importance in this area.
229
Computer Science and Engineering Courses of Study 2023-2024
COV887 Special Module in High Speed Networks practical and theoretical interest. Evaluation done based on periodic
1 Credit (1-0-0) presentations, student seminars, written reports, and evaluation of
the developed system (if applicable). Students are generally expected
Pre-requisite(s): COL 334 OR COl 672 to work towards the goals and mile stones set for Minor Project
The course will be delivered through a mix of lectures and paper COP 891.
reading seminars on advanced topics in Computer Networks.
Students will be introduced to topics such as software defined
COD892 M.Tech. Project Part-I
networking, content distribution, advanced TCP methodologies,
delay tolerant networking, data center networking, home 7 Credits (0-0-14)
networking, green networking, clean state architecture for the It is expected that the problem specification and milestones to be
Internet, Internet of things, etc. achieved in solving the problem are clearly specified. Survey of the
related area should be completed. This project spans also the course
COV888 Special Module in Database Systems COP892. Hence it is expected that the problem specification and the
1 Credit (1-0-0) milestones to be achieved in solving the problem are clearly specified.
230