Home > Academics > Course Information > New Course Announcements

New Course Announcements

CSE Faculty: Submit new course information here.

Winter 2023: Machine Learning Theory

Course No:
EECS 598-014
Credit Hours:
3
Instructor:
Wei Hu
Prerequisites:
Mathematical maturity. Familiarity with probability, multivariate calculus, and linear algebra is required. Knowledge of machine learning is recommended but not required.

When do machine learning algorithms work and why? How do we formally characterize what it means to learn from data? This course will study the theoretical foundations of machine learning. Tentative topics include generalization, optimization, deep learning, online learning and bandits, and unsupervised learning.

 

More info

Winter 2023: Applied Machine Learning for Modeling Human Behavior

Course No:
EECS 448
Credit Hours:
4
Instructor:
Emily Provost
Prerequisites:
“Enforced Prerequisite: EECS 281 and (MATH 214 or 217 or 296 or 417 or 419, or ROB 101); (C or better; No OP/F) or Graduate Standing in CSE Advisory Prerequisite: EECS 445”

Machine learning, with a focus on human behavior, across multiple modalities including speech and text. Teams complete projects based primarily on their individual interests centered on modeling an aspect of human behavior. Prior experience with speech/language or other data modeling is not needed.

More info

Winter 2023: CSE Seminar

Course No:
EECS 598-007
Credit Hours:
1
Instructor:
Nikhil Bansal and Satish Narayanasamy
Prerequisites:
Graduate standing

Winter 2023: Data Centric Systems

Course No:
EECS 598-013
Credit Hours:
3
Instructor:
Reetuparna Das
Prerequisites:
EECS 281, EECS 370, or graduate standing

Winter 2023: Human-AI Interaction & Systems

Course No:
EECS 598-003
Credit Hours:
3
Instructor:
Anhong Guo
Prerequisites:
Graduate standing; or permission from instructor

Human intelligence and artificial intelligence (AI) are intertwined, co-evolving and complementary. This course explores how to combine the complementary strengths of humans and AI to design intelligent interactive systems that are ethical, usable, and useful. We will discuss topics including ways to facilitate humans to interact with AI, systems that combine human and AI to solve complex challenges, crowdsourcing and human computation, explainable AI, and AI fairness and auditing.

More info

Winter 2023: Introduction to the Social Consequences of Computing

Course No:
EECS 298-001
Credit Hours:
4
Instructor:
Benjamin Fish
Prerequisites:
EECS 280 or permission of instructor

Computing is now used in every facet of life affecting countless people, including making policy decisions about people in lending, policing, criminal justice, admissions, advertising, and hiring. In doing so, the process of computing and algorithm design now involves understanding the role of computing in society.
This class will introduce you to the ways in which applications of computing affect societal institutions and how these social consequences produce questions about how to conceptualize, critique, and ensure our all-too-human values in computing. To accomplish this, we will explore computing, particularly artificial intelligence (AI) and machine learning, including exploring the role of AI in everything from personalization to surveillance to online speech. We will critically examine the philosophical and sociological underpinnings of these values and the strategies commonly used to promote them, and seek to connect these conceptualizations to the emerging algorithmic tools proposed for promoting those values. In order to practice reasoning through these problems, this class will feature programming in Python. No previous programming experience in Python is needed.

More info

Winter 2023: Action and Perception

Course No:
EECS 598-010
Credit Hours:
3
Instructor:
Stella Yu
Prerequisites:
Basic knowledge of machine learning, computer vision, and robotics.

In this graduate-level seminar course, we will study research papers on the development of visual, audio, and tactile perception and body control in humans, in comparison with the latest machine learning methods in computer vision and robotics, on tasks such as ocular motor control, reaching, grasping, manipulation, locomotion etc.

More info

Winter 2023: Extended Reality and Society

Course No:
EECS 498-003
Credit Hours:
4
Instructor:
Austin Yarger
Prerequisites:
EECS 281

From pediatric medical care, advanced manufacturing, and commerce to film analysis, first-responder training, and unconscious bias training, the fledgling, immersive field of extended reality may take us far beyond the realm of traditional video games and entertainment, and into the realm of diverse social impact.

