Skip to main content
Sensors (Basel, Switzerland) logoLink to Sensors (Basel, Switzerland)
. 2022 Jun 14;22(12):4486. doi: 10.3390/s22124486

A Dynamic Task Scheduling Method for Multiple UAVs Based on Contract Net Protocol

Zhenshi Zhang 1, Huan Liu 2,*, Guohua Wu 2
Editor: Paolo Bellavista
PMCID: PMC9230986  PMID: 35746266

Abstract

Unmanned aerial vehicles are becoming promising platforms for disaster relief, such as providing emergency communication services in wireless sensor networks, delivering some living supplies, and mapping for disaster recovery. Dynamic task scheduling plays a very critical role in coping with emergent tasks. To solve the multi-UAV dynamic task scheduling, this paper constructs a multi-constraint mathematical model for multi-UAV dynamic task scheduling, involving task demands and platform capabilities. Three objectives are considered, which are to maximize the total profit of scheduled tasks, to minimize the time consumption, and to balance the number of scheduled tasks for multiple UAVs. The multi-objective problem is converted into single-objective optimization via the weighted sum method. Then, a novel dynamic task scheduling method based on a hybrid contract net protocol is proposed, including a buy-sell contract, swap contract, and replacement contract. Finally, extensive simulations are conducted under three scenarios with emergency tasks, pop-up obstacles, and platform failure to verify the superiority of the proposed method.

Keywords: multi-UAV, dynamic scheduling, contract net protocol, multi-objective optimization

1. Introduction

Sudden catastrophic events, such as earthquakes, floods, terrorist attacks, etc., are always random, dynamic, destructive, and emergent. Unmanned aerial vehicles (UAVs) are flexible, low-cost, and high-efficient and can be applicable to emergency disaster relief [1,2,3,4,5,6]. In the pre-disaster stage, sensors installed on UAVs can predict the disaster’s time, geographical location, and magnitude by cooperating with current wireless sensor networks [7]. This will efficiently contribute to decreasing injury and death, material and property loss. During disasters, the base stations are usually seriously destroyed, which makes it difficult for rescuers to assist survivors efficiently. Equipped with many advanced sensors, UAVs become promising data mules for sensor network data collection, which can efficiently fly to disaster areas, hover overhand, and collect and transmit real-time information without the influence of road obstacles [8,9]. Besides, in search and rescue scenarios, intelligent sensors installed on UAVs, such as Infra-red cameras and synthetic patrol radar, can quickly discover the survivors and give the accurate positions for safer and quicker rescue. UAVs are also used to draw a detailed map of the post-disaster environment [10] in cooperation with ground devices, which facilitates disaster recovery. As shown in Figure 1, DJI drones were applied to draw a three-dimensional map of a destroyed village for disaster recovery in the 2015 Nepal earthquake.

Figure 1.

Figure 1

The 3D map of a destroyed village with the help of DJI drones in the 2015 Nepal earthquake.

However, there are still many challenges for multi-UAV emergency scheduling, which are as follows: (1) heterogeneous UAVs are required to complete multiple tasks, such as communication, supply delivery, mapping, and monitoring, because emergencies are often diverse and unpredicted; (2) Multiple UAVs should cooperate with each other to complete the complicated tasks; (3) Dynamic scheduling should be real-time to guarantee the successful accomplishment of tasks; (4) Energy efficiency should be taken into consideration, such as energy consumption of sensors in UAV-enabled wireless sensor networks [11,12] or fuel consumption of UAVs during the flight. Note that in this paper, we generate the short paths in two-dimensional scenarios by the APPATT [13] to reduce fuel consumption. Thus, we focus on how to reallocate tasks to multiple UAVs in real-time when confronting some emergencies.

Multi-UAV dynamic scheduling problem has been proven to be NP-hard and thus obtaining a globally optimal solution is computationally expensive [14]. Until now, many researchers around the world have put efforts into multi-UAV dynamic scheduling. Early research employed centralized methods to generate a scheme by a central server capable of gathering and spreading the whole information [15]. Nevertheless, centralized methods may place a heavy communication burden on the central server which is vulnerable to a single point of failure [16,17].

Therefore, distributed methods are often used to solve multi-UAV dynamic scheduling [18] and show excellent performance in computation and communication. Generally, among distributed algorithms, market-mechanism-based algorithms are prevailing involving auction-based algorithms and contract net protocol. Auction-based algorithms [19] are applied to generate near-optimal solutions for the task scheduling problem where one task just can be completed by one platform. However, the information of each UAV must be transmitted to the auctioneer in some way, which is time-consuming and leads to the limited network topology [20]. To cope with the issue, Choi et al. [21] proposed consensus-based decentralized auctions (CBBA) which delete the auctioneer and are distributed in each UAV, which has attracted a lot of research interest. The method includes two phases: one is the bundle-construction phase where each agent creates just a single bundle and updates it as the assignment process progresses; the other is the conflict resolution phase where agents bid on a single task and release it upon receiving a higher value in the winning bids list [22,23,24]. The two phases are in an iterative manner until the defined stopping criteria are satisfied.

Another successful market-based distributed algorithm is contract net protocol (CNP) which was proposed by Smith [25] in 1980. Agents can allocate tasks based on the market bidding mechanism (inviting tendering—bidding—winning), so that the whole multi-agent system can complete tasks with low cost and high quality [26]. Contract net protocol was employed in manufacturing systems. Sousa and Ramos [27] proposed a negotiation protocol based on CNP for job scheduling in a manufacturing system. Owliya et al. [28] presented a CNP with specific rules for job scheduling and task allocation in manufacturing applications. Vancza et al. [29] and Baker [30] applied CNP for job-shop scheduling and demonstrated its effectiveness in a natural job-shop environment.

In addition, the CNP also has been adopted in dynamic task scheduling due to its simplicity and intuitiveness. Liang et al. [31] developed an improved contract net protocol (ICNP) that incorporated multi-agent systems, which can realize dynamic task scheduling when the environment is changeable. Hong et al. [32] designed the extended contract net protocol to enhance the time efficiency and solution quality. To solve the coordinated task scheduling between manned aircrafts and UAVs, Liu et al. [33] proposed a modified contract net protocol, which can realize real-time scheduling and satisfy the requirements. In contrast, Fan et al. [34] addressed multi-UAV heterogeneous task scheduling by ICNP incorporated multi-agent systems which verified its effectiveness by extensive experiments.

Currently, many achievements have been gained in dynamic task scheduling for UAVs, which can provide theoretical and technical support for military and civil usages [35,36,37]. Nevertheless, little existing research has focused on large-scale dynamic scheduling for multiple UAVs. Hence, to solve the issue, the paper constructs a multi-constraint mathematical model for multi-UAV dynamic task scheduling, whose objectives are to maximize the total profit of scheduled tasks, to minimize the consuming time and to balance the number of scheduled tasks for multiple UAVs. A hybrid contract net protocol for dynamic task scheduling is proposed, including a buy-sell contract, swap contract, and replacement contract.

The significant contributions of this work are summarized as follows.

  • (1)

    We construct a multi-objective optimization model for multi-UAV dynamic scheduling. Three objectives are to maximize the total profit of scheduled tasks, to minimize the time consumption and to balance the number of scheduled tasks for multiple UAVs.

  • (2)

    We propose a hybrid contract net protocol involving a buy-sell contract, swap contract, and replacement contract to solve dynamic scheduling when encountering various emergencies.

  • (3)

    We conduct numerous simulations under three typical scenarios with emergency tasks, pop-up obstacles, and platform failure, to verify the effectiveness of the proposed algorithm. The simulation results demonstrate that the proposed algorithm can respond to dynamic elements and generate feasible re-scheduling schemes within milliseconds for all designed instances.

This paper is organized as follows. Section 2 constructs the mathematical formulation for multi-UAV dynamic scheduling. Section 3 proposes the hybrid contract net protocol method for multi-UAV dynamic scheduling. The effectiveness of the proposed method is then demonstrated through several simulated scenarios in Section 4. Finally, Section 5 concludes this paper.

2. Multi-UAV Dynamic Scheduling Model

To clearly state the multi-UAV task scheduling problem, several assumptions are made as follows.

  • (1)

    Tasks with high rewards will be scheduled firstly when the number of UAVs is limited.

  • (2)

    Bidders can evaluate their capabilities to complete tasks.

  • (3)

    Tenderees and bidders are all honest and can transmit accurate information to each other.

  • (4)

    The bid cannot be changed and canceled during the negotiation process.

  • (5)

    The communication is reliable and cannot fail, such as information loss during the negotiation process.

  • (6)

    We do not consider path re-planning when pop-up obstacles exist and the speed of UAVs is constant during the flight.

The notations used in the description of the multi-UAV task scheduling problem are summarized in Table 1. Denote V, Task and Barrier as the set of UAVs, tasks, and obstacles, respectively. rewardi is the predefined reward of task i. Then, ErstTimei and LastTimei are the allowable earliest start time and latest end time of task i, respectively. tij is the travel time from the task i to the task j and si is the service time of the task i. The platform constraints involved in the model are flying range, energy capacity and memory capacity, which are denoted as MaxLh, MaxEh and MaxNh (h: UAV index), respectively.

Table 1.

Notations.

Notations Description
V a set of UAVs, V={V1,V2,,VNV}
h UAV index
Task a set of tasks, Task={T1,T2,,TNM}
i, j task index
rewardi the reward of task i
[ErstTimei,LastTimei] the allowable earliest start time and latest end time of task i
si the service time of task i
tij the travel time from task i to task j
MaxLh,MaxEh,MaxNh flying range, energy capacity and memory capacity of UAV h

One decision variable denotes whether the UAV h flies from the task i to the task j, which is defined by a binary variable xi,jh. If the UAV h flies from the task i to the task j, we have xi,jh=1; otherwise, xi,jh=0. The multi-UAV task scheduling model can be formulated as follows.

2.1. Constraints

  • (1)
    Constraint 1: each task can only be completed at most one time.
    i=1NM+1h=1NVxi,jh1(j [1,NM] and jZ,ij). (1)
  • (2)
    Constraint 2: each UAV must fly to the next task after completing the current task, except for the final task.
    j=1NMh=1NVxi,jh1(i [1,NM] and jZ,ij). (2)
  • (3)
    Constraint 3: the order of two tasks is unique.
    h=1NV(xi,jh+xj,ih)1,i,j [1,NM] and ij. (3)
  • (4)
    Constraint 4: tstartj is the start time of task j. tleavej is the departure time of task j. twaitj is the waiting time of task j. If the former task of task j is task i, time window constraint of task j is as follows.
    tstartj=tleavei+tij+twaitjtleavej=tstartj+sjtstartjErstTimejtleavejLastTimej (4)
  • (5)
    Constraint 5: L(projecth) is the flight distance of UAV Vh to accomplish tasks.
    L(projecth)MaxLh(h=1,2,,NV). (5)
  • (6)
    Constraint 6: Num_Tasks(projecth) is the number of scheduled tasks for UAV Vh.
    Num_Tasks(projecth)MaxNh(h=1,2,,NV). (6)
  • (7)
    Constraint 7: Duration(projecth) is the duration time of scheduled tasks for UAV Vh.
    Duration(projecth)MaxEh(h=1,2,,NV). (7)

2.2. Objectives

During the auction progress, both the tenderee UAVs and the bidder UAVs need to calculate the performance of completing a task. Contrary to offline task scheduling, time consumption should be considered except for the total reward of scheduled tasks and the number of scheduled tasks for each UAV. Specifically, time consumption is the required time for task scheduling. Highly urgent tasks should be assigned to the appropriate UAVs in a short time. Once highly urgent tasks cannot be allocated in a reasonable time, the entire task scheduling would be affected. High profit means that when meeting the task demand, each UAV can complete many tasks with high rewards at a small cost. The number of scheduled tasks for each UAV should be balanced which can effectively avoid the rapid increase in time consumption for all UAVs. Hence, the performance of completing a task can be calculated as follows.

