UAV Swarm Mission Planning in Dynamic Environment Using Consensus-Based Bundle Algorithm.

To solve the real-time complex mission-planning problem for Multiple heterogeneous Unmanned Aerial Vehicles (UAVs) in the dynamic environments, this paper addresses a new approach by effectively adapting the Consensus-Based Bundle Algorithms (CBBA) under the constraints of task timing, limited UAV resources, diverse types of tasks, dynamic addition of tasks, and real-time requirements. We introduce the dynamic task generation mechanism, which satisfied the task timing constraints. The tasks that require the cooperation of multiple UAVs are simplified into multiple sub-tasks to perform by a single UAV independently. We also introduce the asynchronous task allocation mechanism. This mechanism reduces the computational complexity of the algorithm and the communication time between UAVs. The partial task redistribution mechanism has been adopted for achieving the dynamic task allocation. The real-time performance of the algorithm is assured on the premise of optimal results. The feasibility and real-time performance of the algorithm are validated by conducting dynamic simulation experiments.


Introduction
The Unmanned Aerial Vehicles (UAVs) are widely used in the military battlefield nowadays, where the military practices are often challenged with more and more complex situations in contested tactic environments. With advanced sensors and precisive guidance weapons, a single UAV can basically perform a series of tasks such as investigation, attacking, and evaluation under complex situations. However, the ability of a single UAV to execute tasks is still limited. In order to accomplish the more sophisticated tasks in complex situations, multiple heterogeneous UAVs are usually adopted to perform cooperative operations. In multi-UAVs cooperative warfare, due to the different capabilities of UAVs, the diverse resources are needed to complete the tasks, and the time constraints between the tasks. Therefore, it is necessary to design a reasonable task planning scheme to attain the tasks and the sequential arrangement of the tasks. In battlefields, uncertainties of completion of tasks are an acute problem, for example, the new tasks short of UAV formation or the purge of UAV assigned to tasks often occur. Hence, the tasks reallocations in dynamic modes are needed. In addition, to achieve the

•
The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window W j ( Sensors 2020, 20, x FOR PEER REVIEW 3 of 20

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that UAV does not perform subtasks, represents the time spent by UAV and performing subtasks , represents the time required to complete subtasks .
) for each subtask of target T j as follows:  [29] refers to the combat activities of attacking enemy ystems in a specific area to make them temporarily or permanently incapacitated. weakens enemy air defense forces. In this paper, we refer the enemy air defense system y ground radar. The SEAD tasks for each enemy target include three sub-tasks: ce, attack, and evaluation. These three sub-tasks have strict timing requirements. In y out the investigation and evaluation task, a UAV with corresponding sensors are adiate the target for a period. In terms of conducting the attack task, UAV needs to be h arsenals, and the mission may require multiple of arsenals to hit the target and destroy has limited load capacity and can only mount a certain number of arsenals. The combat t as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., k and Evaluate, = , , . The UAV will get benefits once completion of work of wever, all subtasks will not perform together in the same time as they may perform in time. s carry sensors for reconnaissance and assessment missions. lify the problem, the following assumptions are made. nergy shortage of sensors is not considered; urning radius of UAV is not included; n the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, he rest of the time flies at a constant speed; sion avoidance is ignored; nfluence of duration is not considered. ical Model rocess of task planning, due to the complexity of the task, a variety of constraints has red. The execution of the three subtasks of each target has strict timing requirements. tion task to be done first, followed by the strike task, and then the target is evaluated raction of target. Set the time window for each subtask of target as follows: them, , , represent the time window of target detection, attack and btasks, start represents the start time of time window, and end represents the end time. straints are as follows: ion, the resource requirements of tasks and the resource carrying capacity of UAV der in mission planning. For investigation and evaluation of sub-tasks, only one UAV is ach task, and the execution time of UAV cannot be less than the shortest time required he constraints are as follows: Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy efense systems in a specific area to make them temporarily or permanently incapacitated. fore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system e enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: naissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In to carry out the investigation and evaluation task, a UAV with corresponding sensors are ed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be ped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy e UAV has limited load capacity and can only mount a certain number of arsenals. The combat rio is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., t, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of sks. However, all subtasks will not perform together in the same time as they may perform in ifferent time. All UAVs carry sensors for reconnaissance and assessment missions. To simplify the problem, the following assumptions are made.
The energy shortage of sensors is not considered; The turning radius of UAV is not included; When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; Collision avoidance is ignored; The influence of duration is not considered.

athematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has considered. The execution of the three subtasks of each target has strict timing requirements. nvestigation task to be done first, followed by the strike task, and then the target is evaluated the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and ation subtasks, start represents the start time of time window, and end represents the end time. ime constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV ld consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is ed for each task, and the execution time of UAV cannot be less than the shortest time required e task. The constraints are as follows: The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The binary variable = 1 indicates that UAV performs subtasks ,  [29] refers to the combat activities of attacking enemy s in a specific area to make them temporarily or permanently incapacitated. ens enemy air defense forces. In this paper, we refer the enemy air defense system und radar. The SEAD tasks for each enemy target include three sub-tasks: tack, and evaluation. These three sub-tasks have strict timing requirements. In t the investigation and evaluation task, a UAV with corresponding sensors are e the target for a period. In terms of conducting the attack task, UAV needs to be enals, and the mission may require multiple of arsenals to hit the target and destroy mited load capacity and can only mount a certain number of arsenals. The combat two-dimensional area. At the beginning of the battle, there are a set of Vehicles d a set of Targets = { , … , }. Each target contains three subtasks, i.e., Evaluate, = , , . The UAV will get benefits once completion of work of r, all subtasks will not perform together in the same time as they may perform in ry sensors for reconnaissance and assessment missions. e problem, the following assumptions are made. y shortage of sensors is not considered; g radius of UAV is not included; UAV is on mission in the area above the target, the speed is 0, the UAV hovers, st of the time flies at a constant speed; voidance is ignored; nce of duration is not considered. odel s of task planning, due to the complexity of the task, a variety of constraints has The execution of the three subtasks of each target has strict timing requirements. task to be done first, followed by the strike task, and then the target is evaluated n of target. Set the time window for each subtask of target as follows: , , , represent the time window of target detection, attack and s, start represents the start time of time window, and end represents the end time. ts are as follows: the resource requirements of tasks and the resource carrying capacity of UAV mission planning. For investigation and evaluation of sub-tasks, only one UAV is sk, and the execution time of UAV cannot be less than the shortest time required nstraints are as follows:  [29] refers to the combat activities of attacking enemy stems in a specific area to make them temporarily or permanently incapacitated. eakens enemy air defense forces. In this paper, we refer the enemy air defense system ground radar. The SEAD tasks for each enemy target include three sub-tasks: e, attack, and evaluation. These three sub-tasks have strict timing requirements. In out the investigation and evaluation task, a UAV with corresponding sensors are diate the target for a period. In terms of conducting the attack task, UAV needs to be arsenals, and the mission may require multiple of arsenals to hit the target and destroy as limited load capacity and can only mount a certain number of arsenals. The combat as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles and a set of Targets = { , … , }. Each target contains three subtasks, i.e., and Evaluate, = , , . The UAV will get benefits once completion of work of ever, all subtasks will not perform together in the same time as they may perform in me. carry sensors for reconnaissance and assessment missions. fy the problem, the following assumptions are made. ergy shortage of sensors is not considered; rning radius of UAV is not included; the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, e rest of the time flies at a constant speed; ion avoidance is ignored; fluence of duration is not considered. al Model ocess of task planning, due to the complexity of the task, a variety of constraints has ed. The execution of the three subtasks of each target has strict timing requirements. ion task to be done first, followed by the strike task, and then the target is evaluated ction of target. Set the time window for each subtask of target as follows: hem, , , represent the time window of target detection, attack and tasks, start represents the start time of time window, and end represents the end time. traints are as follows: on, the resource requirements of tasks and the resource carrying capacity of UAV er in mission planning. For investigation and evaluation of sub-tasks, only one UAV is ch task, and the execution time of UAV cannot be less than the shortest time required e constraints are as follows: 20, x FOR PEER REVIEW 3 of 20

