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.
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,
and
are the allowable earliest start time and latest end time of task
i, respectively.
is the travel time from the task
i to the task
j and
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
,
and
(
h: UAV index), respectively.
One decision variable denotes whether the UAV h flies from the task i to the task j, which is defined by a binary variable . If the UAV h flies from the task i to the task j, we have ; otherwise, . 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.
- (2)
Constraint 2: each UAV must fly to the next task after completing the current task, except for the final task.
- (3)
Constraint 3: the order of two tasks is unique.
- (4)
Constraint 4:
is the start time of task
j.
is the departure time of task
j.
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.
- (5)
Constraint 5:
is the flight distance of UAV
Vh to accomplish tasks.
- (6)
Constraint 6:
is the number of scheduled tasks for UAV
Vh.
- (7)
Constraint 7:
is the duration time of scheduled tasks for UAV
Vh.
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.
where
is the total performance of the task
for UAV
;
is the profit of the task
;
is the real-time performance when UAV
completes the task
;
is load balancing performance when UAV
completes the task
.
are the weight coefficients of indicators and meet the following formula,
.
- (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
to task
can be represented by
and
, respectively. Note that
,
and
can be generated after normalization. The net profit of task
completed by UVA
can be calculated as follows.
- (2)
The second objective is to improve the real-time performance which is given below.
where
is the required time for allocating the task
to the UAV
.
- (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.
where
is the number of scheduled tasks for the task scheduling scheme
, and
is the maximum number of scheduled tasks for the UAV
.
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 is the offline task scheduling scheme of UAV . There are emergency tasks, which can be denoted as . 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 is the offline task scheduling scheme of UAV . There are pop-up obstacles, which can be denoted as . 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 is the offline task scheduling scheme of UAV . UAVs cannot work well during the implementation (). 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.
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.