CS Special Topics Courses for Spring 2027

Last Updated: Tuesday, October 20

CS Special Topics Courses

CS 4501 – Special Topics (Undergraduate)

IoT (Section 001)

Instructor: Kun Qian
This course introduces ubiquitous IoT sensing technologies enabled by pervasive wireless communication and sensing signals (e.g., Wi-Fi and Radar). It covers sensor modalities, AI and signal processing algorithms, and real-world applications—such as smart homes, intelligent transportation, and environmental monitoring—through lectures, hands-on projects, and discussions of cutting-edge research topics.

Prerequisites: CS 2130 and CS 3140


Adv. Algorithms (Section 002)

Instructor: Mark Floryan
In this course, we explore data structures and algorithms beyond the standard CS curriculum. Topics include Fenwick Trees, Segment Trees, Linear Programming, Computational Geometry, and Approximation Algorithms.

Prerequisites: CS 3100


AI and Humanity (Section 003)

Instructor: Dave Evans
This course explores current and future impacts of AI on humanity. We aim to understand both potential benefits and harms, as well as technical and non-technical ways to mitigate harms from AI and abuses of AI systems. Expected topics include safety, creativity, productivity, economic disruption, fairness, privacy, robustness, and cultural diminishment.

Prerequisites: CS 2100 or instructor permission


Digital Wellbeing (Section 004)

Instructor: Angela Orebaugh

Prerequisites: Completed CS 2100 with a grade of C- or better or successfully completed the CS 2100 place out test.


Systemic Certification (Section 005)

Instructor: Kevin Sullivan

Prerequisites: CS 2120 and CS 3140


Specification Engineering (Section 006)

Instructor: Matthew Dwyer
Students will learn how to specify the intended behavior of software systems using mathematical logic and then use specifications to verify that implementations conform to the specifications. They will also use emerging industrial frameworks that support specification and verification, like Verus for Rust, which has been used in multiple large deployed systems in industry and will also leverage agentic approaches to synthesize proofs. A significant part of the course will be applying the learned methods to specify and verify existing Rust software systems in the context of a 8+ week project. Students will leverage generative AI to support validation of specifications and generation of proof code - using methods employed in industrial practice.

Prerequisites: CS 2120 and CS 3140; Knowledge of Rust is helpful, but not required.


Workshop on Building AI Agents (Section 007)

Instructor: Henry Kautz
In this hands-on workshop, we will learn how to build AI agents: systems powered by large-language models that autonomously interact with services, tools, and other agents.

Prerequisites: CS 3140


Environmental Intelligence (Section 008)

Instructor: Rich Nguyen
Environmental Intelligence is a project-based learning course where students use AI to monitor ecosystems, reduce environmental harm, and prepare for natural disasters. Instead of lectures, each week pairs a discussion seminar with a build lab.

Prerequisites: Completed CS 2100 with a grade of C- or better or successfully completed the CS 2100 place out test.


3D Vision (Section 009)

Instructor: Zezhou Cheng
The ability to perceive the world in 3D is critically important for humans and has extensive applications in robotics, graphics, virtual/augmented reality, and more. This course will delve into the foundational concepts and recent advancements at the intersection of machine learning and 3D computer vision.

Prerequisites: APMA 3080. This course assumes basic knowledge in Linear Algebra, Optimization, and Deep learning. In particular, students should be familiar with topics including, Linear Algebra: matrix multiplication and inversion, rank, Singular Value Decomposition (SVD), etc. Numeric Optimization: iterative optimization (e.g. SGD), constrained optimization Deep Learning: common neural network architecture (e.g., MLP, ConvNets, Transformer), loss functions, optimizers, regularization, etc.


CS 6501 – Special Topics (Graduate)

Memory Systems for CPUs, GPUs, and AI Accelerators

Instructor: Kevin Skadron
This course examines the memory systems of modern processing units. The first third of the course is a series of lectures on the memory system, including cache, main memory, and storage. The remainder of the coruse explores a series of research papers that propose innovations in the memory system, focusing on DRAM, including novel organizations, interfaces, and in/near-memory computing. The course includes a research project as well as a series of programming projects, and each student will lead 1-2 discussions on our paper readings.

Prerequisites: CSO2 or equivalent. Familiarity with C or C++ is beneficial.


Cloud System Reliability

Instructor: Chang Lou
This course explores the foundational principles, practical aspects, and emerging trends in the reliability of cloud-based systems.


Security of AI Systems: Attacks & Defenses

Instructor: Wajih Hassan
This graduate seminar explores the security of large language models and AI systems. Topics include adversarial attacks, jailbreaking, prompt injection, data poisoning, safety alignment, guardrails, and secure deployment architectures. Students will critically analyze recent research from top-tier venues (IEEE S&P, USENIX Security, CCS, NDSS, NSDI, ASPLOS) and leading industry labs, present papers, and conduct original research projects.


Network Security and Privacy

Instructor: Yixin Sun
This course investigates security and privacy issues that stem from the Internet infrastructure. We will cover topics such as BGP security, DNS security, DDoS attacks, and anonymous communications. We will also look at various mechanisms to secure the Internet infrastructure as well as privacy enhancing technologies. This course will involve literature review and paper presentation/discussion.

Prerequisites: CSO2 or equivalent. Some knowledge in computer networks will be beneficial but not required.


Agentic AI: Risks, Benefits, and Real-World Use (Section 009)

Instructor: Jane Qi


Hardware Security

Instructor: Ashish Venkat


Multi-Robot Systems: Theory and Algorithms (Section 006)

Instructor: Rohan Chandra
The course is organized into three parts: Part I (Theory), Part II (Algorithms), and Part III (Student Participation), and is intended to prepare graduate students to both conduct rigorous theoretical research in multi-robot navigation (MRN) and to pursue application-driven work grounded in a strong mathematical foundation.

Prerequisites: (1) Basic calculus (Chain rule, partial derivatives, gradients, vector fields, etc.) (2) Basic linear algebra and vector geometry (matrix multiplication, vector addition, etc, and (3) Mathematical maturity (be able to read and understand technical research papers).


Data Privacy

Instructor: Tianhao Wang
This course introduces modern data privacy through concrete attacks, practical defenses, and hands-on labs. Topics include data extraction, membership inference, linkage and reconstruction attacks; differential privacy and privacy–utility tradeoffs; privacy-aware machine learning; and privacy-enhancing technologies such as secure multiparty computation, homomorphic encryption, trusted execution environments, and network privacy. Students will also complete a scoped final project.

Prerequisites: Proficiency in Python programming and probability. A prior course in machine learning, security, cryptography, or data science is recommended but not required.


AI for Digital Health

Instructor: Subigya Nepal


Machine Learning for Software Reliability

Instructor: Wenxi Wang


Advanced SE (Section 011)

Instructor: Sebastian Elbaum
This course explores, reproduces, and enhances state-of-the-art software engineering techniques from top-tier research conferences, covering the entire development lifecycle with a dedicated focus on leveraging agentic AI. Students will engage in paper reading, infrastructure setup, empirical studies, and hands-on technique development.


Learning in Robotics

Instructor: Madhur Behl


This site uses Just the Docs, a documentation theme for Jekyll.