Next Article in Journal
Bearing-Based Distributed Formation Control of Unmanned Aerial Vehicle Swarm by Quaternion-Based Attitude Synchronization in Three-Dimensional Space
Previous Article in Journal
Factors Associated with the Adoption of Drones for Product Delivery in the Context of the COVID-19 Pandemic in Medellín, Colombia
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Distributed Task Allocation for a Multi-UAV System with Time Window Constraints

1
School of Automation Science and Engineering, Faculty of Electronic and Information Engineering, Xi’an Jiaotong University, Xi’an 710049, China
2
State Key Laboratory for Manufacturing Systems Engineering, Xi’an Jiaotong University, Xi’an 710049, China
*
Author to whom correspondence should be addressed.
Drones 2022, 6(9), 226; https://doi.org/10.3390/drones6090226
Submission received: 6 August 2022 / Revised: 27 August 2022 / Accepted: 28 August 2022 / Published: 30 August 2022

Abstract

:
This paper develops a distributed method, namely, distributed allocation with time windows (DATW) for managing the multi-UAV task assignment problem (MTAP) with complex time window constraints. By aiming directly to minimize the average task completion time, the pro-posed DATW intends to achieve a conflict-free result that allocates all tasks within the validity time windows. Based on the decentralized PI (Performance Impact) framework, the proposed algorithm addresses the MTAP in a three-phase task assignment strategy, which includes task inclusion, conflict resolution, and task reallocation. The newly introduced task allocation phase achieves a noteworthy increase in an average number of allocated tasks. Unlike the traditional PI methods, the start time of each task is broadcasted among agents via communication typology, and the significance value of each task is directly related to its validity time window, such that the vast majority of tasks are able to be assigned properly without imposing any extra communication burdens. In the obtained conflict-free allocation solution by DATW, each task is allocated to a proper UAV with all given constraints satisfied. Finally, the simulation results demonstrate the effectiveness and superiority of the proposed DATW. Compared with existing (CBBA-based) solutions, results show up to an 18% increase in success rate (SR) using the proposed method.

1. Introduction

Currently, multiagent systems (e.g., unmanned aerial vehicle systems) have drawn increasing attention from researchers worldwide [1,2,3,4,5,6]. In comparison to a single agent, multiagent systems can achieve more complicated mission objectives and increase execution efficiency through cooperation. In this paper, we focus on the application of UAVs in multiagent systems due to the advantages of high flexibility, easy assembly, and low-cost consumption [7,8]. In particular, UAVs have been widely used in a variety of industries, including search and rescue, military reconnaissance, and traffic transportation. To date, there is a growing consensus that the multi-UAV task assignment problem (MTAP) has become one of the most challenging problems of multiagent systems.
In general, the MTAP is a combinatorial optimization problem with complex constraints that aims to coordinate a group of UAVs to accomplish various tasks while optimizing some given overall objectives [9]. Moreover, the MATP is proven to be a nondeterministic polynomial hard (NP-hard) problem [10], and as a result, the scale of the problem has a direct impact on the complexity of the solving process.
Early studies of the MATP focused on centralized approaches, where each UAV communicates situational awareness (SA) to a centralized server that generates a collaborative plan for the entire UAV swarm. Initially, the problem is modeled as mixed-integer linear programming (MILP) [11], which includes multiple processor resource allocation (MPRA) [12], the multiple traveling salesman problem (MTSP) [13], and the vehicle routing problem (VRP) [14]. By embedding complicated constraints into the models, the MILP algorithms have advantages in describing the mission; however, the tree search method and exhaustive enumerations in MILP have resulted in an explosion in the computational demands for large-scale systems. Then, some heuristic algorithms [15,16,17,18], namely, swarm intelligence algorithms (SIAs), are proposed by searching a certain range of solution space in an acceptable time to obtain feasible solutions for MATP. Common heuristic methods include the genetic algorithm (GA) [15], ant colony algorithm [16], particle swarm optimization algorithm [17], wolf swarm algorithm [18], etc. Although these SIAs have a relatively straightforward structure, their stability is weak and a single point of failure can bring down the entire system [19].
Recently, some distributed allocation methods have been proposed, which are flexible and robust, consuming less communication and computational resources than centralized approaches. Most of these distributed approaches (e.g., contract network protocol) [20,21,22,23] are developed on the basis of market auction mechanisms. The UAVs place bids on tasks, and the highest bid wins the assignment. Choi et al., in [24], proposed the classical consensus-based bundle algorithm (CBBA) and introduced a consensus procedure to achieve agreement on the winning bid values through a consensus routine instead of SA. A series of modifications to the classical CBBA were made in [25,26] to expand the function and application of such a method. Then, another distributed approach called performance impact (PI) was proposed by Whitbrook et al. [27] and Zhao et al. [28], which aims to directly optimize the overall objective. Such methods introduce a key concept called significance to assess each task’s contribution to the local time cost of an UAV. In comparison to CBBA, the PI method is developed on the basis of the heuristic optimization principle and can solve more time-sensitive MTAP while achieving allocation with lower time costs across tasks.
In realistic situations, the existence of various constraints and uncertainties will cause significant growth in the complexity of MATP [29]. To this end, most studies on MTAP describe this problem in terms of ideal mathematical models. For example, [30] proposes a “closed-loop CBBA” that considers the return of UAVs to the take-off base after the mission is completed, but ignores existing constraints during the allocation. Ponda et al., in [26], proposed an extension algorithm of CBBA to handle MTAP with time window constraints and vehicle fuel cost constraints; however, the allocated tasks in results notably decrease when time window constraints between tasks are more complex. In addition, PI-MaxAss was proposed as an extension of PI by Turner et al. [31], which aims to maximize the number of task allocations under strict time constraints. This article discusses task deadlines under a search and rescue scenario, while the time window constraints between tasks are ignored.
In this paper, common constraints such as time windows and UAV capabilities are combined to build a complex MTAP model. We propose an algorithm, namely, distributed allocation with time windows (DATW), which aims to achieve conflict-free allocation with a minimum average task completion time. The proposed DATW embeds time window constraints into the PI-based framework and iterates between three phases: the task inclusion phase, conflict resolution phase, and task reallocation phase. The first phase selects the optimal task within validity time windows for each UAV. The second reaches a consensus based on the significance value over all UAVs. The last allocates the tasks that remain unassigned after the former two phases due to time window constraints. Note that the time window constraints in this paper are “hard constraints”, i.e., each task must start within its time window constraints; otherwise, the task is not allowed to be assigned. The key contributions of this paper are summarized as follows:
  • The time window constraints are first embedded into the PI-based framework. That is, the significance value of each task is directly related to its validity time window. In the obtained allocation, the vast majority of tasks are assigned by achieving a minimum average task completion time.
  • Compared with the PI method in [22], a new task reallocation phase that only considers the marginal significance value is proposed. The number of allocated tasks is effectively improved by the aid of this third phase, where simulation results show that the average rate of feasible tasks has exceeded 70%.
  • The experiments reveal that the proposed DATW assigns more tasks within validity time windows than the existing E-CCBA method in [26]. In addition, the DATW has facilitated an 18% increase in success rate when assigning all tasks for UAVs.
