1.7 KiB
1.7 KiB
CatOpt-Swarm
CatOpt-Swarm is a validated Python package for safe distributed swarm optimization. It models robot tasks, contract-tagged deltas, and mission policies in a canonical IR, then runs a deterministic ADMM-lite coordinator with verification hooks.
Core Concepts
LocalProblemcaptures each robot's objective, state, and local limits.PlanDeltacarries contract-tagged updates with sequence and base-version replay guards.SharedVariablestracks consensus, versioning, and applied sequence state.SafetyPolicyenforces travel distance, separation, and energy limits.ContractRegistrystores adapter contracts in a graph and supports conformance checks.
Behavior
- Deterministic delta ordering and bounded-staleness replay control
- Separation projection to keep robots apart during updates
- Audit logs and convergence certificates per solve
- Verification of consensus consistency, energy budgets, and trace continuity
- Adapter shims for aerial and ground controllers
Layout
catopt_swarm.modelscatopt_swarm.registrycatopt_swarm.adapterscatopt_swarm.solvercatopt_swarm.verificationcatopt_swarm.cli
Install
python3 -m pip install -e .
Run
python3 -m catopt_swarm.cli
Compatibility entrypoints:
python3 admm_solver.py
python3 solver.py
Test
bash test.sh
Demo Coverage
- Two-robot consensus planning
- Adapter conformance checks for aerial and ground controllers
- Graph-based contract registration
- Safety verification after solve
- Delta replay and version tracking
Status
This repository now covers the core planning, contract, and verification substrate. ROS/Gazebo integration and richer mission templates remain natural next steps.