Skip to content
This repository was archived by the owner on Nov 6, 2024. It is now read-only.

Add Model Predictive Path Integral (MPPI) control as an optimizer#14

Open
brunzema wants to merge 1 commit intogoogle:mainfrom
brunzema:feature/mppi
Open

Add Model Predictive Path Integral (MPPI) control as an optimizer#14
brunzema wants to merge 1 commit intogoogle:mainfrom
brunzema:feature/mppi

Conversation

@brunzema
Copy link

@brunzema brunzema commented Sep 3, 2023

Added Model Predictive Path Integral (MPPI) control as an optimizer. I use MPPI for gradient free MPC in one of my projects and it made sense to me to include it here. In my experience, it tends to perform better than CEM in practice. The implementation follows Williams et. al 2017 (but without the receding horizon). To summarize, this pull request

  • adds MPPI as an optimizer
  • adds a test for MPPI to tests/optimizers_test.py
  • adds a benchmark for MPPI in benchmarks.

Some of the fixes in #12 and #13, namely the frozendict as a default for hyperparameters, are also included which was necessary to make things run.

This is my first pull request to a bigger project. Therefore, please tell me if changes are required! :)

@google-cla
Copy link

google-cla bot commented Sep 3, 2023

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant