A Control Barrier Function Composition Approach for Multi-Agent Systems in Marine Applications
<|reference_start|>A Control Barrier Function Composition Approach for Multi-Agent Systems in Marine Applications: The agents within a multi-agent system (MAS) operating in marine environments often need to utilize task payloads and avoid collisions in coordination, necessitating adherence to a set of relative-pose constraints, which may include field-of-view, line-of-sight, collision-avoidance, and range constraints. A nominal controller designed for reference tracking may not guarantee the marine MAS stays safe w.r.t. these constraints. To modify the nominal input as one that enforces safety, we introduce a framework to systematically encode the relative-pose constraints as nonsmooth control barrier functions (NCBFs) and combine them as a single NCBF using Boolean composition, which enables a simplified verification process compared to using the NCBFs individually. While other relative-pose constraint functions have explicit derivatives, the challenging line-of-sight constraint is encoded with the minimum distance function between the line-of-sight set and other agents, whose derivative is not explicit. Hence, existing safe control design methods that consider composite NCBFs cannot be applied. To address this challenge, we propose a novel quadratic program formulation based on the dual of the minimum distance problem and develop a new theory to ensure the resulting control input guarantees constraint satisfaction. Lastly, we validate the effectiveness of our proposed framework on a simulated large-scale marine MAS and a real-world marine MAS comprising one Unmanned Surface Vehicle and two Unmanned Underwater Vehicles.<|reference_end|>
@article{yang2024a,
    title={A Control Barrier Function Composition Approach for Multi-Agent Systems
  in Marine Applications},
    author={Yujia Yang, Chris Manzie, Ye Pu},
    journal={arXiv preprint arXiv:2403.14369},
    year={2024},
    archivePrefix={arXiv},
    eprint={2403.14369},
    primaryClass={eess.SY cs.SY}
}