Analyzes concepts in algorithm design, problem solving strategies, proof techniques, complexity analysis, upper and lower bounds, sorting and searching, graph algorithms, geometric algorithms, probabilistic algorithms, intractability and NP-completeness, transformations, and …
This 'acclimation' seminar helps new graduate students become productive researchers. Faculty and visitors speak on a wide variety of research topics, as well as on tools available to researchers, including …
This course will provide an introduction to modern cryptography and its applications to computer security. This course will cover the fundamentals of symmetric cryptography (i.e., encryption and message authentication) and …
This is a graduate-level machine learning course. Machine Learning is concerned with computer programs that automatically improve their performance through experience. This course covers introductory topics about the theory and …
This course focuses on aspects of system security that arise in this challenging and ever-evolving space of mobile communication systems, primarily focusing on smartphones and IoT platforms. One of the …
Study of representative digital computer organization with emphasis on control unit logic, input/output processors and devices, asynchronous processing, concurrency, and parallelism. Memory hierarchies. Prerequisite: CS 3330 or proficiency in assembly …
Focuses on techniques for designing and analyzing dependable computer-based systems. Topics include basic dependability concepts and attributes, fault models and effects, combinatorial and state-space modeling, hardware redundancy, error detecting and …
Covers advanced principles of operating systems. Technical topics include support for distributed OSs; microkernels and OS architectures; processes and threads; IPC; files servers; distributed shared memory; object-oriented OSs; reflection in …
This course examines modern networked systems through the lens of emerging technologies and architectures. Topics include, but are not limited to, congestion control, programmable networks, data center networks, wireless networks, …
Interactions between robots and humans are influenced by form, function and expectations. Quantitative techniques evaluate performance of specific tasks and functions. Qualitative techniques are used to evaluate the interaction and …
Course content varies by section and is selected to fill timely and special interests and needs of students. See CS 7501 for example topics. May be repeated for credit when …
Study of the theory, design, and specification of translation systems. Translation systems are the tools used to translate a source language program to a form that can be executed. Using …
This is a core Cyber Physical Systems (CPS) class. It provides fundamental core material in signal processing, machine learning, and feedback control. However, the material is not presented in a …
Cyber-physical systems (CPS) are smart systems that include co-engineered interacting networks of physical and computational components. This course will teach students the required skills to analyze the CPS that are …
This course explores Natural Language Processing (NLP), examining how computers are trained to understand and process human language. Students will gain a thorough understanding of both core NLP concepts and …
This course focuses on the core principles of RL. Like statistical learning, a central challenge of RL is to generalize learned capabilities to unseen environments. However, RL faces additional challenges …
This course is designed to develop cross-competency in the technical, analytical, and professional capabilities necessary for the emerging field of Cyber-Physical Systems (CPS). It provides convergence learning activities based around …
This course provides an overview of the state of the art in software analysis including static and dynamic analysis techniques and verification and validation. It explores the various ways that …
A graduate student returning from Curricular Practical Training can use this course to claim one credit hour of academic credit after successfully reporting, orally and in writing, a summary of …
Detailed study of graduate course material on an independent basis under the guidance of a faculty member.