“EECS 498 : Extended Reality and Society” is a programming-intensive senior capstone / MDE course that empowers students with the knowledge and experience to…

– Implement medium-sized virtual and augmented reality experiences using industry-standard techniques and technologies (unity / unreal).
– Design socially-conscious, empowering user experiences that engage diverse audiences.
– Contribute to cultural discourse on the hopes, concerns, and implications of an XR-oriented future.
– Carry out user testing and employ feedback in an iterative design / development process.
– Work efficiently in teams of 2-4 using agile production methods and software (Jira)

Students will conclude the course with at least three significant, socially-focused XR projects in their public portfolios.

More info

Winter 2023: Privacy Enhancing Technologies (PETS)

Course No:
EECS 598-009
Credit Hours:
3 credits
Instructor:
Todd Austin
Prerequisites:
Graduate standing in CSE

This course explores the latest advances in privacy-enhancing technologies (PETs).

More info (pdf)

Winter 2023: Data Centric Systems

Course No:
EECS 598-013
Credit Hours:
3 credits
Instructor:
Reetuparna Das
Prerequisites:
EECS 281, EECS 370 or graduate standing

This special topics course will discuss recent advances and new directions that are being pursued to design data-centric computing systems.

More info (pdf)

Winter 2023: Quantum Electromagnetics

Course No:
EECS 498-004
Credit Hours:
3 credits
Instructor:
Alex Burger
Prerequisites:
PHYSICS 240, MATH 215, and MATH 216

This course will introduce students to the quantum theory of electromagnetic radiation, matter and their interactions, which underpins all new quantum technologies.

More info (pdf)

Winter 2023: Algorithms for Data Science

Course No:
EECS 498-005
Credit Hours:
3
Instructor:
Michal Derezinski
Prerequisites:
EECS 376, linear algebra and probability

This course will introduce algorithmic and theoretical aspects of data science. With the emergence of machine learning and data science, as well as the ever-increasing data sizes, providing theoretical foundations for these areas will become increasingly important. The course will cover several important algorithms in data science and see how their performances can be analyzed. While fundamental ideas covered in EECS 376 (e.g., design and analysis of algorithms) will be still important, some topics will introduce new concepts and ideas, including randomized dimensionality reduction, sketching algorithms, and algorithms for continuous optimization.

More info

Winter 2023: Formal Verification of Hardware and Software

Course No:
EECS 598-002
Credit Hours:
3 credits
Instructor:
Karem Sakallah
Prerequisites:
Graduate standing in CSE

This course explores the latest advances in automated proof methods for checking whether or not certain properties hold under all possible executions of a complex hardware or software system. Specifically, we focus on the class of “control-centric” properties, namely those properties that are weakly-dependent on the data state of the system.

More info (pdf)

Fall 2022: Machine Learning Basics for Optics and Photonics

Course No:
EECS 498-014
Credit Hours:
2 credits
Instructor:
Mohammed Islam
Prerequisites:
See instructor

Please see flyer.

More info (pdf)

Fall 2022: ENGR 490 Designing Your Engineering Future

Course No:
ENGR 490-005
Credit Hours:
2 credits
Instructor:
Joanna Millunchick and Mike Dailey
Prerequisites:
At least one experiential (i.e., active, concrete, contextual) experience

ENGR 490.004 and 490.005 meet together for the first seven weeks of the semester. Then, ENGR 490.005 continues to the end of the semester. * Indicates information specific to ENGR 490.005.

As graduation approaches, you have engaged in a wealth of experiences and collected a bounty of stories. As you move forward to new experiences, you may have many questions about your future: What career do I want? What lifestyle? What jobs should I apply for? Accept? Should I attend graduate school? Am I an effective engineer?

This course will help you leverage your past experiences to create and use tools that will help you answer questions about your personal and professional futures. You’ll create a set of guiding principles and a professional statement and begin a vision for your future. You’ll then apply your principles and vision to make challenging decisions and create professional documents that will be useful in your near future. Throughout this course, you’ll use a set of competencies and collaborate with a group of peers and mentors from academia and industry alike.

* Then, you’ll develop and apply a project to meet your personal and professional goals. Examples of projects include a website, a LinkedIn profile, a vision, or a portfolio. You’ll further examine competencies, such as ethical reasoning, and apply them to examples that engineers often experience at work.

