Difference between revisions of "Supplement: Optimization-Based Control"

From FBSwiki
Jump to navigation Jump to search
 
(16 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|03Jan2023}}
+
* {{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
+
** Implementation in Python: {{OBC notebook|optimal-kincar}}, {{OBC python|kincar.py}}
** Linear Quadratic Regulators
+
** 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|31Jan2022}}
+
* {{OBC pdf|Ch 4 - Receding Horizon Control|obc-rhc|28Jan2023}}
 
** Optimization-Based Control
 
** Optimization-Based Control
** Receding Horizon Control with CLF Terminal Cost
+
** 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|07Feb2022}}
+
* {{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|13Feb2022}}
+
** 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|23Feb2022}}
+
* {{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
** Information Filters
+
** 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|03Jan2023}}
+
* {{OBC pdf|Bibliography and Index|obc-backmatter|20Feb2023}}
 
|}
 
|}

Latest revision as of 23:47, 12 March 2023

Quick Links

Richard M. Murray

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