Minimum Time Consensus of Multi-agent System under Fuel Constraints
<|reference_start|>Minimum Time Consensus of Multi-agent System under Fuel Constraints: This work addresses the problem of finding a consensus point in the state space ($\mathbb{R}^2$) for a multi-agent system that is comprised of $N$ identical double integrator agents. It is assumed that each agent operates under constrained control input (i.e., $|u_i(t)| \leq 1$ $\forall i = 1, \hdots N$). Further, a fixed fuel budget is also assumed i.e., the total amount of cumulative input that can be expended is limited by $\int_0^{t_f}|u(t)|dt \le \beta$. First, the attainable set $\mathcal{A}(t,x_0,\beta)$ at time $t$, which is the set of all states that an agent can attain starting from initial conditions $x_0$ under the fuel budget constraints at time $t$ is computed for every agent. This attainable set is a convex set for all $t\ge0$. Then the minimum time to consensus is the minimum time $\bar{t}$ at which attainable sets of all agents intersect, and the consensus point is the point of intersection. A closed-form expression for the minimum time consensus point is provided for the case of three agents. Then, using Helly's theorem, the intersection will be non-empty at a time when all the $N \choose 3$ triplets of agents have non-empty intersection. The computation of minimum time consensus for all $N \choose 3$ triplets is performed independently and can be distributed among all the $N$ agents. Finally, the overall minimum time to consensus is given by the triplet that has the highest minimum time to consensus. Further, the intersection of all the attainable sets of this triplet gives the minimum time consensus point for all $N$ agents.<|reference_end|>
@article{rautela2024minimum,
    title={Minimum Time Consensus of Multi-agent System under Fuel Constraints},
    author={Akansha Rautela, Deepak Patil, Ameer Mulla and Indra Narayan Kar},
    journal={arXiv preprint arXiv:2407.19927},
    year={2024},
    archivePrefix={arXiv},
    eprint={2407.19927},
    primaryClass={eess.SY cs.SY}
}