More info

Fall 2022: Formal Verification of Systems Software

Course No:
EECS 498-008
Credit Hours:
4 credits
Instructor:
Manos Kapritsos
Prerequisites:
EECS 491

During this course, you will learn how to formally specify a system’s behavior, how to prove that the high-level design of the system meets that specification and finally how to show that the system’s low-level implementation retains those properties. The course does not assume any prior knowledge in formal verification. We will start from the basics of the Dafny language and build from there. In the end, you should be able to design and prove correct a complex system.

More info (pdf)

Fall 2022: Power Semiconductor Devices

Course No:
EECS 598-005
Credit Hours:
4 credits
Instructor:
Becky Peterson
Prerequisites:
EECS 320 and EECS 421 or graduate standing
  • Learn how power switches (transistors) and rectifiers (diodes) work
  • Gain familiarity with the materials used for power devices
  • Understand how device design determines performance
  • Learn how to use commercial software to numerically model power devices through guided projects (Synopsys Sentaurus and Silvaco Atlas)
More info (pdf)

Fall 2022: Science of Deep Learning

Course No:
EECS 598-007
Credit Hours:
3 credits
Instructor:
Wei Hu
Prerequisites:
Knowledge of machine learning (EECS 545 or 445 or equivalent) and mathematical maturity

This is a graduate-level research-oriented course focusing on fundamental principles (“science”) of deep learning, from both theoretical and empirical perspectives. We will aim to cover fundamental theory, ideas, phenomena, and challenges underlying recent advances in deep learning. Deep learning is a fast-evolving field, and anything can change at any moment, so it’s good to keep an open and critical mindset. If you see something that seems unsatisfactory, you are probably right and you should try to understand it better and improve it!

Note that the focus of this course is on the theoretical and scientific understanding of deep learning. It will not teach you how to use deep learning packages. It is also not about the applications of deep learning to scientific domains.

 

More info

Fall 2022: Quantum Computing for the Computer Scientist

Course No:
EECS 498-001
Credit Hours:
4 credits
Instructor:
Jonathan Beaumont
Prerequisites:
EECS 203, EECS 281, EECS 370

Quantum computing, should current technical barriers be overcome, makes bold promises to revolutionize key applications including cryptography, machine learning, and computational physics. This course will explore the potential impact and limitations of this paradigm shift from a computer science perspective. Lectures will cover the bare physics and mathematics needed to investigate how each layer of the computing stack (logic, system architecture, algorithm, and application design) is impacted. Labs and programming assignments will provide students a hands-on approach towards writing quantum programs, simulating their execution, deploying them to real quantum hardware available on the cloud, and analyzing their performance.

More info (pdf)

Fall 2022: Intro to Quantum Information Science and Engineering

Course No:
298
Credit Hours:
4
Instructor:
Prof. P.C. Ku
Prerequisites:
None. (The course is designed for undergraduate engineering students at all levels. Students are expected to be fluent in high-school level math (pre-calculus), physics, and chemistry.)

Are you interested in learning what a quantum computer is and how it can be built? Do you know that many technologies we take for granted today including computers, Internet, solar panels, LED lights will not be possible without the discovery of quantum phenomena 100 years ago? Are you curious in exploring how quantum information technologies can help revolutionize future computers, communication network, and sensing technologies with broad applications in cybersecurity, drug development, financial modeling, traffic optimization, weather forecasting, artificial intelligence, and materials discovery? The goal of this course is to develop a broad understanding, appreciation, and literacy for the concepts, applications, and societal impacts of quantum information science and engineering (QISE).

More info

Fall 2022: Principles of Machine Learning

Course No:
EECS 498-010
Credit Hours:
3 credits
Instructor:
Qing Qu
Prerequisites:
EECS 301 or EECS 351 or linear algebra

This is an entry-level machine learning course targeted for senior undergraduate and junior master students. This course is a little bit more emphasis on mathematical principles in comparison to EECS 445. Students outside of the ECE program interested in machine learning are welcome as well.

More info (pdf)

Fall 2022: Approximation Algorithms and Hardness of Approximation