Description and Mathematical Model
Description ression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy e systems in a specific area to make them temporarily or permanently incapacitated. it weakens enemy air defense forces. In this paper, we refer the enemy air defense system my ground radar. The SEAD tasks for each enemy target include three sub-tasks: ance, attack, and evaluation. These three sub-tasks have strict timing requirements. In arry out the investigation and evaluation task, a UAV with corresponding sensors are irradiate the target for a period. In terms of conducting the attack task, UAV needs to be with arsenals, and the mission may require multiple of arsenals to hit the target and destroy V has limited load capacity and can only mount a certain number of arsenals. The combat set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., tack and Evaluate, = , , . The UAV will get benefits once completion of work of However, all subtasks will not perform together in the same time as they may perform in nt time. AVs carry sensors for reconnaissance and assessment missions.
plify the problem, the following assumptions are made. e energy shortage of sensors is not considered; e turning radius of UAV is not included; hen the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, d the rest of the time flies at a constant speed; llision avoidance is ignored; e influence of duration is not considered.
atical Model process of task planning, due to the complexity of the task, a variety of constraints has idered. The execution of the three subtasks of each target has strict timing requirements. igation task to be done first, followed by the strike task, and then the target is evaluated istraction of target. Set the time window for each subtask of target as follows: g them, , , represent the time window of target detection, attack and subtasks, start represents the start time of time window, and end represents the end time. onstraints are as follows: dition, the resource requirements of tasks and the resource carrying capacity of UAV sider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is r each task, and the execution time of UAV cannot be less than the shortest time required . The constraints are as follows:  [29] refers to the combat activities of attacking enemy fense systems in a specific area to make them temporarily or permanently incapacitated. ore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: aissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In to carry out the investigation and evaluation task, a UAV with corresponding sensors are d to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be ed with arsenals, and the mission may require multiple of arsenals to hit the target and destroy UAV has limited load capacity and can only mount a certain number of arsenals. The combat io is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., , Attack and Evaluate, = , , . The UAV will get benefits once completion of work of ks. However, all subtasks will not perform together in the same time as they may perform in ferent time. ll UAVs carry sensors for reconnaissance and assessment missions. o simplify the problem, the following assumptions are made.
The energy shortage of sensors is not considered; The turning radius of UAV is not included; When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; Collision avoidance is ignored; The influence of duration is not considered.
thematical Model the process of task planning, due to the complexity of the task, a variety of constraints has onsidered. The execution of the three subtasks of each target has strict timing requirements. vestigation task to be done first, followed by the strike task, and then the target is evaluated he distraction of target. Set the time window for each subtask of target as follows: mong them, , , represent the time window of target detection, attack and tion subtasks, start represents the start time of time window, and end represents the end time.
e constraints are as follows: addition, the resource requirements of tasks and the resource carrying capacity of UAV consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is d for each task, and the execution time of UAV cannot be less than the shortest time required

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required E j end (2) In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed Sensors 2020, 20, 2307 4 of 21 for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The binary variable z i k = 1 indicates that UAV V i performs subtasks k, z i k = 0 indicates that UAV does not perform subtasks, tc i k represents the time spent by UAV V i and performing subtasks k, tc k represents the time required to complete subtasks k.
For a strike mission, multiple arsenals are considered for each target to ensure its complete destruction. In addition, the total number of arsenals used by each UAV cannot exceed the total number of arsenals it carries. The resource constraints are as follows: Among them, i j denotes the missile consumed by UAV V i when it strikes the target T j ; the binary variable z i j = 1 denotes the UAV V i striking target T j , and z i j = 0 denotes the non-striking; 0 T j denotes the number of missiles needed to completely destroy the target T j , and 0 V i denotes the initial number of missiles carried by UAV V i .
In task planning, on the one hand, to maximize the total revenue, on the other hand, to ensure the shortest total mission time. We ensure the balance between the two parts when designing the revenue function. The revenue function consists of two parts: the revenue reward function and the distance discount function 11. Revenue reward function R i k P i represents the benefit of UAV V i and performing a specified subtask k along a predetermined path P i . It is linked with two factors, one is the fixed benefit r k of UAV performing the subtask, the other one is the relationship between the time 3 of 20 atical Model e (SEAD) [29] refers to the combat activities of attacking enemy a to make them temporarily or permanently incapacitated. se forces. In this paper, we refer the enemy air defense system EAD tasks for each enemy target include three sub-tasks: n. These three sub-tasks have strict timing requirements. In and evaluation task, a UAV with corresponding sensors are riod. In terms of conducting the attack task, UAV needs to be n may require multiple of arsenals to hit the target and destroy and can only mount a certain number of arsenals. The combat ea. At the beginning of the battle, there are a set of Vehicles ts = { , … , }. Each target contains three subtasks, i.e., , , . The UAV will get benefits once completion of work of ot perform together in the same time as they may perform in naissance and assessment missions. wing assumptions are made. s is not considered; not included; in the area above the target, the speed is 0, the UAV hovers, t a constant speed; ; ot considered.
due to the complexity of the task, a variety of constraints has e three subtasks of each target has strict timing requirements. t, followed by the strike task, and then the target is evaluated ime window for each subtask of target as follows: esent the time window of target detection, attack and he start time of time window, and end represents the end time.
ements of tasks and the resource carrying capacity of UAV For investigation and evaluation of sub-tasks, only one UAV is n time of UAV cannot be less than the shortest time required ows: ates that UAV performs subtasks , = 0 indicates that epresents the time spent by UAV and performing subtasks complete subtasks . enals are considered for each target to ensure its complete mber of arsenals used by each UAV cannot exceed the total urce constraints are as follows: arrival when UAV arrives at the target area T j along the path P i and the time window Sensors 2020, 20, x FOR PEER REVIEW

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of atta air defense systems in a specific area to make them temporarily or permanently in Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air de is the enemy ground radar. The SEAD tasks for each enemy target include thre reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requ order to carry out the investigation and evaluation task, a UAV with corresponding needed to irradiate the target for a period. In terms of conducting the attack task, UAV equipped with arsenals, and the mission may require multiple of arsenals to hit the target it. The UAV has limited load capacity and can only mount a certain number of arsenals. scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of = { , … , } and a set of Targets = { , … , }. Each target contains three s Detect, Attack and Evaluate, = , , . The UAV will get benefits once completio subtasks. However, all subtasks will not perform together in the same time as they ma the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the U and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of con been considered. The execution of the three subtasks of each target has strict timing re The investigation task to be done first, followed by the strike task, and then the target after the distraction of target. Set the time window for each subtask of target Among them, , , represent the time window of target detection, evaluation subtasks, start represents the start time of time window, and end represents t The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capa should consider in mission planning. For investigation and evaluation of sub-tasks, only needed for each task, and the execution time of UAV cannot be less than the shortest ti by the task. The constraints are as follows: The binary variable = 1 indicates that UAV performs subtasks , = 0 in UAV does not perform subtasks, represents the time spent by UAV and perform , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to ensure destruction. In addition, the total number of arsenals used by each UAV cannot exce number of arsenals it carries. The resource constraints are as follows: Sensors 2020, 20, x FOR PEER REVIEW

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities air defense systems in a specific area to make them temporarily or permanen Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy is the enemy ground radar. The SEAD tasks for each enemy target includ reconnaissance, attack, and evaluation. These three sub-tasks have strict timing order to carry out the investigation and evaluation task, a UAV with correspo needed to irradiate the target for a period. In terms of conducting the attack task equipped with arsenals, and the mission may require multiple of arsenals to hit the it. The UAV has limited load capacity and can only mount a certain number of ars scenario is set as a two-dimensional area. At the beginning of the battle, there are a = { , … , } and a set of Targets = { , … , }. Each target contains t Detect, Attack and Evaluate, = , , . The UAV will get benefits once com subtasks. However, all subtasks will not perform together in the same time as th the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0 and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety been considered. The execution of the three subtasks of each target has strict tim The investigation task to be done first, followed by the strike task, and then the after the distraction of target. In addition, the resource requirements of tasks and the resource carrying should consider in mission planning. For investigation and evaluation of sub-task needed for each task, and the execution time of UAV cannot be less than the sho by the task. The constraints are as follows: ∑ ∈ ≥ ∈ , ∈ , , ∀ ∈ The binary variable = 1 indicates that UAV performs subtasks , UAV does not perform subtasks, represents the time spent by UAV and pe , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to en destruction. In addition, the total number of arsenals used by each UAV canno number of arsenals it carries. The resource constraints are as follows: k end of subtask k. The larger the fixed income r k of subtask, the earlier the arrival time Sensors 2020, 20, x FOR PEER REVIEW 3

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking en air defense systems in a specific area to make them temporarily or permanently incapacita Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense sy is the enemy ground radar. The SEAD tasks for each enemy target include three sub-t reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirement order to carry out the investigation and evaluation task, a UAV with corresponding sensors needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs t equipped with arsenals, and the mission may require multiple of arsenals to hit the target and des it. The UAV has limited load capacity and can only mount a certain number of arsenals. The com scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Veh = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of wo subtasks. However, all subtasks will not perform together in the same time as they may perfor the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV ho and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints been considered. The execution of the three subtasks of each target has strict timing requirem The investigation task to be done first, followed by the strike task, and then the target is evalu after the distraction of target. In addition, the resource requirements of tasks and the resource carrying capacity of U should consider in mission planning. For investigation and evaluation of sub-tasks, only one UA needed for each task, and the execution time of UAV cannot be less than the shortest time requ by the task. The constraints are as follows: ∑ ∈ ≥ ∈ , ∈ , , ∀ ∈ The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates UAV does not perform subtasks, represents the time spent by UAV and performing subt , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to ensure its comp destruction. In addition, the total number of arsenals used by each UAV cannot exceed the number of arsenals it carries. The resource constraints are as follows: arrival and the higher the reward R i k .

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that UAV does not perform subtasks, represents the time spent by UAV and performing subtasks , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to ensure its complete destruction. In addition, the total number of arsenals used by each UAV cannot exceed the total number of arsenals it carries. The resource constraints are as follows: Among them, λ is the scale factor, τ(P i ) indicates the time when UAV starts to execute subtask k along the path, τ(P i ) = max  [29] refers to the combat activities of attacking enemy nse systems in a specific area to make them temporarily or permanently incapacitated. re, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: issance, attack, and evaluation. These three sub-tasks have strict timing requirements. In carry out the investigation and evaluation task, a UAV with corresponding sensors are to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be d with arsenals, and the mission may require multiple of arsenals to hit the target and destroy AV has limited load capacity and can only mount a certain number of arsenals. The combat is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Attack and Evaluate, = , , . The UAV will get benefits once completion of work of s. However, all subtasks will not perform together in the same time as they may perform in erent time. UAVs carry sensors for reconnaissance and assessment missions. simplify the problem, the following assumptions are made. The energy shortage of sensors is not considered; The turning radius of UAV is not included; When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; Collision avoidance is ignored; The influence of duration is not considered.
hematical Model the process of task planning, due to the complexity of the task, a variety of constraints has nsidered. The execution of the three subtasks of each target has strict timing requirements. estigation task to be done first, followed by the strike task, and then the target is evaluated distraction of target. Set the time window for each subtask of target as follows: ong them, , , represent the time window of target detection, attack and ion subtasks, start represents the start time of time window, and end represents the end time. e constraints are as follows: addition, the resource requirements of tasks and the resource carrying capacity of UAV consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is for each task, and the execution time of UAV cannot be less than the shortest time required ask. The constraints are as follows:

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: ∑ ∈ ≥ ∈ , ∈ , , ∀ ∈ The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that UAV does not perform subtasks, represents the time spent by UAV and performing subtasks , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to ensure its complete destruction. In addition, the total number of arsenals used by each UAV cannot exceed the total number of arsenals it carries. The resource constraints are as follows:

Problem Description
Suppression of Enemy Air Defense (SEAD) [29] refers to the combat activities of attacking enemy air defense systems in a specific area to make them temporarily or permanently incapacitated. Therefore, it weakens enemy air defense forces. In this paper, we refer the enemy air defense system is the enemy ground radar. The SEAD tasks for each enemy target include three sub-tasks: reconnaissance, attack, and evaluation. These three sub-tasks have strict timing requirements. In order to carry out the investigation and evaluation task, a UAV with corresponding sensors are needed to irradiate the target for a period. In terms of conducting the attack task, UAV needs to be equipped with arsenals, and the mission may require multiple of arsenals to hit the target and destroy it. The UAV has limited load capacity and can only mount a certain number of arsenals. The combat scenario is set as a two-dimensional area. At the beginning of the battle, there are a set of Vehicles = { , … , } and a set of Targets = { , … , }. Each target contains three subtasks, i.e., Detect, Attack and Evaluate, = , , . The UAV will get benefits once completion of work of subtasks. However, all subtasks will not perform together in the same time as they may perform in the different time.
All UAVs carry sensors for reconnaissance and assessment missions.
To simplify the problem, the following assumptions are made.
• The energy shortage of sensors is not considered; • The turning radius of UAV is not included; • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: ∑ ∈ ≥ ∈ , ∈ , , ∀ ∈ The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that UAV does not perform subtasks, represents the time spent by UAV and performing subtasks , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to ensure its complete destruction. In addition, the total number of arsenals used by each UAV cannot exceed the total number of arsenals it carries. The resource constraints are as follows: k end , the time to execute the task has been missed, R i k (P i ) = 0. The distance discount function denotes the distance discount of UAV V i performing subtask k along the predetermined route P i , which is associated to the total distance of UAV flying along the route. The longer the route, the greater the discount. By designing a reasonable distance discount function, the marginal revenue of UAV performing tasks along the path decreases. The flight distance of UAV V i arriving at subtask k along the pre-determined route P i is expressed by d i k (P i ). There are the following calculation formulas: where d i start (P i ) represents the distance from the starting point to the first task point in the path, p represents each task point in the path, and d i p→p+1 P i represents the distance between two adjacent task points in the path. µ is the distance discount factor. According to the above formulas, the task benefit function S i k can be obtained as follows: When the binary variable z i k = 1, UAV V i is assigned to the task k, and when z i k = 0, UAV is not assigned to the task. Thus, w the objective function f is obtained as follows: The constraints are shown in Equations (1)-(4).

