EMAE 485: Nonlinear Dynamics and Control
Course Description
This course will teach students how to analyze and apply control algorithms for nonlinear systems based on modern best practices. While the course by necessity deals with highly theoretical concepts, these will be approached and developed in the context of relevant issues in application areas of interest, with a particular focus on robotics. Specific goals include (1) introduction to nonlinear dynamics analysis, (2) understanding of mathematical certification for control systems, (3) presentation of modern nonlinear control algorithms and their properties, and (4) applications of the preceding topics to practical problems in robotics and other areas through assignments and exams.
Instructor
Zach Patterson
zpatt@case.edu
Logistics
- The class will be Tuesdays and Thursdays from 10-11:15 EST in Glennan 716
- Office hours are Thursdays 11:15-12:15 EST in Glennan 458
- Homework assignments will be due at 23:59 EST two weeks after they are assigned.
- Teams will serve as our discussion platform
Course Objectives
- An understanding of nonlinear dynamical systems and how they behave
- An understanding of Lyapunov analysis and nonlinear stability
- A working knowledge of optimal control
- An understanding of the connection between optimal control and reinforcement learning
- The ability to write control algorithms in code for application on simulated and real systems
- An understanding of the limitations of state of the art control systems
Resources
Students are not required to purchase a textbook, although the course will draw heavily from Hassan Khalil’s Nonlinear Systems, as well as from Russ Tedrake’s Underactuated Robotics notes.
Textbooks:
- Khalil, Hassan: Nonlinear Systems, Prentice Hall, 3nd Edition, 2002 (Buy this one if you want a book for your library)
- Boyd, Stephen, and Vandenberghe, Lieven: Convex Optimization, Cambridge, 2004
- Strogatz, Steven H: Nonlinear Dynamics and Chaos, CRC press, 2018
- Nocedal, Jorge, and Stephen J. Wright: Numerical Optimization, Springer, 1999
- Bertsekas, Dimitri: Dynamic Programming and Optimal Control, Athena Scientific, 2012
- Bryson, Arthur Earl. Applied Optimal Control, Routledge, 2018
- Murray, Richard M., et al.: A Mathematical Introduction to Robotic Manipulation, CRC Press, 2017
- Sutton, Richard S., Barto, Andrew G.: Reinforcement Learning: An Introduction, A Bradford Book, 2018
Online Notes:
- Russ Tedrake’s Underactuated Robotics Notes: https://underactuated.mit.edu/
- Hassan Khalil’s website including lecture notes and exercises: https://www.egr.msu.edu/~khalil/
- Sergey Levine’s Course Notes on Deep Reinforcement Learning: https://rail.eecs.berkeley.edu/deeprlcourse/
Homework
Homework will be distributed via Github.
Grading
| Weight | Deliverable |
|---|---|
| 40% | Homework |
| 20% | Mid Term Exam |
| 40% | Final Project |
Project
The goal of the class project is to get students to apply concepts from the course on a specific application of their choice. Students may work as individuals or in small groups, but the project is expected to scale with the size of the group. If students have ongoing research, they are welcome to work on that topic as long as the class component of the project is clearly utilizing concepts from the class. Otherwise, students are encouraged to be creative and will be provided with a list of potential ideas. Deliverables for the project will include a brief proposal to initiate the project, several check-ins with the instructor, the primary deliverable, a class paper written in IEEE conference format, and a brief presentation of the results to the class.
Policies
Late Assignment Policy: Students are allowed a budget of 6 late days for turning in homework with no penalty throughout the semester. They may be used together on one assignment, or separately on multiple assignments. Beyond these six days, no other late homework will be accepted.
AI Policy: Students are allowed to use large language models (e.g. ChatGPT) to complete assignments, especially for coding exercises. However, AI (along with any other computing technology), is expressly forbidden during exams. Additionally, even during assignments, students should be cautious of using AI for this course material - I have observed that lazy usage without verification will in practice result in bad results and a bad grade.
Academic Integrity Policy: Students are strongly encouraged to collaborate on assignments. All students in this course are expected to adhere to University standards of academic integrity. Cheating, plagiarism, misrepresentation, use of generative artificial intelligence (AI) without instructor permission, and other forms of academic dishonesty will not be tolerated. This includes, but is not limited to, consulting with another person during an exam, turning in written work that was prepared by someone other than you, making minor modifications to the work of someone else and turning it in as your own, or engaging in misrepresentation in seeking a postponement or extension. Ignorance will not be accepted as an excuse. If you are not sure whether something you plan to submit would be considered either cheating or plagiarism, it is your responsibility to ask for clarification.
Accommodations for Students with Disabilities: In accordance with federal law, if you have a documented disability, you may be eligible to request accommodations from Disability Resources. In order to be considered for accommodations you must present an accommodation letter from Disability Resources. An appointment can be made by visiting Disability Resources in Sears 402, calling the office at 216-368-5230, or by emailing the office at disability@case.edu. To get more information on how to begin the process, see: https://students.case.edu/academic/disability/getstarted/.
Please keep in mind that accommodations are not retroactive.
For further information, see: https://students.case.edu/education/disability/policies/policy.html.
Schedule
Schedule is tentative and subject to change.
| Week | Dates | Topics | Assignments |
|---|---|---|---|
| 1 | Jan 13 Jan 15 |
Course overview & nonlinear dynamics intro Nonlinear systems analysis |
HW0 |
| 2 | Jan 20 Jan 22 |
Intro to Lyapunov Lyapunov Stability |
HW0 Due, HW1 Out |
| 3 | Jan 27 Jan 29 |
Lyapunov Stability & Invariance Lyapunov Stability Wrap Up |
|
| 4 | Feb 03 Feb 05 |
Underactuated Systems & Robot Control, Mid Term Review | HW1 Due |
| 5 | Feb 10 Feb 12 |
Mid Term QPs, CLFs, CBFs, |
HW2 Out |
| 6 | Feb 17 Feb 19 |
LQR Dynamic Programming |
|
| 7 | Feb 24 Feb 26 |
MPC Trajectory Optimization |
HW2 Due, HW3 Out |
| 8 | March 03 March 05 |
Trajectory Optimization Hybrid Systems |
|
| 9 | March 10 March 12 |
Spring Break | |
| 10 | March 17 March 19 |
Walking Robots | HW3 Due, HW4 Out |
| 11 | March 24 March 26 |
Planning with attitude Stochasticity, Adaptivity, Robustness |
|
| 12 | March 31 April 02 |
Stochasticity, Adaptivity, Robustness | HW4 Due |
| 12 | April 07 April 09 |
Output feedback RL and Optimal Control |
|
| 12 | April 14 April 16 |
Computing Lyapunov Functions | |
| 12 | April 21 April 23 |
Project Presentations |