# An Artificial Plant Community Algorithm for Collision-Free Multi-Robot Aggregation
## 4 The Collision-Free Multi-Robot Aggregation Problem
### Problem Definition
 \tag{5}\]  
Thus, the processing energy consumption \(e_{Ta}^{proc}\) of \(T_{a}\) can be obtained as follows:  
\[e_{Ta}^{proc}=\sum_{OTaj=1}^{OTmax}e_{OTaj}^{proc};\ \forall T_{a}\in[1,T_{max}] \tag{6}\]  
Then, the processing energy consumption \(e_{T}^{proc}\) of \(T\) can be described as follows:  
\[e_{T}^{proc}=\sum_{Ta}^{Tmax}e_{Ta}^{proc};\ \forall T_{a}\in[1,T_{max}] \tag{7}\]  
Considering the travel power \(p_{T_{a},Tb}^{travel}\) from \(T_{a}\) to \(T_{b}\), the travel energy consumption \(e_{Ta,Tb}^{travel}\) can be calculated as follows:  
\[e_{Ta,Tb}^{travel}=p_{T_{a},Tb}^{travel}\Big{(}k_{Ri,Tb}^{start}-k_{Ri,Ta}^{ end}\big{)};\forall T_{a}\in[1,T_{max}];\forall R_{i}\in[1,R_{max}]; \tag{8}\]  
Then, the travel energy consumption \(e_{T}^{travel}\) of \(T\) is  
\[e_{T}^{travel}=\sum_{T0}^{Tmax}e_{Ta,Tb}^{travel};\ \forall T_{a},T_{b}\in[1,T_{ max}] \tag{9}\]According to the processing energy consumption \(e_{T}^{proc}\) of \(T\) in Equation (7) and the travel energy consumption \(e_{T}^{travel}\) of \(T\) in Equation (9), the total energy consumption \(e_{T}^{total}\) of \(T\) can be calculated as follows:  
\[e_{T}^{total}=e_{T}^{proc}+e_{T}^{travel} \tag{10}\]  
The fourth objective is the total travel distance \(D_{T}^{travel}\) of \(T\), which can be calculated using the travel distance \(D_{Ta,Tb}^{travel}\) from \(T_{a}\) to \(T_{b}\); that is,  
\[D_{T}^{travel}=\sum_{T0}^{Tmax}D_{Ta,Tb}^{travel},\,\forall T_{a},T_{b}\in[1,T_{ max}] \tag{11}\]  
Then, the collision-free multi-robot aggregation problem can be described as a four-objective function, considering the maximum completion time (makespan) \(k_{T}^{make}\) in Equation (3), the collision time \(k_{T}^{coll}\) in Equation (4), the total energy consumption \(e_{T}^{total}\) in Equation (10), and the total travel distance \(D_{T}^{travel}\) in Equation (11):  
\[Obj=\left\{\min(k_{T}^{make}),\min\left(k_{T}^{coll}\right),\,\min\left(e_{T} ^{total}\right),\,\min\left(D_{T}^{travel}\right)\right\} \tag{12}\]  
To address the collision-free multi-robot aggregation problem, we need to arrange the aggregation plan of robots to complete all tasks subject to a series of constraints. Whenever a new task is assigned, the robots executing the assigned task form an undirected graph \(G\left(T,\,E\right)\). A complex task can be divided into a series of sub-tasks \(T=\left\{T_{0},\,\,T_{1},\cdots,T_{Tmax}\right\}\), enabling each idle robot to aggregate without collision. As each vertex \(T_{a}\in T\) is a task, it is associated with three factors: the detection/arrival time \(k_{Ta}(0)\), the inherent increment rate \(c_{Ta}\), and the initial demand \(d_{Ta}(0)\). Then, a set of constraints can be obtained. The first constraint is that a task is unknown by the REI system until it is detected. The emergent demand \(d_{Ta}(k)\) of the candidate tasks can be detected by the robotic edge intelligence architecture. The detected demand \(d_{Ta}(k)\) of \(T_{a}\) accumulated at time \(k\) can be obtained as follows:  
\[d_{Ta}(k)=d_{Ta}(0)+c_{Ta}\times(k-k_{Ta}(0))\geq d_{Ta}(0) \tag{13}\]  
Each edge \(E_{ab}=(T_{a},T_{b})\in E\) is associated with a travel time \(k_{Ta,Tb}^{travel}\) from \(T_{a}\) to \(T_{b}\). We have  
\[k_{Ta,Tb}^{travel}(k)=k_{Ri,Tb}^{end}-k_{Ri,Ta}^{start} \tag{14}\]  
where \(k_{Ri,Tb}^{end}\) represents the completion time of \(T_{b}\). The second constraint is that a task cannot be executed before it is detected. Therefore,  
\[k_{Ri,Tb}^{start}\geq k_{Tb}(0);\forall T_{b}\in[1,T_{max}];\forall R_{i}\in[ 1,R_{max}] \tag{15}\]  
where \(k_{Ri,Tb}^{start}\) is the start time of \(R_{i}\) at \(T_{b}\).