This paper is organized as follows. Section 2 presents the description of MTAP and depicts the mathematical model of the distributed allocation with time window constraints. Section 3 proposes the PI-based distributed method DATW to solve the studied task allocation problem. Section 4 presents numerical simulations to demonstrate the merits of DATW. Finally, Section 5 concludes the paper.

2. Problem Description

This paper studies the multi-UAV task assignment problem (MTAP) with time window constraints. Let Nt = {t1, t2, …, tm} be the set of m tasks and Nu = {u1, u2, …, un} be a set of n UAVs. A list of key symbols used hereafter is provided in Table 1. The properties of each tjNt are denoted by a tuple <loc(tj), Dj>, where loc(tj) = (xj, yj, zj) is the coordinate of the task in the 3-D spatial plane and Dj is the duration required to perform task tj. Meanwhile, an UAV uiNu is denoted by <loc(ui), vi>, where loc(ui) = (xi, yi, zi) is the initial position of ui, and vi is the flight velocity. UAVs communicate through a local communication topology denoted by a symmetric adjacency matrix G, where Gih = 1 means ui and uh are capable of communicating with each other, while Gih = 0 otherwise. We use Pi = <ti1, ti2, …, ti|Pi|> to denote an ordered sequence of tasks assigned to ui; UAV ui starts from its initial coordinate loc(ui) and performs tasks in Pi sequentially. Once UAV ui completes task tij in Pi, it immediately flies to the location of the next task tij+1. The assigned task sequences for all UAVs constitute a task allocation P = [P1, P2, …, Pn]T of MTAP under consideration.
On the basis of the above-mentioned information, the general working mechanism of the multi-UAV systems with time window is illustrated in Figure 1. Herein, the initial information board inputs all the relevant information of tasks and the underlying time window constraints which should be satisfied by all UAVs. Specifically, for each UAV ui, its reason system generates an allocation plan Pi consisted of tasks assigned to ui and their ordered sequence. Whenever a ui includes a new task, it updates the task’s time information and transmits this information to another UAV uj with Gij = 1 via communication link. This reasoning system continuously updates the allocation plan according to newly received information. Based on such a dynamic reasoning system, all UAVs work in parallel and interact with each other. Thus, one key problem of our paper is to design an effective reasoning system to achieve a conflict-free allocation by satisfying all time window constraints.
For the sake of convenience, we use the notation Φ(Pi, g) = tj to denote the fact that task tj is the g-th (g > 1) task in Pi, i.e., tj = tig. If task tk is tj’s preorder task, Φ(Pi, g−1) = tk. Then, the time parameter Tj(Pi), when ui starts to execute tj, is calculated as follows:
T j ( P i ) = { T k ( P i ) + D k + d i s ( l o c ( t k ) , l o c ( t j ) ) v i ,             g > 1 d i s ( l o c ( u i ) , l o c (   t j ) ) v i ,                                                                 g = 1
where dis(•) represents the distance between two different locations. Moreover, the completion time Fj(Pi) for task tj is calculated as follows:
F j ( P i ) = T j ( P i ) + D j
In the rest of this paper, let (Pi) = t k P i F k ( P i ) be the sum of the completion time for all tasks in Pi; herein, (Pi) is called the local time cost of UAV ui.
The practical MTAP is subject to the constraints related to UAVs and tasks:
  • Conflict-freeness: each task is only assigned to one UAV.
  • Capability constraints: each UAV can execute at most Li tasks at a time. That is,
| P i | L i   ( 1 i n )
3.
Time window constraints: each task must be started during the interval of a time window. Let Tj_start be the earliest start time of task tj, and Tj_end be the latest start time so that the validity interval for tj is given as
T j ( P i ) [ T j _ s t a r t   , T j _ e n d ]
4.
Power consumption constraints: the remaining fuel mass Fri for each UAV must be more than a threshold Δ. Let Foi be the initial fuel mass of UAV ui, and ui consumes the fuel at a nominal rate vmi, such that the power consumption constraint is given as follows
F r i = F o i v m i × ( P i )     Δ
This paper aims to find the optimal task allocation for MATP with the goals of satisfying the above-mentioned constraints and minimizing the global time cost, which is the sum of all local time costs across all UAVs. The sought MTAP can be modeled mathematically as follows:
J = m i n { i = 1 n ( P i ) }
s . t .                   i = 1 n P i = N t , P i P j = , i j
| P i | L i ,       u i N u
T j _ s t a r t T j ( P i ) T j _ e n d ,   t j P i , u i N u
F r i = F o i v m i × ( P i )     Δ ,   u i N u
where objective (6) minimizes the global time cost; (7) ensures that the allocation includes all tasks and each task is assigned to only one UAV, indicating conflict-freeness; (8) ensures that the number of tasks assigned to each UAV ui does not exceed the execution capacity Li; (9) guarantees the satisfaction of the time window constraint for all tasks; (10) ensures that each UAV satisfies the power consumption constraints.

3. Distributed Allocation with Time Window Constraints

This section proposes a heuristic method, namely, distributed allocation with time windows (DATW), for solving the MATP under consideration. The DATW algorithm is run concurrently on all UAVs that transmit information to each other via local communication. The proposed DATW algorithm consists of three phases: task inclusion, conflict resolution, and task reallocation. The first two phases are performed iteratively until an initial allocation is agreed upon by all UAVs, although some tasks may remain unassigned. Then, the last phase aims to maximize the allocation of these unassigned tasks to UAVs under the time window constraints.
Before introducing the DATW algorithm, some message or information stored on each UAV ui is defined as follows.
  • Task list:Zi = [Zi1, …, Zim]T is a vector that keeps track of which task is assigned to which UAV. The entry Zij = k if ui thinks that task tj is assigned to uk, while Zij is infinity, i.e., Zij → ∞, if ui deems tj to be unassigned;
  • Task significance list: Qi = [Qi1, …, Qim]T is a vector recording the significance values of all tasks; the concept of the significance of tasks will be given in Section 3.1. If Zij → ∞, we set Qij → ∞;
  • Task start time list: Ti = [Ti1,…, Tim]T is a vector recording the begin-execute time for each task. When Zij = k, Tij reflects the time when UAV uk starts to execute task tj. Note that if Zij → ∞, Tij → ∞;
  • Timestamp list: si = [si1, …, sin]T records the timestamp when ui obtains the latest message from each of the other UAVs. Once a message is passed, the timestamp sih is calculated as follows:
    s i h = { τ r ,                                                                 G i h = 1 m a x α : G i α = 1 s α h 1 ,       G i h   1
    where τr represents the time when ui receives the information.

3.1. Task Inclusion Phase

In the first phase, each UAV ui selects the optimal task that can minimize ui’s local time cost and inserts this task into a proper position of list Pi so that the time window constraints are satisfied. The concepts of “significance” and “marginal significance” are given to describe how tasks affect the local time cost of an UAV.
  • Significance
Consider a task tjPi; let Pitj represents the remaining task sequence after removing tj from Pi. Then, the significance value of tj with regard to ui is formulated as follows:
q i j ( P i t j ) = [ ( P i ) ( P i t j ) ] × [ T j ( P i ) T j _ s t a r t ]
By definition, qij(Pitj) is composed of two parts: (Pi) − (Pitj) and Tj(Pi) − Tj_start. The first part equals the decrease in ui’s local time cost by removing tj from Pi, directly reflecting the contribution of tj to the local time cost of ui. Meanwhile, the second is the interval between the earliest start time allowed for tj to start under the time window constraints and the time ui starts to execute tj. That is, agent ui gives preference to tasks that are performed immediately upon meeting the time window constraints. In this case, both Tj(Pi) and Fj(Pi) for task tj are further decreased, and thus, the contribution of tj to the local time cost of ui is logically decreased. Note that if tjPi, let qij(Pitj) →∞.
2.
Marginal significance
Considering a task tjPi, the local time cost of UAV ui is increased after inserting tj into Pi. Then, the marginal significance, denoted by qij*(Pitj), is required to reflect the minimum increase in ui’s local time cost by adding tj into Pi, which is formulated as follows:
q i j * ( P i t j ) = m i n k = 1 | P i | + 1 [ ( P i k t j ) ( P i ) ] × [ T j ( P i ) T j _ s t a r t ]
where Pik tj represents the task sequence after inserting tj into the kth position of Pi. Note that qij*(Pitj) → ∞ if tjPi. Moreover, if tjPi, Zij= i and Qij= qij(Pitj).
In this task inclusion phase, a task tj is allowed to be assigned to the UAV ui if the following conditions hold:
(a). Ziji and qij*(Pitj) < Qij;
(b). Let p = argqij*(Pitj); after inserting tj into the p-th position of Pi, all tasks in the sequence Piptj satisfy the underlying time window constraints;
(c). Foivmi × (Pitj) ≥ Δ.
The above condition (a) ensures that tj is unassigned to ui and requires that the marginal significance value qij*(Pitj) for tj is strictly less than its significance Qij stored on ui, such that the global time cost might be decreased by assigning tj to ui. Condition (b) guarantees the satisfaction of time window constraints after inserting tj into Pi, while condition (c) ensures the satisfaction of power consumption constraints.
Let ℘(Pi) = {tjNt | Conditions (a), (b), and (c) both hold for tj and ui} be the set of tasks that satisfy the above conditions. This phase chooses the task tk ∈ ℘(Pi) expressed in (14) and inserts it into the position p = argqik*(Pitk) of list Pi.
t k = a r g m a x t j ( P i ) ( Q i j q i j * ( P i t j ) )
The corresponding information related to task tk is updated as Zik = i, Qik = qik*(Pitk), and the start time for all tasks in Pi is recalculated.
The above task addition process is repeated until ℘(Pi) = ∅ or |Pi| = Lt, which indicates that no task can be included in Pi. Since the inclusion of new tasks may change the significance of other existing tasks in Pi, the list Qi is required to update accordingly (12) after inclusion. The whole procedure is depicted in Algorithm 1.
Algorithm 1:ui execution task adding process at iteration λ.
Initialization: Pi(λ) = Pi(λ − 1), Zi(λ) = Zi(λ − 1), Qi(λ) = Qi(λ − 1), Ti(λ) = Ti(λ − 1).
1: while |Pi| ≤ Li do
2:  For each task tjPi compute the marginal significance value qij*(Pitj);
3:  Compute ℘(Pi) ← {tjNt | Conditions a), b) and c) both hold for tj and ui};
4:  if ℘(Pi) ≠ ∅ then
5:    tk a r g m a x t j ( P i ) (Qijqij*(Pitj));
6:    p ← argqij*(Pitk);
7:    Insert task tk into p − th of Pi;
8:    Ziki;
9:    Qikqij*(Pitj);
10:   Update Ti;
11:  end if
12:  else
13:    break;
14:  end if
15: end while
16: Update Qi;

