Home

Awesome

Benchmarking Risk-Constrained, Probabilistic and Cooperative Multi-Agent Monte Carlo Tree Search Planners for Autonomous Driving.

The code implements configurable benchmarks of several Multi-Agent Monte Carlo Tree Search planners in applications of autonomous driving. The implementation and description of the implemented planners is given in the repository planner-mcts.

Contribution & Structure

A fully functional experiment setup to start researching the Multi-Agent MCTS planners implemented in planner-mcts. The repository provides

Details on Available Benchmarks

The folder src/paper/benchmark/ contains five python scripts with the following functionalities:

In all benchmark scripts, you can tune various parameters, e.g., the number of benchmark scenarios, the number of planner search iterations or more specific parameters of each algorithm. Take the provided setup in the scripts as starting point, to develop your own benchmark. To obtain statistically more significant results, the number of scenarios must be increased in all benchmarks, eventually requiring running the benchmarks on a system with distributed computational resources. The benchmark scripts provide ways to adjust the number of CPU cores and memory available for benchmarking.

Installation

  1. Install Bazel.
  2. Clone the repository and change to the base repository directory
  3. bash tools/python/setup_test_venv.sh: This will create a virtual python environment (located in ./bark_mcts/python_wrapper/venv)
  4. source tools/python/into_test_venv.sh: This will activate the virtual environment and set environment variables(keep this in mind for the future: each time you use Bazel, even beyond this installation, be sure to have run this command beforehand)
  5. bazel run [command from above]: Run one of the benchmark commands or the scenario tuning script mentioned above.

Citation

If you use this code for your own research, please cite one of the papers mentioned in planner-mcts.