University of Illinois Urbana-Champaign | Fall 2025
Prof. Rainer Engelken
engelken@illinois.edu
Faculty Profile
Time: Tuesday & Thursday 11 - 12:20 pm
Location: ECEB 4070
Time: TBD
Location: Coordinated Science Lab 314
Welcome! This course is a deep dive into the fascinating intersection of two fields that are shaping the future of intelligent systems: the elegant mathematics of dynamical systems and the powerful machinery of neural networks. We will move beyond treating neural networks as "black boxes" and instead use the tools of chaos, stability, and attractor dynamics to understand *why* they work the way they do, and how we can make them better. You'll not only learn to analyze these systems but also to build and simulate them, gaining a better intuition for their behavior. My goal is to give you a flavor of the exciting research happening in this space and equip you with the theoretical and computational skills to contribute. If you're curious about the fundamental principles of learning and computation in both brains and machines, this course is for you.
The course is divided into four main modules.
The final project is a significant research-oriented project, completed individually. The goal is to apply the concepts from the course to a problem in machine learning or computational neuroscience, culminating in a written report (NeurIPS/PRL style) and a presentation.
This graduate course explores the interplay between dynamical systems theory and neural networks (artificial and biological). Students analyze how stability, attractors, bifurcations, and chaos govern behavior, learning, and computation. The course covers foundational discrete and continuous-time dynamical systems, applied to analyzing machine learning models (including training dynamics) and modeling complex neural circuits (rate-based and spiking). Emphasis is on hands-on computational analysis and developing a theoretical understanding. The course culminates in a research project applying these interdisciplinary concepts.
Required: Multivariable calculus and linear algebra (e.g., UIUC MATH 415 & MATH 416); basic proficiency in Python or Julia.
Recommended: Familiarity with ordinary differential equations (e.g., MATH 285/286) and foundational machine learning concepts (e.g., ECE 449/CS 446).
A more extensive list of research papers for discussion will be provided during the course.
We will primarily use Python or Julia for computational assignments. Familiarity with libraries like NumPy, SciPy, and Matplotlib is expected. We may also use machine learning libraries like PyTorch, Flux or JAX.