3.2. Conflict Resolution Phase

In the previous task inclusion phase, a task may be assigned to more than one UAV, as Algorithm 1 runs concurrently on all UAVs, leading to a conflict. Thus, the second phase is conducted to obtain a conflict-free allocation via local communication topology. In particular, the conflict resolution phase is composed of two stages: (i) consensus, where UAVs communicate with each other for consensus, and (ii) task removal, where UAVs determine whether to remove a task from its current task list. These two stages are repeated alternately on each UAV until the global consensus is achieved across all UAVs, i.e., Qi = Qh, ∀ui, uhNu, and uiuh.

3.2.1. Consensus Stage

To search for the smallest significance value for every task, in this stage, each UAV ui transmits the relevant information, including Zi, Qi, Ti, and si, to its neighbor UAV uj through local communications.
Suppose that UAV ui receives a message from uh where Gih = 1. It determines whether the received message is the latest for task tj based on lists Zi and si, and then, three possible actions are taken on task tj:
  • Update: Zij = Zhj, Qij = Qhj, Tij = Thj;
  • leave: Zij = Zij, Qij = Qij, Tij = Thj;
  • reset: Zij → ∞, Qij → ∞, Tij → ∞.
Specifically, agents select actions according to the decision rules given in Table 2. The first two columns of Table 2 record the executor of task tj believed by sender uh and receiver ui, respectively. The third column outlines the action taken on tj with respect to receiver ui. Note that once a piece of message is passed, timestamp gi is updated according to Formula (11) to obtain the latest time information.

3.2.2. Task Removal Stage