Task Planning Algorithms
In our study, we adapt the CBBA based task-planning algorithm. This algorithm improves the tasks in multiple ways. For examples, maintaining strict sequence between tasks; improving the timing requirements of task assignment and able to perform well even agent carrying limited resources. The task assignment requires multi-agent collaboration whether it is a single task or multi-heterogeneous agent task assignment. The agent function and carrying resources are different. The real-time task assignment under dynamic conditions needs to dynamically add tasks, and ensure the real-time performance of the algorithm.

Introduction of CBBA
The CBBA algorithm is an auction algorithm based on contract network proposed by Choi [12]. The algorithm consists of two phases: (1) task selection and (2) conflict mediation. In the task selection phase, each agent tries to insert tasks into its own path set until all tasks are assigned or agent resources are exhausted to maximize the benefits of its own tasks. In the conflict mediation phase, the conflicts among the tasks assigned by each agent are eliminated, and the global total revenue is maximized. The two phases of task selection and conflict mediation are frequently circulated until the end of task assignment.
In CBBA algorithm, the task assignment and communication mediation among different agents are independent. Here each agent has certain information. They are: . . : Task Bundle, which includes all tasks in battlefield known by agent V i ; P i = p 1 i , p 2 i , . . . : Path set, representing all tasks assigned by agent V i , is arranged in execution order; . . : The highest bidder, where x k i denotes agent V i 's highest bidding agent for task b k i in the task bundle B i , and ∅ if no agent is bidding;

Dynamic Task Generation
In the process of task assignment, we should consider not only the targets found before the simulation, but also the new targets in the battlefield. Each target generates a SEAD task, including three sub-tasks, detection, attack, and evaluation. These three subtasks have strict time constraints. Only after the pre-subtasks are completed, the post-subtasks can begin to execute. There is a coupling relationship between the time windows of the three subtasks. The task completion time of the pre-subtasks is the time window opening time of the post-subtasks. There is no special requirement for the time window width of the subtasks. Assuming that the target's detection, attack, and evaluation Sensors 2020, 20, 2307 6 of 21 subtasks are completed at llision avoidance is ignored; e influence of duration is not considered. atical Model process of task planning, due to the complexity of the task, a variety of constraints has ered. The execution of the three subtasks of each target has strict timing requirements. gation task to be done first, followed by the strike task, and then the target is evaluated straction of target. Set the time window for each subtask of target as follows: g them, , , represent the time window of target detection, attack and subtasks, start represents the start time of time window, and end represents the end time. nstraints are as follows: ition, the resource requirements of tasks and the resource carrying capacity of UAV sider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is each task, and the execution time of UAV cannot be less than the shortest time required . The constraints are as follows: nary variable = 1 indicates that UAV performs subtasks , = 0 indicates that not perform subtasks, represents the time spent by UAV and performing subtasks esents the time required to complete subtasks . ike mission, multiple arsenals are considered for each target to ensure its complete . In addition, the total number of arsenals used by each UAV cannot exceed the total arsenals it carries. The resource constraints are as follows: • Collision avoidance is ignored; • The influence of duration is not considered.

athematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has considered. The execution of the three subtasks of each target has strict timing requirements. investigation task to be done first, followed by the strike task, and then the target is evaluated the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and uation subtasks, start represents the start time of time window, and end represents the end time. time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV ld consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is ed for each task, and the execution time of UAV cannot be less than the shortest time required e task. The constraints are as follows: The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that does not perform subtasks, represents the time spent by UAV and performing subtasks represents the time required to complete subtasks . r a strike mission, multiple arsenals are considered for each target to ensure its complete ruction. In addition, the total number of arsenals used by each UAV cannot exceed the total ber of arsenals it carries. The resource constraints are as follows: • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that UAV does not perform subtasks, represents the time spent by UAV and performing subtasks , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to ensure its complete destruction. In addition, the total number of arsenals used by each UAV cannot exceed the total number of arsenals it carries. The resource constraints are as follows: E j f inish , respectively, the time window W j ( • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constrain been considered. The execution of the three subtasks of each target has strict timing requirem The investigation task to be done first, followed by the strike task, and then the target is eval after the distraction of target. In addition, the resource requirements of tasks and the resource carrying capacity of should consider in mission planning. For investigation and evaluation of sub-tasks, only one U needed for each task, and the execution time of UAV cannot be less than the shortest time req by the task. The constraints are as follows: ∑ ∈ ≥ ∈ , ∈ , , ∀ ∈ The binary variable = 1 indicates that UAV performs subtasks , = 0 indicate UAV does not perform subtasks, represents the time spent by UAV and performing sub , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to ensure its com destruction. In addition, the total number of arsenals used by each UAV cannot exceed the number of arsenals it carries. The resource constraints are as follows: ) of each subtask of the target T j is: hen the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, d the rest of the time flies at a constant speed; ollision avoidance is ignored; he influence of duration is not considered.
atical Model e process of task planning, due to the complexity of the task, a variety of constraints has idered. The execution of the three subtasks of each target has strict timing requirements. tigation task to be done first, followed by the strike task, and then the target is evaluated istraction of target. Set the time window for each subtask of target as follows: ng them, , , represent the time window of target detection, attack and subtasks, start represents the start time of time window, and end represents the end time. constraints are as follows: dition, the resource requirements of tasks and the resource carrying capacity of UAV nsider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is r each task, and the execution time of UAV cannot be less than the shortest time required k. The constraints are as follows: binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that s not perform subtasks, represents the time spent by UAV and performing subtasks resents the time required to complete subtasks . trike mission, multiple arsenals are considered for each target to ensure its complete n. In addition, the total number of arsenals used by each UAV cannot exceed the total f arsenals it carries. The resource constraints are as follows: • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that UAV does not perform subtasks, represents the time spent by UAV and performing subtasks , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to ensure its complete destruction. In addition, the total number of arsenals used by each UAV cannot exceed the total number of arsenals it carries. The resource constraints are as follows: • When the UAV is on mission in the area above the target, the speed is 0, the UAV hovers, and the rest of the time flies at a constant speed; • Collision avoidance is ignored; • The influence of duration is not considered.

Mathematical Model
In the process of task planning, due to the complexity of the task, a variety of constraints has been considered. The execution of the three subtasks of each target has strict timing requirements. The investigation task to be done first, followed by the strike task, and then the target is evaluated after the distraction of target. Set the time window for each subtask of target as follows: Among them, , , represent the time window of target detection, attack and evaluation subtasks, start represents the start time of time window, and end represents the end time. The time constraints are as follows: In addition, the resource requirements of tasks and the resource carrying capacity of UAV should consider in mission planning. For investigation and evaluation of sub-tasks, only one UAV is needed for each task, and the execution time of UAV cannot be less than the shortest time required by the task. The constraints are as follows: The binary variable = 1 indicates that UAV performs subtasks , = 0 indicates that UAV does not perform subtasks, represents the time spent by UAV and performing subtasks , represents the time required to complete subtasks . For a strike mission, multiple arsenals are considered for each target to ensure its complete destruction. In addition, the total number of arsenals used by each UAV cannot exceed the total number of arsenals it carries. The resource constraints are as follows: A j f inish , In f , ∀j ∈ T Due to the limitation of time window, each sub-task must be executed after the completion of its pre-task. Therefore, pre-task should be allocated before the allocation of each sub-task. After a sub-task assignment is completed, the order of tasks in the agent's path will be determined, and the completion time of the sub-task will be resolute. Therefore, after the pre-task of a sub-task is assigned, its own time window will be determined. When assigning tasks according to the time constraints of subtasks, tasks can be managed in a way that generates tasks dynamically.
For each target, at the beginning of simulation, its detection subtasks can be executed. Thus, at the beginning of task assignment, the detection subtasks of each target are added to the task set of all agents. After a subtask is assigned, new subtasks will generate according to its type.
After assigning the reconnaissance sub-task, a new attack sub-task for the target T j is generated. The number of arsenals needed by the strike sub-task is 0 T j , which destroys the target. However, due to the limited carrying capacity of the agent or the fact that the agent has already attacked other targets, the agent cannot destroy the target alone after bidding for this task. In that case, other agents are needed to assist. For this kind of scenario multi-agent requires attack task/sub -task to destroy target together. As the single agent cannot destroy target under sub-task therefore, single agent cannot get all the benefits of attacking the target.
Assuming that the number of arsenals required for the current attack mission k is T k need , the number of remaining arsenals that the agent V i has not yet been assigned to other missions is V i last , and the strike revenue of the target is c, the benefit of the attack mission can be calculated according to the following formula: As we mentioned in the previous para that target could not destroy by a single agent after assigning the strike task, then additional agents will continue the task. In this paper, we achieve this goal by generating new attack subtasks and assigning them.
indicates that the strike sub-task has not been completed, a new strike sub-task will be generated. The number of arsenals needed to complete the task is T k need − V i last and the task time window remains unchanged. Then additional strike sub-task will add to the task set for all agents and assigned.
If the agent assigned to the sub-task has not completed thoroughly, a new sub-task will be generated and assigned until the sub-task is completed.
After the target attacking sub-task is completed, a new evaluation sub-task will be generated and added to the task set for all agents. Only one agent can complete each sub-task. The same type of targets and sub-tasks are added in the simulation process. First, generate detection sub-task followed by the strike sub-task and allocate it. Once the completion of the strike sub-task allocation occurs, the new evaluation sub-task will be generated and allocated.
The dynamic task generation algorithm is shown in Algorithm 1 below.

Asynchronoous Task Alloction
In CBBA [11], in order to achieve a conflict-free optimal solution, all tasks in the task set need to be compared in the conflict mediation phase. In this way, the communication between agents is increased. To ease the communication traffic, a new communication mediation method has been proposed in this paper. Two drawbacks in the previous CBBA algorithm are identified in communications.
One is that at each point of time, all adjacent agents need to communicate with each other. However, multiple UAVs, which are not in conflict with other agents participating in the communication may increase network load. Another point is that in each communication, the pair of agents who do not handle certain tasks, but they need to exchange information of all tasks, which rises the traffic. This section will address these two points.

Task Selection
Firstly, the state of tasks in task bundle is divided into the following four categories: auction, assigned, executing and completed. Among them, the auction indicates that the task is in the bidding state, and the agent can participate in the bidding of the task. The "assigned" indicates that the task has been assigned to the current agent. The "executing" indicates that an agent is performing the task and the "completed" indicates that the task has been completed. When the status of a task is in executing or completed types, the agent that performs the task sends the status information of the task to other agents through the communication network. And the agent that receives the message changes the status of the task in its own task set. In each task selection process, only one task is added to the agent's path set P i , and this task is the only object of this communication mediation. The task selection algorithm is illustrated in Algorithm 2. 1: Get a set B a i of all tasks that are auctioned 2: for k ∈ B a i 3: Change the state of task k * to assigned in B i 11: When adding tasks to the path set P i , we first find the set B a i of tasks whose states are auction in the task set B i . For each task k, we try to insert them into the path set so that the task can get the highest revenue. The score S i k (P i n {k}) of the nth position in the task insertion path set P i can be calculated by Formula (9). Trying to insert task k into each location of the path set, the maximum score obtained is the score S i k (P i ) of agent V i executing task k. Here the score calculation formula is as follows: Comparing the score S i k (P i ) with agent V i 's highest bid y k i for task k, the binary variable h i,k is obtained as follows: Then the maximum score of each task is compared to find the highest score S i k * (P i ) and the task corresponding k * and the best insertion position n i,k * . The formula is as follows: n i,k * = argmax n S i k * P i n {k * } If S i k * (P i ) > 0 indicates that the agent V i has bid for the task k * , then the state of the task will be changed to assigned in the task set B i , the highest bid will be changed to S i k * (P i ), and the highest bidder will be changed to agent. The task k * is then inserted at the n i,k * th position in the path set P i . The information update formula is as follows: Sensors 2020, 20, 2307 9 of 21 If the task k * is a strike mission, after inserting it into the path set, then arsenals requirements T k * need of the mission and the arsenal surplus V i last of the agent, the arsenal consumption V i last of the mission will adjust as follows, and the following changes are made to the remaining arsenal of the agent:

Conflict Mediation
When agent V i is assigned to a new task, unlike the previous CBBA synchronous communication mode, the agent does not need to wait for a specific time point. In this paper, an asynchronous communication method is used, which sends the information of the task to the agent who communicates directly with it after it is assigned to the task, without waiting. If the receiver changes its own information according to the sending information, the updated information about the task will send the agent directly. The task information sent by the agent includes the highest bid and the corresponding bidder. By means of asynchronous communication and sending only single task information, the traffic can be reduced significantly. The objective of conflict mediation is to ensure that each sub-task can only be assigned maximum of one agent.
After receiving the information about task k from agent V i , agent V j can take three actions: update, reset and leave. Specifically, as follows: Where B j k status denotes the state of task k considered by agent V j in task set B j . The conflict mediation rules are shown in Table 1, where the first column represents the highest bidder that the sender agent V i reflects about task k, the second column is the highest bidder that the receiver agent V j , and the third column is the action taken by the agent V j . Table 1. Decision rules for agent V j (receiver) upon receiving message from agent V i (sender).
After the agent V j acts on task k according to the rules provided in Table 1, it compares with the task status before the agent acts. If the state of task k is assigned in the task set B j , before the action commences. Then it indicates that the state of task k has changed. Therefore, task set and path set of the agent should update and delete the task k. In addition, if the task is a strike task, then the agent's surplus arsenal will be restored. The arsenal residual update formula is as follows:

Offline Task Assignment
The methods of task dynamic generation, task selection and conflict mediation have been introduced. In the current CBBA has two steps of task selection and conflict mediation, through the continuous cycle of two phases. Then a conflict-free optimal solution is sought.
As the current form of CBBA algorithm is not capable to address the very complex tasks, because each target contains multiple subtasks with strict timing constraints, and some subtasks required multiple agents to complete the tasks. Therefore, in this paper, the task dynamic generation method is introduced to simplify the complex tasks.
Offline task assignment refers to the assignment of all existing tasks before the agent starts to perform the tasks. At this point, state of agents and tasks numbers are fixed and do not change with the environment. The offline task assignment algorithm is shown in Algorithm 3: 1: Dynamic Task Generation 2: while some tasks have not been assigned 3: phase 1: Task selection and the currently assigned task is k 4: phase 2: Conflict mediation for task k 5: phase 3: Dynamic task generation based on task k 6: end while The offline task assignment algorithm has three phases: (1) task dynamic generation, (2) task selection, and (3) conflict mediation. The three phases form a loop in order until the assignment ends. First, at the beginning of the task assignment, the algorithm 1 is used to generate the detection subtasks for each target. Then insert them into the task set of all agents and start the loop to perform task assignment. In the task assignment process, each agent makes independent decisions in each task selection phase, and each cycle only adds a new task to the path set. If an agent is assigned to a new task, the task information is sent immediately to other agents for conflict mediation. In the conflict mediation phase, assign the currently processed subtask to one agent. After the conflict mediation, enter the task dynamic generation phase, generate a new subtask according to the currently assigned subtask, and then enter the task selection phase again to perform a new round of loop. At the end of the loop, all tasks in each agent's task set have their highest bidder, which enables the agent to think that all tasks are assigned, and they have performed.