Course No:
EECS 598-001
Credit Hours:
3 credits
Instructor:
Euiwoong Lee
Prerequisites:
EECS 376 and EECS 477

Approximation algorithms have been actively studied in both algorithms and complexity theory, culminating in optimal approximation algorithms for some fundamental problems; they achieve some approximation guarantees and no polynomial time algorithm can do better under some complexity conjectures. The theory of approximation algorithms also leads to beautiful connections between algorithms, complexity, and some areas of mathematics. This course will provide an overview of these connections, stressing techniques and tools required to prove both algorithms and complexity results.

More info (pdf)

Fall 2022: Extended Reality and Society

Course No:
EECS 498-003
Credit Hours:
4 credits
Instructor:
Austin Yarger
Prerequisites:
EECS 281. Computer Science students only.

See course flyer below.

More info (pdf)

Fall 2022: Embedded Security

Course No:
EECS 498-009 and EECS 598-009
Credit Hours:
4 credits
Instructor:
Kevin Fu
Prerequisites:
EECS 216 and EECS 370. Advisory course EECS 373.

Designed for undergraduate and masters students seeking careers to help people with assistive
technology, this lab-based embedded security course teaches advanced methods to protect the
security of embedded computing systems from analog threats to the physics of sensing and computation. Master highly sought technical skills by employers on frequency-domain security analysis of signals, voice recognition, and fault injection testing of semiconductors with acoustics, RF, and lasers. Learn how to defend rather than attack systems with application to healthcare, autonomous vehicles, smartphones, medical devices, vaccine production, and orbiting satellite constellations.

More info (pdf)

Fall 2022: Randomized Numerical Linear Algebra in Machine Learning

Course No:
EECS 498-003
Credit Hours:
3 credits
Instructor:
Michal Derezinski
Prerequisites:
EECS 501 and EECS 551

Randomized Numerical Linear Algebra (RandNLA) describes a suite of algorithms which use randomness to construct small representations (sketches) of large data matrices. These sketches are then used to efficiently solve large-scale matrix problems at the core of many scientific, data science and machine learning tasks. This course will focus on algorithmic and theoretical foundations of RandNLA, including such topics as randomized dimensionality reduction and approximate matrix multiplication, as well as recent advances in the area with a particular focus on its applications to machine learning.

More info (pdf)

Winter 2022: Artificial General Intelligence

Course No:
EECS 598-014
Credit Hours:
1 credit
Instructor:
John Laird
Prerequisites:
EECS 492/592 or permission of instructor

 This class will explore the computational structures and processes that can potentially support general intelligence. This will be a seminar course where students read, present, and discuss readings from AI and cognitive science, including psychology, linguistics, animal behavior, and neuroscience. Students will be evaluated on participation in class. 

More info (pdf)

Winter 2022: Identity and Trust On- and Off-Web

Course No:
EECS 498-009/EECS 598-012
Credit Hours:
3 credits
Instructor:
Krisztian Flautner
Prerequisites:
See instructor

The class will be conducted seminar style and involve presentations by students, guest lecturers, discussions, and projects. Some topics of interest are as follows:

  • Self-sovereign identity and verifiable claims: deep dive
  • Implementing efficient and easy to use hardware and software wallets
  • Mapping use-cases to the technology: trade-offs between coverage & complexity
  • Issues inherent in a unified approach to people, services, things and data
  • Blockchains & distributed ledgers: what role do they play?
  • Designing for the real-world: security, usability, scale
  • Co-existing with and leveraging legacy identity and security technologies
  • Rethinking micropayments: is it different this time?
  • Smart contracts: how do we trust a world that runs as code?
More info (pdf)

Winter 2022: Quantum Information, Probability and Computing

Course No:
EECS 598-005
Credit Hours:
3 credits
Instructor:
Sandeep Pradhan

