Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

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

Merged

Conversation

murrayrm
Copy link
Member

@murrayrmmurrayrm commentedSep 10, 2023
edited
Loading

This PR has two primary changes. motivated by some debugging I was doing in#929:

  • Thecreate_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.)
  • Thecreate_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.
  • Unit tests and documentation updated as well. More specifically, the documentation for thesolve_ocp function has been updated to make more clear how the final time point is handled (see issue#929 for some discussion on this).
  • Had to modify theinstall_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...).

@coveralls
Copy link

coveralls commentedSep 10, 2023
edited
Loading

Coverage Status

coverage: 95.012% (+0.002%) from 95.01% when pulling5e217ee on murrayrm:mpc_enhancements-10Sep2023 intoa11d3be on python-control:main.

@murrayrmmurrayrm changed the titlecreate_statefbk_iosystem and create_mpc_iosystem enhancementscreate_statefbk_iosystem and optimal control enhancementsSep 15, 2023
@murrayrmmurrayrmforce-pushed thempc_enhancements-10Sep2023 branch 2 times, most recently fromf9256cc to522a8d7CompareSeptember 16, 2023 04:35
@murrayrmmurrayrmforce-pushed thempc_enhancements-10Sep2023 branch from522a8d7 toa40906eCompareSeptember 16, 2023 17:32

.. math::

J(x, u) = \sum_{k=0}^{N-1} L(x_k, u_k)\, dt + V \bigl( x_N \bigr).
Copy link
Contributor

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?

Copy link
Contributor

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.

@sawyerbfuller
Copy link
Contributor

These seem like obvious improvements to make, so I see no issue with them. Just one tiny note in the comments.

@murrayrmmurrayrmforce-pushed thempc_enhancements-10Sep2023 branch 2 times, most recently from727eb8e tof58b19bCompareOctober 22, 2023 05:31
@murrayrmmurrayrmforce-pushed thempc_enhancements-10Sep2023 branch fromf58b19b to5e217eeCompareOctober 22, 2023 05:33
@murrayrmmurrayrm merged commita44def1 intopython-control:mainOct 22, 2023
@murrayrmmurrayrm deleted the mpc_enhancements-10Sep2023 branchOctober 22, 2023 05:46
@murrayrmmurrayrm added this to the0.10.0 milestoneMar 31, 2024
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

@sawyerbfullersawyerbfullersawyerbfuller approved these changes

Assignees
No one assigned
Labels
None yet
Projects
None yet
Milestone
0.10.0
Development

Successfully merging this pull request may close these issues.

Constrained MPC: Differences to MATLAB and Numeric Issues for different OS
3 participants
@murrayrm@coveralls@sawyerbfuller

[8]ページ先頭

©2009-2025 Movatter.jp