LeeLinJun / mpc-mpnet-py

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MPC-MPNet

Implementation of Model Predictive Motion Planning Network

Website | Paper

MPC-MPNet-Path

MPC-MPNet-Path

MPC-MPNet-Tree

MPC-MPNet-Tree

Instructions

Compile Modules

cd into deps/ and build cpp modules based on sparse-rrt python binding.

[Important]Please make sure all sys.path inside scripts you need have been updated to your own version. Such as benchmark.py and scripts inside expriments

Data generation

The data_gen folder contains code and scripts for four envrionments: acrobot, cart-pole, car and quadrotor.

cd data_gen
# For parallelization, run the script in i different process:
bash datagen_${system}_batch${i}.sh

Model Training

Preprocess obstacles and state-goal paris with process_data.py, process_obs.py in mpnet/sst_envs Train the network with mpnet/train_mpnet.py.

For costnet in MPC-MPNet-Path, use mpnet/train_costs.py

Benchmarking

Editing parmas in params folder and run with script

# example: bash scripts/acrobot_obs/mp_tree.sh
bash scripts/${system}/${method}.sh

Citation

If you find this open source release useful, please reference in your paper:

@misc{2101.06798,
Author = {Linjun Li and Yinglong Miao and Ahmed H. Qureshi and Michael C. Yip},
Title = {MPC-MPNet: Model-Predictive Motion Planning Networks for Fast, Near-Optimal Planning under Kinodynamic Constraints},
Year = {2021},
Eprint = {arXiv:2101.06798},
}

About


Languages

Language:Python 93.6%Language:Shell 5.6%Language:C++ 0.5%Language:CMake 0.3%