The failures of classical theories to explain important physical phenomena led to revolutionary and unprecedented changes in our thinking, and, in turn, to the develop-ment of quantum mechanics in the first half of the twentieth century. It turns out that the laws of quantum mechanics lead to a new theory of probability (quantum probability) which is a non-commutative generalization of classical theory of probability. It was long believed that information processing and computing were solely mathematical constructs and as such were independent of nature and the laws of quantum mechanics. In the 1980’s this assumption was found to be untrue, and the consequences have been profound. The introduction of quantum mechanics into communications and computation has produced new paradigms (quantum infor-mation) and some unforeseen results in the fields of computation, communications and learning. For example, quantum algorithms have now been found for factoring composite numbers (Shor’s algorithms 1994). In contrast, there are no known practical (i.e., polynomial time) classical so-lutions for the problem. Moreover, recently quantum probability models have been proposed for human cognition to explain question-order-effects in polling and violations of rational decision theory. This course is an introduction to this general area. A basic working knowledge of linear algebra is a prerequisite, but no prior knowledge of quantum mechanics, classical computing or information theory is assumed. Graduate students in all areas of engineering, computer science, system theory, the physical sciences and mathematics should find this material of interest.

More info (pdf)

Winter 2022: Introduction to Quantum Electromagnetics

Course No:
EECS 498-005
Credit Hours:
3 credits
Instructor:
Duncan Steele
Prerequisites:
See instructor

This course is designed for upper level engineering students and students from the physical sciences who have had the usual first two semesters of introductory physics (e.g., 140/240) and the usual calculus classes up through differential equations. Some general knowledge of matrices and determinants is helpful. The course assumes no prior training in quantum mechanics. The course begins with a short introduction to the usual quantum mechanics and then a presentation of the postulates of quantum mechanics and an introduction to Dirac notation. After reviewing the basic ideas and results of classical electromagnetics, we then use the postulates to convert the classical picture of electromagnetics to the quantum picture. The rest of the semester is then used to explore how to create and detect the quantum field and the creation of new states of the quantum field for quantum communications, quantum sensing (lidar/radar), quantum encryption and quantum information. The impact of the quantum vacuum on devices is discussed as well as the interaction of quantized light with various kinds of quantum devices.

The performance metric in the class is focused on learning rather than assessment.

More info (pdf)

Winter 2022: Internet Foundations

Course No:
EECS 498-006
Credit Hours:
3 credits
Instructor:
Mohammed Islam
Prerequisites:
ENGR 101 or EECS 183

This course introduces students to the fundamentals of the internet.  You use the internet every day, and in this course we permit you to “look under the hood” of the internet.  We start by reviewing the differences between various applications, such as world wide web, skype, and Bit-Torrent.  The 4-layer internet model will be explained, which includes the application, transport, network and link layers.  Internet protocol and TCP/IP communication will be reviewed, along with a detailed discussion of how packet switching and routers work.  The link and physical layer description will include explanations of how WiFi and Ethernet networks work.  Other topics covered briefly include Network Address Translation, Wireless and Mobile Networks, Multimedia Networking, and Network Security.  By taking this course you will have a better appreciation of how computer networks work and how your computer communicates over the internet.

More info (pdf)

Winter 2022: Algorithms for Data Science

Course No:
EECS 498-004
Credit Hours:
4 credits
Instructor:
Euiwoong Lee
Prerequisites:
EECS 376 and linear algebra

This course will introduce algorithmic and theoretical aspects of data science. With the emergence of machine learning and data science, providing theoretical foundations for them will become increasingly important. The course will cover several important algorithms in data science and see how their performances can be analyzed. While fundamental ideas covered in EECS 376 (e.g., design and analysis of algorithms, NP-hardness, etc.) will be important, some topics will introduce new concepts and ideas, including sublinear time algorithms, algorithms for continuous domains, and average-case analysis.

More info (pdf)

Winter 2022: Social Consequences in Computer: Fairness, Privacy, and Other Values

Course No:
EECS 598-009
Credit Hours:
3 credits
Instructor:
Benjamin Fish
Prerequisites:
Graduate standing or permission of instructor

This class will cover the ways in which applications of computing affect societal institutions and how these social consequences produce questions about how to conceptualize, critique, and ensure our all-too human values in computing. To accomplish this, we will explore computing — particularly artificial intelligence (AI) and machine learning — in online platforms, algorithms, and policy-making, including exploring the role of AI in everything from personalization to surveillance to online speech. We will focus on those values where recent advances in computing have demonstrated large societal challenges: privacy, fairness, justice, and related values. We will critically examine the philosophical and sociological underpinnings of these values and the strategies commonly used to promote them, and seek to connect these conceptualizations to the emerging algorithmic tools proposed for promoting those values. In doing so, we will develop a diverse toolbox of computational, social, and political ideas, with the end goal of developing the ability to thoroughly reason through these problems in our own projects.