After the consensus stage, each UAV ui checks the current task sequence Pi and removes tasks in two sets A = {tjPi | Ziji } and B = {tjPi | Tj(Pi) <Tj_start or Tj(Pi) >Tj_end}. Herein, A denotes the set of tasks in Pi whose corresponding information Zij has been changed after the communication, while B represents the set of tasks in Pi violating the time window constraints.
First, a task in A can be removed from Pi and A, according to the following criterion:
m a x t j A ( q i j ¯ Q i j ) > 0
where q i j ¯ = (Pi) − (Pitj) represents the significance of tj computed from the current task sequence Pi, while Qij denotes tj’s significance obtained from the consensus stage.
We release a task tk from Pi and A such that tk = a r g m a x t j A ( q i j ¯ Q i j ) . This removal process is continued until (15) is not satisfied or A is empty. When this process is terminated but A ≠ ∅, each remaining task tkA should be returned to agent ui by setting Zik = ui.
Next, each UAV ui checks its sequence Pi and releases the tasks in B sequentially. Specifically, once there is a task tjPi that does not meet the time window constraint, tj is removed from the sequence Pi immediately, and the related information is updated as Zij → ∞, Qij → ∞, Tij → ∞. Note that each time ui removes a task from Pi, the start time for other tasks in Pi is updated. Thus, we need to update set B after each removal. Such a removal process is repeated alternately until all tasks in all Pi satisfy the time window constraint. At the end of the task removal stage, the relevant information Qij and Tij for each tjPi is updated correspondingly.
In the conflict resolution phase, the algorithm iterates over the consensus stage and task removal stage until a global consensus is achieved across all UAVs. To this end, we obtain a conflict-free allocation where tasks are assigned by meeting the time window constraints. The whole procedure is illustrated by Algorithm 2.
Algorithm 2: Conflict resolution phase of UAV ui at iteration λ.
Initialization:Pi(λ) = Pi(λ − 1), Zi(λ) = Zi(λ − 1), Qi(λ) = Qi(λ − 1), Ti(λ) = Ti(λ − 1), set si to zero vector.
1: Send Qi, Ti,Zi and si to uh where Gih=1;
2: Receive Qh,Th,Zh and sh from uh where Ghi=1;
3: Update Qi, Ti,Zi and si according to the rules in Table 2;
4: A←{tjPi |Ziji, tjPi};
5: while m a x t j A ( q i j ¯ Q i j ) > 0 do
6:    tk a r g m a x t j A ( q i j ¯ Q i j ) ;
7:    Remove task tk from Pi and A;
8:  end while
9: if A≠∅ then
10:    let Zij = i, ∀tjA;
11: end if
12: B←{tjPi |Tj(Pi) <Tj_start or Tj(Pi) >Tj_end};
13: while B≠∅ do
14:    Remove task tkB from Pi;
15:    Set Zij, Qij, Tij as infinity values
16:    Update B;
17: end while

3.3. Task Reallocation Phase

After completing iterations between the above phases, the obtained allocation generally covers all tasks. However, in some cases, a few tasks may remain unassigned due to the strict time window constraints. Let Cai be the set of these unassigned tasks for each UAV ui, i.e., Cai ={tk | Zik→∞}. This phase intends to reassign tasks in Cai to some UAVs to increase the number of allocated tasks. That is, for each UAV ui, only tasks in Cai can be added to or removed from the current list Pi, while assigned task tjCai is not allowed to be moved. This phase is composed of two stages: secondary inclusion and secondary conflict resolution.

3.3.1. Secondary Inclusion

We define a vector Mi = [mi1, mi2, …, mi|Cai|]T for all tasks in Cai with regards to UAV ui, where the entry mij = 1 if a task tjCai has been added to Pi but removed from the same sequence for violating time window constraint, and mij = 0 otherwise. By definition, a task tjCai can be assigned to UAV ui according to the following conditions:
(d). Ziji and mij = 0;
(e). let p = argqij*(Pitj); after inserting tj into the p-th position of Pi, all tasks in the sequence Piptj satisfy the underlying time window constraint.
(f). Foivmi × (Pitj) ≥ Δ.
Condition (d) ensures that tasks are not repeatedly added or removed by the same UAV, condition (e) ensures that all tasks in Pitj satisfy the time window constraints after inserting tj into Pi, and condition (f) ensures the satisfaction of power consumption constraints.
Let ℜ(Pi, Cai) = {tjCai | Conditions (d), (e) and (f) both hold for tj and ui} denote the set of tasks that satisfies the above conditions. To minimize the significance value, each UAV ui chooses the task tk∈ℜ(Pi, Cai), according to (16), and inserts it into the position p = argqik*(Pitk) of list Pi.
t k = a r g m i n t j ( P i ,   C a i ) q i j * ( P i t j )
Different from criterion (14), (16) requires that the UAV only selects out the unassigned task tk with the minimum marginal significance value. The above process is repeated until no task can be included in Pi, i.e., ℜ(Pi, Cai) = ∅ |Pi| = Li.

3.3.2. Secondary Conflict Resolution

To obtain a conflict-free allocation, the secondary conflict resolution stage iterates between the consensus process and the task removal process until global consensus is achieved across all UAVs.
In the consensus process, the heuristic consensus rule proposed in Section 3.2.1 is used to obtain a conflict-free allocation. Note that each UAV only exchanges the information related to tasks in Cai with its neighboring UAVs through local communications. According to the decision rules given in Table 2, once ui receives a message, it updates, resets, or leaves the stored information Zij, Qij, Tij, and sij for each task tjCai.
Then, in the task removal process, each UAV ui checks its current task sequence Pi and removes tasks belonging to two sets A={tjPi | Ziji} and B={tjPi | Tj(Pi)<Tj_start or Tj(Pi)>Tj_end} from Pi. Herein, A′ denotes the set of tasks whose information Zij is changed after the consensus process, while B′ represents the set of tasks violating the time window constraints. The tasks in A′ and B′ are sequentially removed from Pi using the same method as in Section 3.2.2. In addition, each time a task tjB′ is removed, we update its related information as Zij → ∞, Qij → ∞, Tij → ∞, and we also set mij = 1 such that task tj is prevented from repeatedly assigning to Pi, according to condition c). These requirements not only avoid invalid task inclusion and removal, but also improve the performance of the entire system.
The secondary inclusion and secondary conflict resolution are repeated alternately until no actions can be made for a period of time. That is, the task reallocation phase has already converged, and an optimized global conflict-free task assignment that satisfies all time window constraints is obtained.

3.4. Convergence Analysis

The first two phases of the DATW algorithm alternate until an initial allocation is obtained, and then, the last phase is performed to reallocate these unassigned tasks. In the ideal case, the system deems to be converged when no changes can be made in the first two phases. However, due to the strict time window constraints, some tasks may be repeatedly included and removed by the same UAV, and thus, an infinite cycle arises. To avoid such reiteration and reallocate those tasks in the last phase, iterations between the first two phases are terminated, provided that the allocations obtained after the second phase remain the same for a specified period.
Moreover, each UAV always aims to decrease the global time cost at each iteration. Specifically, the significance value of a task is highly related to its current contribution to the local time cost of its assigned UAV. In the first two phases, each UAV ui exchanges the significance of all tasks with its neighbor UAVs, and then, based on these significance values, ui tries to decrease the global time cost n = 1 n ( P i ) by recursively adding or removing tasks from its task sequence. The last phase reassigns tasks in Cai, which collects all unassigned tasks after the first two phases, to agents. In particular, each ui selects unassigned tasks in Cai with the minimum significance value in each iteration of the last phase. Note that the initial significance value for each task is set to infinity and is continuously updated as the significance of a task is highly correlated with the current allocation. Consequently, the DATW algorithm converges when the task significance list of each UAV is not changed for a specified period of time.
Formally, the proposed DATW running on each UAV can be expressed in detail as follows.
Step 1: Performing the task inclusion phase, according to Algorithm 1.
Step 2: Running Algorithm 2. The conflict resolution phase is repeated until global consensus is achieved over all UAVs.
Step 3: Step 1 and Step 2 are repeated until the allocation obtained after Step 2 remains the same for a specified period of time.
Step 4: Carrying out the secondary inclusion stage to assign tasks in Cai to agents.
Step 5: Carrying out the secondary conflict resolution stage, performing the consensus process and the task removal process alternately, until the global consensus is achieved over all UAVs.
Step 6: Step 4 and Step 5 are repeated until no changes have been made in the task significance list Qi for a specified period of time, and then, the algorithm is completed.
Moreover, we obtain the working architecture of the DATW by integrating the above 6steps through the process in Figure 2.

