SkillAgentSearch skills...

ChoiRbot

A ROS 2 Toolbox for Cooperative Robotics

Install / Use

/learn @OPT4SMART/ChoiRbot
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

ChoiRbot Documentation Status

Website | Reference docs | Installation | Getting started

| :warning: Information for end users | |:------------------------------------| | Documentation pages are currently being uploaded. The latest version will be available soon. |

ChoiRbot is a ROS 2 toolbox developed within the excellence research program ERC in the project OPT4SMART. ChoiRbot provides a comprehensive set of libraries to execute complex distributed multi-robot tasks, such as model predictive control and task assignment, either in simulation or experimentally. The toolbox focuses on networks of heterogeneous robots without a central coordinator. It provides utilities for the solution of distributed optimization problems and can be also used to implement distributed feedback laws. Specifically, the package allows you to

  • Encode distributed optimization and control algorithms
  • Perform peer-to-peer communications among robots
  • Develop planning and control schemes
  • Connect with external motion capture hardware (see also our ROS 2 Vicon Bridge)
  • Run experiments on your robotic fleet
  • Perform realistic simulations with Gazebo and visualize data with RVIZ

Requirements and Installation

ChoiRbot requires ROS 2 Dashing Diademata to be installed on your system.

It relies on

  • numpy
  • scipy
  • recordclass
  • dill
  • disropt (optional, but required for several features)

Please, refer to the installation page for a more detailed installation guide.

To install the toolbox, first source your ROS 2 installation. Then create a ROS 2 workspace and, inside the src directory, run:

git clone https://github.com/OPT4SMART/ChoiRbot.git .

Then, from the parent directory execute:

colcon build --symlink-install

Getting started

Citing ChoiRbot

If you are you using ChoiRbot in research work to be published, please cite the accompanying paper

@article{testa2021choirbot,
    title={ChoiRbot: A ROS 2 toolbox for cooperative robotics},
    author={Testa, Andrea and Camisa, Andrea and Notarstefano, Giuseppe},
    journal={IEEE Robotics and Automation Letters},
    volume={6},
    number={2},
    pages={2714--2720},
    year={2021},
    publisher={IEEE}
}

Contributors

ChoiRbot is developed by Andrea Testa, Andrea Camisa and Giuseppe Notarstefano

Acknowledgements

This result is part of a project that has received funding from the European Research Council (ERC) under the European Union's Horizon 2020 research and innovation programme (grant agreement No 638992 - OPT4SMART).

<p style="text-align:center"> <img src="docs/source/_static/logo_ERC.png" width="200" /> <img src="docs/source/_static/logo_OPT4Smart.png" width="200" /> </p>
View on GitHub
GitHub Stars58
CategoryDevelopment
Updated22d ago
Forks20

Languages

Python

Security Score

95/100

Audited on Mar 16, 2026

No findings