Dynamic Task Assignment
During the simulation process, a new target T new may be encountered, and new tasks brought by the new targets need to be assigned to the agents. In traditional dynamic task allocation, the original path set of agents is deleted; and all tasks are released with new mixed tasks. Then reallocated the tasks. This allocation method incurred a large amount of computational cost, and it is difficult to guarantee the real-time performance of the algorithm in the rapidly changing battlefield. In this paper, the task allocation method of path set is reconstructed partially and adopted. Only releasing the allocation state of some low-revenue tasks and then reallocating can seek the optimal allocation scheme sought while ensuring the real-time of the solution. The dynamic task assignment algorithm is outlined in Algorithm 4. for all V i in V 3: for all task k in B i 5: if task k is a detection task and the status is auction or assigned. 6: end if 8: end for 9: for all target T j hasn't been executed 10: S j = ∑ k∈B aa i y k i ·h k # Gain total revenue of T j 11: end for 13: After the discovery of a new target, the assignment status of some tasks is removed first, and then the new tasks are reallocated together. To do that, a distributed control method is proposed and implemented. In this method, each agent performs independently through task distribution scheme.
For the agent V i , in order to ensure that the tasks being executed or completed are not affected, as long as all the targets corresponding to the auction or assigned subtasks are found, then the task set B aa i related to these targets are found in the task set B i , and then calculate the total revenue S = {S 1 , S 2 , . . .} of these targets according to the Equation (21).
where target k represents the target corresponding to task k, and then a set T of partial targets with the lowest total revenue is obtained according to Equation (23): Among them, |S| denotes the total number of targets that have not yet been executed, and ε ∈ [0, 1] is a proportional factor, indicating the proportion of the target number to |S| for reallocation. If ε is larger then more reallocated targets are, and the closer to the optimal solution. The smaller ε is, the smaller the number of reallocated targets, the higher the reallocation efficiency then min |S|·ε S represents the targets of the smallest total revenue. After that, each task k in the path set P i is judged. If the task corresponding to the target belongs to T and is a strike task, then arsenal surplus of agent V i needs to be updated: The binary variable T k = 1 indicates the target corresponding to task k belongs to T and is a strike task, and T k = 0 indicates that the above two conditions are not satisfied.
In addition, all tasks corresponding to the target T need to be deleted in the task set B i and the path set P i : where means to remove the task from the set. Then merge the new target T new into the set T according to Equation (27): Finally, the tasks generated by the targets in the set T are treated as new tasks, and the offline task allocation algorithm is used for allocation.

Simulation
To verify the feasibility of the improved CBBA to solve the complex task allocation and the real-time performance of task allocation, simulation experiments are designed to verify it. The simulation uses QT5.12.2 platform, the programming language is C++, the computer processor is Intel (R) Core (TM) i7-8700 CPU@3.20GHZ, the memory is 16.0 GB, and the system is Windows 10 Professional.
The simulation performance is depicted in three simulation scenarios, which are multi-UAV offline reconnaissance task assignment, heterogeneous UAV offline complex task assignment, and heterogeneous UAV real-time complex task assignment. The simulation results include: (1) UAV task route, showing the results of UAV task allocation and action route; (2) UAV task time, showing the time each UAV stays at the task point, and proving timing constraints between tasks; (3) algorithm calculation time, showing the time spent in algorithm calculation at each moment during the simulation, and showing the real-time performance of the algorithm.

Simulation Scene
In a 2-D simulation area, a total of 8 UAVs and 50 targets are included. The UAV needs to complete the reconnaissance task for all targets, and each target's reconnaissance task can be completed with only one UAV. Each UAV carries sufficient reconnaissance load and is capable of detecting all targets. During the reconnaissance of each target, it takes 5 s to stay above the target in order to obtain sufficient target information. At the initial moment, UAV and targets are randomly distributed in a 25 km × 15 km rectangular area. All targets are fixed targets, and they are added before the simulation starts. At the beginning of the simulation, each UAV performs task assignment independently and resolves conflicts through communication. After the task assignment is completed, the UAV starts to execute tasks in order. After the UAV starts to operate, the task assignment is no longer performed.

Simulation Result
The sequence of UAVs performing tasks is shown in Figure 1. The sequence of UAVs performing tasks is shown in Figure 1. In the figure, the red triangle symbol represents the initial position of the UAV, and the blue circle symbol represents the position of the target. It can be seen from the figure that UAV has performed all tasks, and each target is only detected by one UAV, and there is no task conflict. The number of UAV tasks is close, indicating that the algorithm balances the number of tasks for each UAV. When UAV executes the assigned tasks, its route is also optimal, ensuring the shortest task time.
When UAV performs reconnaissance missions, it needs to use sensors to continuously irradiate the target for a period of time, so that UAV will stay above the target for a period of time. In Figure  2, the left figure is the relationship between X coordinate and time of UAV, and the right figure is the relationship between Y coordinate and time. In the figure, the circle symbol represents the initial position of the UAV, and the two black crosses are in a group, representing the start time and end time when the UAV is detecting a target. It can be seen from the figure that UAV stayed at each target for enough time to detect it. In the figure, the red triangle symbol represents the initial position of the UAV, and the blue circle symbol represents the position of the target. It can be seen from the figure that UAV has performed all tasks, and each target is only detected by one UAV, and there is no task conflict. The number of UAV tasks is close, indicating that the algorithm balances the number of tasks for each UAV. When UAV executes the assigned tasks, its route is also optimal, ensuring the shortest task time.
When UAV performs reconnaissance missions, it needs to use sensors to continuously irradiate the target for a period of time, so that UAV will stay above the target for a period of time. In Figure 2, the left figure is the relationship between X coordinate and time of UAV, and the right figure is the relationship between Y coordinate and time. In the figure, the circle symbol represents the initial position of the UAV, and the two black crosses are in a group, representing the start time and end time when the UAV is detecting a target. It can be seen from the figure that UAV stayed at each target for enough time to detect it. Sensors 2020, 20, x FOR PEER REVIEW 13 of 20 In the improved CBBA, asynchronous task allocation is used to distribute the calculation of the entire allocation process. Figure 3 shows the time consumed by the algorithm calculation thread in each step during the simulation. The simulation step is 0.03 s, and the peak time for a single step calculation is 0.011 s, which is less than the simulation step. The total task allocation ends in 0.5 s, and a global task allocation scheme is quickly given to ensure real-time performance.

Simulation Scene
In the offline complex task assignment scenario of heterogeneous UAVs, all targets include a SEAD task, consisting of three subtasks: reconnaissance-strike-evaluation, and three subtasks have timing constraints. When performing reconnaissance and evaluation missions, UAVs need to carry sensors to irradiate them for a period of time to obtain target information. When performing strike missions, UAVs need to fire certain weapons to destroy them. The simulation scene contains a total In the improved CBBA, asynchronous task allocation is used to distribute the calculation of the entire allocation process. Figure 3 shows the time consumed by the algorithm calculation thread in each step during the simulation. The simulation step is 0.03 s, and the peak time for a single step calculation is 0.011 s, which is less than the simulation step. The total task allocation ends in 0.5 s, and a global task allocation scheme is quickly given to ensure real-time performance. In the improved CBBA, asynchronous task allocation is used to distribute the calculation of the entire allocation process. Figure 3 shows the time consumed by the algorithm calculation thread in each step during the simulation. The simulation step is 0.03 s, and the peak time for a single step calculation is 0.011 s, which is less than the simulation step. The total task allocation ends in 0.5 s, and a global task allocation scheme is quickly given to ensure real-time performance.