4. Simulation

In this section, numerical simulations are conducted to assess the effectiveness of the proposed DATW algorithm. The proposed method is first verified across search and rescue scenarios with different settings generated randomly. Then, the proposed method is compared with an extension of the CBBA (E-CBBA) method in [26] in terms of various parameter settings.

4.1. Scenario and Simulation Setup

The performance of the DATW method is evaluated based on the search and rescue scenarios proposed in [28]. Suppose that a number of survivors are discovered in a specific area, and a group of UAVs are required to perform rescue tasks on these survivors. The survivors are classified as A-type, B-type, and C-type according to their health condition. All survivors are considered to have equal priority but must be rescued within the different time window constraints summarized in Table 3. It is assumed that one-quarter of the survivors are A-type, one-quarter are B-type and the remaining ones are C-type. The goal is to minimize the average time cost across all rescue tasks and to rescue as many survivors as possible upon the validity time interval. Moreover, in such a scenario, all UAVs and survivors are randomly initialized in a 10,000 × 10,000 × 1000 m 3-D spatial plane. The UAVs’ speeds are assumed to always be 50 m/s, and each UAV takes 30 s to rescue a survivor but executes at most five tasks at a time. Moreover, the UAVs’ initial fuel masses are set as 400kg, and each UAV consumes the fuel at 0.05kg/s.
To better describe the problem size of various scenarios, we introduce a new parameter, namely, the task-to-UAV ratio (TUR), represented by δ ≡ m/n, where m (resp. n) is the number of tasks (resp. UAVs). Table 4 shows the parameters of all testing scenarios where the UAV number is denoted by n ∈ {3, 4, 9, 10, 15, 16} and the corresponding TUR is set as δ ∈ {1, 2, 3}. Hence, there are 18 = 6 × 3 combinations of scenarios to consider. The time windows for all these combinations are randomly generated, according to Table 3.

4.2. Simulation Steps

In this paper, all experiments are performed on an Intel(R) Core (TM) [email protected] GHz PC, and the simulation program is executed with Python under the Windows 10 operating system. Four basic libraries in Python are employed to simulate the entire process: NumPy, Pandas, Matplotlib, and Time. Specifically, the NumPy is used to handle the calculations of a matrix; the Pandas is used to export the generated data in the simulation and perform further analysis; the Matplotlib is used for drawing two-dimensional diagrams, while the Time is added for addressing problems with time information.
The simulation program consists of a clock module, a data generation module, a task assignment module, and an output module. The clock module, which uses functions from the Time library, is the first component of the simulation. The clock module keeps track of the start and end time of each simulation, which aids in evaluating the computational complexity of the whole algorithm. Meanwhile, the clock module also records the timestamp si when each UAV ui obtains the latest message from the other UAVs. Then, the data generation module is introduced and is based on the functions in the NumPy library. In particular, this module randomly generates the initial scenario for each simulation, according to the settings in Section 4.1. To this end, the task assignment module imports the above-mentioned data and obtains the proper allocation for each UAV. Ultimately, the output module is employed based on the functions in the Pandas and the Matplotlib, such that the visual output of the allocation results is achieved.

4.3. Simulation Results

4.3.1. Validation Experiments

A series of validation experiments are conducted to evaluate the performance of DATW; there are four performance parameters to consider:
  • G: the average completion time of all tasks, which is the objective of the studied MTPA and can be obtained from (6);
  • Λ: the number of iterations, which is determined by the last time an allocation change is made;
  • П: the number of communications, which depends on the passed messages summed over all UAVs during the consensus phases in Section 3.2 and the secondary conflict resolution in Section 3.3.2.;
  • Ψ: the percentage of feasible tasks that are allocated to UAVs and the given time window constraints are satisfied.
The above parameter G reflects the objective of MATP, Λ determines the computation time of the whole algorithm, П implies the communication cost of performing DATW, and Ψ illustrates the effectiveness of DATW in handling the time window constraints.
In this section, all experiments are conducted based on the scenarios summarized in Table 4. For each combination in Table 4, 30 instances are created under randomly generated initialization settings. A mesh communication topology is used such that each UAV can communicate with every other UAV. The simulation results are presented in Table 5.
According to Table 5, the average rate of feasible tasks exceeds 70% for each combination, which means that DATW is capable of finding a solution that allocates most tasks to UAVs properly. Moreover, we observe that the parameter TUR directly affects the average completion time and the number of iterations. In particular, the average completion time G logically rises with TUR as there are more tasks required to be performed. Additionally, as TUR becomes larger, each agent has increasingly available task options, such that the algorithm must iterate more times to select the valuable allocation. Hence, parameter Λ is enlarged. Moreover, the parameter П increases with an increasing UAV number since more communications are required to reach consensus when the number of UAVs is increasing. In addition, П appears to take its minimum value at δ = 1 when the number of UAVs is not changed. The reasons seem simple: the number of tasks is relatively small with δ = 1, and hence, the allocated tasks are much easier to satisfy with the time window constraints. In this case, DATW may achieve its optimal allocation before the task reallocation phase.

4.3.2. Comparisons on the Task Reallocation Phase

Task reallocation, the third phase of DATW, aims to allocate the tasks to UAVs that are unassigned after the first two phases. To validate the effectiveness of this reallocation phase, we carry out our experiments to compare and analyze the allocations before and after this phase. Herein, each scenario combination in Table 4 is simulated 50 times under random initialization settings.
From Figure 3, when the TUR is set as δ ∈ {1, 2, 3}, the line graphs depict the average number of allocated tasks before and after the task reallocation phase. The bar graphs depict the average increase in the number of allocated tasks during that phase. Notably, the task reallocation phase can significantly improve the total number of allocated tasks from the solution achieved by the first two phases with various UAV numbers and TURs. Comparing (a), (b), and (c) in Figure 3, for combinations with the same UAV numbers, more tasks are allocated during the third phase as the value of TUR increases. This is because when the value of TUR grows, there are more tasks involved, such that the time window constraints between tasks are more likely to overlap. As this situation leads to greater difficulties in assigning tasks, the task reallocation phase is necessary for obtaining a well-performed allocation. Moreover, we can observe that the number of tasks allocated through the third phase logically increases with the number of UAVs for each value of TUR. In the best case, the average increase in the number of allocated tasks is up to 8.04 when allocating 45 tasks to 15 UAVs.

4.3.3. E-CBBA Versus DATW

Since the proposed DATW and the E-CBBA algorithm in [26] both aim to allocate tasks within validity time windows, we conduct a range of comparisons to determine the merit of the assignments achieved. Herein, we assume that the obtained allocation deems to be a success if each task is assigned to a proper UAV and complies with time window constraints. Then, based on this assumption, we introduce a new parameter, namely, the success rate (SR), to assess the performance of these two algorithms. All comparisons are conducted based on the search and rescue scenarios, where the UAV number is varied as a parameter from two to thirty and TUR is set as δ = 2. Each combination of these scenarios is simulated 50 times under random initialization settings, such that the success rate of a combination is calculated as follows:
S R = N s a / 50
where Nsa denotes the number of successful allocations over all simulations and 50 is the total number of simulations.
Figure 4 compares the success rate of the DATW and the E-CBBA with different numbers of UAVs. The line graphs show the success rate of the two algorithms, while the bar graphs show the increase in success rate achieved by the DATW. Obviously, it demonstrates that the DATW consistently outperforms the E-CBBA algorithm in terms of success rate. Specifically, the average success rate for DATW is 52.7%, while the average success rate for E-CBBA is 34.7%, which means that the proposed DATW achieves an 18% (=52.7% − 34.7%) increase in the average success rate. Notably, in the combination of 22 UAVs and 44 tasks, all tasks are successfully allocated within validity time windows 32 times by DATW, but only 10 times by E-CBBA.

4.3.4. Topology Comparison

The dynamic environment with moving UAVs incurs various changes in communication typologies between UAVs, and thus, the proposed algorithm is required to perform effectively in different communication topologies. Figure 5 depicts four basic communication topologies with nondirected graphs: a fully connected mesh topology, a row topology, a circular topology, and a star topology. Specifically, we aim to analyze how these different typologies affect the performance of DATW based on a search and rescue scenario and assess the DATW with respect to the number of communications (П) and the percentage of feasible tasks (Ψ). All experiments are conducted on a scenario combination with 16 UAVs and 32 tasks, where the combination is simulated 50 times under random initialization settings.
The scatterplot in Figure 6 shows the result of over 50 simulations, which compares the PI, E-CBBA, and DATW in terms of parameters П and Ψ. Obviously, the parameter Ψ is independent of the specific topology, while the parameter П appears to vary according to the type of topology. In particular, the circular topology and the star topology have a similar degree of communication, such that П and Ψ are similar across topologies for PI, E-CBBA, and DATW. Moreover, for each algorithm, the parameter П decreases notably with fully connected mesh topology and increases with the row topology. Such an increase in П is due to information requiring multiple communications among UAVs to reach a consensus when the network is not fully connected. Moreover, the PI algorithm cannot effectively handle the task allocation problem under various time window constraints, while the proposed DATW based on PI always achieves well-performing allocations. Additionally, we observe that under each communication topology, the distributions of the parameter П are always similar, in terms of the DATW and PI algorithms. That is, the DATW achieves superior allocations without imposing any extra communication burdens and allocates the most tasks to UAVs within time window constraints.

5. Conclusions

In this paper, a distributed task allocation algorithm (DATW) is proposed for the MTAP problem with time window constraints. This algorithm embeds the time window constraints into the PI-based decentralized framework for the first time and aims to minimize the average completion time of all tasks. As an extension of the PI algorithm, the DATW method uses a three-phase architecture, including the task inclusion phase, conflict resolution phase, and task reallocation phase. Herein, the average number of allocated tasks exceeds 70% by the aid of the newly introduced task reallocation phase. Another novel idea is to correlate the significance value of tasks with the time window constraints, such that each task can be completed as early as possible during its validity interval. Moreover, the start time of each task is broadcasted among agents via communication typology to allocate tasks in a validity time interval without imposing any extra communication burdens. To this end, a conflict-free allocation with a minimum average task completion time can be obtained by the proposed DATW algorithm, where the vast majority of tasks are assigned within the validity time window. A series of simulations are conducted under a search and rescue scenario. The experimental results confirm that the DATW is effective and superior in increasing the total number of allocated tasks as well as minimizing the average completion time of the tasks. Moreover, compared with existing (CBBA-based) solutions, results show up to an 18% increase in success rate (SR) using the DATW. Thus, the DATW can successfully enable a team of UAVs to perform complex missions under various time window constraints.
Future work will focus on facilitating real-time task allocation in dynamic environments, which indicates integrating the presented DATW into the asynchronous framework and addressing the MTAP with latency in task computation and communication.

Author Contributions