Ui(Tj)=αFi(Tj)+βDi(Tj)+γMi(Tj), (8)

where Ui(Tj) is the total performance of the task Tj for UAV Vi; Fi(Tj) is the profit of the task Tj; Di(Tj) is the real-time performance when UAV Vi completes the task Tj; Mi(Tj) is load balancing performance when UAV Vi completes the task Tj. α,β and γ are the weight coefficients of indicators and meet the following formula, α+β+γ=1.

  • (1)
    The first objective is to maximize the net profit. The net profit can be obtained by the reward of task i minus the cost. The cost includes path cost (the flight distance) and risk cost (including the probability of colliding with obstacles and being discovered by hostile weapon threats). The path cost and risk cost from the task Tj1 to task Tj can be represented by PathCost(Vi,Tj1,Tj) and RiskCost(Vi,Tj1,Tj), respectively. Note that reward(Tj), PathCost(Vi,Tj1,Tj) and RiskCost(Vi,Tj1,Tj) can be generated after normalization. The net profit of task Tj completed by UVA Vi can be calculated as follows.
    Fi(Tj)=reward(Tj)PathCost(Vi,Tj1,Tj)RiskCost(Vi,Tj1,Tj). (9)
  • (2)
    The second objective is to improve the real-time performance which is given below.
    Di(Tj)=1eTimei(Tj), (10)
    where Timei(Tj) is the required time for allocating the task Tj to the UAV Vi.
  • (3)
    During the task scheduling, it is also necessary to balance the number of scheduled tasks between UAVs. The third objective is to enhance the load balancing performance which is given below.
    Mi(Tj)=MaxNiNSi, (11)
    where NSi is the number of scheduled tasks for the task scheduling scheme Si, and MaxNi is the maximum number of scheduled tasks for the UAV Vi.

2.3. Dynamic Elements

Three dynamic elements are considered, which are emergency tasks, pop-up obstacles, and platform failure.

  • (1)

    Emergency tasks

Suppose that the set Si={Taski1,Taski2,,Taskini} is the offline task scheduling scheme of UAV Vi. There are Nt emergency tasks, which can be denoted as Etask={etask1,etask2,,etaskNt}. Then, the multi-UAV dynamic task scheduling can be described as: when confronting emergency tasks, task re-scheduling will be invoked requiring short time to maximize the performance of the overall system as much as possible.

  • (2)

    Pop-up obstacles

Suppose that the set Si={Taski1,Taski2,,Taskini} is the offline task scheduling scheme of UAV Vi. There are Ne pop-up obstacles, which can be denoted as Ebarrier={ebarrier1,ebarrier2,,barrierNe}. Then, the multi-UAV dynamic task scheduling can be described as: when confronting pop-up obstacles, only tasks which collide with pop-up obstacles will be re-scheduled to maximize the performance of the overall system as much as possible.

  • (3)

    Platform failure

Suppose that the set Si={Taski1,Taski2,,Taskini} is the offline task scheduling scheme of UAV Vi. Nu UAVs cannot work well during the implementation (Nu<NV). The tasks allocated to these faulty UAVs will return to the planning center. The multi-UAV dynamic task scheduling can be described as: when some UAVs cannot work well, task re-scheduling will be invoked requiring short time to maximize the performance of the overall system as much as possible.

3. Hybrid Contract Net Protocol

3.1. Contract Net Protocol

Contract net protocol (CNP) is a management framework based on a market mechanism commonly used in the distributed control system, which was introduced into the multi-agent control field by Davis and Smith in the 1980s [25]. As a dynamic task scheduling method, CNP can find near-optimal solutions by simulating the four processes of tendering, bidding, winning the b,id and signing the contract in market economic activities [38]. When the UAV is not capable of performing some tasks, these assigned tasks are up for auction by the tenderee UAV. Then, other UAVs will bid for the tasks to be allocated. Finally, the tenderee UAV will allocate the tasks to the most suitable bidder UAVs. As a nearly global optimal scheduling method, CNP is the critical technology for UAV dynamic scheduling.

CNP is divided into tendering phase, bidding phase, winning phase and signing phase [39]. To be specific, tendering phase is that when the tenderee UAV encounters some unexpected situations during the task execution, such as pop-up obstacles, emergency tasks or platform failure, it cannot cope with the issues alone and needs assistance [40]. It will release bidding information to find suitable UAVs. The bidding phase is when other UAVs will analyze their capabilities and judge whether they can perform the tasks after receiving the bidding information. If they can deal with the dynamic issues, they will propose a reasonable bidding price based on their own performance and send it to the tenderee for bidding. The winning phase is when the tenderee will select the suitable bidder based on designed heuristics [41]. The signing phase is when the tenderee and the successful bidder reach an agreement and sign a contract to complete a task scheduling. The detailed process is described in Figure 2 and Figure 3.

Figure 2.

Figure 2

The main idea of CNP.

Figure 3.

Figure 3

The negotiation process of CNP.

3.2. Hybrid Contract Net Protocol

Currently, the classic buy-sell contract is generally used for multi UAV cooperative task scheduling. However, it cannot address the problem in a complex environment. To effectively solve multi-UAV coordinated task scheduling in a complex environment, this paper proposes a hybrid contract net protocol, which includes a buy-sell contract, swap contract and replacement contract.

3.2.1. Buy-Sell Contract

