Update benchmarks to help with optimal control tuning #800
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR updates the benchmarks to allow for more useful characterization and tuning of the
optimal
module. The main change is to switch from using the kinematic car (vehicle) example as the basis for benchmarking to using a simpler linear system. The kinematic car was problematic because it is a marginally stable system and so the shooting method using for the optimal control computations was not numerically stable, causing lots of failures.Almost all of the changes here are in the benchmarks/ directory, with a few small changes in the main code to fix some small issues identified along the way.
Once this PR and #799 are merged, I'll add some benchmarks comparing the shooting method to collocation.