tianyudwang / sirl

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Inverse reinforcement learning for autonomous navigation via differentiable semantic mapping and planning

[Project page] [Paper]

SemMapPlan Teaser Tests

Installation

We assume that the following commands are run in a python virtual environment.

  1. Install gym-minigrid from this fork
git clone git@github.com:tianyudwang/Minigrid.git
cd Minigrid
pip install -e .
cd ..
  1. Download pybind11
git clone git@github.com:pybind/pybind11.git
  1. Build the A* c++ code
cd astar_cpp
mkdir build
cd build
cmake ..
make

Return to project page and link

cd ../..
export PYTHONPATH=./astar_cpp/lib:${PYTHONPATH}
  1. Generate dataset
python3 scripts/expert_policy.py --grid_size 16

The generated trajectories are under demonstration/ folder

  1. Run training
python3 scripts/train.py --grid_size 16

The tensorboard logs with training metrics are in the logs/ folder and can be opened with

tensorboard --logdir logs
  1. Run testing To run testing with pretrained models in the trained_models/ folder
python3 scripts/test.py --grid_size 16

This shows the success rate of rolling out the trained policy at each state.

Here are some visualizations of test episodes in 64 by 64 maps Tests

Bibtex

@article{Wang2021sirl,
         author = {Wang, Tianyu and Dhiman, Vikas and Atanasov, Nikolay},
         title = {Inverse Reinforcement Learning for Autonomous Navigation 
                  via Differentiable Semantic Mapping and Planning},
         journal={arXiv preprint arXiv:2101.00186},
         year={2021}
         }

About

License:Apache License 2.0


Languages

Language:Python 71.1%Language:C++ 26.7%Language:CMake 2.2%