The buy-sell contract is the primary contract type in the contract net protocol [42]. During the auction process, each UAV realizes task scheduling through the “buy-sell” way. As shown in Figure 4, the task scheduling schemes of UAV V1 and V2 are {T1,T3,T4} and {T2,T5}, respectively. The UAV V1 finds that the path from the task T3 to the task T4 collides with the pop-up obstacle on the way to the task T3. The path cannot be re-planned. Thus, the UAV V1 will release bidding information about the task T4. We make the assumption that the UAV V2 around the UAV V1 is capable of performing the task T4 based on its offline task scheduling scheme.

Figure 4.

Figure 4

Sketch map for buy-sell contract. (a) Initial task scheduling scheme; (b) Task re-scheduling scheme.

The buy-sell contract can be described by a quadri-tuple, <Vi,Vj,Ti,j,Ui,jsale>. Vi and Vj are a tenderee and a bidder, respectively. Ti,j is the task that is transferred from the UAV Vi to the UAV Vj. Ui,jsale is the performance of the whole UAV system after one auction. The procedures of the buy-sell contract are as follows.

Step 1: Initialize the performance of all UAVs (specifically, calculate the remaining capabilities and update their task scheduling schemes), and determine the only tenderee according to the maximum remaining capability.

Step 2: The tenderee Vi will release the information about the task Tki. The low bid price of the task Tki can be determined by the cost which the tenderee Vi should pay for the task Tki in the scheme Si.

Ui(Tki)=Ui(Si)Ui(Si\Tki) (12)

Step 3: After receiving the bidding information, the bidder Vj will judge whether it can purchase the task Tki according to its remaining capability. If true, the bidding price will be evaluated as follows.

Uj+(Tki)=Uj(Sj{Tki})Uj(Sj) (13)
Ui,jsale(Tki)=Uj+(Tki)+Ui(Tki) (14)

Step 4: The tenderee Vi will evaluate the bids about the task Tki in finite time. It will select the winner who is the highest bidder and send the information to all bidders.

Ui,jsale(Tki)=maxq [1,NV]Ui,qsale(Tki) (15)

Step 5: The winner and tenderee will sign the contract and update their task scheduling schemes.

3.2.2. Swap Contract

The buy-sell contract can be useful only when the buyers can afford the task. However, in some special cases, it is difficult to realize the task re-scheduling only by buy-sell contract. Therefore, it is necessary to adopt a swap contract to improve the efficiency of task re-scheduling [43]. As shown in Figure 5, the task scheduling schemes of UAV V1 and V2 are {T1,T3} and {T2}, respectively. The maximum number of tasks which can be completed by the UAV V1 or V2 is 2. The emergency task T4 is found by the UAV V2. If the UAV V2 performs the emergency task T4, it will consume more fuel and can be easily detected by the enemy. At the same time, the UAV V1 is not capable of performing the emergency task due to its limited tasks’ number. Thus, the swap contract will be applied to task re-scheduling. The task re-scheduling schemes of the UAV V1 and V2 are {T1,T4} and {T2,T3}, respectively.

Figure 5.

Figure 5

Sketch map for swap contract. (a) Initial task scheduling scheme; (b) Task re-scheduling scheme.

The swap contract can be described by a five-tuple, <Vi,Vj,Ti,j,Tj,i,Ui,jswap>. Vi and Vj are a tenderee and a bidder, respectively. Ti,j is the task which is transferred from the UAV Vi to the UAV Vj. Tj,i is the task which is transferred from the UAV Vj to the UAV Vi. Ui,jswap is the performance of the whole UAV system after one auction. The procedures of the swap contract are as follows.

Step 1: Initialize the performance of all UAVs (specifically, calculate the remaining capabilities and update their task scheduling schemes), and determine the only tenderee according to the maximum remaining capability.

Step 2: The tenderee Vi will release the information about the task Tki. The UAV Vj will firstly use the buy-sell contract after receiving the information. If it cannot deal with the task, it will use the swap contract to swap its task Tlj with the task Tki. The performance of the UAV Vj can be calculated by the following formula.

Ujswap(Tlj,Tki)=Uj((Sj{Tki})\{Tlj})Uj(Sj) (16)

Step 3: The tenderee Vi will evaluate its performance if it agrees to swap their tasks as follows.

Uiswap(Tki,Tlj)=Ui((Si{Tlj})\{Tki})Ui(Si) (17)

and it will also evaluate the performance of all UAVs as follows.

Ui,jswap(Tki,Tlj)=Uiswap(Tki,Tlj)+Ujswap(Tlj,Tki) (18)

Step 4: The tenderee Vi will evaluate the bids about the task Tki in finite time. It will select the winner who is the highest bidder and send the information to all bidders.

Ui,jswap(Tki,Tlj)=maxq [1,NV],k [1,NP]{Ui,qswap(Tlj,Tki)} (19)

Step 5: The winner and tenderee will sign the contract and update their task scheduling schemes.

3.2.3. Replacement Contract

If the UAV can gain a high profit after performing a new emergency task, the UAV should abandon some current tasks with low profit to bid for new tasks instead of a buy-sell contract [44]. As shown in Figure 6, the task scheduling schemes of UAV V1 are {T1,T3,T4,T2}. An emergency task with a high reward appears during the implementation. The replacement contract will be employed to help the UAV V1 perform the emergency task at the cost of one task in the scheme.

Figure 6.

Figure 6

Sketch map for replacement contract. (a) Initial task scheduling scheme; (b) Task re-scheduling scheme.

The replacement contract can be described by a five-tuple, <Vi,Vj,Ti,j,Tj,null,Ui,jreplace>. Vi and Vj are a tenderee and a bidder, respectively. Ti,j is the task which is transferred from the UAV Vi to the UAV Vj. Tj,null is the abandoned task from the UAV Vj. Ui,jreplace is the performance of the whole UAV system after one auction. The procedures of the replacement contract are as follows.

Step 1: Initialize the performance of all UAVs (specifically, calculate the remaining capabilities and update their task scheduling schemes), and determine the only tenderee according to the maximum remaining capability.

