Skip to content
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement advanced-step real-time iteration: AS-RTI #1046

Merged
merged 46 commits into from
Mar 14, 2024
Merged

Conversation

FreyJo
Copy link
Member

@FreyJo FreyJo commented Mar 5, 2024

This pull request implements the advanced-step real-time iteration (AS-RTI)

It is implemented as a feature within the RTI module.
In order to use it, set the new options:

  • as_rti_level
  • as_rti_iter

The feedback phase of RTI and AS-RTI is the same.
The AS-RTI preparation phase is used instead of the "standard" RTI preparation phase, when the options above are set.

Additionally, this adds the flag:

  • rti_log_residuals: which allows to log the residuals within (AS-)RTI. This was needed for the experiment in the paper, which reports the residuals of the inner iterations. Limited to convex-over-nonlinear and external cost modules for now.

The work in this PR is presented in the publication
"Advanced-Step Real-time Iterations with Four Levels -- New Error Bounds and Fast Implementation in acados" by Jonathan Frey, Armin Nurkanovic, Moritz Diehl
https://arxiv.org/abs/2403.07101

Limitations:

  • AS-RTI-B not implemented for ns > 0.
  • AS-RTI-C only implemented for linear inequality constraints.

acados/ocp_nlp/ocp_nlp_sqp_rti.c Fixed Show fixed Hide fixed
acados/ocp_nlp/ocp_nlp_sqp_rti.c Fixed Show fixed Hide fixed
@FreyJo FreyJo changed the title Implement advanced step real-time iteration: AS-RTI Implement advanced-step real-time iteration: AS-RTI Mar 13, 2024
@FreyJo FreyJo removed the request for review from sandmaennchen March 13, 2024 15:08
@FreyJo FreyJo merged commit f4ea1cd into acados:master Mar 14, 2024
5 checks passed
@FreyJo FreyJo deleted the as_rti branch March 14, 2024 10:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants