This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Asynchronous Spatial-Temporal Allocation for Trajectory Planning of Heterogeneous Multi-Agent Systems

Yuda Chen, Haoze Dong, and Zhongkui Li
Abstract

To plan the trajectories of a large-scale heterogeneous swarm, sequentially or synchronously distributed methods usually become intractable due to the lack of global clock synchronization. To this end, we provide a novel asynchronous spatial-temporal allocation method. Specifically, between a pair of agents, the allocation is proposed to determine their corresponding derivable time-stamped space and can be updated in an asynchronous way, by inserting a waiting duration between two consecutive replanning steps. Via theoretical analysis, the inter-agent collision is proved to be avoided and the allocation ensures timely updates. Comprehensive simulations and comparisons with five baselines validate the effectiveness of the proposed method and illustrate its improvement in completion time and moving distance. Finally, hardware experiments are carried out, where 88 heterogeneous unmanned ground vehicles with onboard computation navigate in cluttered scenarios with high agility.

Supplementary Materials

Video: https://youtu.be/au3fhqbySOE

Code: https://github.com/CYDXYYJ/ASAP

I Introduction

Collision-free trajectory planning plays an essential role for a swarm of agents navigating in a shared workspace [1]. The simplest method is to adopt a central coordinator to decide every agent’s motion [2, 3]. However, this centralized solution becomes unrealistic and intractable for large-scale swarms, due to the limited interaction range and unbearable computation time. Thus, an increasing number of works, e.g., [4, 5, 6] pursue distributed solutions, where the underlying agents can decide their own actions via local communication with others. Related researches gradually advance from sequentially distributed methods [7] to synchronously concurrent distributed [8], and further to asynchronously distributed ones [9].

For decentralized planning, the commonly-used methods are sequentially distributed ones, e.g., [4, 7, 10, 11, 12], by which the participants replan their trajectories in a sequence. As such, the runtime only linearly increases with the number of agents. By comparison, the concurrent distributed methods, e.g., [13, 14, 15, 16, 17], where different agents concurrently replan trajectories, can further decrease the computation complexity. Concurrent methods can be divided into two categories: synchronous and asynchronous. The former requires both global clock synchronization and timetable coordination to synchronize the calculation duration. This, nevertheless, becomes unrealistic for heterogeneous multi-agent systems, since diversified calculation time and indirect communication are inherent characteristics of those systems.

To fulfill an asynchronous motion planning, the authors in [18] extend the reciprocal velocity obstacles methods [19] to agents with kinodynamic constraints. Nonetheless, the short time horizon in [18] implies that it is not eligible for high-agility cases. MADER in [5] introduces a novel Check-Recheck deconfliction scheme, in which the Check period verifies whether an agent’s optimized trajectory collides with those committed by other agents, while the Recheck period assesses whether an agent has received any new trajectories during the Check period. However, each agent is only concerned with other agents’ current trajectories, neglecting those upcoming ones. Similar problem can be found in [20] and [21]. Meanwhile, the authors in [9] suggest an asynchronous decentralized trajectory planner capable of ensuring safety despite communication delays and interruptions. This method extends the Buffered Voronoi Cells [22] to the asynchronous setting by enlarging the makespan of the constraints which may over-constrain the solution space [20]. Another noteworthy work [23] employs the asynchronous alternating direction method of multipliers (ADMM) to resolve the non-convex constraints. To ensure safety despite packet loss, the method inflates the collision region and continues local ADMM iterations using the latest available predictions of neighbors. However, it lacks a formal proof of collision avoidance. In summary, asynchronously distributed planning methods with safety guarantees and high efficiency are still in demand.

Refer to caption
Figure 1: Eight UGVs are crossing a crowded region.

To this end, a novel method named Asynchronous Spatial-Temporal Allocation (ASTA) is proposed to solve the online trajectory planning problem for heterogeneous multi-agent systems in an asynchronously distributed manner. For a single agent, the allocation toward a neighbour is defined as a sequence of time-stamped half space. The allocation is updated asynchronously based on the agents’ trajectories through local communication. To achieve this, an interval called waiting time is inserted between two consecutive replanning of each agent to allow for allocation updates. To avoid the potential inter-agent collision when the agents adopt different versions of allocations, the update is purposely restricted to a specific duration. It is theoretically proved that by obeying this allocation, the inter-agent collision can be avoided. In addition, the update frequency of the allocation is shown to have a tailored lower bound.

The contributions of the paper are summarized as follows:

  • \bullet

    By comparison with other asynchronously distributed methods such as [5] and [23], the planner can pre-determine the derivable space and concern other agents’ upcoming trajectories. Thus, the planned trajectory theoretically ensures inter-agent collision avoidance without the need for a recheck.

  • \bullet

    Compared to [4, 13], the proposed method allows the underlying agents to replan their trajectories by merely considering their own schedules, which makes it applicable for different dynamic models, e.g., double integrator, unicycle, and bicycle.

  • \bullet

    Numerical simulations and comparisons with five state-of-the-art methods [4, 5, 8, 13, 16] validate the effectiveness of our method and also illustrate the improvement in the completion time and the moving distances. In the hardware experiments (Fig. 1), 88 heterogeneous unmanned ground vehicles (UGVs) with onboard computation finish two tasks in high agility, where the UGVs’ average speed can reach up to 80%80\% of their maximum speed.

II Problem Formulation

Consider a group of NN agents with different kinds of dynamic models in a shared 2D workspace. The objective is to drive these agents from their current states to their corresponding targets xtargetix_{\text{target}}^{i}, i𝒩{1,2,,N}i\in\mathcal{N}\triangleq\{1,2,\ldots,N\}, without any collision under asynchronous local communication.

II-A Dynamic Models

For agent i𝒩i\in\mathcal{N}, its state and control input at time tt are denoted as xi(t)mx^{i}(t)\in\mathbb{R}^{m} and ui(t)qu^{i}(t)\in\mathbb{R}^{q}, m,q+m,q\in\mathbb{Z}^{+}, respectively. Its dynamic model is described as follows:

x˙i(t)=fi(xi(t),ui(t)),xi(t)𝒳i,ui(t)𝒰i,\dot{x}^{i}(t)=f^{i}(x^{i}(t),u^{i}(t)),~{}\ x^{i}(t)\in\mathcal{X}^{i},\ u^{i}(t)\in\mathcal{U}^{i}, (1)

where 𝒳i\mathcal{X}^{i} and 𝒰i\mathcal{U}^{i} denote the set of available states and control inputs, respectively; fi()f^{i}(\bullet) reflects the differential constraint.

Note that the dynamic models of the agents in (1) are heterogeneous, which include the commonly-encountered double integrator, unicycle and bicycle as special cases, elaborated as follows:

  • Double integrator: x=[px,py,vx,vy]Tx=[p_{x},p_{y},v_{x},v_{y}]^{\mathrm{T}}, u=[ax,ay]Tu=[a_{x},a_{y}]^{\mathrm{T}}, f(x,u)=[vx,vy,ax,ay]Tf(x,u)=[v_{x},v_{y},a_{x},a_{y}]^{\mathrm{T}}, where 𝒳={x4||vx|,|vy|vmax}\mathcal{X}=\left\{x\in\mathbb{R}^{4}\ |\ |v_{x}|,|v_{y}|\leq v_{\text{max}}\right\}, 𝒰={u2||ax|,|ay|amax}\mathcal{U}=\left\{u\in\mathbb{R}^{2}\ |\ |a_{x}|,|a_{y}|\leq a_{\text{max}}\right\};

  • Unicycle: x=[px,py,θ,v]Tx=[p_{x},p_{y},\theta,v]^{\mathrm{T}}, u=[a,ω]Tu=[a,\omega]^{\mathrm{T}}, f(x,u)=[vcosθ,vsinθ,ω,a]Tf(x,u)=[v\cos\theta,v\sin\theta,\omega,a]^{\mathrm{T}}, where 𝒳={x4| 0vvmax}\mathcal{X}=\left\{x\in\mathbb{R}^{4}\ |\ 0\leq v\leq v_{\text{max}}\right\}, 𝒰={u2||ω|ωmax,|a|amax}\mathcal{U}=\left\{u\in\mathbb{R}^{2}\ |\ |\omega|\leq\omega_{\text{max}},|a|\leq a_{\text{max}}\right\};

  • Bicycle: x=[px,py,θ,v]Tx=[p_{x},p_{y},\theta,v]^{\mathrm{T}}, u=[a,δ]Tu=[a,\delta]^{\mathrm{T}}, f(x,u)=[vcosθ,vsinθ,vtanδ/L,a]Tf(x,u)=[v\cos\theta,v\sin\theta,v\tan\delta/L,a]^{\mathrm{T}}, where L+L\in\mathbb{R}^{+}, 𝒳={x4| 0vvmax}\mathcal{X}=\left\{x\in\mathbb{R}^{4}\ |\ 0\leq v\leq v_{\text{max}}\right\}, 𝒰={u2||δ|δmax,|a|amax}\mathcal{U}=\left\{u\in\mathbb{R}^{2}\ |\ |\delta|\leq\delta_{\text{max}},|a|\leq a_{\text{max}}\right\};

in which pp, vv, aa, θ\theta, ω\omega, δ\delta and LL represent the agent’s position, linear velocity, acceleration, heading angle, angular velocity, steering angle and wheelbase, and the subscripts xx, yy denote the xx, yy coordinates, respectively.

II-B Inter-Agent Collision Avoidance

In order to characterize the inter-agent collision avoidance, we first define the representation of the agents’ trajectories as follows:

Definition 1

The trajectory of agent ii between time span [ta,tb][t_{a},t_{b}] is defined as

𝒯raji(ta,tb){Si(xi(t))×t|t[ta,tb]}.\mathcal{T}raj^{i}(t_{a},t_{b})\triangleq\left\{S^{i}\left(x^{i}(t)\right)\times t\ |\ t\in[t_{a},t_{b}]\right\}.

The shape of agent ii at time tt is denoted by a convex polygon Si(xi(t))S^{i}\left(x^{i}(t)\right).

At any time t>0t>0, for any pair of agents ii and jj, they are collision-free if and only if Si(xi(t))Sj(xj(t))=S^{i}\left(x^{i}(t)\right)\cap S^{j}\left(x^{j}(t)\right)=\emptyset. Accordingly, their trajectories are collision-free if and only if 𝒯raji(0,+)𝒯rajj(0,+)=\mathcal{T}raj^{i}(0,+\infty)\cap\mathcal{T}raj^{j}(0,+\infty)=\emptyset.

II-C Problem Statement

In this work, the trajectory planning is carried out in a receding horizon way, wherein xnii(t)x_{n^{i}}^{i}(t) is the planned state at tt in agent ii’s nin^{i}-th replanning. Additionally, the planning horizon of the nin^{i}-th replanning is denoted as Tnii+T_{n^{i}}^{i}\in\mathbb{R}^{+}. The time when agent ii finishes its nin^{i}-th replanning step is denoted as tniit_{n^{i}}^{i}, which is also the starting time of the nin^{i}-th trajectory. The nin^{i}-th replanned trajectory is denoted as 𝒯rajnii(tnii,+)\mathcal{T}raj_{n^{i}}^{i}(t_{n^{i}}^{i},+\infty). Particularly, for the time beyond the planning horizon, i.e., t>tnii+Tniit>t_{n^{i}}^{i}+T_{n^{i}}^{i}, we enforce xnii(t)=xnii(tnii+Tnii)x_{n^{i}}^{i}(t)=x_{n^{i}}^{i}(t_{n^{i}}^{i}+T_{n^{i}}^{i}).

Then, for agent ii in its nin^{i}-th replanning, the trajectory generation problem can be formulated as the following optimal control problem (OCP):

minxnii(t),unii(t)\displaystyle\min_{x_{n^{i}}^{i}(t),u_{n^{i}}^{i}(t)} C(xnii,unii),\displaystyle\ C(x_{n^{i}}^{i},u_{n^{i}}^{i}),
s.t. (1),\displaystyle\eqref{dynamic-model},
xi(tnii)=x^i(tnii),\displaystyle x^{i}(t_{n^{i}}^{i})=\hat{x}^{i}(t_{n^{i}}^{i}), (2a)
𝒯rajnii𝒯rajj=,ji,\displaystyle\mathcal{T}raj_{n^{i}}^{i}\cap\mathcal{T}raj^{j}=\emptyset,\ \forall j\neq i, (2b)

where t[tnii,tnii+Tnii]t\in[t_{n^{i}}^{i},t_{n^{i}}^{i}+T_{n^{i}}^{i}]; x^i(tnii)\hat{x}^{i}(t_{n^{i}}^{i}) is the predicted state at tniit_{n^{i}}^{i}; and C(xnii,unii)C(x_{n^{i}}^{i},u_{n^{i}}^{i}) is the objective function, defined as

C(xnii,unii)\displaystyle C(x_{n^{i}}^{i},u_{n^{i}}^{i})
=tniitnii+Tniiδxnii(τ)TQδxnii(τ)+unii(τ)TPunii(τ)dτ,\displaystyle\quad=\int_{t_{n^{i}}^{i}}^{t_{n^{i}}^{i}+T_{n^{i}}^{i}}{\delta x_{n^{i}}^{i}(\tau)}^{\mathrm{T}}Q\ {\delta x_{n^{i}}^{i}(\tau)}+{u_{n^{i}}^{i}(\tau)}^{\mathrm{T}}P\ u_{n^{i}}^{i}(\tau)d\tau,

which is utilized to drive agent ii to its target and penalize the control inputs unii(τ)u_{n^{i}}^{i}(\tau), where δxnii(τ)=xnii(τ)xtargeti\delta x_{n^{i}}^{i}(\tau)=x_{n^{i}}^{i}(\tau)-x^{i}_{\text{target}}, QQ and PP are the weighted matrices. In the ideal case, the lower-level controller is assumed to perfectly follow the planned trajectory such that x^i(tnii)=𝒯rajni1i(tnii)\hat{x}^{i}(t_{n^{i}}^{i})=\mathcal{T}raj_{n^{i}-1}^{i}(t_{n^{i}}^{i}).

Note that the collision avoidance constraints (2b) are impossible to be directly established at the replanning stage, since the exact future motions of other agents are unavailable. To solve this problem, we propose a method to dynamically reformulate constraints (2b) such that the OCP (2) can be formulated and solved in an asynchronous manner while the inter-agent collision is theoretically avoided.

III Proposed Method

As illustrated in Fig. 2, the proposed method has three main components: i) Spatial-Temporal Allocation (STA), consisting of a sequence of half spaces with time stamps tit_{i} (i=1,2,i=1,2,\ldots), is used to determine feasible time-stamped space w.r.t another agent (the yellow part). ii) Between a pair of agents, STA is asynchronously updated based on their trajectories towards a specific duration (the gray part). iii) Trajectory planning via STA aims to confine each agent’s planned trajectory in its respective feasible time-stamped space (the red part). These components will be presented in the following three subsections.

Refer to caption
Figure 2: The components of the proposed method. A solid line and its normal vector are used to demonstrate a half space, where the solid line represents its boundary and the normal vector points toward its safe region.

III-A Spatial-Temporal Allocation

STA between agents ii and jj aims to allocate the time-stamped feasible region for replanning, so as to avoid collision between agents. The definition of STA is given below.

Definition 2

The Spatial-Temporal Allocation (STA) of agent ii w.r.t. agent jj is

𝔸ij={ij(t)×t|t[tR1,+)},\mathbb{A}^{ij}=\left\{\mathcal{H}^{ij}(t)\times t\ |\ t\in[t^{R_{1}},+\infty)\right\},

where ij(t){p|aijT(t)p>bij(t)}\mathcal{H}^{ij}(t)\triangleq\{p\ |\ {a^{ij}}^{T}(t)\ p>b^{ij}(t)\} represents a half space in 2D space, aij(t)2a^{ij}(t)\in\mathbb{R}^{2} is a normal vector of the boundary of ij(t)\mathcal{H}^{ij}(t) pointing to the interior of ij(t)\mathcal{H}^{ij}(t) and bij(t)b^{ij}(t)\in\mathbb{R} is the offset. We call ij(t)\mathcal{H}^{ij}(t) a Time-Stamped Half Space (TSHS). Moreover, tR1t^{R_{1}} is the time when these agents establish communication. Conversely, we have ji(t){p|ajiT(t)p>bji(t)}\mathcal{H}^{ji}(t)\triangleq\{p\ |\ {a^{ji}}^{T}(t)\ p>b^{ji}(t)\}, where aji(t)=aij(t)a^{ji}(t)=-a^{ij}(t), bji(t)=bij(t)b^{ji}(t)=-b^{ij}(t). As a result, it is clear that ij(t)ji(t)=\mathcal{H}^{ij}(t)\cap\mathcal{H}^{ji}(t)=\emptyset and 𝔸ij𝔸ji=\mathbb{A}^{ij}\cap\mathbb{A}^{ji}=\emptyset.

Since STA is updated along with the replanning process, we use 𝔸mij\mathbb{A}_{m}^{ij} to represent the allocation after the (m1)({m-1})-th update in the sequel.

III-B Allocation Update

Allocation update is a core part in our method which keeps the collision avoidance constraints up-to-date. For agent ii, there is a waiting time TwiT_{w}^{i} between two consecutive trajectory calculation times TciT_{c}^{i} (see Fig. 3). In this work, we particularly enforce that Twi>TciT_{w}^{i}>T_{c}^{i}, in order to ensure a lower bound of the updating frequency.

At time tni1it^{i}_{n^{i}-1} when the (ni1)(n^{i}-1)-th replanning step is finished, the newly planned trajectory 𝒯rajni1i\mathcal{T}raj_{n^{i}-1}^{i} is broadcast to other waiting agents. Specifically, if agent jj stays at waiting time after its njn^{j}-th replanning, it will reach a renewal with agent ii based on 𝒯rajnjj\mathcal{T}raj_{n^{j}}^{j} and 𝒯rajni1i\mathcal{T}raj_{n^{i}-1}^{i}. Fig. 3 provides an illustration. During the waiting time, agent ii can also receive other agents’ data and reach renewals. A renewal is defined as follows:

mij{ij(t)×t|t[tsRm,+)},\mathcal{R}_{m}^{ij}\triangleq\{\mathcal{H}^{ij}(t)\times t\ |\ t\in[t_{s}^{R_{m}},+\infty)\},

where tsRmmax{t(ni1)+1i,tnj+1j}t_{s}^{R_{m}}\triangleq\max\left\{t_{(n^{i}-1)+1}^{i},t_{n^{j}+1}^{j}\right\} is the start time of the mm-th renewal. Moreover, a part of this renewal from tat_{a} to tbt_{b} is denoted as mij(ta,tb){ij(t)×t|t[ta,tb)}\mathcal{R}_{m}^{ij}(t_{a},t_{b})\triangleq\{\mathcal{H}^{ij}(t)\times t\ |\ t\in[t_{a},t_{b})\}.

The process that produces a renewal via 𝒯rajni1i\mathcal{T}raj_{n^{i}-1}^{i} and 𝒯rajnjj\mathcal{T}raj_{n^{j}}^{j} is to generate hyperplane in order to split the space into two halves ij(t)\mathcal{H}^{ij}(t) and ji(t)\mathcal{H}^{ji}(t) based on Si(xni1i(t))S^{i}(x_{n^{i}-1}^{i}(t)) and Sj(xnjj(t))S^{j}(x_{n^{j}}^{j}(t)) for t[tsRm,+)t\in[t_{s}^{R_{m}},+\infty). According to the separating hyperplane theorem [24], if Si(xni1i(t))Sj(xnjj(t))=S^{i}(x_{n^{i}-1}^{i}(t))\cap S^{j}(x_{n^{j}}^{j}(t))=\emptyset, then we can always find a hyperplane that separates those two polygons. One of the possible implementations of separating hyperplane is using GJK algorithm [25, 13].

Refer to caption
Figure 3: A demonstration about the STA update for two cars. Both cars stay at waiting time and reach a new renewal, and the TSHS beyond tsRmt_{s}^{R_{m}} are regenerated to adapt the new situation.

Notably, despite the fact that the duration concerned is [tsRm,+)[t_{s}^{R_{m}},+\infty) for the mm-th renewal, only the duration [tsRm,teRm)[t_{s}^{R_{m}},t_{e}^{R_{m}}), where teRmmax{tni1i+Tni1i,tnjj+Tnjj}t_{e}^{R_{m}}\triangleq\max\left\{t_{n^{i}-1}^{i}+T_{n^{i}-1}^{i},t_{n^{j}}^{j}+T_{n^{j}}^{j}\right\}, needs to be considered. Because for t>teRmt>t_{e}^{R_{m}}, Si(xni1i(t))=Si(xni1i(teRm))S^{i}(x_{n^{i}-1}^{i}(t))=S^{i}(x_{n^{i}-1}^{i}(t_{e}^{R_{m}})) and Sj(xnjj(t))=Sj(xnjj(teRm))S^{j}(x_{n^{j}}^{j}(t))=S^{j}(x_{n^{j}}^{j}(t_{e}^{R_{m}})) hold according to the assumption in Section II-C that for t>tnii+Tniit>t_{n^{i}}^{i}+T_{n^{i}}^{i}, xnii(t)=xnii(tnii+Tnii)x_{n^{i}}^{i}(t)=x_{n^{i}}^{i}(t_{n^{i}}^{i}+T_{n^{i}}^{i}). Thus, we have ij(t)=ij(teRm)\mathcal{H}^{ij}(t)=\mathcal{H}^{ij}(t_{e}^{R_{m}}) as well as ji(t)=ji(teRm)\mathcal{H}^{ji}(t)=\mathcal{H}^{ji}(t_{e}^{R_{m}}) for t>teRmt>t_{e}^{R_{m}}.

For STA, when the first renewal starts, it is initialized as 𝔸1ij=1ij(tR1,+)\mathbb{A}_{1}^{ij}=\mathcal{R}_{1}^{ij}(t^{R_{1}},+\infty). In particular, for the first renewal, we enforce tsR1=tR1t_{s}^{R_{1}}=t^{R_{1}} to avoid collision during [tR1,tsR1][t^{R_{1}},t_{s}^{R_{1}}]. Then, for a new renewal mij\mathcal{R}_{m}^{ij}, the STA is updated as follows:

𝔸mij=𝔸m1ij(tR1,tsRm)mij(tsRm,+),\mathbb{A}_{m}^{ij}=\mathbb{A}_{m-1}^{ij}(t^{R_{1}},t_{s}^{R_{m}})\cup\mathcal{R}_{m}^{ij}(t_{s}^{R_{m}},+\infty), (3)

where 𝔸m1ij(tR1,tsRm)={ij(t)×t|t[tR1,tsRm)}.\mathbb{A}_{m-1}^{ij}(t^{R_{1}},t_{s}^{R_{m}})=\left\{\mathcal{H}^{ij}(t)\times t\ |\ t\in[t^{R_{1}},t_{s}^{R_{m}})\right\}. In this updating mechanism, STA is only updated for the time beyond tsRmt_{s}^{R_{m}}, which can also be reflected in Fig. 3.

A pair of agents reach their renewal if and only if one of them just finishes its replanning and the other one stays at waiting time. This is a typical asynchronous method and thus called Asynchronous Spatial-Temporal Allocation.

III-C Trajectory Planning Using STA

In OCP (2), during agent ii’s nin^{i}-th replanning, given 𝔸mij\mathbb{A}_{m}^{ij} as the latest STA with agent jj, the constraints (2b) can be replaced by

𝒯rajnii𝔸mij,j𝒩i,\mathcal{T}raj_{n^{i}}^{i}\subset\mathbb{A}_{m}^{ij},\ j\in\mathcal{N}^{i}, (4)

where 𝒩i\mathcal{N}^{i} is the set of agents that have ever established communication with agent ii. Based on this replacement, we further reformulate the OCP (2):

minxnii(t),unii(t)\displaystyle\min_{x_{n^{i}}^{i}(t),u_{n^{i}}^{i}(t)} C(xnii,unii)\displaystyle\ C(x_{n^{i}}^{i},u_{n^{i}}^{i})
s.t. (1),(2a),\displaystyle\eqref{dynamic-model},\eqref{initial-cons},
Si(xnii(t))ij(t),\displaystyle S^{i}(x_{n^{i}}^{i}(t))\in\mathcal{H}^{ij}(t), (5a)
Si(xnii(tnii+Tnii))ij(t),\displaystyle S^{i}(x_{n^{i}}^{i}(t_{n^{i}}^{i}+T_{n^{i}}^{i}))\in\mathcal{H}^{ij}(t^{\prime}), (5b)

where t[tnii,tnii+Tnii]t\in[t_{n^{i}}^{i},t_{n^{i}}^{i}+T_{n^{i}}^{i}] and t(tnii+Tnii,teRm]t^{\prime}\in(t_{n^{i}}^{i}+T_{n^{i}}^{i},t_{e}^{R_{m}}]. Note that the constraints (4) consider an intractably infinite time interval t[tnii,+)t\in[t_{n^{i}}^{i},+\infty). We replace it with constraints (5a) and (5b) which only consider a finite horizon, thus facilitating the application. The reason why OCP (2) with constraints (4) is equal to OCP (5) can be found in the Lemma 1 of Appendix A. In real implementation, the underlying continuous OCP will be reformulated and resolved in a discrete form, which will be stated in Section IV-A.

III-D The Overall Algorithm

Input : xi(0)x^{i}(0), xtargetix^{i}_{\text{target}}
1 𝒯raj0i={S(xi(0))×t|t[0,+)}\mathcal{T}raj_{0}^{i}=\left\{S\left(x^{i}(0)\right)\times t\ |\ t\in[0,+\infty)\right\} ;
2 while agent ii not reaching target  do
3       𝒩i\mathcal{N}^{i}\leftarrow scan communication network ;
4       send 𝒯rajni1i\mathcal{T}raj^{i}_{n^{i}-1} to agent j𝒩ij\in\mathcal{N}^{i} ;
5       for  j𝒩ij\in\mathcal{N}^{i} concurrently do
6             open receiver in a new thread ;
7             update allocation as (3) if receiving feedback ;
8             close receiver ;
9            
10      xniix^{i}_{n^{i}}\leftarrow Trajectory planning as (5) ;
11       send xniix^{i}_{n^{i}} to the lower-level controller;
12      
Algorithm 1 The Complete Algorithm

The overall planning algorithm built up by ASTA is outlined in Alg. 1. At the beginning, each agent initializes its trajectory (Line 1), where we enforce that xi(0)𝒳ei{x|u,fi(x,u)=0}x^{i}(0)\in\mathcal{X}^{i}_{e}\triangleq\left\{x\ |\ \exists u,f^{i}(x,u)=0\right\}. Afterwards, the agent scans its communication network to find all neighbors (Line 1) and then broadcasts its trajectory via communication network (Line 1). Then, for each neighbor, it opens an independent thread to wait for other agents’ feedback (Line 1). Once receiving a confirmation signal, the allocation will be updated as in equation (3). Thereafter, the receivers regarding all neighbors are closed (Line 1) and the new trajectory is planned according to OCP (5). However, in this work, the feasibility of the OCP cannot be guaranteed, which highlights an area for our future work. To tackle this, if the given OCP (5) is infeasible, the previous trajectory will be continuously adopted. Finally, the trajectory is sent to the lower-level controller, which controls the agent’s motion (Line 1). The whole loop will be carried out indefinitely until this agent reaches its target position.

III-E Algorithm Analysis

Note that there may happen potential collision between a pair of agents due to conflicts in their safety constraints, since they may adopt different versions of allocations. To avoid this, the proposed method is designed to partially update STA after a specific time tsRmt_{s}^{R_{m}} as (3). Thanks to such a design, inter-agent collision can be theoretically avoided, which is supported by the following theorem.

Theorem 1

For a pair of agents ii and jj, if i) agents ii’s and jj’s trajectories do not collide with each other when they establish their allocation, and ii) in every following replanning step, they obey their corresponding allocations, then t>tR1\forall t>t^{R_{1}}, they will not collide with each other.

Proof:

Please refer to Appendix B. ∎

Besides safety guarantee, another key point is that as the allocation is updated in a triggered way, a lower bound of updating frequency is required. Otherwise, due to the out-of-date allocation, the efficiency of trajectory planning of the swarm will be adversely affected. Therefore, we enforce that the waiting time TwiT_{w}^{i} is longer than the computation time TciT_{c}^{i} in Section III-B. Thus, the following property can be obtained.

Theorem 2

Between agents ii and jj, the lower bound of the frequency of the allocation update is

=(min{Tci,Tcj}+max{Tci+Twi,Tcj+Twj})1.\mathcal{F}=\left(\min\left\{T_{c}^{i},T_{c}^{j}\right\}+\max\left\{T_{c}^{i}+T_{w}^{i},T_{c}^{j}+T_{w}^{j}\right\}\right)^{-1}.
Proof:

Please refer to Appendix C. ∎

IV Simulations and Experiments

In this section, we first illustrate the implementation of the proposed method and then validate its performance via numerical simulations and hardware experiments.

IV-A Algorithm Implementation

This subsection demonstrates how to implement the proposed planning algorithm on digital platforms.

Due to the fact that the OCP (5) is characterized in the continuous-time manner, it requires to be reformulated as a numerical optimization problem via discretization based on a sampling time interval hih^{i}\in\mathbb{R}. Accordingly, the length of horizon KiK^{i} will be determined as Ki=TihiK^{i}=\lfloor\frac{T^{i}}{h^{i}}\rfloor. Consequently, in the nin^{i}-th replanning step, the planned state xnii(tnii+khi)x_{n^{i}}^{i}(t_{n^{i}}^{i}+kh^{i}) at time tnii+khit_{n^{i}}^{i}+kh^{i} and the control input unii(tnii+(k1)hi)u_{n^{i}}^{i}(t_{n^{i}}^{i}+(k-1)h^{i}) at time tnii+(k1)hit_{n^{i}}^{i}+(k-1)h^{i}, where k𝒦i{1,2,,Ki}k\in\mathcal{K}^{i}\triangleq\{1,2,\ldots,K^{i}\} are chosen as the optimization variables. Towards the constraints (5a) and (5b), they can be rewritten as pviTaij(tnii+khi)>bij(tnii+khi){p_{v}^{i}}^{\mathrm{T}}a^{ij}(t_{n^{i}}^{i}+kh^{i})>b^{ij}(t_{n^{i}}^{i}+kh^{i}), where k𝒦ik\in\mathcal{K}^{i}, pviVnii(tnii+khi)p_{v}^{i}\in V_{n^{i}}^{i}(t_{n^{i}}^{i}+kh^{i}), Vnii(t)V_{n^{i}}^{i}(t) is the collection of vertices of polygon regarding the planned state xnii(t+khi)x_{n^{i}}^{i}(t+kh^{i}), aij(tnii+khi)a^{ij}(t_{n^{i}}^{i}+kh^{i}) and bij(tnii+khi)b^{ij}(t_{n^{i}}^{i}+kh^{i}) represent the hyperplane obtained at time tnii+khit_{n^{i}}^{i}+kh^{i}. Other constraints can be similarly discretized at these time steps.

In terms of implementation, an agent only needs to consider its neighbors within a specified radius. This reduces the number of optimization constraints and achieves manageable computational complexity and admissible scalability. The obstacle avoidance scheme from our previous work [17] can be introduced to apply the proposed method in obstacle environments. Furthermore, in our implementation, an agent can determine the relative time difference between each other via communication. Thus, a global clock synchronization is eliminated. Lastly, we adopt the deadlock resolution scheme in [16] to prevent deadlock.

IV-B Numerical Simulations

In this subsection, the OCP discretized as in Section IV-A is formulated and resolved by acados [26]. In addition, the proposed communication mechanism is realized via Robot Operating System (ROS). All the simulation cases are run on a single computer with an Intel Core [email protected], utilizing multiple programs.

TABLE I: Agent’s information and simulation results. (Tci[s]T_{c}^{i}[{\rm s}]: calculation time. Twi[s]T_{w}^{i}[{\rm s}]: waiting time. hi[s]h^{i}[{\rm s}]: sampling time. KiK^{i}: length of horizon. Tcost[ms]T_{\text{cost}}[{\rm ms}]: maximum/average replanning runtime. L[m]L[{\rm m}]: transition length. Tt[s]T_{t}[{\rm s}]: moving time.)
Index Model TciT_{c}^{i} TwiT_{w}^{i} hih^{i} KiK^{i} TcostT_{\text{cost}} LL TtT_{t}
1 Bicycle 0.07 0.09 0.15 20 23/11 4.2 4.5
2 Double. 0.12 0.14 0.15 20 17/9 4.4 8.8
3 Unicycle 0.16 0.21 0.15 20 19/11 4.4 7.7
4 Double. 0.10 0.17 0.15 20 19/10 4.3 7.4
5 Bicycle 0.08 0.10 0.15 20 22/11 4.3 6.0
6 Double. 0.10 0.14 0.15 20 17/9 4.8 7.3
7 Unicycle 0.12 0.16 0.15 20 26/13 4.4 7.7
8 Unicycle 0.16 0.18 0.15 20 19/10 4.6 8.9

The first simulation example is that 88 agents navigate to their antipodal position in a circle with a diameter of 4.04.0m. The detailed information about the underlying agents and the simulation results are listed in Table I. Their diameters are uniformly set as 0.40.4m, but their maximum speeds range from 0.6m/s0.6{\rm m/s} to 1.0m/s1.0{\rm m/s}. In this simulation, as elaborated in Section II-A, agents with different dynamic models are considered. The agents’ trajectories and inter-agent distance are depicted in Fig. 4, from which it can be observed that the minimum inter-agent distance is around 0.50.5m, larger than the safety distance 0.4m0.4\rm{m}. It can be seen that safety is guaranteed during the simulation. This task is finished within 8.98.9s and the maximum transition length is 4.84.8m as shown in Table I.

Three more complicated scenarios are further simulated. In the first scenario of Fig. 5, we consider a system composed of 1616 agents, confirming its effectiveness in handling large-scale systems. In its second scenario, 88 UGVs with bicycle model exchange their lateral positions concurrently, which simulates complicated lane changes in urban road traffic. The result indicates a relatively smooth and fast position exchange, which further exhibits the practicability of our method in real traffic management. To further evaluate the proposed method in an obstacle environment, we conducted a simulation as shown in Fig. 6. The result indicates that the method can be extended to handle asynchronous trajectory planning in obstacle scenarios while ensuring safety.

Refer to caption
Refer to caption
Figure 4: Left: The trajectories of the underlying agents. Right: The inter-agent distance.
Refer to caption
Refer to caption
Figure 5: Top: The simulation of 1616 agents exchanging their positions. Bottom: The simulation of 88 agents changing lanes.
Refer to caption
Figure 6: The simulation of 8 agents exchanging their positions in obstacle environment.
Refer to caption
Figure 7: The results of motion planning. Top-Left: Ego-swarm [4]. Top-Middle: IMPC-DR [16]. Top-Right: DMPC [8]. Bottom-Left: LSC [13]. Bottom-Middle: MADER [5]. Bottom-Right: Proposed method.
TABLE II: Comparisons. (Dis{\rm Dis}: distribution mode. Tt[s]T_{t}[{\rm s}]: moving time. Tcost[ms]T_{\text{cost}}[{\rm ms}]: replanning runtime. L[m]L[{\rm m}]: transition length. Result Representation: min/max value in the swarm.)
Method Dis. TtT_{t} TcostT_{\text{cost}} LL
Ego [4] Seq. 10.0 / 11.6 3 / 11 8.33 / 8.80
IMPC-DR [16] Syn. 9.5 / 10.1 95 / 130 8.57 / 8.79
DMPC [8] Syn. 9.4 / 10.6 51 / 90 8.43 / 8.89
LSC [13] Syn. 11.1 / 12.6 15 / 46 9.11 / 9.73
MADER [5] Asyn. 11.5 / 14.5 24 / 38 9.70 / 11.7
Ours Asyn. 9.0 / 9.6 8 / 21 8.24 / 8.34

