BulletArm is a PyBullet based benchmark and learning-environment for robotic manipulation research. The development of this package was part of the work done in our ISRR 22 paper.

This package is mainly comprised of two sub-packages: the BulletArm Simulator and the BulletArm Baselines. The simulator provides numerous tools to enable rapid development of robotic manipulation environments for use in robotic learning. It provides a number of environemnts, robots, planners, and tasks out-of-the-box. Additionally, BulletArm was designed with an emphasis on extensibility, allowing users to easily create new enviornments, tasks, and robots as needed. We aim to maintain and improve this package adding new features over time and hope to encourage the community to assist with this by adding any interesting tasks they might design.

Through the combination of these tasks with the provided baselines, we present a comprehensive benchmark for use in either open-loop or closed-loop control. This benchmark consists of 19 different manipulation tasks of varying difficuly, ranging from simple reaching and picking tasks to more realistic tasks such as bin packing and pallet stacking. These tasks can be seen below (for more information see Benchmark Tasks). We provide state-of-the-art baseline algorithms allowing users to compare their algorithms to our previous work on any of the existing tasks or novel tasks which they create.


Benchmark Tasks.

Package Reference

  • Getting Started: Helpful introductory material including installation instructions, examples, and tutorials.

  • BulletArm Simulator: Robotic simulator including the PyBullet environments, robots, tasks, and more.

  • BulletArm Baselines: A collection of state-of-the-art baseline algorithms to benchmark new methods against.

  • Benchmark Tasks: The core set of tasks used for benchmarking methods.


We hope that other researchers will help us extend this package by adding new tasks, robots, etc. If you wish to contribute, please see Contributions for additional details.

Cite Us

The development of this package was part of the work done in our ISRR 22 paper. Please, cite us if you use this code in your own work:

  doi = {10.48550/ARXIV.2205.14292},
  url = {https://arxiv.org/abs/2205.14292},
  author = {Wang, Dian and Kohler, Colin and Zhu, Xupeng and Jia, Mingxi and Platt, Robert},
  keywords = {Robotics (cs.RO), FOS: Computer and information sciences, FOS: Computer and information sciences},
  title = {BulletArm: An Open-Source Robotic Manipulation Benchmark and Learning Framework},
  publisher = {arXiv},
  year = {2022},
  copyright = {arXiv.org perpetual, non-exclusive license}

Indices and tables