-
Source code for J. Choi, A. Agrawal, K. Sreenath, C. J. Tomlin, and S. Bansal, "Computation of Regions of Attraction for Hybrid Limit Cycles Using Reachability: An Application to Walking Robots" [Project Hompage]
-
Contributors: Jason Choi, Ayush Agrawal, Somil Bansal
-
Level Set Toolbox: Level set methods are a class of numerical algorithms for simulation of dynamic implicit surfaces and approximation of solutions to the Hamilton-Jacobi (HJ) partial differential equation (PDE). This is the main library we use to solve the HJ reachability problems.
-
HelperOC: This is a library that is used to interface with the Level Set Toolbox. Implementation of the value remapping in the paper is based on
HJIPDE_solve.m
in this library. -
mufun: This library supports python-like input-output argument syntax in matlab and cool visualizations.
The following python packages are required to set up the target functions for the teleporting dubins car example.
-
scipy.io: to load
.mat
files. -
scikit-fmm: python extension module which implements the fast marching method.
-
HDF5: python library to save data to
.h5
format.
-
The main reachability algorithm (Algorithm 1 in the paper) incorporating the value remapping is implemented in
HJIPDE_solve_with_reset_map.m
-
Computing the value functions for the BRTs take some time. If you just want to play around with the optimal controllers, you can download the precomputed value functions here.
-
More explanations are provided in the directories for each example:
Description: Regions of Attraction (RoA) for the rimless wheel limit cycle (black). (Left and center reproduced from Manchester et al., Regions of attraction for hybrid limit cycles of walking robots.) (Left) Configuration of the rimless wheel system. (Center) The true RoA is shown in light pink. RoA obtained using SOS programming is shown in purple. (Right) RoA computed using our approach. The proposed approach is able to recover the entire RoA.