Then, we compare the proposed ASTA with five state-of-the-art methods [4, 16, 8, 13, 5]. The dynamic models of the underlying robots are uniformly determined as double-integrators with maximum velocity and acceleration set as 1.0m/s1.0{\rm m/s} and 1.5m/s21.5{\rm m/s^{2}}, respectively. Furthermore, they uniformly have a planning horizon as 2.3s2.3{\rm s}. In this scenario, eight agents need to navigate to their antipodal positions without inter-agent collision. The results are depicted in Fig. 7 and provided in Table II. Executed in a sequential (Seq.) way, the Ego-swarm [4] outperforms other methods in computing time and has a considerably good transition time and distance. The LSC [13], IMPC-DR [16] and DMPC [8] all adopt synchronously (Syn.) concurrent replanning. All of them can complete this task effectively, but with a relatively longer transition distance compared to Ego-Swarm. In addition, replanning in an asynchronous (Asyn.) way, MADER in [5] has a relatively worse performance in this crowded scenario. This may be due to its check-recheck scheme, which results in more conservative trajectories. In contrast, our method provides quicker and shorter transitions in addition to a relatively lower computational cost. In summary, with additional capability to deal with the task in an asynchronous way, the proposed method not only outperforms its asynchronous counterpart in [5], but also performs better than the others in [4, 16, 8, 13].

IV-C Hardware Experiments

Refer to caption
Refer to caption
Figure 8: Top: The objects of hardware experiments. Five kinds of UGV are: 1) omni-directional car, 2) tank, 3) Mecanum car, 4) unicycle car, and 5) Ackermann car. Bottom: The system architecture of hardware experiments.

In this subsection, we verify the effectiveness of our method via hardware experiments. In these experiments, 88 UGVs of 55 different hardware models are involved as shown in Fig. 8. Their dynamic models include unicycles, double integrators, and kinematic bicycles. The radii of these agents range from 0.150.15m to 0.260.26m, and their maximum velocities vary from 0.5m/s0.5{\rm m/s} to 1.0m/s1.0{\rm m/s}. The architecture of this multi-robot system is depicted in Fig. 8. The agents’ positions are obtained via the indoor motion capture system OptiTrack and transmitted to other agents via WiFi and the ROS-based communication system. The MPC-based trajectory tracker is utilized to track the planned trajectory whose results are sent to the actuator controller. The computation of the trajectory planner, the MPC tracker and the actuator controller is accomplished by a Raspberry Pi 4B onboard computer. To address the communication delays in experiments, we implemented a feedforward compensation mechanism to mitigate their impact.

The first scenario named “crossing” lets eight UGVs cross in a 3.6m×4.2m3.6{\rm m}\times 4.2{\rm m} rectangle ground. Since the maximum radius of the underlying agents reaches up to 0.260.26m, this testing ground is thus crowded. The actual moving snapshot is provided in Fig. 1, where these agents can finish this navigation without any inter-agent collision. Furthermore, the average speed of all UGVs can reach up to 80%80\% of their corresponding maximum velocities, which demonstrates a considerably high agility.

Refer to caption
Figure 9: A snapshot of the experiment of un-signalized intersection.

The second scenario is utilized to show the scalability of our method when an agent encounters new neighbors at an un-signalized intersection. Six agents carry on reciprocating motion in a specific area. After tens of seconds, the other two Ackermann UGVs launch their trajectory planning procedures and set up communication with others. Then, these two agents are sent to pass through this area. The result is illustrated in Fig. 9. Two Ackermann UGVs only take less than 55s to finish this task, which means that their average speeds can reach up to almost 0.95m/s0.95{\rm m/s}, i.e., 95%95\% of the maximum velocity. For more information about those experiments, please refer to the supplementary video.

V Conclusion

This work has proposed a novel distributed asynchronous trajectory planning method called Asynchronous Spatial-Temporal Allocation for multi-agent systems with heterogeneous constrained dynamics. Theoretical analysis, numerical simulations and hardware experiments all validate its effectiveness and performance. Future work will extend the proposed method to address scenarios involving communication delays or malicious neighbors.

Appendix A The Equivalence of Optimization Problems

Lemma 1

OCP (2) with constraints (4) is equal to OCP (5).

Proof:

To begin with, we will prove that a trajectory satisfying constraints (5a) and (5b) can also satisfy constraints (4). For t[tnii,tnii+Tnii]t\in[t_{n^{i}}^{i},t_{n^{i}}^{i}+T_{n^{i}}^{i}], if we have Si(xnii(t))ij(t)S^{i}(x_{n^{i}}^{i}(t))\in\mathcal{H}^{ij}(t), i.e., equation (5a), then we can get that

𝒯rajnii(tnii,tnii+Tnii)𝔸mij(tnii,tnii+Tnii).\mathcal{T}raj_{n^{i}}^{i}(t_{n^{i}}^{i},t_{n^{i}}^{i}+T_{n^{i}}^{i})\subset\mathbb{A}_{m}^{ij}(t_{n^{i}}^{i},t_{n^{i}}^{i}+T_{n^{i}}^{i}). (6)

If teRm=tnii+Tniit_{e}^{R_{m}}=t_{n^{i}}^{i}+T_{n^{i}}^{i}, for t>tnii+Tniit>t_{n^{i}}^{i}+T_{n^{i}}^{i}, xnii(t)=xnii(tnii+Tnii)x_{n^{i}}^{i}(t)=x_{n^{i}}^{i}{(t_{n^{i}}^{i}+T_{n^{i}}^{i})} and ji(t)=ji(teRm)=ji(tnii+Tnii)\mathcal{H}^{ji}(t)=\mathcal{H}^{ji}(t_{e}^{R_{m}})={\mathcal{H}^{ji}(t_{n^{i}}^{i}+T_{n^{i}}^{i})} hold, then Si(xnii(t))ij(t)S^{i}(x_{n^{i}}^{i}(t))\in\mathcal{H}^{ij}(t) also holds, since Si(xnii(tnii+Tnii))ij(tnii+Tnii){S^{i}(x_{n^{i}}^{i}(t_{n^{i}}^{i}+T_{n^{i}}^{i}))}\in\mathcal{H}^{ij}(t_{n^{i}}^{i}+T_{n^{i}}^{i}). Combined with (6), we can obtain that

𝒯rajnii(tnii,+)𝔸mij(tnii,+)\mathcal{T}raj_{n^{i}}^{i}(t_{n^{i}}^{i},+\infty)\subset\mathbb{A}_{m}^{ij}(t_{n^{i}}^{i},+\infty) (7)

which is equal to 𝒯rajnii𝔸mij\mathcal{T}raj_{n^{i}}^{i}\subset\mathbb{A}_{m}^{ij}.

Otherwise, we will consider the situation that teRm>tnii+Tniit_{e}^{R_{m}}>t_{n^{i}}^{i}+T_{n^{i}}^{i}. Case 1): For t>teRmt>t_{e}^{R_{m}}, xnii(t)=xnii(teRm)x_{n^{i}}^{i}(t)=x_{n^{i}}^{i}(t_{e}^{R_{m}}) and ji(t)=ji(teRm)\mathcal{H}^{ji}(t)=\mathcal{H}^{ji}(t_{e}^{R_{m}}) hold. Then, Si(xnii(t))ij(t)S^{i}(x_{n^{i}}^{i}(t))\in{\mathcal{H}^{ij}(t)} exists since Si(xnii(t))=Si(xnii(tnii+Tnii))ij(t)=ij(tnii+Tnii)S^{i}(x_{n^{i}}^{i}(t))=S^{i}(x_{n^{i}}^{i}(t_{n^{i}}^{i}+T_{n^{i}}^{i}))\in\mathcal{H}^{ij}(t)={\mathcal{H}^{ij}(t_{n^{i}}^{i}+T_{n^{i}}^{i})}. Case 2): For t(tnii+Tnii,teRm]{t\in(t_{n^{i}}^{i}+T_{n^{i}}^{i},t_{e}^{R_{m}}]}, we have enforced that Si(xnii(t))=Si(xnii(tnii+Tnii))ij(t)S^{i}(x_{n^{i}}^{i}(t))=S^{i}(x_{n^{i}}^{i}(t_{n^{i}}^{i}+T_{n^{i}}^{i}))\in\mathcal{H}^{ij}(t) in (5b). Combining with (6), we can also obtain (7). To sum up, a trajectory satisfying constraints (5a) and (5b) also satisfies constraints (4).

