23 / SHARED PHYSICS · THREE AUTOPILOTS · MEASURED SEPARATION
Three drones.
One physical world.
Three ArduPilot autopilots fly Iris quadrotors in the same Gazebo physics world. A central coordinator assigns six visit-and-hold tasks using nearest-pair greedy matching and executes them with reactive Behavior Trees. Compare normal operation with A1’s controlled withdrawal, then inspect the physical evidence behind the mission.
Predict: does finishing six tasks establish that the drones stayed apart? Does the coordinator know the exact world pose shown by the simulator?
Greedy allocation + reactive BTs + shared Gazebo physics.
Know the methods ↗- Allocation algorithm / variant
- Repeated nearest-pair greedy
Choose the shortest available vehicle–task pair from fresh received positions. Reserve one task per idle vehicle. Reconsider pending work as vehicles become available.
- Execution / tree semantics
- Reactive fallback with priority withdrawal
Each tick checks retirement before normal mission work. Running task execution can be halted; an interrupted task stays reserved until landing is confirmed.
- Decision architecture / communication
- Central coordinator · three MAVLink routes
The coordinator owns the task ledger and all three trees. Three independent autopilots control aircraft in one physics scene. The coordinator receives each autopilot’s telemetry; it does not consume simulator world truth.
- Timing / information
- Recorded host ticks · received telemetry
Host receipt time orders decisions and observations; Gazebo simulation time describes physics progress. Simulator poses and contacts are separate evaluator evidence. These clocks are not interchangeable.
Fidelity boundary: one Gazebo world supplies flight dynamics and collision geometry to three ArduPilot instances. Known task coordinates and clear direct legs are supplied; no obstacle planner, ORCA, perception or radio-loss model is added. A1’s retirement is a controlled request, not a detected crash.