Optimal Control for Space Systems (EN.530.626)
Course Description
Trajectory design and control for aerospace systems encompasses a broad range of system dynamics, physical constraints, and other safety considerations. Optimal control offers a powerful paradigm to solve such problems and this course introduces the theoretical and practical foundations of optimal control as applied to aerospace and robotic applications. In particular, a strong emphasis is placed on real-time planning and control via the use of on-board numerical optimization and students will apply theoretical insights from trajectory optimization and model predictive control for developing real-time controllers. Students will apply this theory to practice through coding implementations in Python and evaluation in simple simulation environments, with applications including planetary rover path planning, rocket powered descent guidance, and spacecraft controls. Finally, a course project will be included to allow students to gain further experience on an algorithm or application of their choice.
Instructors
Course Assistants
Meeting Times
Lectures will be held on Tuesdays and Thursdays from 1:30-2:45PM in Hodson 216.
Office Hours
Office hours will begin from the second week of the semester. Fall 2026 office hours will be announced at the start of the semester.
Syllabus
The syllabus for the course can be found here.
Final Project
This class will culminate with a final project that will allow students to explore topics of their interest and pursue potential research applications. Details on the final project can be found here.
Schedule
| Week | Date | Topics Covered | Notes | Suggested Readings |
|---|---|---|---|---|
| 1 | 09/01 | Intro: linear algebra & differential equations review | Learn git, Learn shell, Docker tutorial | |
| 09/03 | Linear systems theory | Lecture 2 Notes | 1, 2 | |
| 2 | 09/08 | Optimization fundamentals | Lecture 3 Notes, HW1 Released | 1 |
| 09/10 | Constrained optimization (Pt. 1) | Lecture 4 Notes | 1, 2 | |
| 3 | 09/15 | Constrained optimization (Pt. 2) | Lecture 5 Notes | 1, 2 |
| 09/17 | Constrained optimization (Pt. 3) | HW1 Due, HW2 Released, Lecture 6 Notes | 1, 2 | |
| 4 | 09/22 | Constrained optimization (Pt. 4) | Lecture 7 Notes | |
| 09/24 | Off-the-shelf trajectory optimization | Lecture 8 Slides | 1, 2 | |
| 5 | 09/29 | From continuous to discrete optimal control | Lecture 9 Notes | |
| 10/01 | Powered descent guidance | Lecture 10 Notes, Final project proposal due | 1, 2 | |
| 6 | 10/06 | Planning over orientations (Pt. 1) | Lecture 11 Notes | 1 |
| 10/08 | Planning over orientations (Pt. 2) | |||
| 7 | 10/13 | Combinatorial planning with integer programs | Lecture 13 Notes, HW2 Due, HW3 Released | 1, 2 |
| 10/15 | Sampling-based motion planning | Lecture 14 Slides | ||
| 8 | 10/20 | Surface rover path planning | ||
| 10/22 | No Lecture (Fall Break) | |||
| 9 | 10/27 | Inverse classroom (mid-semester checkpoint) | HW3 Due, HW4 Released, Lecture 17 Notes | |
| 10/29 | Long and short range planner hierarchies | Lecture 18 Slides | ||
| 10 | 11/03 | Derivative-free methods for trajectory optimization | 1, 2, 3 | |
| 11/05 | Uncertainty propagation | 1, 2 | ||
| 11 | 11/10 | Stochastic optimal control (Pt. 1) | HW4 Due | 1, 2, 3 |
| 11/12 | Midterm Exam | HW5 Released | ||
| 12 | 11/17 | Guest lecture (TBD) | 1, 2 | |
| 11/19 | Stochastic optimal control (Pt. 2) | Lecture 24 Slides | ||
| 13 | 11/24 | No Lecture (Thanksgiving Break) | ||
| 11/26 | No Lecture (Thanksgiving Break) | |||
| 14 | 12/01 | Learning value functions | Lecture 25 Slides | |
| 12/03 | Differentiable MPC | HW5 Due, Lecture 26 Slides | 1, 2 | |
| 15 | 12/08 | Final project presentations | ||
| 12/10 | Final project presentations |