Next we intend to prove that a trajectory satisfying constraints (4) can also satisfy constraints (5a) and (5b). At first, given condition that 𝒯rajnii𝔸mij\mathcal{T}raj_{n^{i}}^{i}\subset\mathbb{A}_{m}^{ij}, it is clear that equation (6) holds which means constraints (5a) are satisfied. For t>tnii+Tniit>t_{n^{i}}^{i}+T_{n^{i}}^{i}, we have xnii(t)=xnii(tnii+Tnii)x_{n^{i}}^{i}(t)=x_{n^{i}}^{i}(t_{n^{i}}^{i}+T_{n^{i}}^{i}) such that xnii(t)ij(t)x_{n^{i}}^{i}(t)\in\mathcal{H}^{ij}(t) can induce that xnii(tnii+Tnii)ij(t)x_{n^{i}}^{i}(t_{n^{i}}^{i}+T_{n^{i}}^{i})\in\mathcal{H}^{ij}(t) holds for t>tnii+Tniit>t_{n^{i}}^{i}+T_{n^{i}}^{i}. This can further imply constraints (5b). As a result, the proof is completed. ∎

Appendix B Proof of Theorem 1

The actual trajectory for agent ii during [tsRm,tsRm+1)[t_{s}^{R_{m}},t_{s}^{R_{m+1}}) can be written as

𝒯raji(tsRm,tsRm+1)=ni𝒯rajni(ta,tb),\mathcal{T}raj^{i}(t_{s}^{R_{m}},t_{s}^{R_{m+1}})=\bigcup_{n\in\mathcal{M}^{i}}\ \mathcal{T}raj_{n}^{i}(t_{a},t_{b}), (8)

where ta=max{tni,tsRm}t_{a}=\max\left\{t_{n}^{i},t_{s}^{R_{m}}\right\}, tb=min{tn+1i,tsRm+1}t_{b}=\min\left\{t_{n+1}^{i},t_{s}^{R_{m+1}}\right\}, and

i\displaystyle\mathcal{M}^{i}\triangleq {n|tni[tsRm,tsRm+1)}\displaystyle\left\{n\ |\ t_{n}^{i}\in[t_{s}^{R_{m}},t_{s}^{R_{m+1}})\right\} (9)
{n|tn+1itsRm,tni<tsRm}.\displaystyle\cup\left\{n\ |\ t_{n+1}^{i}\geq t_{s}^{R_{m}},\ \ t_{n}^{i}<t_{s}^{R_{m}}\right\}.

i\mathcal{M}^{i} represents the set of all the indices of the replanning steps whose trajectories are executed during [tsRm,tsRm+1)[t_{s}^{R_{m}},t_{s}^{R_{m+1}}).

Considering that agents ii and jj obey their corresponding STA, we have 𝒯rajnii𝔸mij\mathcal{T}raj_{n^{i}}^{i}\subset\mathbb{A}_{m}^{ij} and 𝒯rajnjj𝔸mji\mathcal{T}raj_{n^{j}}^{j}\subset\mathbb{A}_{m}^{ji}, where niin^{i}\in\mathcal{M}^{i} and njjn^{j}\in\mathcal{M}^{j}. According to Definition 2, we have 𝒯rajnii𝒯rajnjj=\mathcal{T}raj_{n^{i}}^{i}\cap\mathcal{T}raj_{n^{j}}^{j}=\emptyset and the following equation:

𝒯rajnii(tai,tbi)𝒯rajnjj(taj,tbj)=,\mathcal{T}raj_{n^{i}}^{i}(t_{a}^{i},t_{b}^{i})\cap\mathcal{T}raj_{n^{j}}^{j}(t_{a}^{j},t_{b}^{j})=\emptyset,

where tai=max{tnii,tsRm}t_{a}^{i}=\max\left\{t_{n^{i}}^{i},t_{s}^{R_{m}}\right\}, tbi=min{tni+1i,tsRm+1}t_{b}^{i}=\min\left\{t_{n^{i}+1}^{i},t_{s}^{R_{m+1}}\right\}, and similar notations are used for agent jj. Incorporated with (8), the above equation can be converted into

𝒯raji(tsRm,tsRm+1)𝒯rajj(tsRm,tsRm+1)=.\mathcal{T}raj^{i}(t_{s}^{R_{m}},t_{s}^{R_{m+1}})\cap\mathcal{T}raj^{j}(t_{s}^{R_{m}},t_{s}^{R_{m+1}})=\emptyset.

This proves that the actual trajectories of agents ii and jj during time interval [tsRm,tsRm+1)[t_{s}^{R_{m}},t_{s}^{R_{m+1}}) have no overlap. Moreover, this property holds for m=1,2,,+m=1,2,\ldots,+\infty, which means that the inter-agent collision can be avoided after tsR1t_{s}^{R_{1}}.

Then, we discuss the time interval [tR1,tsR1][t^{R_{1}},t_{s}^{R_{1}}]. Note that no matter how STA is updated, STA in this interval is fixed as 𝔸mij(tR1,tsR1)=1ij(tR1,tsR1)\mathbb{A}_{m}^{ij}(t^{R_{1}},t_{s}^{R_{1}})=\mathcal{R}_{1}^{ij}(t^{R_{1}},t_{s}^{R_{1}}) (m=1,2,m=1,2,\ldots). Thus, for agents ii and jj, any of their planned trajectories satisfies 1ij(tR1,tsR1)\mathcal{R}_{1}^{ij}(t^{R_{1}},t_{s}^{R_{1}}) and 1ji(tR1,tsR1)\mathcal{R}_{1}^{ji}(t^{R_{1}},t_{s}^{R_{1}}), respectively, thus is collision-free. In particular, they are collision-free inherently when reaching their first renewal, because of the precondition. Therefore, in a similar way as above we can prove that 𝒯raji(tR1,tsR1)𝒯rajj(tR1,tsR1)=\mathcal{T}raj^{i}(t^{R_{1}},t_{s}^{R_{1}})\cap\mathcal{T}raj^{j}(t^{R_{1}},t_{s}^{R_{1}})=\emptyset. Then, the proof is completed.

Refer to caption
Figure 10: In this figure, we illustrate all the possible cases of two consecutive allocation update which is dedicated for the proof of Theorem 2. For brevity, we rewrite calculation time as TciT_{c}^{i} and waiting time as TwiT_{w}^{i}.

Appendix C Proof of Theorem 2

We list all the possible situations in Fig. 10 to investigate the time interval δ\delta between two adjacent updates. Without loss of generality, assume that the first renewal is reached after agent ii finishes its calculation. Accordingly, t1t_{1} is defined as the time interval between their first renewal and the ending time of agent jj’s first waiting time. Since the situations enumerated in Fig. 10 all have the exact expression of time interval δ\delta except for cases (c) and (f), we will pay special attention to these two scenarios.