Simulation Scene
In the offline complex task assignment scenario of heterogeneous UAVs, all targets include a SEAD task, consisting of three subtasks: reconnaissance-strike-evaluation, and three subtasks have timing constraints. When performing reconnaissance and evaluation missions, UAVs need to carry sensors to irradiate them for a period of time to obtain target information. When performing strike missions, UAVs need to fire certain weapons to destroy them. The simulation scene contains a total

Simulation Scene
In the offline complex task assignment scenario of heterogeneous UAVs, all targets include a SEAD task, consisting of three subtasks: reconnaissance-strike-evaluation, and three subtasks have timing constraints. When performing reconnaissance and evaluation missions, UAVs need to carry sensors to irradiate them for a period of time to obtain target information. When performing strike missions, UAVs need to fire certain weapons to destroy them. The simulation scene contains a total of 30 UAVs and 40 targets. Each UAV carries 4 weapons. Each target requires 3 weapons to be completely destroyed. The target requires 5 s for reconnaissance, 2 s for strike, and 5 s for evaluation. Before the simulation, all UAVs and targets have been added to the battlefield, and the locations are randomly distributed in a 2-dimensional area. All targets are fixed targets and do not move with time.

Simulation Result
In the improved CBBA algorithm, the tasks that meet the timing constraints are assigned to each UAV strictly according to the timing by using the method of dynamically generating subtasks, and the multiple UAV tasks are disassembled into multiple subtasks and assigned to multiple UAVs so that they can work together. The results and execution route of the UAV task assignment are shown in Figure 4. When the UAV strikes some targets, because the UAV has consumed some ammunition when completing the previous strike mission, there is not enough ammunition to destroy the current target. Therefore, when performing these tasks, multiple UAVs need to work together to complete their strike mission. In the picture, targets such as T10 and T13 are attacked by two UAVs simultaneously. Therefore, when performing these tasks, multiple UAVs are needed to complete them. In the figure, targets such as T10 and T13 are simultaneously attacked by two UAVs.
Before the simulation, all UAVs and targets have been added to the battlefield, and the locations are randomly distributed in a 2-dimensional area. All targets are fixed targets and do not move with time.

Simulation Result
In the improved CBBA algorithm, the tasks that meet the timing constraints are assigned to each UAV strictly according to the timing by using the method of dynamically generating subtasks, and the multiple UAV tasks are disassembled into multiple subtasks and assigned to multiple UAVs so that they can work together. The results and execution route of the UAV task assignment are shown in Figure 4. When the UAV strikes some targets, because the UAV has consumed some ammunition when completing the previous strike mission, there is not enough ammunition to destroy the current target. Therefore, when performing these tasks, multiple UAVs need to work together to complete their strike mission. In the picture, targets such as T10 and T13 are attacked by two UAVs simultaneously. Therefore, when performing these tasks, multiple UAVs are needed to complete them. In the figure, targets such as T10 and T13 are simultaneously attacked by two UAVs.
In the improved CBBA, the tasks that meet the timing constraints are assigned to each UAV strictly according to the timing by using the method of dynamically generating subtasks, and the multiple UAV tasks are disassembled into multiple subtasks and assigned to multiple UAVs so that they can work together. The results and execution route of the UAV task assignment are shown in Figure 4. When the UAV strikes some targets, because the UAV has consumed some ammunition when completing the previous strike mission, there is not enough ammunition to destroy the current target. Therefore, when performing these tasks, multiple UAVs need to work together to complete their strike mission. In the picture, targets such as T10 and T13 are attacked by two UAVs simultaneously. Therefore, when performing these tasks, multiple UAVs are needed to complete them. In the figure, targets such as T10 and T13 are simultaneously attacked by two UAVs. Because UAVs have timing constraints when they perform reconnaissance, strike, and evaluation tasks, they cannot begin "execution" until the pre-mission tasks are completed. The curve of UAV position over time is shown in Figure 5. The left figure shows the relationship between X coordinate and time, and the right figure shows the relationship between Y coordinate and time. In the figure, every two crosses are a group, which represents the start time and end time of the subtask. It can be seen from the figure that the mission time of each target completed by a single UAV is In the improved CBBA, the tasks that meet the timing constraints are assigned to each UAV strictly according to the timing by using the method of dynamically generating subtasks, and the multiple UAV tasks are disassembled into multiple subtasks and assigned to multiple UAVs so that they can work together. The results and execution route of the UAV task assignment are shown in Figure 4. When the UAV strikes some targets, because the UAV has consumed some ammunition when completing the previous strike mission, there is not enough ammunition to destroy the current target. Therefore, when performing these tasks, multiple UAVs need to work together to complete their strike mission. In the picture, targets such as T10 and T13 are attacked by two UAVs simultaneously. Therefore, when performing these tasks, multiple UAVs are needed to complete them. In the figure, targets such as T10 and T13 are simultaneously attacked by two UAVs.
Because UAVs have timing constraints when they perform reconnaissance, strike, and evaluation tasks, they cannot begin "execution" until the pre-mission tasks are completed. The curve of UAV position over time is shown in Figure 5. The left figure shows the relationship between X coordinate and time, and the right figure shows the relationship between Y coordinate and time. In the figure, every two crosses are a group, which represents the start time and end time of the subtask. It can be seen from the figure that the mission time of each target completed by a single UAV is divided into 3 segments, from bottom to top: reconnaissance, strike, and evaluation. For the target that needs to be attacked by two UAVs, the mission time is divided into four sections. After the first UAV completes its reconnaissance and the partial task of strike, the second UAV completes its remaining strike task and evaluates the target after the target is destroyed. As you can see, all tasks are performed in sequence.
Sensors 2020, 20, x FOR PEER REVIEW 15 of 20 divided into 3 segments, from bottom to top: reconnaissance, strike, and evaluation. For the target that needs to be attacked by two UAVs, the mission time is divided into four sections. After the first UAV completes its reconnaissance and the partial task of strike, the second UAV completes its remaining strike task and evaluates the target after the target is destroyed. As you can see, all tasks are performed in sequence.

Simulation Scene
Before the simulation began, there were a total of 8 UAVs on the battlefield, each UAV carrying sensors and 9 weapons. In addition, 32 enemy targets have been found on the battlefield, and each target contains a SEAD mission, which needs to be reconnaissance, attacked and evaluated.  divided into 3 segments, from bottom to top: reconnaissance, strike, and evaluation. For the target that needs to be attacked by two UAVs, the mission time is divided into four sections. After the first UAV completes its reconnaissance and the partial task of strike, the second UAV completes its remaining strike task and evaluates the target after the target is destroyed. As you can see, all tasks are performed in sequence.

Simulation Scene
Before the simulation began, there were a total of 8 UAVs on the battlefield, each UAV carrying sensors and 9 weapons. In addition, 32 enemy targets have been found on the battlefield, and each target contains a SEAD mission, which needs to be reconnaissance, attacked and evaluated.

Simulation Scene
Before the simulation began, there were a total of 8 UAVs on the battlefield, each UAV carrying sensors and 9 weapons. In addition, 32 enemy targets have been found on the battlefield, and each target contains a SEAD mission, which needs to be reconnaissance, attacked and evaluated.
Each target requires 2 weapons to be destroyed. The target's reconnaissance takes 5 s, the strike takes 2 s, and the evaluation takes 5 s. After the simulation starts, new targets will continue to appear. These targets are of the same type as the previous targets and include a SEAD task.
After adding new targets, each UAV redistributes its tasks.

