-
CS6200
Introduction to Operating Systems
Systems-level course on processes, threads, synchronization, IPC, and distributed services — implemented in C.
Key projects:
Multithreaded GETFILE server (boss–worker pool) · Distributed file transfer over gRPC · Inter-process cache via shared memory
-
CS6250
Computer Networks
Survey of modern networking — from link-layer protocols up through SDN, BGP, and internet measurement.
Key projects:
Spanning Tree & Distance Vector routing · SDN with Mininet/POX · BGP hijacking & measurement
-
CS6601
Artificial Intelligence
A foundations-of-AI course spanning classical search, game playing, probabilistic reasoning, and machine learning.
Key projects:
Adversarial game agent (Isolation) · Gaussian Mixture Models with Expectation–Maximization · Hidden Markov Models with Viterbi
-
CS7638
AI for Robotics
Probabilistic robotics — localization, control, and planning, framed around real robot problems.
Key projects:
Kalman Filter · Particle Filter · SLAM (Indiana Drones)
-
CS7642
Reinforcement Learning & Decision Making
Theory and practice of RL — from tabular methods through deep and multi-agent RL.
Key projects:
Q-learning & SARSA foundations · DDPG on Lunar Lander · MAPPO multi-agent on Overcooked
-
CS7643
Deep Learning
Modern deep learning — convolutional and recurrent architectures, transformers, and generative models.
Key projects:
CNNs from scratch · NLP with RNNs & Transformers · Generative models (VAEs & GANs)
-
CS8001
Agentic AI Seminar
Hands-on seminar on modern LLM patterns — from prompting and RAG through to multi-agent systems.
Key projects:
Retrieval-Augmented Generation · Agentic frameworks (LangGraph, CrewAI) · Multimodal LLMs
-
Seminar
Object-Oriented Programming with Java
A seminar to pick up the fundamentals of Java — classes, inheritance, polymorphism, generics, exceptions, and JavaFX.