Regarding case (c), since the assumption Twi>TcjT_{w}^{i}>T_{c}^{j} in Section III-B, it can be easily verified that this case cannot exist. Towards case (f), since Twj>Tcj>Twi>TciT_{w}^{j}>T_{c}^{j}>T_{w}^{i}>T_{c}^{i}, it can be verified that δ<Tcj+Twj+Tci\delta<T_{c}^{j}+T_{w}^{j}+T_{c}^{i}.

After analyzing all the situations, it is clear that δmax{Tci+Twi,Tcj+Twj}+min{Tci,Tcj}\delta\leq\max\left\{T_{c}^{i}+T_{w}^{i},T_{c}^{j}+T_{w}^{j}\right\}+\min\left\{T_{c}^{i},T_{c}^{j}\right\} holds and the lower bound of the updating frequency can be easily obtained.

References

  • [1] Z. Liu, M. Guo, W. Bao, and Z. Li, “Fast and adaptive multi-agent planning under collaborative temporal logic tasks via poset products,” Research, vol. 7, p. Article 0337, 2024.
  • [2] W. Hönig, J. A. Preiss, T. K. S. Kumar, G. S. Sukhatme, and N. Ayanian, “Trajectory planning for quadrotor swarms,” IEEE Transactions on Robotics, vol. 34, no. 4, pp. 856–869, 2018.
  • [3] B. Li, Y. Ouyang, Y. Zhang, T. Acarman, Q. Kong, and Z. Shao, “Optimal cooperative maneuver planning for multiple nonholonomic robots in a tiny environment via adaptive-scaling constrained optimization,” IEEE Robotics and Automation Letters, vol. 6, no. 2, pp. 1511–1518, 2021.
  • [4] X. Zhou, X. Wen, Z. Wang, Y. Gao, H. Li, Q. Wang, T. Yang, H. Lu, Y. Cao, C. Xu, and F. Gao, “Swarm of micro flying robots in the wild,” Science Robotics, vol. 7, no. 66, p. eabm5954, 2022.
  • [5] J. Tordesillas and J. P. How, “Mader: Trajectory planner in multiagent and dynamic environments,” IEEE Transactions on Robotics, vol. 38, no. 1, pp. 463–476, 2021.
  • [6] F. Rey, Z. Pan, A. Hauswirth, and J. Lygeros, “Fully decentralized admm for coordination and collision avoidance,” in 2018 European Control Conference (ECC).   IEEE, 2018, pp. 825–830.
  • [7] A. Richards and J. How, “Decentralized model predictive control of cooperating uavs,” in 2004 IEEE Conference on Decision and Control (CDC), vol. 4.   IEEE, 2004, pp. 4286–4291.
  • [8] C. E. Luis and A. P. Schoellig, “Trajectory generation for multiagent point-to-point transitions via distributed model predictive control,” IEEE Robotics and Automation Letters, vol. 4, no. 2, pp. 375–382, 2019.
  • [9] B. Şenbaşlar and G. S. Sukhatme, “Asynchronous real-time decentralized multi-robot trajectory planning,” in 2022 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).   IEEE, 2022, pp. 9972–9979.
  • [10] Y. Chen, M. Cutler, and J. P. How, “Decoupled multiagent path planning via incremental sequential convex programming,” in 2015 IEEE International Conference on Robotics and Automation (ICRA).   IEEE, 2015, pp. 5954–5961.
  • [11] D. Morgan, G. P. Subramanian, S.-J. Chung, and F. Y. Hadaegh, “Swarm assignment and trajectory optimization using variable-swarm, distributed auction assignment and sequential convex programming,” International Journal of Robotics Research, vol. 35, no. 10, pp. 1261–1285, 2016.
  • [12] M. Čáp, P. Novák, A. Kleiner, and M. Selecký, “Prioritized planning algorithms for trajectory coordination of multiple mobile robots,” IEEE Transactions on Automation Science and Engineering, vol. 12, no. 3, pp. 835–849, 2015.
  • [13] J. Park, D. Kim, G. C. Kim, D. Oh, and H. J. Kim, “Online distributed trajectory planning for quadrotor swarm with feasibility guarantee using linear safe corridor,” IEEE Robotics and Automation Letters, vol. 7, no. 2, pp. 4869–4876, 2022.
  • [14] C. Toumieh and A. Lambert, “Decentralized multi-agent planning using model predictive control and time-aware safe corridors,” IEEE Robotics and Automation Letters, vol. 7, no. 4, pp. 11 110–11 117, 2022.
  • [15] R. Firoozi, L. Ferranti, X. Zhang, S. Nejadnik, and F. Borrelli, “A distributed multi-robot coordination algorithm for navigation in tight environments,” arXiv preprint arXiv:2006.11492, 2020.
  • [16] Y. Chen, M. Guo, and Z. Li, “Deadlock resolution and recursive feasibility in mpc-based multi-robot trajectory generation,” IEEE Transasctions on Automatic Control, in press, 2024.
  • [17] Y. Chen, C. Wang, M. Guo, and Z. Li, “Multi-robot trajectory planning with feasibility guarantee and deadlock resolution: An obstacle-dense environment,” IEEE Robotics and Automation Letters, vol. 8, no. 4, pp. 2197–2204, 2023.
  • [18] J. Alonso-Mora, P. Beardsley, and R. Siegwart, “Cooperative collision avoidance for nonholonomic robots,” IEEE Transactions on Robotics, vol. 34, no. 2, pp. 404–420, 2018.
  • [19] J. Van Den Berg, S. J. Guy, M. Lin, and D. Manocha, “Reciprocal n-body collision avoidance,” in Robotics Research: The 14th International Symposium ISRR.   Springer, 2011, pp. 3–19.
  • [20] K. Kondo, J. Tordesillas, R. Figueroa, J. Rached, J. Merkel, P. C. Lusk, and J. P. How, “Robust mader: Decentralized and asynchronous multiagent trajectory planner robust to communication delay,” in 2023 IEEE International Conference on Robotics and Automation (ICRA).   IEEE, 2023, pp. 1687–1693.
  • [21] C. Ma, Z. Han, T. Zhang, J. Wang, L. Xu, C. Li, C. Xu, and F. Gao, “Decentralized planning for car-like robotic swarm in cluttered environments,” in 2023 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).   IEEE, 2023, pp. 9293–9300.
  • [22] D. Zhou, Z. Wang, S. Bandyopadhyay, and M. Schwager, “Fast, on-line collision avoidance for dynamic vehicles using buffered Voronoi cells,” IEEE Robotics and Automation Letters, vol. 2, no. 2, pp. 1047–1054, 2017.
  • [23] L. Ferranti, L. Lyons, R. R. Negenborn, T. Keviczky, and J. Alonso-Mora, “Distributed nonlinear trajectory optimization for multi-robot motion planning,” IEEE Transactions on Control Systems Technology, vol. 31, no. 2, pp. 809–824, 2023.
  • [24] S. Boyd, S. P. Boyd, and L. Vandenberghe, Convex optimization.   Cambridge university press, 2004.
  • [25] E. G. Gilbert, D. W. Johnson, and S. S. Keerthi, “A fast procedure for computing the distance between complex objects in three-dimensional space,” IEEE Journal on Robotics and Automation, vol. 4, no. 2, pp. 193–203, 1988.
  • [26] R. Verschueren, G. Frison, D. Kouzoupis, J. Frey, N. v. Duijkeren, A. Zanelli, B. Novoselnik, T. Albin, R. Quirynen, and M. Diehl, “acados—a modular open-source framework for fast embedded optimal control,” Mathematical Programming Computation, vol. 14, no. 1, pp. 147–183, 2022.