Difference between revisions of "Supplement: Optimization-Based Control"
Jump to navigation
Jump to search
(15 intermediate revisions by the same user not shown) | |||
Line 7: | Line 7: | ||
===== News ([[OBC: Archived news|archive]]) ===== | ===== News ([[OBC: Archived news|archive]]) ===== | ||
+ | * 12 Mar 2023: new version (2.3h) is now complete and posted | ||
* Jan-Feb 2023: updated versions of Chapters 2-7 (version 2.3x) posted roughly every week | * Jan-Feb 2023: updated versions of Chapters 2-7 (version 2.3x) posted roughly every week | ||
* 31 Dec 2022: posted Jupyter notebooks for Chapter 1 (intro to python-control) | * 31 Dec 2022: posted Jupyter notebooks for Chapter 1 (intro to python-control) | ||
Line 16: | Line 17: | ||
|- valign=top | |- valign=top | ||
| width=50% | | | width=50% | | ||
− | * {{OBC pdf|Contents and Preface|obc-frontmatter| | + | * {{OBC pdf|Contents and Preface|obc-frontmatter|20Feb2023}} |
* {{OBC pdf|Ch 1 - Introduction|obc-intro|03Jan2023}} | * {{OBC pdf|Ch 1 - Introduction|obc-intro|03Jan2023}} | ||
** System and Control Design | ** System and Control Design | ||
Line 33: | Line 34: | ||
** Optimal Control of Systems | ** Optimal Control of Systems | ||
** Examples | ** Examples | ||
− | ** Implementation in Python: {{OBC notebook|optimal-kincar}} | + | ** Implementation in Python: {{OBC notebook|optimal-kincar}}, {{OBC python|kincar.py}} |
− | ** Linear Quadratic Regulators: {{OBC notebook|optimal-linquad}}, {{OBC notebook|optimal-pvtol-lqr}}, {{OBC | + | ** Linear Quadratic Regulators: {{OBC notebook|optimal-linquad}}, {{OBC notebook|optimal-pvtol-lqr}}, {{OBC python|pvtol.py}} |
** Choosing LQR Weights | ** Choosing LQR Weights | ||
− | ** Advanced Topics | + | ** Advanced Topics: {{OBC notebook|optimal-lqr-tracking}} |
− | * {{OBC pdf|Ch 4 - Receding Horizon Control|obc-rhc| | + | * {{OBC pdf|Ch 4 - Receding Horizon Control|obc-rhc|28Jan2023}} |
** Optimization-Based Control | ** Optimization-Based Control | ||
− | ** Receding Horizon Control with | + | ** Receding Horizon Control with Terminal Cost |
+ | ** Implementation in Python: {{OBC notebook|rhc-doubleint}} | ||
** Receding Horizon Control Using Differential Flatness | ** Receding Horizon Control Using Differential Flatness | ||
+ | ** Choosing Cost Functions | ||
** Implementation on the Caltech Ducted Fan | ** Implementation on the Caltech Ducted Fan | ||
| width=50% | | | width=50% | | ||
− | * {{OBC pdf|Ch 5 - Stochastic Systems|obc-stochastic| | + | * {{OBC pdf|Ch 5 - Stochastic Systems|obc-stochastic|05Feb2023}} |
− | ** Review of Random Variables | + | ** Brief Review of Random Variables |
** Introduction to Random Processes | ** Introduction to Random Processes | ||
** Continuous-Time, Vector-Valued Random Processes | ** Continuous-Time, Vector-Valued Random Processes | ||
− | ** Linear Stochastic Systems | + | ** Linear Stochastic Systems with Gaussian Noise |
** Random Processes in the Frequency Domain | ** Random Processes in the Frequency Domain | ||
− | * {{OBC pdf|Ch 6 - Kalman Filtering|obc-kalman| | + | ** Implementation in Python: {{OBC notebook|stochastic-linsys}} |
+ | * {{OBC pdf|Ch 6 - Kalman Filtering|obc-kalman|20Feb2023}} | ||
** Linear Quadratic Estimators | ** Linear Quadratic Estimators | ||
** Extensions of the Kalman Filter | ** Extensions of the Kalman Filter | ||
** LQG Control | ** LQG Control | ||
+ | ** Implementation in Python: {{OBC notebook|kalman-pvtol}}, {{OBC python|pvtol.py}} | ||
** Application to a Vectored Thrust Aircraft | ** Application to a Vectored Thrust Aircraft | ||
− | * {{OBC pdf|Ch 7 - Sensor Fusion|obc-fusion| | + | * {{OBC pdf|Ch 7 - Sensor Fusion|obc-fusion|12Mar2023}} |
** Discrete-Time Stochastic Systems | ** Discrete-Time Stochastic Systems | ||
** Kalman Filters in Discrete Time | ** Kalman Filters in Discrete Time | ||
** Predictor-Corrector Form | ** Predictor-Corrector Form | ||
** Sensor Fusion | ** Sensor Fusion | ||
− | ** | + | ** Implementation in Python: {{OBC notebook|fusion-kincar}}, {{OBC python|kincar.py}}, {{OBC notebook|fusion-mhe-pvtol}}, {{OBC python|pvtol.py}} |
** Additional Topics | ** Additional Topics | ||
− | * {{OBC pdf|Bibliography and Index|obc-backmatter| | + | * {{OBC pdf|Bibliography and Index|obc-backmatter|20Feb2023}} |
|} | |} |
Latest revision as of 23:47, 12 March 2023
|
These notes serve as a supplement to Feedback Systems by Åström and Murray and expand on some of the topics introduced there. Our focus is on the use of optimization-based methods for control, including optimal control theory, receding horizon control, and Kalman filtering. Each chapter is intended to be a standalone reference for advanced topics that are introduced in Feedback Systems.
Note: Permission is granted to download and print a copy for individual use, but this material may not be reproduced, in whole or in part, without written consent from the author.
News (archive)
- 12 Mar 2023: new version (2.3h) is now complete and posted
- Jan-Feb 2023: updated versions of Chapters 2-7 (version 2.3x) posted roughly every week
- 31 Dec 2022: posted Jupyter notebooks for Chapter 1 (intro to python-control)
- 29 Dec 2022: added new Chapter 1 (introduction) and starting to post updates for v2.3
Contents
|
|