Step 2: The tenderee Vi will release the information about the task Tki.The UAV Vj will use the replacement contract that it will abandon its task Tlj and perform the task Tki. The performance of the UAV Vj can be calculated by the following formula.

Ujreplace(Tki,Tlj)=Uj((Sj{Tki})\{Tlj})Uj(Sj) (20)

Step 3: The tenderee Vi will evaluate its performance if it agrees to the replacement contract as follows.

Ui,jreplace(Tki,Tlj)=Ui(Tki)+Ujreplace(Tki,Tlj) (21)

Step 4: The tenderee Vi will evaluate the bids about the task Tki in finite time. It will select the winner who is the highest bidder and send the information to all bidders.

Ui,jreplace(Tki,Tlj)=maxq [1,NV],k [1,NP]{Ui,qreplace(Tki,Tlj)} (22)

Step 5: The winner and tenderee will sign the contract and update their task scheduling schemes.

4. Simulation Experiments and Results

4.1. Emergency Tasks

  • (1)

    Task re-scheduling based on buy-sell contract

The proposed algorithm is coded in MATLAB and run on a PC computer with Core i5-8400 2.80 GHz CPU, 8 G memory, and Windows 10 operating system. Three UAVs are employed to perform 10 tasks. Their information is shown in Table 2 and Table 3. The offline task scheduling scheme is reported in Table 4 and Figure 7. As shown in Figure 7, the simulation scenario is applied in a 100 km × 100 km area. The yellow circles and the red star represent obstacles and a UAV base station, respectively. The purple dots represent ten tasks, and the red lines denote flight paths of each UAV. The high-quality and collision-free paths between any pair of locations can be generated by the APPATT [13].

Table 2.

Parameter of UAVs.

UAV Base Flying Range (km) Speed (km/m) Memory
Capacity (Unit)
Energy
Capacity (s)
UAV-01 (10,10) 200 5 5 100
UAV-02 200 5 5 100
UAV-03 200 5 5 100

Table 3.

Parameter of Initial Tasks.

No. Coordinate Service Time (s) Time Window Reward
Erst Time Last Time
1 (18,92) 3.84 8:39:00 9:11:00 105
2 (36,11) 1.98 8:55:00 9:01:00 114
3 (6,75) 1.36 8:23:00 8:48:00 65
4 (53,74) 0.19 9:04:00 9:11:00 99
5 (34,57) 3.37 8:12:00 8:55:00 17
6 (18,19) 2.15 8:15:00 9:03:00 141
7 (70,90) 2.26 9:18:00 9:36:00 29
8 (91,30) 3.05 8:50:00 9:47:00 40
9 (68,14) 0.30 8:29:00 9:27:00 120
10 (47,22) 1.58 8:24:00 8:50:00 74

Table 4.

Offline Task Scheduling Schemes.

UAV Flying Range (km) Scheduling Scheme Reward
UAV-01 118 1069 335
UAV-02 147 287 183
UAV-03 149 5314 283

Figure 7.

Figure 7

Offline task scheduling schemes. (a) UAV-01; (b) UAV-02; (c) UAV-03.

During the implementation, the emergency task 11 (as shown in Table 5) is found and the UAV UAV-01 with the largest remaining capacity becomes the tenderee. The UAV-01 will release the information about the task 11 among the UAVs. It is found that only UAV-01 can obtain the most significant profit after it performs the emergency task. Therefore, emergency task 11 is allocated to the UAV-01. The running time of task re-scheduling is 0.003 s. The task re-scheduling schemes are as shown in Table 6 and Figure 8.

Table 5.

Parameter of the Emergency Tasks.

No. Coordinate Service Time (s) Time Window Reward
Erst Time Last Time
11 (75,60) 0.56 8:53:00 9:20:00 88

Table 6.

Task Re-scheduling Schemes based on Buy-sell Contract to Deal with Emergency Tasks.

UAV Flying Range (km) Scheduling Scheme Reward
UAV-01 165 106911 423
UAV-02 147 287 183
UAV-03 149 5314 283

Figure 8.

Figure 8

Task re-scheduling schemes with the emergency task based on buy-sell contract. (a) UAV-01; (b) UAV-02; (c) UAV-03.

  • (2)

    Task re-scheduling based on replacement contract

Three UAVs are employed to perform 10 tasks. Their information is shown in Table 2 and Table 7. The offline task scheduling scheme is reported in Table 8 and Figure 9.

Table 7.

Parameter of Tasks.

No. Coordinate Service Time (s) Time Window Reward
Erst Time Last Time
1 (90,10) 4.65 8:23:00 8:35:00 18
2 (93,15) 0.47 9:19:00 9:54:00 81
3 (6,59) 4.84 8:22:00 9:10:00 89
4 (31,25) 0.17 8:19:00 8:40:00 148
5 (50,40) 4.42 8:35:00 8:55:00 57
6 (96,3) 1.36 8:30:00 9:06:00 127
7 (35,42) 0.87 9:22:00 9:14:00 98
8 (97,80) 2.73 9:26:00 9:48:00 96
9 (30,86) 4.71 9:27:00 9:59:00 17
10 (72,47) 2.80 8:01:00 9:00:00 148

Table 8.

Offline Task Scheduling Schemes.

UAV Flying Range (km) Scheduling Scheme Reward
UAV-01 148 165 202
UAV-02 167 4 3 72 416
UAV-03 183 1089 261

Figure 9.

Figure 9

Offline task scheduling schemes. (a) UAV-01; (b) UAV-02; (c) UAV-03.

During the implementation, the emergency task 11 (as shown in Table 9) is found and the UAV UAV-01 with the largest remaining capacity becomes the tenderee. The UAV-01 will release the information about the task 11 among the UAVs. It is found that no UAVs can perform the task 11 based on the buy-sell contract. Thus, the replacement contract will be employed. The task which is close to the emergency task in terms of distance and time window and whose reward is lower than the emergency task may be replaced. Through this way, the allocated task 1 is the replaced task. The running time of task re-scheduling is 0.0005 s. The task re-scheduling schemes are as shown in Table 10 and Figure 10.

Table 9.

Parameter of the Emergency Tasks.

No. Coordinate Service Time (s) Time Window Reward
Erst Time Last Time
11 (75,10) 0.56 8:22:00 8:38:00 88

Table 10.

Task Re-scheduling Schemes based on Replacement Contract to Deal with Emergency Tasks.

UAV Flying Range (km) Scheduling Scheme Reward
UAV-01 126 11→6→5 272
UAV-02 167 4→3→7→2 416
UAV-03 183 10→8→9 261

Figure 10.

Figure 10

Task re-scheduling schemes with the emergency task based on replacement contract. (a) UAV-01; (b) UAV-02; (c) UAV-03.

4.2. Pop-Up Obstacles

In this section, the information about three UAVs and ten tasks are shown in Table 2 and Table 3. The initial task scheduling scheme of UAV-01 is 106911. The initial task scheduling scheme of UAV-02 is 287. The initial task scheduling scheme of UAV-03 is 5314. Task re-scheduling will be performed by buy-sell contract to deal with pop-up obstacles, whose result is reported as shown in Figure 11. During the implementation, the pop-up obstacle (the gray circle as shown in Figure 11) is found. The pop-up obstacle prohibits the UAV UAV-02 from flying from the task 8 to the task 7. Thus, the UAV UAV-02 will release the information about the task 7 and the UAV UAV-03 will win the bidding. The task re-scheduling scheme is reported as shown in Table 11.

Figure 11.

Figure 11

Task re-scheduling schemes with the pop-up obstacle based on replacement contract. (a) UAV-01; (b) UAV-02; (c) UAV-03.

Table 11.

Task Rescheduling Schemes based on Buy-sell Contract to Deal with Pop-up Obstacles.

UAV Flying Range (km) Scheduling Scheme Reward
UAV-01 165 10→6→9→11 423
UAV-02 84 2→8 154
UAV-03 183 5→3→1→4→7 206

4.3. Platform Failure

In this section, the initial task scheduling scheme is shown in Table 4. To be specific, the initial task scheduling scheme of UAV-01 is 106911. The initial task scheduling scheme of UAV-02 is 287. The initial task scheduling scheme of UAV-03 is 5314. Suppose that the UAV UAV-02 breaks down and cannot complete its assigned tasks. Its tasks 2, 8, and 7 will be sold sequentially at auction. The buy-sell contract is firstly performed. The location of task 2 is close to task 9, which means that lower travel distance will be generated if the UAV-01 accomplishes task 2 after the task 9. Besides, the time window constraint of the task 2 also can be met. Thus, the UAV UAV-01 wins the bidding and performs the task 2 after the task 9. Similarly, the tasks 7 and 8 will be allocated to the UAV UAV-03 via the buy-sell contract. The running time of task re-scheduling is 0.005 s. The final task re-scheduling scheme is shown in Table 12 and Figure 12.

Table 12.

Task Re-scheduling Schemes based on Hybrid Contracts to Deal with Platform Failure.

UAV Flying Range (km) Scheduling Scheme Reward
UAV-01 150 10→6→9→2 449
UAV-03 235 5→3→1→4→7→8 352

Figure 12.

Figure 12

Task re-scheduling schemes with the platform failure based on hybrid contracts. (a) UAV-01; (b) UAV-03.

As shown in Figure 12, the yellow circles and the red star represent obstacles and a UAV base, respectively. The purple dots represent ten tasks, and the red lines denote flight paths of each UAV. All the UAVs originate from one base. The UAV UAV-02 cannot depart from the base successfully and fail to complete its offline allocated tasks suddenly due to faults. Its allocated tasks will be re-allocated to the UAV-01 and UAV-03 via hybrid CNP. Figure 12a,b shows the final flight paths of each UAV which are related to their task re-scheduling schemes. Note that the flight paths may be crossed due to time windows as shown in Figure 12a.

5. Conclusions

To cope with the failure of the offline task scheduling scheme due to uncertain elements, a hybrid CNP is proposed to realize dynamic task scheduling. Extensive simulations are conducted under three scenarios with emergency tasks, pop-up obstacles and platform failure to verify the superiority of the proposed method. The following conclusions can be drawn from the results: (1) the hybrid CNP can respond to the dynamic elements (emergency tasks, pop-up obstacles, and platform failure) and is also capable of generating a new task scheduling scheme based on the offline scheme with about milliseconds delays for all designed cases. (2) Compared with a single contract, the hybrid CNP is more flexible and suitable for various dynamic environments, such as emergency tasks, pop-up obstacles, platform failure, and so on. In the future, more dynamic conditions should be considered, such as extreme weather, multiple platform failures, aircraft kinematics, and so on. Moreover, to get close to reality, dynamic scheduling for heterogeneous UAVs equipped with various sensors should be further discussed.

Author Contributions

Methodology, Z.Z.; Writing–original draft & review & editing, H.L.; Supervision and Funding Acquisition, G.W. All authors have read and agreed to the published version of the manuscript.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

Funding Statement

This research was funded by National Natural Science Foundation of China under Grant 62073341.

Footnotes

Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

