Coming soon
This project implements decentralized multi-agent formation control and leader-follower coordination in ROS2. Our goal in this project was to bridge well-known multi-agent control laws from literature with a working robotic software architecture. Our architecture is decentralized, which means that each robot only needs to have the information about its neighbors to perform the multi-agent task. The framework supports positon-based formation control, distance-based formation control, and leader-follower coordination. We validated the system in simulation using five-agent formation control and four-agent leader-follower experiments. We also tested the framework on hardware, where we performed formation control with three TurtleBots.
Decentralized control: Each agent runs an independent controller, filters neighbor information according to a pre-defined communication graph, computes a single-integrator control input, and maps it to unicycle commands for differential-drive robots.
Motivation: Multi-agent formation control is often presented mathematically using idealized single-integrator dynamics. However, deploying these algorithms on robot platforms requires several additional system components: communication between agents, coordinate-frame transformations, task management, and real-time feedback. This project focused on building that implementation layer in ROS2. Specifically, we developed this architecture to support human-robot team performance, such as dance, in our university's robotics lab . This framework will be used by the lab in the future once we incorporate safety, such as robot-robot and robot-human collision avoidance, in our framework. For our work/progress on safety in multi-agent formation control, please visit this Safety-Forecasting page.
Coming soon
Our framework supports several standard multi-agent behaviors through the same ROS2 task interface: rendezvous, position-based formation control, distance-based formation control, and leader-follower coordination.
Coming soon
Our framework can easily be extended to work with real robots. Each controller cosumes odometry and publish velocity commands, so replacing the simulated agent node with a physical robot driver presevers most of our control stack.
Coming soon
Our framework is designed to work with any number of agents. We present below the short videos for formation control with three, four, and five robots.
Coming soon
Three agents
Coming soon
Four agents
Coming soon
Five agents
Our framework automatically checks if all robots that need to communicate with each other for performing the task are indeed in the communication graph. This helps avoid performing a task where more number of active robots are required than there are.
Coming soon
We performed some analysis in simulation for both formation control (with five agents) and leader-follower (with four agents). Our results show that each agent converges to its desired distance or position in the respective task.
Coming soon
Three agents
Coming soon
Four agents