- Notifications
You must be signed in to change notification settings - Fork441
create_statefbk_iosystem and optimal control enhancements#930
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
create_statefbk_iosystem and optimal control enhancements#930
Uh oh!
There was an error while loading.Please reload this page.
Conversation
coveralls commentedSep 10, 2023 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
f9256cc
to522a8d7
Compare522a8d7
toa40906e
Comparedoc/optimal.rst Outdated
.. math:: | ||
J(x, u) = \sum_{k=0}^{N-1} L(x_k, u_k)\, dt + V \bigl( x_N \bigr). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
why does V(x_N) need big parens but L(.) does not?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
above, V(.) gets regular sized parens.
These seem like obvious improvements to make, so I see no issue with them. Just one tiny note in the comments. |
727eb8e
tof58b19b
Comparef58b19b
to5e217ee
Compare
Uh oh!
There was an error while loading.Please reload this page.
This PR has two primary changes. motivated by some debugging I was doing in#929:
create_statefbk_iosystem
function now allows you to pass an I/O system instead of the a gain (or gain schedule) for the controller. This allows a more general state feedback controller (like an MPC controller) to be created usingcreate_statefbk_iosystem
. (I needed this so that I could gain easy access to the inputs in issue#929, since thefeedback
function does not pass through the controller inputs as a system output, butcreate_statefbk_iosystem
does.)create_mpc_iosystem
function now properly allows keyword parameters that go to the underlyingOptimalControlProblem
, for example setting the minimization method. Prior to this, the keyword parameters were passed toOptimalControlProblem
but were also passed toNonlinearIOSystem
, where they would generate an error.solve_ocp
function has been updated to make more clear how the final time point is handled (see issue#929 for some discussion on this).install_examples.yml
workflow to explicitly include the latest python version, otherwise an early version ofmatplotlib
got installed that was not current enough to work with current code (not sure why this was suddenly required...).