Conceptualization, W.C., R.L., Y.F. and Y.Y.; methodology, W.C. and R.L.; validation, W.C.; resources, Y.F. and Y.Y.; data curation, W.C.; writing—original draft preparation, W.C.; writing—review and editing, Y.F. and Y.Y.; supervision, Y.F. and Y.Y.; funding acquisition, Y.Y. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Science and Technology Innovation 2030-Key Project of “New Generation Artificial Intelligence”, grant number 2020AAA0108200.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Shi, M.; Qin, K.; Liang, J.; Liu, J. Distributed Control of Uncertain Multiagent Systems for Tracking a Leader with Unknown Fractional-Order Dynamics. Int. J. Robust Nonlinear Control 2019, 29, 2254–2271. [Google Scholar] [CrossRef]
  2. Shi, M.; Qin, K.; Liu, J. Cooperative Multi-Agent Sweep Coverage Control for Unknown Areas of Irregular Shape. IET Control Theory Appl. 2018, 12, 1983–1994. [Google Scholar] [CrossRef]
  3. Shi, M.; Qin, K.; Li, P.; Liu, J. Consensus Conditions for High-Order Multiagent Systems with Nonuniform Delays. Math. Probl. Eng. 2017, 2017, 7307834. [Google Scholar] [CrossRef]
  4. Li, X.; Li, C.; Yang, Y.; Mo, L. Consensus for Heterogeneous Multi-Agent Systems with Nonconvex Input Constraints and Nonuniform Time Delays. J. Frankl. Inst.-Eng. Appl. Math. 2020, 357, 3622–3635. [Google Scholar] [CrossRef]
  5. Li, X.; Li, C.; Yang, Y. Heterogeneous Linear Multi-Agent Consensus with Nonconvex Input Constraints and Switching Graphs. Inf. Sci. 2019, 501, 397–405. [Google Scholar] [CrossRef]
  6. Li, X.; Gao, K.; Lin, P.; Mo, L. A Further Result on Consensus Problems of Second-Order Multi-Agent Systems with Directed Graphs, a Moving Mode and Multiple Delays. ISA Trans. 2017, 71, 21–24. [Google Scholar] [CrossRef]
  7. Yu, X.; Gao, X.; Wang, L.; Wang, X.; Ding, Y.; Lu, C.; Zhang, S. Cooperative Multi-UAV Task Assignment in Cross-Regional Joint Operations Considering Ammunition Inventory. Drones 2022, 6, 77. [Google Scholar] [CrossRef]
  8. Bethke, B.; Valenti, M.; How, J.P. UAV task assignment. IEEE Robot. Autom. Mag. March. 2008, 15, 39–44. [Google Scholar] [CrossRef]
  9. Chen, Y.; Yang, D.; Yu, J. Multi-UAV Task Assignment With Parameter and Time-Sensitive Uncertainties Using Modified Two-Part Wolf Pack Search Algorithm. IEEE Trans. Aerosp. Electron. Syst. 2018, 54, 2853–2872. [Google Scholar] [CrossRef]
  10. Shima, T.; Rasmussen, S.J.; Sparks, A.G.; Passino, K.M. Multiple Task Assignments for Cooperating Uninhabited Aerial Vehicles Using Genetic Algorithms. Comput. Oper. Res. 2006, 33, 3252–3269. [Google Scholar] [CrossRef]
  11. Darrah, M.; Niland, W.; Stolarik, B. Multiple UAV Dynamic Task Allocation Using Mixed Integer Linear Programming in a SEAD Mission. In Proceedings of the Infotech@Aerospace, Arlington, VA, USA, 26 September 2005; American Institute of Aeronautics and Astronautics: Reston, VA, USA, 2005. [Google Scholar]
  12. Stuijk, S.; Basten, T.; Geilen, M.C.W.; Corporaal, H. Multiprocessor Resource Allocation for Throughput-Constrained Synchronous Dataflow Graphs. In Proceedings of the 44th annual Design Automation Conference, San Diego, CA, USA, 4–8 June 2007; pp. 777–782. [Google Scholar]
  13. Secrest, B.R. Traveling Salesman Problem for Surveillance Mission Using Particle Swarm Optimization; School of Engineering and Management, Air Force Institute of Technology Wright-Patterson AFB: Dayton, OH, USA, 2001. [Google Scholar]
  14. O’Rourke, K.P.; Carlton, W.B.; Bailey, T.G.; Hill, R.R. Dynamic Routing of Unmanned Aerial Vehicles Using Reactive Tabu Search. Mil. Oper. Res. 2001, 6, 5–30. [Google Scholar] [CrossRef]
  15. Deng, W.; Zhang, X.; Zhou, Y.; Liu, Y.; Zhou, X.; Chen, H.; Zhao, H. An Enhanced Fast Non-Dominated Solution Sorting Genetic Algorithm for Multi-Objective Problems. Inf. Sci. 2022, 585, 441–453. [Google Scholar] [CrossRef]
  16. Blum, C. Ant Colony Optimization: Introduction and Recent Trends. Phys. Life Rev. 2005, 2, 353–373. [Google Scholar] [CrossRef]
  17. Wang, D.; Tan, D.; Liu, L. Particle Swarm Optimization Algorithm: An Overview. Soft Comput. 2018, 22, 387–408. [Google Scholar] [CrossRef]
  18. Sun, Y.; Wu, H.; Zhan, R. Optimal Scheduling Method of Marine Transportation Resources Based on Wolf Swarm Algorithm. J. Coast. Res. 2019, 93, 646–651. [Google Scholar] [CrossRef]
  19. Gerkey, B.P.; Mataric, M.J. Sold!: Auction Methods for Multirobot Coordination. IEEE Trans. Robot. Autom. 2002, 18, 758–768. [Google Scholar] [CrossRef]
  20. Qin, B.; Zhang, D.; Tang, S.; Wang, M. Distributed Grouping Cooperative Dynamic Task Assignment Method of UAV Swarm. Appl. Sci. 2022, 12, 2865. [Google Scholar] [CrossRef]
  21. Lemaire, T.; Alami, R.; Lacroix, S. A Distributed Tasks Allocation Scheme in Multi-UAV Context. In Proceedings of the IEEE International Conference on Robotics and Automation, Proceedings. ICRA ’04. 2004, New Orleans, LA, USA, 26 April–1 May 2004; Volume 4, pp. 3622–3627. [Google Scholar]
  22. Oh, G.; Kim, Y.; Ahn, J.; Choi, H.-L. Market-Based Distributed Task Assignment of Multiple Unmanned Aerial Vehicles for Cooperative Timing Mission. J. Aircr. 2017, 54, 2298–2310. [Google Scholar] [CrossRef]
  23. Zhen, Z.; Wen, L.; Wang, B.; Hu, Z.; Zhang, D. Improved Contract Network Protocol Algorithm Based Cooperative Target Allocation of Heterogeneous UAV Swarm. Aerosp. Sci. Technol. 2021, 119, 107054. [Google Scholar] [CrossRef]
  24. Choi, H.-L.; Brunet, L.; How, J.P. Consensus-Based Decentralized Auctions for Robust Task Allocation. IEEE Trans. Robot. 2009, 25, 912–926. [Google Scholar] [CrossRef] [Green Version]
  25. Whitten, A.K.; Choi, H.-L.; Johnson, L.B.; How, J.P. Decentralized Task Allocation with Coupled Constraints in Complex Missions. In Proceedings of the 2011 American Control Conference, San Francisco, CA, USA, 29 June–1 July 2011; pp. 1642–1649. [Google Scholar]
  26. Ponda, S.; Redding, J.; Choi, H.-L.; How, J.P.; Vavrina, M.; Vian, J. Decentralized Planning for Complex Missions with Dynamic Communication Constraints. In Proceedings of the 2010 American Control Conference, Baltimore, MD, USA, 30 June–2 July 2010; pp. 3998–4003. [Google Scholar]
  27. Whitbrook, A.; Meng, Q.; Chung, P.W.H. A Novel Distributed Scheduling Algorithm for Time-Critical Multi-Agent Systems. In Proceedings of the 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Hamburg, Germany, 28 September–2 October 2015; pp. 6451–6458. [Google Scholar]
  28. Zhao, W.; Meng, Q.; Chung, P.W.H. A Heuristic Distributed Task Allocation Method for Multivehicle Multitask Problems and Its Application to Search and Rescue Scenario. IEEE Trans. Cybern. 2016, 46, 902–915. [Google Scholar] [CrossRef] [PubMed]
  29. Geng, L.; Zhang, Y.F.; Wang, J.; Fuh, J.Y.; Teo, S.H. Cooperative Mission Planning with Multiple UAVs in Realistic Environments. Unmanned Syst. 2014, 2, 73–86. [Google Scholar] [CrossRef]
  30. Zheng, X.; Zhang, F.; Song, T.; Lin, D. Heterogeneous Multi-UAV Distributed Task Allocation Based on CBBA. In Proceedings of the 2019 IEEE International Conference on Unmanned Systems (ICUS), Beijing, China, 17–19 October 2019; pp. 704–709. [Google Scholar]
  31. Turner, J.; Meng, Q.; Schaefer, G.; Whitbrook, A.; Soltoggio, A. Distributed Task Rescheduling With Time Constraints for the Optimization of Total Task Allocations in a Multirobot System. IEEE Trans. Cybern. 2018, 48, 2583–2597. [Google Scholar] [CrossRef] [PubMed] [Green Version]
