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 458
- Office hours are TBD
- 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% | Final Project |
| 20% | Mid Term Exam |
| 20% | Final Exam |
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
Specific topics on specific days are tentative and subject to change.
| Week | Dates | Topics | Assignments |
|---|---|---|---|
| 1 | Jan 14 Jan 16. |
Course overview & nonlinear dynamics intro Nonlinear systems analysis |
HW0 |
| 2 | Jan 21 Jan 23 |
Intro to Lyapunov Lyapunov Stability |
HW1 Out |
| 3 | Jan 28 Jan 30 |
Lyapunov Stability & Invariance Lyapunov Stability Wrap Up |
|
| 4 | Feb 04 Feb 06 |
Underactuated Systems & Robot Control QPs, CLFs |
HW1 Due |
| 5 | Feb 11 Feb 13 |
CBFs, Mid Term Review Mid Term |
|
| 6 | Feb 18 Feb 20 |
LQR Dynamic Programming |
HW2 Out |
| 7 | Feb 25 Feb 27 |
MPC Trajectory Optimization |
|
| 8 | March 04 March 06 |
Trajectory Optimization Hybrid Systems |
HW2 Due |
| 9 | March 11 March 13 |
Spring Break | |
| 10 | March 18 March 20 |
Walking Robots | HW3 Out |
| 11 | March 25 March 27 |
Planning with attitude Stochasticity, Adaptivity, Robustness |
|
| 12 | April 01 April 03 |
Stochasticity, Adaptivity, Robustness | HW3 Due, HW4 Out |
| 12 | April 08 April 10 |
Output feedback RL and Optimal Control |
|
| 12 | April 15 April 17 |
Computing Lyapunov Functions | HW4 Due |
| 12 | April 22 April 24 |
Project Presentations |