More info (pdf)

Winter 2022: Category Theory

Course No:
EECS 598-006
Credit Hours:
3 credits
Instructor:
Max New
Prerequisites:
EECS 376 and EECS 490

This course will serve as an introduction to category theory for computer science students, especially those interested in applications to formal logic and programming languages. Tentative topics include categories, functors, natural transformations, adjunctions, universal properties, monads, multicategories, and functorial semantics. We will focus on the formal relationship between syntax and semantics as a unifying theme.

More info (pdf)

Winter 2022: Artificial General Intelligence

Course No:
EECS 598-011
Credit Hours:
3 credits
Instructor:
John Laird
Prerequisites:
EECS 492/592 or permission of instructor

This class will explore the computational structures and processes that can potentially support general intelligence. This will be a seminar course where students read, present, and discuss readings from AI and cognitive science, including psychology, linguistics, animal behavior, and neuroscience. Students will be evaluated on pre-class analyses of class topics, participation in class, and their final project/paper.

More info (pdf)

Winter 2022: Encrypted Systems

Course No:
EECS 598-007
Credit Hours:
4 credits
Instructor:
Paul Grubbs
Prerequisites:
Strongly suggested: EECS 475/575 or EECS 388

The aim of this course is fourfold: first, to understand the cryptographic tools that have proven useful in encrypted systems, and how to design new ones; second, to study how encrypted systems have used them (successfully or not); third, to identify “design patterns” for encrypted systems; fourth, to navigate the complex ethical questions that can arise in encrypted systems research.

More info (pdf)

Fall 2021: Randomized Numerical Linear Algebra in Machine Learning

Course No:
EECS 598-005
Credit Hours:
3 credits
Instructor:
Laura Balzano
Prerequisites:
EECS 501 and 551 (or related courses)

This course will focus on numerical linear algebra (NLA), which describes a large suite of algorithms that power a huge number of scientific, data science, and machine learning applications. The use of randomization has been allowing these methods to scale to tremendous data sizes in efficient ways. We will study recent research results in randomized NLA, tradeoffs in terms of computation, data requirements, and accuracy, as well as some specific applications in machine learning and scientific computing.

More info

Fall 2021: Automated Formal Verification of Hardware and Software

Course No:
EECS 498/598
Credit Hours:
4 credits
Instructor:
Yatin Manerkar
Prerequisites:
EECS 203 and EECS 281 or grad standing

This course teaches students about a variety of automated formal verification techniques as well as how to apply such techniques to the verification of hardware and software systems. The course material will equip students to be capable of utilising formal verification tools in the field, and also forms a foundational understanding on top of which they can conduct formal verification research. A substantial component of the course grade will be a final research project (conducted in teams of 2 or 3 students), in which you are expected to conduct original research in formal verification. A list of project ideas will be provided by the instructor; students may also propose their own project ideas, subject to instructor approval.

More info

Fall 2021: Machine Learning in Computational Biology

Course No:
EECS 598-011
Credit Hours:
4 credits
Instructor:
Jie Liu, Joshua Welch

See flyer for more information!

More info (pdf)

Fall 2021: Engineering Interactive Systems

Course No:
EECS 598-002
Credit Hours:
3 credits
Instructor:
Alanson Sample
Prerequisites:
Graduate standing

This course teaches principles (e.g., human-centered systems design, usability, accessibility) and methods (e.g., requirements gathering, functional prototyping, user study evaluation) of technical Human-Computer Interaction (HCI) research. The course surveys HCI research threads including Human-AI Interaction, Social Computing, Behavior Modeling, Education Technologies. Group assignments give students exposure to HCI research methods.

 

More info (pdf)

Fall 2021: Introduction to CSE Graduate Studies

Course No:
EECS 598-006
Credit Hours:
1 credit
Instructor:
Alanson Sample
Prerequisites:
Graduate standing in CSE

See flyer for details!

More info (pdf)
Show All