BARK is a semantic simulation framework for autonomous agents with a special focus on autonomous driving. Its behavior model-centric design allows for the rapid development, training and benchmarking of various decision-making algorithms. Due to its fast, semantic runtime, it is especially suited for computationally expensive tasks, such as reinforcement learning.
The BARK ecosystem is composed of multiple components that all share the common goal to develop and benchmark behavior models:
-
BARK-ML: Develop behavior models based on machine learning library.
-
BARK-MCTS: Integrates a template-based C Monte Carlo Tree Search Library into BARK to support development of both single- and multi-agent search methods.
-
BARK-DB: Provides a framework to integrate multiple BARK scenario sets into a database. The database module supports binary seriliazation of randomly generated scenarios to ensure exact reproducibility of behavior benchmarks accross systems.
-
CARLA-Interface: A two-way interface between CARLA and BARK. BARK behavior models can control CARLA vehicles. CARLA controlled vehicles are mirrored to BARK.
If you use BARK, please cite us using the following paper:
@misc{bernhard2020bark,
title={BARK: Open Behavior Benchmarking in Multi-Agent Environments},
author={Julian Bernhard and Klemens Esterle and Patrick Hart and Tobias Kessler},
year={2020},
eprint={2003.02604},
archivePrefix={arXiv},
primaryClass={cs.MA}
}
Use git clone https://github.com/bark-simulator/bark.git
or download the repository from this page.
Then follow the instructions at How to Install BARK.
After the installation, you can explore the examples by e.g. running source dev_into.sh && bazel run //examples:od8_const_vel_two_agent
.
For a more detailed understanding of how BARK works, its concept and use cases have a look at our documentation.
BARK specific code is distributed under MIT License.