Model Predictive Path Integral (MPPI) control
Model Predictive Path Integral Control or MPPI is a sampling-based model predictive control algorithm. The first version of MPPI was presented in ICRA of 2016 [pdf]. The work included the derivation of MPPI using the information theoretic dualities between free energy and relative entropy, while experiments include applications to off-road navigation using the GT-AutoRally vehicle. Followed version of MPPI included the work on MPPI for non-affine dynamics published in ICRA 2017 [pdf] and the TRO 2018 [pdf]. Since this first waive of publications, there has been different variations and forms of MPPI which were development by the ACDS Lab as well as other Labs. These variations include Tube-MPPI, Robust-MPPI and the most recent versions such us the Tsallis-MPPI, Constrained Covariance Steering – MPPI (CCS-MPPI) and the Covariance Control-MPPI (CC-MPPI).
Sampling-based type of MPC algorithms can be derived using different methodologies that include, information theoretic dualities between free-energy and relative-entropy, stochastic search approaches and variational optimization methodologies. Every methodological approach has its own advantages, which include different algorithmic features, connections to standard Hamilton-Jacobi-Belman theory, flexibility to handle general classes of distributions, stochastic processes and cost functions, and requirements in terms of computational resources.
Tube-MPPI: In Tube-based MPPI there are two optimization layers and the architecture is inspired by the standard Tube-Based Model Predictive and Receding Horizon Control architectures. The first optimization layer corresponds to a vanilla MPPI algorithm which uses a nominal plant or a nominal representation of the dynamics. The second layer comprises of a Differential Dynamic Programming controller which track the trajectory generated by the higher level optimization. The paper on Tube-MPPI was first presented in RSS 2018 and can be found in Link
Robust-MPPI: Robust Model Predictive Path Integral Control aims to overcome the limitations of Tube-MPPI by augmenting the dynamics representation and incorporating the low level controller insight the stochastic optimization module of MPPI. This allows RMPPI to be less conservative and achieve higher speeds in the task of terrestrial navigation. Other features of RMPPI include the optimization step for picking the next nominal state and a bound on the performance from between two queries of RMPPI. The bound is computed on the free-energy difference between between the two queries of RMPPI. The paper on RMPPI appeared in RAL 2021 and can be found in Link
Tsallis-MPPI: This is extension of MPPI that relies on variational optimization and the use of non-extensive information theoretic measure. Non-extensive information theoretic measures include the Tsallis entropy and corresponding divergence. These measures are generalizations of the Shannon entropy and Kulback Leibler divergence. While the vailidity of Tsallis entropy has been debated, at least in engineering applications it provides useful generalizations for the development of scalable and efficient stochastic optimization algorithms. In the context of Tsallis-MPPI our work showed there is a continuum of stochastic optimization algorithms from Cross Entropy to MPPI that are subcases of the Tsallis MPPI. The proposed algorithms has benefits in terms of performance as well as consistency across different tasks and policy parameterizations including multi-modal and variational-stein policy parameterizations. The paper on Tsallis MPPI was published in RSS 2021 and can be found in Link
CCS-MPPI: The Constrained Covariance Steering MPPI is a tube-base MPC architecture which combines sampling-based algorithms such as MPPI and Covariance Steering Control algorithms. The architecture consists of two layers. The fist layer consists of MPPI controller that generates and optimal state distribution. The state distribution is then tracked by a low level covariance steering algorithm. The algorithms has been developed for linear systems and has improved performance on obstacle avoidance tasks compare to vanilla MPPI. The work on CCS-MPPI was fist published in ACC 2022 and can be found in Link
CC-MPPI: Covariance Control MPPI is an architecture that blends MPPI with Covariance Steering in one single layer. The idea here is that for every sampled trajectory generated within MPPI there is a covariance steering problem that provides an ellipsoid with mean the corresponding sampled trajectory. The covariance steering algorithms provides control agains that steer covariance around every sampled trajectory generated by MPPI. The motivation for this work is related to improving the exploration capabilities of MPPI. The paper was first published in ICRA 2022 and can be found in Link