Carpenter ant-inspired coordination
Swarm Robotics
A swarm robotics project exploring whether simple agents can coordinate through signals left in a shared environment instead of central commands.
The project began with carpenter ants and a question about indirect coordination: what happens if each robot only sees nearby signals, but the group shares a changing memory of where it has been? I built the idea first in simulation, then carried it into tracked physical robots.

- Question
- Can local signals scale?
- Built
- Simulation + tracked robots
- Method
- Virtual pheromones
- Learning
- Sim-to-real constraints
Problem
Why decentralized coordination?
I wanted to understand how coordinated behavior can emerge from agents that only have local information. Carpenter ants were the starting point because they do not need a central command system to leave useful signals for one another.
The engineering version of that idea became a swarm that uses a shared virtual pheromone field. Each agent sees a small part of the world, but the group can still benefit from traces left by earlier motion.
System
How the agents worked
Each agent used local observations to decide where to move, when to pick up food, and how to follow or deposit pheromone trails. The simulation let me make that feedback loop visible before asking whether the idea could survive physical constraints.

Testing
What I compared
I compared swarms with virtual pheromone memory against swarms without that shared signal. The important question was not whether one agent could solve a clean task, but whether coordination became more useful as the group grew.
The detailed controls and stress tests remain in the research poster. Here, the story is the central result: shared environmental memory changed what happened when more agents joined the task.
Primary result
Pheromones made scaling meaningful.
The clearest poster result is that pheromone-enabled swarms delivered more food as swarm size increased, while non-pheromone controls stayed near zero. That matters because it supports the central idea: a shared environmental signal can help simple agents coordinate without direct communication.

Prototype
From simulation to physical robots
To connect the learned system to hardware, I built physical robots with Raspberry Pi, ESP32, camera, LiDAR, encoders, differential drive motors, Python software, and C++ firmware. The physical system was a real-world viability step, not just a decorative model beside the simulation.

Reflection
What I learned
The project made emergent behaviour feel concrete. A simple local rule became more powerful when agents could leave useful information behind for one another. It also showed the hard part of sim-to-real work: learned coordination has to survive sensors, motors, timing, and physical constraints.
Demonstration