Simulation Result
After the simulation begins, new targets will appear in the battlefield, and the UAVs need to redistribute and execute the tasks brought by these new targets. In the Figure 7, the left figure shows the task assignment results before the emergence of the new target. As can be seen from the figure, due to the sufficient load of weapons carried, the UAV can complete most of the tasks alone, and all tasks are assigned and executed. The right figure shows the task assignment results after the new target appears. The black circle marks in the figure represents the new targets. Compared with the previous ones, the task assignment results have changed a lot. A total of 4 new targets appeared during the simulation. Each target requires 2 weapons to be destroyed. The target's reconnaissance takes 5 s, the strike takes 2 s, and the evaluation takes 5 s. After the simulation starts, new targets will continue to appear. These targets are of the same type as the previous targets and include a SEAD task.
After adding new targets, each UAV redistributes its tasks.

Simulation Result
After the simulation begins, new targets will appear in the battlefield, and the UAVs need to redistribute and execute the tasks brought by these new targets. In the Figure 7, the left figure shows the task assignment results before the emergence of the new target. As can be seen from the figure, due to the sufficient load of weapons carried, the UAV can complete most of the tasks alone, and all tasks are assigned and executed. The right figure shows the task assignment results after the new target appears. The black circle marks in the figure represents the new targets. Compared with the previous ones, the task assignment results have changed a lot. A total of 4 new targets appeared during the simulation. Because the UAV has already consumed a lot of ammunition when performing previous tasks, and there are not enough weapons to strike the new targets, more tasks need to be completed by multiple UAVs.
The new targets appearing on the battlefield are the same as the types of targets that previously existed, and the reconnaissance, strike, and evaluation tasks they produce also have timing constraints. Figure 8 shows the relationship between the Y coordinate and time of the UAV during the simulation. The left figure shows the relationship before the new target appears, and the right figure shows the relationship after the occurrence. It can be seen from the figure that before and after the new target appears, the task allocation results meet the requirements of timing constraints. Because the UAV has already consumed a lot of ammunition when performing previous tasks, and there are not enough weapons to strike the new targets, more tasks need to be completed by multiple UAVs.
The new targets appearing on the battlefield are the same as the types of targets that previously existed, and the reconnaissance, strike, and evaluation tasks they produce also have timing constraints. Figure 8 shows the relationship between the Y coordinate and time of the UAV during the simulation. The left figure shows the relationship before the new target appears, and the right figure shows the relationship after the occurrence. It can be seen from the figure that before and after the new target appears, the task allocation results meet the requirements of timing constraints. Sensors 2020, 20, x FOR PEER REVIEW 17 of 20 Figure 8. UAVs' Y coordinate over time. Figure 9 shows the relationship between the calculation time and simulation time of the algorithm. As can be seen from the figure, the algorithm has the largest calculation amount when starting off-line task allocation, with a peak time consumption of 0.0125 s, and the calculation time of the algorithm after that is about 0 ss. After each new target appears in the battlefield, UAV performs rapid task redistribution. By reconstructing part of the task bundle, the peak time of real-time task assignment calculation does not exceed 0.0075 s, which meets the algorithm's real-time performance requirements. The further experiment of the performance comparison has been conducted against the conventional CBBA algorithm, our improved CBBA algorithm with the dynamic task generation/allocation process outperform the conventional CBBA, Figure 10 shows our proposed scheme takes less average number of communication steps for consensus in various swarm sizes  Figure 9 shows the relationship between the calculation time and simulation time of the algorithm. As can be seen from the figure, the algorithm has the largest calculation amount when starting off-line task allocation, with a peak time consumption of 0.0125 s, and the calculation time of the algorithm after that is about 0 ss. After each new target appears in the battlefield, UAV performs rapid task redistribution. By reconstructing part of the task bundle, the peak time of real-time task assignment calculation does not exceed 0.0075 s, which meets the algorithm's real-time performance requirements.  Figure 9 shows the relationship between the calculation time and simulation time of the algorithm. As can be seen from the figure, the algorithm has the largest calculation amount when starting off-line task allocation, with a peak time consumption of 0.0125 s, and the calculation time of the algorithm after that is about 0 ss. After each new target appears in the battlefield, UAV performs rapid task redistribution. By reconstructing part of the task bundle, the peak time of real-time task assignment calculation does not exceed 0.0075 s, which meets the algorithm's real-time performance requirements. The further experiment of the performance comparison has been conducted against the conventional CBBA algorithm, our improved CBBA algorithm with the dynamic task generation/allocation process outperform the conventional CBBA, Figure 10 shows our proposed scheme takes less average number of communication steps for consensus in various swarm sizes The further experiment of the performance comparison has been conducted against the conventional CBBA algorithm, our improved CBBA algorithm with the dynamic task generation/ allocation process outperform the conventional CBBA, Figure 10 shows our proposed scheme takes when the emergent missions occur. We can see the extended CBBA approach exhibits a faster response with less steps.

Conclusions
This paper investigates the real-time complex task planning problem of Multi-heterogeneous UAVs in dynamic and uncertain environments. This work considers the following constraints for the task allocation: with time sequence constraints; under resource constraints; task allocation that requires multi-UAVs to cooperate; task allocation of Multi-heterogeneous UAVs as well as the realtime task allocation requirements in dynamic environments. In this paper, CBBA is improved to further solve the above problems. The contributions of the paper are three-folds: firstly, based on the existing task selection and conflict mediation in CBBA algorithm, a new dynamic task generation process is proposed. Through the dynamic task generation, not only the timing constraints between tasks can be guaranteed, but also the complex tasks that need to be accomplished by multiple UAVs can be divided into multiple sub-tasks that only need one UAV to complete.
Secondly, the new method of reconstructing partial path is developed. By re-participating some low-income tasks in task allocation, not only the optimal result of the allocation is achieved, but also the real-time performance of the allocation process is guaranteed. In addition, in order to ensure the real-time performance of the algorithm, the concept of asynchronous task allocation is introduced in this paper. By assigning tasks to UAVs at different time points and mediating only one task at each communication time, the time and communication load of the algorithm are greatly reduced under the premise of ensuring the performance of the algorithm.
Thirdly, we constructed a simulation platform and performed dynamic task assignment experiments, it is verified that the algorithm can achieve functions mentioned above. As a contribution to the research community, this platform can be used by other academic researchers for validation testing purposes.

Conclusions
This paper investigates the real-time complex task planning problem of Multi-heterogeneous UAVs in dynamic and uncertain environments. This work considers the following constraints for the task allocation: with time sequence constraints; under resource constraints; task allocation that requires multi-UAVs to cooperate; task allocation of Multi-heterogeneous UAVs as well as the real-time task allocation requirements in dynamic environments. In this paper, CBBA is improved to further solve the above problems. The contributions of the paper are three-folds: firstly, based on the existing task selection and conflict mediation in CBBA algorithm, a new dynamic task generation process is proposed. Through the dynamic task generation, not only the timing constraints between tasks can be guaranteed, but also the complex tasks that need to be accomplished by multiple UAVs can be divided into multiple sub-tasks that only need one UAV to complete.
Secondly, the new method of reconstructing partial path is developed. By re-participating some low-income tasks in task allocation, not only the optimal result of the allocation is achieved, but also the real-time performance of the allocation process is guaranteed. In addition, in order to ensure the real-time performance of the algorithm, the concept of asynchronous task allocation is introduced in this paper. By assigning tasks to UAVs at different time points and mediating only one task at each communication time, the time and communication load of the algorithm are greatly reduced under the premise of ensuring the performance of the algorithm.
Thirdly, we constructed a simulation platform and performed dynamic task assignment experiments, it is verified that the algorithm can achieve functions mentioned above. As a contribution to the research community, this platform can be used by other academic researchers for validation testing purposes.