References

  • 1.Liu X., Li Z., Zhao N., Meng W., Gui G., Chen Y., Adachi F. Transceiver design and multihop D2D for UAV IoT coverage in disasters. IEEE Internet Things J. 2018;6:1803–1815. doi: 10.1109/JIOT.2018.2877504. [DOI] [Google Scholar]
  • 2.Oh D., Han J. Smart Search System of Autonomous Flight UAVs for Disaster Rescue. Sensors. 2021;21:6810. doi: 10.3390/s21206810. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 3.Yuan S., Ota K., Dong M., Zhao J. A path planning method with perception optimization based on sky scanning for UAVs. Sensors. 2022;22:891. doi: 10.3390/s22030891. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 4.Amrallah A., Mohamed E.M., Tran G.K., Sakaguchi K. Enhanced dynamic spectrum access in UAV wireless networks for post-disaster area surveillance system: A multi-player multi-armed bandit approach. Sensors. 2021;21:7855. doi: 10.3390/s21237855. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 5.Wu G., Pedrycz W., Li H., Ma M., Liu J. Coordinated planning of heterogeneous earth observation resources. IEEE Trans. Syst. Man Cybern. Syst. 2015;46:109–125. doi: 10.1109/TSMC.2015.2431643. [DOI] [Google Scholar]
  • 6.Zhang S., Liu J. Analysis and optimization of multiple unmanned aerial vehicle-assisted communications in post-disaster areas. IEEE Trans. Veh. Technol. 2018;67:12049–12060. doi: 10.1109/TVT.2018.2871614. [DOI] [Google Scholar]
  • 7.Baek J., Han S.I., Han Y. Energy-efficient UAV routing for wireless sensor networks. IEEE Trans. Veh. Technol. 2019;69:1741–1750. doi: 10.1109/TVT.2019.2959808. [DOI] [Google Scholar]
  • 8.Wang Y., Chen M., Pan C., Wang K., Pan Y. Joint Optimization of UAV Trajectory and Sensor Uploading Powers for UAV-assisted Data Collection in Wireless Sensor Networks. IEEE Internet Things J. 2021 doi: 10.1109/JIOT.2021.3126329. [DOI] [Google Scholar]
  • 9.Yang H., Ruby R., Pham Q.-V., Wu K. Aiding a disaster spot via multi-UAV-based IoT networks: Energy and mission completion time-aware trajectory optimization. IEEE Internet Things J. 2022;9:5853–5867. doi: 10.1109/JIOT.2021.3109138. [DOI] [Google Scholar]
  • 10.Zhao W., Meng Q., Chung P.W. A heuristic distributed task allocation method for multivehicle multitask problems and its application to search and rescue scenario. IEEE Trans. Cybern. 2015;46:902–915. doi: 10.1109/TCYB.2015.2418052. [DOI] [PubMed] [Google Scholar]
  • 11.Sawalmeh A., Othman N.S., Liu G., Khreishah A., Alenezi A., Alanazi A. Power-Efficient Wireless Coverage Using Minimum Number of UAVs. Sensors. 2021;22:223. doi: 10.3390/s22010223. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 12.Ebrahimi D., Sharafeddine S., Ho P.-H., Assi C. UAV-aided projection-based compressive data gathering in wireless sensor networks. IEEE Internet Things J. 2018;6:1893–1905. doi: 10.1109/JIOT.2018.2878834. [DOI] [Google Scholar]
  • 13.Liu H., Li X., Fan M., Wu G., Pedrycz W., Suganthan P.N. An Autonomous Path Planning Method for Unmanned Aerial Vehicle Based on a Tangent Intersection and Target Guidance Strategy. IEEE Trans. Intell. Transp. Syst. 2022;23:3061–3073. doi: 10.1109/TITS.2020.3030444. [DOI] [Google Scholar]
  • 14.Dias M.B., Zlot R., Kalra N., Stentz A. Market-based multirobot coordination: A survey and analysis. Proc. IEEE. 2006;94:1257–1270. doi: 10.1109/JPROC.2006.876939. [DOI] [Google Scholar]
  • 15.Chen J., Sun D. Coalition-based approach to task allocation of multiple robots with resource constraints. IEEE Trans. Autom. Sci. Eng. 2012;9:516–528. doi: 10.1109/TASE.2012.2201470. [DOI] [Google Scholar]
  • 16.Vovos P.N., Kiprakis A.E., Wallace A.R., Harrison G.P. Centralized and distributed voltage control: Impact on distributed generation penetration. IEEE Trans. Power Syst. 2007;22:476–483. doi: 10.1109/TPWRS.2006.888982. [DOI] [Google Scholar]
  • 17.Yuan W., Wu N., Etzlinger B., Li Y., Yan C., Hanzo L. Expectation–maximization-based passive localization relying on asynchronous receivers: Centralized versus distributed implementations. IEEE Trans. Commun. 2018;67:668–681. doi: 10.1109/TCOMM.2018.2866478. [DOI] [Google Scholar]
  • 18.Han X., Mandal S., Pattipati K.R., Kleinman D.L., Mishra M. An optimization-based distributed planning algorithm: A blackboard-based collaborative framework. IEEE Trans. Syst. Man Cybern. Syst. 2013;44:673–686. doi: 10.1109/TSMC.2013.2276392. [DOI] [Google Scholar]
  • 19.Zaman S., Grosu D. Combinatorial auction-based allocation of virtual machine instances in clouds. J. Parallel Distrib. Comput. 2013;73:495–508. doi: 10.1016/j.jpdc.2012.12.006. [DOI] [Google Scholar]
  • 20.Lee D.-H., Zaheer S.A., Kim J.-H. A resource-oriented, decentralized auction algorithm for multirobot task allocation. IEEE Trans. Autom. Sci. Eng. 2014;12:1469–1481. doi: 10.1109/TASE.2014.2361334. [DOI] [Google Scholar]
  • 21.Choi H.-L., Brunet L., How J.P. Consensus-based decentralized auctions for robust task allocation. IEEE Trans. Robot. 2009;25:912–926. doi: 10.1109/TRO.2009.2022423. [DOI] [Google Scholar]
  • 22.Zhang J., Wang G., Song Y. Task assignment of the improved contract net protocol under a multi-agent system. Algorithms. 2019;12:70. doi: 10.3390/a12040070. [DOI] [Google Scholar]
  • 23.Qin B., Zhang D., Tang S., Wang M. Distributed Grouping Cooperative Dynamic Task Assignment Method of UAV Swarm. Appl. Sci. 2022;12:2865. doi: 10.3390/app12062865. [DOI] [Google Scholar]
  • 24.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. doi: 10.1016/j.ast.2021.107054. [DOI] [Google Scholar]
  • 25.Smith R.G. The contract net protocol: High-level communication and control in a distributed problem solver. IEEE Trans. Comput. 1980;29:1104–1113. doi: 10.1109/TC.1980.1675516. [DOI] [Google Scholar]
  • 26.Lee J., Lee S.-J., Chen H.-M., Wu C.-L. Composing web services enacted by autonomous agents through agent-centric contract net protocol. Inf. Softw. Technol. 2012;54:951–967. doi: 10.1016/j.infsof.2012.03.001. [DOI] [Google Scholar]
  • 27.Sousa P., Ramos C. A distributed architecture and negotiation protocol for scheduling in manufacturing systems. Comput. Ind. 1999;38:103–113. doi: 10.1016/S0166-3615(98)00112-2. [DOI] [Google Scholar]
  • 28.Owliya M., Saadat M., Jules G.G., Goharian M., Anane R. Agent-based interaction protocols and topologies for manufacturing task allocation. IEEE Trans. Syst. Man Cybern. Syst. 2012;43:38–52. doi: 10.1109/TSMCA.2012.2192263. [DOI] [Google Scholar]
  • 29.Váncza J., Márkus A. An agent model for incentive-based production scheduling. Comput. Ind. 2000;43:173–187. doi: 10.1016/S0166-3615(00)00066-X. [DOI] [Google Scholar]
  • 30.Baker A.D. Market-Based Control: A Paradigm for Distributed Resource Allocation. World Scientific; Singapore: 1996. Metaphor or reality: A case study where agents bid with actual costs to schedule a factory; pp. 184–223. [Google Scholar]
  • 31.Liang H.-T., Kang F.-J. A novel task optimal allocation approach based on Contract Net Protocol for Agent-oriented UUV swarm system modeling. Optik. 2016;127:3928–3933. doi: 10.1016/j.ijleo.2016.01.071. [DOI] [Google Scholar]
  • 32.Liang H.-T., Kang F.-J. Distributed task allocation modeling based on agent topology and protocol for collaborative system. Optik. 2016;127:7776–7781. doi: 10.1016/j.ijleo.2016.01.071. [DOI] [Google Scholar]
  • 33.Liu Y., Zhang A. Cooperative task assignment method of manned/unmanned aerial vehicle formation. Syst. Eng. Electron. 2010;32:584–588. [Google Scholar]
  • 34.Fan Z. Master’s Thesis. University of Electronic Science and Technology of China; Chengdu, China: 2017. A research of Multi-UAV Real-Time Task Allocation. [Google Scholar]
  • 35.Kumar P., Garg S., Singh A., Batra S., Kumar N., You I. MVO-based 2-D path planning scheme for providing quality of service in UAV environment. IEEE Internet Things J. 2018;5:1698–1707. doi: 10.1109/JIOT.2018.2796243. [DOI] [Google Scholar]
  • 36.Wu Y., Low K.H., Lv C. Cooperative path planning for heterogeneous unmanned vehicles in a search-and-track mission aiming at an underwater target. IEEE Trans. Veh. Technol. 2020;69:6782–6787. doi: 10.1109/TVT.2020.2991983. [DOI] [Google Scholar]
  • 37.Duan T., Wang W., Wang T., Chen X., Li X. Dynamic tasks scheduling model of UAV cluster based on flexible network architecture. IEEE Access. 2020;8:115448–115460. doi: 10.1109/ACCESS.2020.3002594. [DOI] [Google Scholar]
  • 38.Liu B., Deng M., Wu G., Pei X., Li H., Pedrycz W. Bottom-up mechanism and improved contract net protocol for dynamic task planning of heterogeneous earth observation resources. IEEE Trans. Syst. Man Cybern. Syst. 2022:1–14. doi: 10.1109/TSMC.2022.3143158. [DOI] [Google Scholar]
  • 39.Heredia G., Caballero F., Maza I., Merino L., Viguria A., Ollero A. Multi-unmanned aerial vehicle (UAV) cooperative fault detection employing differential global positioning (DGPS), inertial and vision sensors. Sensors. 2009;9:7566–7579. doi: 10.3390/s90907566. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 40.Lacroix S., Alami R., Lemaire T., Hattenberger G., Gancet J. Multiple Heterogeneous Unmanned Aerial Vehicles. Springer; Berlin/Heidelberg, Germany: 2007. Decision making in multi-UAVs systems: Architecture and Algorithms; pp. 15–48. [Google Scholar]
  • 41.de Moraes R.S., de Freitas E.P. Distributed control for groups of unmanned aerial vehicles performing surveillance missions and providing relay communication network services. J. Intell. Robot. Syst. 2018;92:645–656. doi: 10.1007/s10846-017-0726-z. [DOI] [Google Scholar]
  • 42.Kensler J.A., Agah A. Neural networks-based adaptive bidding with the contract net protocol in multi-robot systems. Appl. Intell. 2009;31:347–362. doi: 10.1007/s10489-008-0131-1. [DOI] [Google Scholar]
  • 43.Akbarimajd A., Barghi Jond H. Multi-Robot foraging based on contract net protocol. J. Adv. Comput. Res. 2014;5:61–67. [Google Scholar]
  • 44.Ouelhadj D., Hanachi C., Bouzouia B., Moualek A., Farhi A. A multi-contract net protocol for dynamic scheduling in flexible manufacturing systems (FMS); Proceedings of the 1999 IEEE International Conference on Robotics and Automation (Cat. No. 99CH36288C); Detroit, MI, USA. 10–15 May 1999; Piscataway, NJ, USA: IEEE; 1999. pp. 1114–1119. [Google Scholar]

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Data Availability Statement

Not applicable.


Articles from Sensors (Basel, Switzerland) are provided here courtesy of Multidisciplinary Digital Publishing Institute (MDPI)

RESOURCES