Figure 1. General system architecture for distributed multi-UAV systems with time windows.
Figure 1. General system architecture for distributed multi-UAV systems with time windows.
Drones 06 00226 g001
Figure 2. Working architecture for the distributed allocation with time windows.
Figure 2. Working architecture for the distributed allocation with time windows.
Drones 06 00226 g002
Figure 3. Average number of the allocated tasks before and after the task reallocation phase with regards to various TURs. (a) TUR: δ = 1. (b) TUR: δ = 2. (c) TUR: δ = 3.
Figure 3. Average number of the allocated tasks before and after the task reallocation phase with regards to various TURs. (a) TUR: δ = 1. (b) TUR: δ = 2. (c) TUR: δ = 3.
Drones 06 00226 g003
Figure 4. Success rate of allocations comparing E-CBBA and DATW algorithms.
Figure 4. Success rate of allocations comparing E-CBBA and DATW algorithms.
Drones 06 00226 g004
Figure 5. Four basic communication topologies. (a) Mesh communication. (b) Row communication. (c) Circular communication. (d) Star row communication.
Figure 5. Four basic communication topologies. (a) Mesh communication. (b) Row communication. (c) Circular communication. (d) Star row communication.
Drones 06 00226 g005
Figure 6. Scatterplot with respect to number of feasible tasks and number of communications over different network topologies. (a) Mesh communication. (b) Row communication. (c) Circular communication. (d) Star row communication.
Figure 6. Scatterplot with respect to number of feasible tasks and number of communications over different network topologies. (a) Mesh communication. (b) Row communication. (c) Circular communication. (d) Star row communication.
Drones 06 00226 g006aDrones 06 00226 g006b
Table 1. Symbol Definitions.
Table 1. Symbol Definitions.
SymbolDefinitions
NtSet of m tasks
NuSet of n UAVs
DjThe duration required to perform task tj
loc(tj)The spatial location of task tj, loc(tj) = (xj, yj, zj)
loc(ui)The initial position of UAV ui, loc(ui) = (xi, yi, zi)
viThe flight velocity of UAV ui
GThe communication topology between UAVs
PiAn ordered sequence of tasks for UAV ui
Φ(p, Pi)The task which locates at the p-th position in the sequence Pi
Tj(Pi)The time at which ui starts to execute tj
(Pi)The sum of the completion times for all tasks in Pi, i.e., the local time cost of ui
LiThe execution capacity of ui
[Tj_start, Tj_end ]The execution time window of task tj
ZiA task list stored on agent ui that keeps track of which task is assigned to which UAV
QiA list stored on ui that records the significance value for each task
TiA list stored on ui that records the start time for each task
siA list of timestamps for ui
PitjPi with task tj removed
qij(Pitj)The significance value of task tj for ui
Pik tjPi with task tj inserted into the kth position
qij*(Pitj)The marginal significance value of task tj for ui
Table 2. UAVs communication rule.
Table 2. UAVs communication rule.
Zhj (uh is Sender)Zij (ui is Receiver)ui’s Action
hiif Qhj < Qij: update
hupdate
α∉{h,i}if s > s or Qhj < Qij: update
update
iileave
hreset
α∉{h,i}if s > s: reset
leave
α∉{h,i}iif s > s and Qhj < Qij: update
hif s > s: update
other case: reset
αif s > s: update
β ∉ {h,I,m}if s > s and s > s: update
if s > s and Qhj < Qij: update
if s > s and s > s: reset
if s > s: update
ileave
hupdate
α∉{h,i}if s > s: update
Table 3. Time Window Constraints [Tj_strart, Tj_end] of rescue missions for A, B, and C survivors.
Table 3. Time Window Constraints [Tj_strart, Tj_end] of rescue missions for A, B, and C survivors.
Survivors’ TypeRange of Values for the Earliest Start Time Tj_strart of a Rescue MissionRange of Values for the Latest Start Time Tj_end of Rescue Missions
A[0 s, 20 s][100 s, 120 s]
B[50 s, 200 s][300 s, 400 s]
Table 4. Parameter Size for Each Instance Type.
Table 4. Parameter Size for Each Instance Type.
Instance TypeUAV NumTUR
Small3δ = 1, 2, 3
4
Medium9
10
Large15
16
Table 5. Result of the DATW Method in Search and Rescue Scenario.
Table 5. Result of the DATW Method in Search and Rescue Scenario.
UAV NumTask NumTURAve. Completion Time (G)Ave. Iteration Times (Λ)Ave. Communication Num (П)Percentage of Feasible Tasks (Ψ)
331103.881.275.83100.0%
62149.052.479.0793.8%
93149.023.1311.0374.1%
441128.012.213.596.7%
82143.662.8716.5392.5%
123146.023.6716.4375.6%
991110.373.0342.499.3%
182132.895.167.7396.7%
273139.166.465.4784.7%
10101104.423.6758.8399.3%
202129.915.886.996.0%
303139.316.372.3385.8%
15151100.874.8114.2398.4%
302123.826.83147.3797.0%
453135.288.07142.2787.7%
16161100.644.87130.0799.8%
322124.276.8156.596.4%
483135.427.93160.386.6%
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Cui, W.; Li, R.; Feng, Y.; Yang, Y. Distributed Task Allocation for a Multi-UAV System with Time Window Constraints. Drones 2022, 6, 226. https://doi.org/10.3390/drones6090226

AMA Style

Cui W, Li R, Feng Y, Yang Y. Distributed Task Allocation for a Multi-UAV System with Time Window Constraints. Drones. 2022; 6(9):226. https://doi.org/10.3390/drones6090226

Chicago/Turabian Style

Cui, Wei, Ruilin Li, Yanxiang Feng, and Yikang Yang. 2022. "Distributed Task Allocation for a Multi-UAV System with Time Window Constraints" Drones 6, no. 9: 226. https://doi.org/10.3390/drones6090226

APA Style

Cui, W., Li, R., Feng, Y., & Yang, Y. (2022). Distributed Task Allocation for a Multi-UAV System with Time Window Constraints. Drones, 6(9), 226. https://doi.org/10.3390/drones6090226

Article Metrics

Back to TopTop