3.2. MTCBAA
The CBAA can solve only one-to-one target assignment problems, where each agent can select at most one target, and each target can be assigned to at most one agent. However, it cannot be applied to the multi-target attack problem of a single aircraft and the problem of multiple aircraft attacking the same target cooperatively in multi-aircraft cooperative BVR air combat, and thus is not consistent with the target assignment model defined by Equation (8).
In this section, an improved distributed target assignment algorithm for the multi-aircraft cooperative BVR air combat target assignment problem given by Equation (8), the MTCBAA, is introduced.
The MTCBAA is developed based on the CBAA, and its iterations also consist of the auction and consensus phases. In the MTCBAA, each agent
ri,
i ∈ {1, 2,…,
N}, stores six local variables. The first variable is the bidding value vector
ci, whose element
cij denotes the bidding value of
ri for target
bj. The second variable is the assignment result vector
ai, and its element
aij denotes the number of missiles assigned to
bj by
ri;
ai is initialized as a zero vector. At the end of the consensus phase of each iteration, if
ri wins the bid on
bj, then
aij =
aij + 1; otherwise,
aij remains the same.
aij can be cumulative over multiple iterations, and its final value at the end of the assignment is not necessarily just 0 or 1. The third variable is the estimated greatest bidding value vector
yi, where element
yij represents the greatest bidding value estimated by
ri that all aircraft on the red side can provide for
bj. Here, the word “estimated” means
yi is a private variable of
ri, and
ri cannot directly know the greatest bidding value of its side for a given target but can only estimate it from the information obtained during the consensus phase
yi is used to determine whether
ri is eligible to bid on the target
bj. Only if
ri’s bidding value for the target
bj cij is larger than
yij is
ri eligible to bid on the target
bj, as shown in lines 8–9 of Algorithm 1. The fourth variable is the target validity vector, and its element
hij satisfies the following expression:
where Π(·) is the indicator function, whose value is 1 when the judgment condition in the parentheses is true; otherwise, it has a value of 0.
In this study, bj is defined as a valid task for ri when the bid value of ri for bj is greater than the estimated greatest bidding value. The fifth variable is the estimated missile assignment vector mi, where an element mij denotes the number of missiles assigned to bj estimated by ri. The definitions of ai and mi appear similar, but in reality, they are very different. An element in ai indicates the number of missiles assigned by ri to the corresponding target—for example, if aij equals 2, it indicates that ri will assign two missiles to attack the target bj. An element in mi indicates the total number of missiles assigned to its corresponding target, and the number is estimated by ri—for example, if mij equals 1, it indicates that, from the estimation of ri, the red side assigns a total of one missile to attack the target bj. mi is also a private variable of ri, and ri cannot directly estimate the total number of missiles assigned to a given target but can only estimate it from the information obtained during the consensus phase, corresponding to line 5 of Algorithm 2.
The last variable is the cooperative decision-making vector fi, whose element fij is the hit probability for target bj obtained by the current assignment scheme estimated by ri. If the hit probability for target bj does not reach the hit probability threshold PTH and the number of missiles assigned to bj does not reach two, then bj will continue to participate in the assignment of the current iteration; otherwise, the assignment to bj has been completed.
The auction phase of the MTCBAA is described in the following. The procedure of the auction phase of an agent
ri at an iteration
t is shown in Algorithm 1.
Algorithm 1: The MTCBAA auction phase of an agent ri at an iteration t |
1: | procedure SELECT TARGET based on |
2: | |
3: | |
4: | Calculate cij(t) using Equation (11) |
5: | |
6: | |
7: | |
8: | |
9: | if and then |
10: | |
11: | |
12: | |
13: | end if: |
14: | end procedure |
As shown in step 1 of Algorithm 1, the input parameters of the auction phase of the MTCBAA are
yi(
t−1),
ai(
t−1),
fi(
t−1), and
mi(
t−1), which are updated in the previous iteration. Corresponding to steps 2 and 3, the auction phase begins with the calculation of the new hit probability when
ri assigns an additional missile to
bj based on Equation (10):
Subsequently, corresponding to step 4, by combining the hit probability and Equations (6) and (7), the bidding value of
ri for
bj can be obtained by:
It can be seen that the bidding value cij represents an incremental profit for ri with respect to bj. In steps 5–7, the estimated greatest bidding value vector yi, the assignment result vector ai, and the estimated missile assignment vector mi are updated.
In step 8 of the algorithm, the corresponding elements in ci and yi are compared to determine whether ri is eligible to bid on each target. ri is eligible to bid on a target bj only if the value of ri’s bid on bj, cij, is greater than the greatest bidding value on bj estimated by ri, at which point hij equals 1.
In line 9, whether ri can still bid is first determined. ri is considered to have the ability to bid only if the elements in hi are not all zero; i.e., ri is eligible to bid on at least one target, and ri’s Lt missiles have not all been assigned. Finally, corresponding to lines 10–12, ri selects the valid task with the greatest bidding value as its target; meanwhile, the elements corresponding to the target in yi and fi should be updated. Then, ri waits to proceed to the consensus phase.
The procedure of the consensus phase in the MTCBAA of an agent
ri at an iteration
t is shown in Algorithm 2.
Algorithm 2: The MTCBAA consensus phase of an agent ri at an iteration t |
1: | SEND yi(t), fi(t) to rk with lik(t) = 1 |
2: | RECEIVE yk(t), fk(t) from rk with lik(t) = 1 |
3: | procedure UPDATE ASSIGNMENT SCHEME based on gi(t), fk(t), yk(t), and Ji |
4: | |
5: | |
6: | |
7: | if then |
8: | |
9: | end if |
10: | |
11: | Update yij(t) using Equation (13) |
12: | end procedure |
In the consensus phase of the MTCBAA, corresponding to lines 1 and 2, an agent ri first exchanges the estimated greatest bidding vector and the cooperative decision-making vector with an agent rk that satisfies the condition of gik = 1, where gik is an element of the adjacency matrix corresponding to the fleet’s communication topology; gik = 1 indicates a communication connection between ri and rk.
After that, corresponding to lines 4 to 5, based on the received information and ri’s information, ri updates the estimated missile assignment vector mi by determining whether, for each target bj, at least one red side aircraft has bid on it. If there is at least one aircraft involved in bidding on bj—i.e., ∃ k ∈ {1, 2, …, N}—then ykj > 0; accordingly, the σyj obtained from the expression in line 4 is greater than zero, such that the expression in line 5 is equivalent to mij = mij + 1; otherwise, the expression in line 5 is equivalent to mij = mij + 0.
Corresponding to lines 6–7, ri can determine whether it wins the bid on the Jith target; i.e., ri determines whether the aircraft providing the global greatest bidding value on the Jith target is ri. From the expression in line 6, it can be obtained that the aircraft providing the global greatest bidding value for the target bj is indexed by zij. Meanwhile, from the auction phase of ri, it can be obtained that ri is bidding on the Jith target. Thus, in line 7, it is only necessary to determine whether zi,Ji is equal to i to know whether ri wins the bid on the Jith target. If this holds, in line 8, the corresponding assignment element is increased by 1; otherwise, it remains the same.
In addition, the cooperative decision-making vector and the estimated greatest bidding vector need to be updated in lines 10 and 11, respectively. The cooperative decision-making vector is updated by
where
zij is the index of an aircraft that wins the bid on target
bj in the current iteration.
The estimated greatest bidding vector is updated by:
where, for target
bj, the update of its estimated greatest bidding value represents the prediction of the corresponding value in the next iteration. The prediction is undertaken by subtracting the profit corresponding to
bj at the completion in the current iteration from the profit corresponding to
bj when the aircraft that wins the bid on
bj in the current iteration assigns one more missile for
bj based on the current assignment scheme.
These two phases iterate between each other until the target assignment process is completed. Target assignment is terminated either when the hit probability threshold is reached for all targets or when there are no more missile resources left for further assignment.
3.3. Minimum Optimization Performance of MTCBAA
As shown in Algorithms 1 and 2, the MTCBAA is based on a greedy mechanism, so there is no guarantee that the algorithm can find an optimal assignment solution. However, the MTCBAA has a minimum optimization performance guarantee, which is demonstrated in this section. It should be noted that optimization performance here refers to the optimization of the assignment profit or assignment solution.
To prove the minimum optimization performance guarantee of the MTCBAA, an equivalent centralized target assignment algorithm, which is denoted as the multi-target sequential greedy algorithm (MTSGA), is proposed. The pseudo-code of the MTSGA is given in Algorithm 3. Subsequently, the proof of the minimum optimization guarantee of the MTSGA is provided. The proof of the equivalence of the MTCBAA and MTSGA corresponds to the proof of Theorem 1, and the proof of the minimum optimization performance guarantee of the MTCBAA and MTSGA corresponds to the proof of Theorem 2.
Algorithm 3: The MTSGA |
1: | , |
2: | |
3: | |
4: | |
5: | |
6: | |
7: | while assignment is not completed |
8: | |
9: | |
10: | |
11: | |
12: | |
13: | |
14: | |
15: | if , then |
16: | |
17: | |
18: | else |
19: | |
20: | end if |
21: | |
22: | if or , then |
23: | |
24: | |
25: | else |
26: | |
27: | end if |
28: | |
29: | end while |
In Algorithm 3, an aircraft set
R1 and a target set
B1 are assigned in the first iteration are initialized first in line 1. Then, the missile consumption
ηi for an aircraft
ri, ∀
i ∈
R1 is set to zero in line 2. An aircraft
ri is defined to have a target set
Ji; a target
bj is defined to have an aircraft set
Ij. The elements in the target set
Ji denote indexes of targets assigned to
ri obtained in the MTSGA iterations sorted in the same order they have been added to the set. The elements in the aircraft set
Ij denote indexes of aircraft that assign at least one missile to
bj; these elements are also obtained in the MTSGA iterations and sorted in the same order they have been added to the set. All target sets
Ji, ∀
i ∈
R and aircraft sets
Ij, ∀
j ∈
B are initialized as empty sets in lines 3 and 4. The bidding value of each aircraft to each target also needs to be initialized. The initialization work of the bidding values in Algorithm 3 is done in line 5, and the bidding values are initialized and updated by:
where ⊕
end is the operator that combines the sets before and after itself. Suppose there are two sets—namely,
A = {1, 2, 3} and
B = {4, 5, 6}; then,
A ⊕
end B = {1, 2, 3, 4, 5, 6}. |·| is the operator to count the number of elements in a set, and
gj(
Ij) is the profit obtained by attacking
bj according to the assignment scheme
Ij, and it is calculated by:
where
Ij(
k) is the
kth element of
Ij.
It can be easily noticed that the calculation expression of the profit of attacking bj in Equation (15) is equivalent to Equation (7), and the calculation expression of the bidding value of ri for bj in Equation (14) is equivalent to Equation (11).
At the beginning of the next MTSGA iteration, based on the bidding value matrix in the current iteration, corresponding to line 8, the aircraft and target indexes in* and jn* corresponding to the largest bidding value in the bidding value matrix are selected, and then the missile consumptions of the in*th aircraft (line 9), target sets (lines 10 and 11), aircraft sets (lines 12 and 13), and the bidding value matrix (line 14) are updated.
Lines 15–20 correspond to the update of the set Rn+1, which is the set of aircraft entering the next assignment iteration. The first step is to determine in line 15 whether the missile consumption of the in*th aircraft has reached the upper limit of the number of missiles it carries, Lt. If the upper limit is reached, then Rn after removing in* should be assigned to the Rn+1 according to line 16; otherwise, Rn can be assigned directly to the Rn+1 according to line 19. In addition, note that if in* should be removed from the set, then the bid value of the in*th aircraft for each target should also be set to 0 according to line 17, so that the in*th aircraft will no longer participate in the subsequent bids.
The cooperative decision-making variable of the jn*th target is updated in line 21.
Lines 22–27 correspond to the update of the set Bn+1, which is the set of targets entering the next assignment iteration. The first step is to determine in line 22 whether the assignment to the jn*th target has been completed. If it holds, then Bn, after removing jn*, should be assigned to Bn+1, according to line 23; otherwise, Bn can be assigned directly to Bn+1, according to line 26. In addition, note that if jn* is removed from the set, then each aircraft’s bid value for the jn*th target should be set to 0 according to line 24, so that no aircraft will bid on the jn*th target in the subsequent bids.
The iterations continue until the assignment is completed, as shown in line 7; the target assignment termination conditions are the same as for the MTCBAA; that is, target assignment is terminated either when the hit probability threshold is reached for all targets or when there are no more missile resources left for further assignment.
The equivalence theorem of the MTCBAA and MTSGA is given and proven in the following.
Theorem 1. Under the same situational conditions, the MTCBAA and MTSGA generate the same target assignment scheme for the multi-aircraft cooperative BVR air combat target assignment problem given by Equation (8).
ProofofTheorem 1. The proof of Theorem 1 is obtained using mathematical induction. Assume that the target set of
ri in the
nth iteration is
, where
and
. Then, the first element of
is determined by:
where
is the set of aircraft updated in the
th iteration of the MTSGA to enter the
k1th iteration of assignment, corresponding to rows 1 and 23 in Algorithm 3. In contrast, the MTCBAA assigns the first target to the aircraft
ri as follows:
Notice that and, because Ji is currently an empty set, target bj has been assigned to aircraft other than ri, so holds. The problem of searching for the target corresponding to the maximum bidd ing value in set B for aircraft ri, which is given by Equation (17), degenerates to the problem of searching for such a target in a smaller set . This matches the method of determining the target given by Equation (16); thus, .
Next, assume that the MTSGA obtains the same first
l targets for each aircraft
ri as the MTCBAA. Then, the (
l + 1)th target of
ri in the MTSGA is determined by:
where
represents the target set of
ri consisting of the first
l targets.
For a target
bj, when its index
j satisfies
, corresponding to Equation (11) or (14), the new bidding value of
ri for
bj equals zero. Then, it holds that:
In contrast, the (
l + 1)th target of
ri in the MTCBAA is determined by:
Substituting Equation (19) into Equation (20), Equation (20) can be further simplified as follows:
The simplification result of Equation (21) is the same as that of Equation (18). Thus, it can be concluded that, if the first l targets of ri obtained by the MTSGA and the MTCBAA are identical, then the (l + 1)th targets of ri obtained by the two algorithms are also identical, which proves Theorem 1. □
Next, the minimum optimality guarantee theorem for the MTCBAA is given and proven.
Theorem 2. The MTCBAA can guarantee at least 50% global optimality.
ProofofTheorem 2. According to Theorem 1, the MTCBAA is equivalent to the MTSGA, so it is sufficient to prove that the MTSGA can guarantee at least 50% global optimality.
Suppose a target
bj has been assigned once, and the hit probability
of
bj does not meet the hit probability threshold
PTH. When
bj has another opportunity to be assigned, because the remaining assignable resources at this time are fewer compared to the time when
bj was assigned for the first time, the maximum for the hit probability that each remaining assignable aircraft can provide for
bj, which is denoted as
, satisfies the inequality
;
k1 is the index of the iteration in which
bj was assigned for the first time,
k2 is the index of the iteration in which
bj is assigned for the second time,
is the index of the aircraft that provides the maximum bidding value on
bj in the
k1th iteration of the MTSGA, and
is the index of the aircraft that provides the maximum bidding value on
bj in the
k2th iteration of the MTSGA. Then, the maximum bidding value on
bj at its second assignment subtracted from the maximum bidding value on
bj at its first assignment satisfies Equation (22):
In addition, from the operation of the MTSGA, it is evident that, for each of the other targets assigned after the first assignment of target bj, regardless of whether this is its first or second assignment, its maximum bidding value is less than or equal to .
For the convenience of presentation, in the following proof of Theorem 2, aircraft
is denoted as aircraft
k, and target
is denoted as target
k. In other words, the indexes in the MTSGA are denoted as follows:
The subscripts for the rest of the variables need to be replaced accordingly. For instance,
can be denoted as
ckk. Then, in the MTSGA, the following inequality holds:
As the aircraft and target pairs are selected based on the greedy principle in each iteration of the MTSGA, Equation (25) holds in parallel:
Assume the number of iterations of the MTSGA is denoted by
Nmin. Then,
Nmin is between
M and 2
M when the missile resources are sufficient; i.e., the number of missiles is sufficient to complete the first assignment to all targets and the second assignment to targets that did not reach the hit probability threshold in the first assignment. In this study,
M is the number of targets;
Nmin =
M when the hit probability threshold is met by assigning each target only once;
Nmin = 2
M when each target needs to be assigned twice; otherwise,
M <
Nmin < 2
M. When the number of missiles does not satisfy the aforementioned conditions, then
, where
N is the number of aircraft, and
Lt is the number of missiles each aircraft loads. The value of
Nmin is determined by:
That is, in the case of a sufficient number of missiles, it is assumed that the MTSGA is required to iterate 2M times, while in reality, the actual number of iterations required by the MTSGA may be less than 2M. Assume that the actual number of iterations required by the MTSGA is denoted by Nneed. For () additional iterations, the assignment results are generated as follows. Select () missiles that have not been assigned yet. Randomly arrange the indexes of their carrier aircraft and use them to form a new ordered set called the random aircraft set. Then, randomly arrange the indexes of targets that reach the hit probability threshold in the first assignment and form a new ordered set, called the random target set; the length of both sets is (). Combine the elements in the two sets in order; the aircraft–target pairs are obtained in the additional () iterations of the MTSGA. As () targets have already reached the hit probability threshold condition in the first assignment, according to Equation (14), all the maximum bidding values corresponding to the additional () iterations of the MTSGA equal 0. Thus, the MTSGA with 2M iterations is equivalent to the MTSGA with Nneed iterations and satisfies Equations (24) and (25). When Nmin = N·Lt, there is no need to make a further assumption to change the number of iterations of the MTSGA. Hence, it can be concluded that the MTSGA with Nmin iterations defined by Equation (26) is equivalent to the MTSGA that performs the required number of iterations for a particular problem.
Denote the optimized profit obtained by the MTCBAA or the MTSGA as
OPTMTCBAA, which can be calculated by:
Next, assume that arbitrarily swapping the targets of aircraft
i and
j in the assignment scheme obtained by the MTSGA has no effect on the bidding value of an aircraft
k on a target
k, ∀
k ≠
i,
j. In this study, this assumption is denoted as the target order-bidding value independent (TOBI) assumption. Further, assume that the assignment scheme obtained by the MTSGA is the worst assignment scheme; i.e., any swapping of targets of the two aircraft can improve the total assignment profit. For instance, for aircraft
i and
j, where
j >
i, because Equation (25) holds, after swapping their targets, the sum of profits of the two aircraft satisfies Equation (28):
Furthermore, when Equation (29) holds, the equal sign in Equation (28) also holds:
Therefore, if Equation (29) holds, aircraft i and j can achieve the maximum improvement in their profit sum by swapping their targets.
Next, assume that Equation (29) holds for all pairs of aircraft in the assignment scheme; i.e., the following equalities hold:
Then, for the current assignment scheme obtained by the MTSGA, the maximum improvement in the overall target assignment profit can be achieved by a series of target exchange operations between aircraft pairs. One of the ways to achieve the maximum improvement in the overall target assignment profit is given by Equation (31):
Equation (31) indicates that an aircraft i exchanges its target with an aircraft (). In this way, the first aircraft can maintain the same profits as in the MTSGA, while the next can achieve the maximum profit improvements. In Equation (31), and denote the upward and downward rounding operators, respectively.
Denote the global optimal target assignment profit when the TOBI assumption holds by
OPTTOBI; then,
OPTTOBI satisfies Equation (32):
It should be noted that the TOBI assumption does not always hold for the target assignment problem defined by Equation (8). For a target
bj that needs to be assigned twice in the MTSGA, if its first assignment iteration is advanced by the target exchange shown in Equation (31)—i.e., the index of iteration corresponding to the first assignment of
bj in the MTSGA is
k1 and the index of iteration corresponding to the second assignment of
bj in MTSGA is
k2—after the target swapping corresponding to Equation (31), the index of iteration corresponding to the first assignment of
bj becomes
, and
, which correspond to two cases. In the first case, the hit probability to
bj has met the hit probability threshold through the
iteration of the assignment, and
becomes 0 due to the constraints in Equation (14). In the second case, the hit probability for
bj still does not meet the hit probability threshold through the
assignment iteration, so the new bidding value on target
bj in the
k1th iteration is given by:
The original bidding value on target
bj in the
k1th iteration is given by:
Subtracting Equation (34) from Equation (33), we have:
Thus, due to the introduction of the hit probability threshold constraint, the bidding value in the
k1th iteration is reduced in both cases compared to the TOBI case. This leads to the conclusion that the global optimal target assignment profit
MTOPT, considering the hit probability threshold constraint, is upper-bounded by the global optimal target assignment profit when the TOBI assumption holds, so it holds that:
Consequently, the MTCBAA can guarantee at least 50% global optimality, which proves Theorem 2 □.