rongrong1314 / pareto-mcts

Python demo for the paper "Pareto Monte Carlo Tree Search for Multi-Objective Informative Planning".

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Pareto Monte-Carlo Tree Search

Demo for the paper "Chen, Weizhe, and Lantao Liu. "Pareto Monte Carlo Tree Search for Multi-Objective Informative Planning." Robotics: Science and Systems. 2019".

Materials

Accelerated Video

PDF

Poster

Requirements

  • Python 3.6+
  • Numpy
  • Matplotlib

Upper Confidence Bound Applied to Trees (UCT)

# Stay in /pareto-mcts and execute
python -m demo.uct
# or
./scripts/run_uct.sh

uct The black blocks in the occupancy grid map are obstacles. For demonstration purpose, we used an artificial reward map where the upper-right corner has higher reward. The blue arrows indicate the current best action, the red arrows represent the best trajectory, and the green dots show the searching tree.

Pareto UCT

# Stay in /pareto-mcts and execute
python -m demo.puct
# or
./scripts/run_puct.sh

puct Now we provide another reward map where the high-reward area is the upper part. This time, we chose to go up at the end to balance the two objectives.

Citing

If you find the code useful for your research, we appreciate citations to the following paper:

@inproceedings{Liu-RSS-19, 
    author = {Weizhe Chen and Lantao Liu}, 
    title = {Pareto Monte Carlo Tree Search for Multi-Objective Informative Planning}, 
    booktitle = {Proceedings of Robotics: Science and Systems}, 
    year = {2019}, 
    address = {FreiburgimBreisgau, Germany}, 
    month = {June}, 
    doi = {10.15607/RSS.2019.XV.072} 
} 

Acknowledgements

The code snippet for parsing pgm file to numpy array was taken from the selected answer of https://stackoverflow.com/questions/7368739/numpy-and-16-bit-pgm. Thanks, cgohlke.

About

Python demo for the paper "Pareto Monte Carlo Tree Search for Multi-Objective Informative Planning".

License:MIT License


Languages

Language:Python 99.1%Language:Shell 0.9%