An improved k-means clustering-based heterogeneous unmanned cluster random environment task allocation method and system
Patent Information
- Application Number
- CN202211213666.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-30
- Publication Date
- 2026-09-29
- Estimated Expiration
- 2042-09-30
AI Technical Summary
[0004]本发明的目的在于克服上述现有技术的缺点,提供一种基于改进k-means聚类的异构无人集群随机环境任务分配方法和系统,以解决现有技术中传统的任务分配方法无法高效、迅速完成分配工作,在任务分配时考虑环境因素较少的问题
[0057]本发明公开了一种改进k-means聚类的异构无人集群随机环境任务分配方法,该方法将进行任务分配前首先进行预规划,按照飞行器的飞行能力以及飞行器对待执行任务的适配度建立预分配指标函数,利用k-means聚类方法进行分组。同时以随机山峰模型作为任务环境,利用优化算法获取满足环境约束以及飞行器运动学约束的控制指令,并对航程代价值进行估计,能明显提高对大规模无人集群任务分配的规划能力,提高了任务分配结果的可靠性。
Smart Images

Figure CN115509710B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of task allocation technology, specifically relating to a method and system for task allocation in a heterogeneous unmanned cluster random environment based on improved k-means clustering. Background Technology
[0002] Mission allocation in unmanned swarms is a key technology and foundation for completing aircraft planning and complex military missions. With the development of military technology, the mission environments faced by aircraft are becoming increasingly complex, and traditional single-aircraft or small-scale multi-aircraft operations often struggle to reliably complete planned military missions. Unmanned swarm technology has significant developmental implications and is rapidly evolving towards ultra-large-scale deployments.
[0003] When faced with multiple tasks to be performed and multiple aircraft performing those tasks, traditional task allocation methods cannot efficiently and quickly complete the task allocation process, and they also take relatively little into account the task environment during task allocation. Summary of the Invention
[0004] The purpose of this invention is to overcome the shortcomings of the prior art and provide a method and system for random environment task allocation in heterogeneous unmanned clusters based on improved k-means clustering, so as to solve the problems that traditional task allocation methods in the prior art cannot complete the allocation work efficiently and quickly, and consider environmental factors less when allocating tasks.
[0005] To achieve the above objectives, the present invention employs the following technical solution:
[0006] A method for task allocation in a heterogeneous unmanned cluster random environment based on improved k-means clustering includes the following steps:
[0007] Heterogeneous aircraft are grouped using the K-meas clustering method to obtain several aircraft formations, the number of which is equal to the number of tasks to be performed;
[0008] Establish a mathematical model for collaborative task allocation;
[0009] A range cost matrix is established using a differential evolution algorithm. The elements in the range cost matrix represent the range cost required for the i-th aircraft formation to perform the j-th task from the starting point. The establishment of the range cost matrix satisfies both an environmental constraint model and a kinematic model. The environmental constraint model is a randomly generated mountain map, and the kinematic model is the equation of motion of the center of mass of the aircraft.
[0010] The mathematical model of system task allocation in the range cost matrix is solved by the Hungarian algorithm. During the solution process, the goal is to minimize the range of tasks completed and maximize the range of all aircraft formations executing tasks. This yields the tasks to be executed for each aircraft formation.
[0011] A further improvement of the present invention is that:
[0012] Preferably, the process of grouping heterogeneous unindividuals using K-means clustering includes the following steps:
[0013] S1. Determine the number of tasks to be executed, set N rendezvous points, and divide the M aircraft into N formations, where M > N;
[0014] S2. Calculate the distance from all aircraft to N gathering points, find the gathering point closest to each aircraft, assign the aircraft to the formation of the closest gathering point, and record the sum of all distances as the initial index function value.
[0015] S3. Calculate the centroids of the N formations and use them as the center points for the next clustering.
[0016] S4. Determine if a formation cannot meet the requirement of having the ability to complete all tasks, and add the penalty value to the initial index function;
[0017] S5. Randomly select a centroid that does not meet all task capability requirements and move it closer to the centroid that meets the requirement of having the ability to complete all tasks.
[0018] S6. Repeat steps S3 to S5 until the maximum number of iterations is reached, or the formation centroid no longer changes and the index function value no longer changes.
[0019] Preferably, the index function is:
[0020]
[0021] Where M represents the number of aircraft;
[0022] N represents the number of aircraft in formation;
[0023] r ij This indicates whether the i-th aircraft belongs to the j-th class; 1 indicates yes, 0 indicates no.
[0024] C j The j-th node;
[0025] c k This represents the penalty value.
[0026] Preferably, the mathematical model for the collaborative task allocation is:
[0027]
[0028] Preferably, the function f is:
[0029]
[0030] Where w1 and w2 are weighting coefficients, A = {A1, A2, ..., A...} N Let A be the set of tasks to be executed. i For the task performed by the i-th formation, A i,j For formation i to execute the j-th objective; L i Let i = 1, 2, 3... N be the estimated range for formation i to complete its assigned task.
[0031] Preferably, the process of establishing the range cost matrix includes the following steps:
[0032] S1. Set parameters; the parameters include formation assembly points, target location information, and parameters in the differential evolution algorithm;
[0033] S2. Randomly generate a mountain map and define the number of mountains;
[0034] S3. Iterative optimization is performed using the differential evolution algorithm. The specific process is as follows: multiple individuals are generated using a random function, each individual has random initial gene values, and the parent population is obtained. The parent population is mutated using the DE algorithm to obtain the pseudo-offspring population. The pseudo-offspring population and the parent population are compared using a crossover factor to obtain the true offspring population. The objective function values of the parent offspring population and the true offspring population at the same position are compared to obtain the individuals in the next generation population.
[0035] S4. Record the optimal gene sequence that satisfies the environmental constraints and kinematic model constraints during each iteration.
[0036] Preferably, the task environment is a mountain peak model, and the mountain peak model is as follows:
[0037]
[0038] Where n represents the total number of mountain peaks;
[0039] (x i ,y i () represents the center coordinates of the i-th peak;
[0040] h i Use terrain parameters to control altitude;
[0041] x si and y si These are the attenuation amount and control slope of the i-th peak along the x-axis and y-axis, respectively.
[0042] x y and y are the coordinates of the current formation in the x and y directions, respectively.
[0043] Preferably, the equation of motion for the center of mass of the aircraft is:
[0044]
[0045] Where, n x ,n y ,n z This represents overload in three directions.
[0046] Preferably, the process of solving the problem using the Hungarian algorithm is as follows:
[0047] (1) Modify the cost matrix to become a reduced matrix, wherein each row and each column of the reduced matrix has at least one zero element;
[0048] (2) Produce a complete allocation scheme, which corresponds to the reduction matrix, and obtain the optimal solution;
[0049] (3) For the reduced matrix, construct the minimum set of lines that cover all zero elements;
[0050] (4) Modify the reduced matrix so that each row and each column has at least one zero element.
[0051] A heterogeneous unmanned cluster random environment task allocation system based on improved k-means clustering includes:
[0052] The formation creation module is used to group heterogeneous aircraft using the K-meas clustering method to obtain several aircraft formations, the number of which is equal to the number of tasks to be executed;
[0053] The mathematical model building module is used to build mathematical models for collaborative task allocation;
[0054] The matrix building module is used to build a range cost matrix using a differential evolution algorithm. The elements in the range cost matrix are the range costs required for the i-th aircraft formation to perform the j-th task from the starting point. The process of building the range cost matrix satisfies the environmental constraint model and the kinematic model. The environmental constraint model is a randomly generated mountain map, and the kinematic model is the equation of motion of the center of mass of the aircraft.
[0055] The solution module uses the Hungarian algorithm to solve the mathematical model of system task allocation in the range cost matrix. During the solution process, the goal is to minimize the range completed by the task and maximize the range of all aircraft formations executing tasks. This yields the tasks to be executed for each aircraft formation.
[0056] Compared with the prior art, the present invention has the following beneficial effects:
[0057] This invention discloses an improved k-means clustering method for task allocation in random environments for heterogeneous unmanned swarms. Before task allocation, this method first performs pre-planning by establishing a pre-allocation index function based on the aircraft's flight capabilities and its suitability for the tasks to be performed, and then uses k-means clustering to group the aircraft. Simultaneously, a random mountain model is used as the task environment, and an optimization algorithm is employed to obtain control commands that satisfy both environmental and aircraft kinematic constraints. Furthermore, the range cost is estimated, significantly improving the planning capability for task allocation in large-scale unmanned swarms and enhancing the reliability of the task allocation results.
[0058] Furthermore, this invention first establishes a mathematical model of the aircraft in a ground-based launch coordinate system. Secondly, under the premise of satisfying its own constraints and mission coordination constraints, the aircraft establishes an evaluation function based on the capabilities required for the mission to be performed, its flight capabilities, and the estimated range cost. The method for calculating the estimated range cost involves first establishing a mathematical representation of a random mountain map, using the randomly generated mountain map to determine the feasible region in three-dimensional space, then using k-means clustering to group a large number of heterogeneous aircraft and treating each group as a single aircraft, with the group's cluster point as its starting position. Based on the differential evolution algorithm, overload control commands that satisfy the aircraft's kinematic model and environmental constraints are determined, and the estimated range cost is calculated, generating a cost matrix. Finally, a 0-1 matrix containing allocation result information is obtained based on the Hungarian method.
[0059] This invention also discloses an improved k-means clustering-based heterogeneous unmanned cluster random environment task allocation system. The system includes a formation establishment module, a mathematical model establishment module, a matrix establishment module, and a solution module. By establishing a model, an index function for unmanned cluster collaborative task allocation is obtained. The cost matrix is simplified using the k-means algorithm. The collaborative task allocation problem is solved using the traditional Hungarian method, thereby improving the allocation capability of the unmanned cluster. Attached Figure Description
[0060] Figure 1 This is a flowchart of the allocation method of the present invention;
[0061] Figure 2 A flowchart for pre-allocation of resources for the cluster;
[0062] Figure 3 Here is a flowchart of the cost matrix estimation process;
[0063] Figure 4 A flowchart for task assignment. Detailed Implementation
[0064] The present invention will now be described in further detail with reference to the accompanying drawings:
[0065] This invention proposes a method for task allocation in random environments of heterogeneous unmanned clusters based on improved k-means clustering. (See [link to relevant documentation]). Figure 1 Before task allocation, pre-planning is performed. A pre-allocation index function is established based on the aircraft's flight capabilities and its suitability for the tasks to be performed, and k-means clustering is used for grouping. Simultaneously, a random mountain model is used as the task environment, and optimization algorithms are employed to obtain control commands that satisfy environmental constraints and aircraft kinematic constraints. The range cost is estimated, which significantly improves the planning capability for large-scale unmanned swarm task allocation and enhances the reliability of the task allocation results. The aircraft in this invention is an unmanned aerial vehicle (UAV), which will not be described further.
[0066] Step 1. Establish a mathematical model of the aircraft.
[0067] Considering the forces acting on the aircraft, the equation of motion for the aircraft's center of mass in the ground launch coordinate system can be simplified as follows:
[0068]
[0069] Where: P—angle of attack;
[0070] α B —Angle of attack;
[0071] β B —Side slip angle;
[0072] γ v —Velocity tilt angle;
[0073] X—Air resistance;
[0074] Y—Lift force;
[0075] Z—lateral force;
[0076] m—missile mass;
[0077] g—acceleration due to gravity;
[0078] V—velocity;
[0079] θ—ballistic inclination angle;
[0080] ψ v —Ballistic deflection angle;
[0081] Position in the x-x direction;
[0082] y-position in the y direction;
[0083] z-z direction position.
[0084] Where X and Y can typically be described as
[0085]
[0086] in, Represents dynamic pressure;
[0087] ρ—Atmospheric density at flight altitude;
[0088] v—Air speed of the aircraft;
[0089] S—Reference area of the aircraft;
[0090] C x C y C z —Drag coefficient, lift coefficient.
[0091] Drag coefficient C x With lift coefficient C y This can be further expressed as:
[0092]
[0093] C x =0.5C y (4)
[0094] Generally speaking, Approaching 0 Within the range of 0.001 to 0.005.
[0095] To facilitate subsequent optimization algorithms, the technical solution of this invention considers overload command control, and the kinematic equation of the center of mass can be expressed as:
[0096]
[0097] Where, n x ,n y ,n z This represents overload in three directions.
[0098] Step 2. Pre-assignment solution method based on improved k-means algorithm.
[0099] See Figure 2 Let the single-flying vehicle be denoted as u. i ={l i ,r i ,d i ,a i}, where l i ,r i ,d i ,a iThese represent the maximum flight capability, reconnaissance capability, jamming capability, and strike capability of a single aircraft, respectively. This invention targets heterogeneous aircraft, which include reconnaissance aircraft, jamming aircraft, and strike aircraft. Assume there are M heterogeneous aircraft in the mission space S, and N missions to be executed, where M is much larger than N. To facilitate the clustering algorithm in determining the formation, the capabilities of the three types of aircraft are quantified, and the following assumptions are made:
[0100] 1. A certain type of aircraft has only one capability. For example, an attack aircraft only has the ability to attack and does not have the ability to reconnaissance and jam.
[0101] 2. The capabilities of reconnaissance, jamming, and strike are all represented by the number 1, indicating the capabilities of a single aircraft. The capabilities of a formation are represented by the sum of the corresponding capability values of each aircraft in the formation.
[0102] 3. The formation flight capability after division is based on the minimum value of a single aircraft within the formation.
[0103] Assuming that aircraft formation i contains 2 reconnaissance aircraft, 3 jamming aircraft, and 1 strike aircraft, and its minimum flight capability is 1000, then the formation U... i ={1000,2,3,1}.
[0104] The k-means clustering method typically uses Euclidean distance or Manhattan distance as a metric to find the k nearest neighbor clusters. In this invention, we first need to consider that the flight performance of each formation can meet the mission requirements of all targets, and then consider the distance between the aircraft parking position and the assembly point. Therefore, the index function is defined as follows:
[0105]
[0106] Where M represents the number of aircraft;
[0107] N represents the number of aircraft in formation;
[0108] r ij This indicates whether the i-th aircraft belongs to the j-th class; 1 indicates yes, 0 indicates no.
[0109] C j The j-th node;
[0110] c k This represents the penalty value, which is determined by how many squads, after being divided into groups, do not meet the conditions to perform all tasks.
[0111] Based on the number of tasks N to be executed, the steps to divide M aircraft into N formations using the K-means clustering method, ensuring that all formations can meet all task requirements, are as follows:
[0112] Step 1: Determine the number of tasks N to be executed, given N node nodes {C1,C2,C3,...,C...} N} Divide the M aircraft into N formations.
[0113] Step 2: Repeat the loop until the stopping condition is met:
[0114] Step 2.1: Calculate the distance from the location of all aircraft to these N cluster points, then find the cluster point closest to each aircraft, assign the aircraft to the formation represented by this cluster point, and record the sum of the distances as the initial index function value.
[0115] Step 2.2: Recalculate the centroids of the N formations and use them as the center points for the next clustering.
[0116] Step 2.3 Determine how many formations cannot meet the requirement of having the ability to complete all tasks, record the penalty value and add it to the index function value.
[0117] Step 2.4: Randomly select a new centroid of a cluster that did not meet the requirements in the previous clustering and move it closer to the new centroid of a cluster that meets the requirements.
[0118]
[0119] Where x, y, and z represent the horizontal, vertical, and height coordinates in the three-dimensional plane, respectively.
[0120] Step 2.5: Loop Termination Condition:
[0121] The loop terminates when the number of iterations reaches the maximum specified number, or when the formation centroid no longer changes and the index function value remains unchanged.
[0122] Obtain a formation of N aircraft, each formation capable of fulfilling all missions.
[0123] Step 3. Establish a mathematical model for collaborative task allocation.
[0124] Let the aircraft formation be U = {U1, U2, ..., U...} N The set of tasks to be executed is A = {A1, A2, ..., A}. N The task performed by the i-th formation is A. i Formation i executes the j-th objective A i,j Meanwhile, assume L iLet i = 1, 2, 3... N represent the estimated range for formation i to complete its assigned task. For each formation, the flight range to complete the task is determined by the assigned objective. The optimization objective for task allocation is to minimize the task completion range and maximize the total task execution range of all formations. The minimized task is the sum of the ranges of all aircraft to complete their corresponding tasks; the maximum task execution range of a formation is the maximum value selected from several ranges for each formation to complete its corresponding task. The purpose of both is that the former represents the sum, indicating the total range required for all formations to complete all corresponding tasks, while the latter limits the possibility of a formation having an excessively long flight range that exceeds its flight capabilities.
[0125]
[0126] Where w1 and w2 are weighting coefficients.
[0127] In multi-vehicle cooperative path planning, in order to improve the overall mission efficiency, time constraints need to be considered. At the same time, for the safety of the aircraft, a certain distance also needs to be maintained, that is, two cooperative constraints need to be set.
[0128] Define two constraints as follows:
[0129] Spatial constraints refer to the safe distance between aircraft during multi-aircraft missions. They reflect the ability of multiple aircraft to cooperate in mission execution and prevent collisions or interference during flight to the target point, which could lead to mission failure. Assume X... i(t) It is the position of formation i at time t, X j(t) The position of formation j at time t should meet the following safety conditions:
[0130] ||X i (t)-X j (t)||≥d safe ,i≠j (10)
[0131] To reach the target point of the mission, the speed variation range and flight distance of the formation must be taken into account in order to ensure that each formation can arrive at the same time. In other words, the time domains of each formation must overlap for the formations to arrive at the same time.
[0132] Assume the speed of formation i is v i ∈[v imin ,v imax The path length is L. i The speed of formation j is v j ∈[v jmin ,v jmax Its path length is L j Then, the arrival times of the two formations are calculated as follows:
[0133] T i =[T imin ,T imax ] = [L i / v imax ,L i / v imin (11)
[0134] T j =[T jmin ,T jmax ] = [L j / v jmax ,L j / v jmin (12)
[0135] Equations (11) and (12) show that the time required for formations with different flight speed capabilities to reach the same target is a time range. In order to ensure that the formations can reach the two time ranges at the same time, there must be an intersection.
[0136] The above time constraints represent simultaneous arrival constraints. Under certain task conditions, two or more formations need to cooperate to complete the task. The corresponding time constraints are:
[0137] max[T imin ,T jmin ]<min[T imax ,T jmax (13)
[0138] Equation (13) indicates that if the larger of the lower limits of the two intervals is less than the smaller of the upper limits of the two intervals, then the two intervals must intersect.
[0139] The objective function and constraints expressed in equation (8) above are rearranged and written in the mathematical expression form of a standard optimization problem:
[0140]
[0141] Step 4. A method for calculating the range cost matrix in a stochastic environment based on the differential evolution algorithm.
[0142] See Figure 2 After the pre-allocation phase, an allocation model is obtained where the number of formations equals the number of target points, and each unmanned formation is capable of completing any task. Consider calculating a cost matrix by taking the distances from each formation to all target points. During task allocation, the computational load can be reduced by looking up the cost value in the matrix. The cost matrix can be represented in the following form:
[0143]
[0144] L in the cost matrix i,j This represents the range cost required for the i-th unmanned formation to perform the j-th task from its starting point. Estimating the range cost to closely resemble the actual mission environment increases reliability. This invention uses a random mountain map method to define the mission environment. The mountain model is as follows:
[0145]
[0146] Where n represents the total number of mountain peaks;
[0147] (x i ,y i () represents the center coordinates of the i-th peak;
[0148] h i Use terrain parameters to control altitude;
[0149] x si and y si These are the attenuation amount and control slope of the i-th peak along the x-axis and y-axis, respectively.
[0150] x and y are the coordinates of the current formation in the x and y directions, respectively.
[0151] The specific steps for calculating the estimated range cost that satisfies environmental and kinematic model constraints using the differential evolution algorithm are as follows:
[0152] Step 1: Parameter Settings
[0153] Given the formation assembly point and target location information, define the number of individuals D in the differential evolution algorithm as 500, the number of variables NP as the overload values in the x, y, and z directions, with the maximum overload value constrained to 10 and the minimum value to 0, the number of iterations K as 300, the mutation factor F as 0.5, the crossover factor Cr as 0.8, and the number of sequences Pown as 10.
[0154] Step 2: Randomly generate a mountain map, defining the number of mountains as 10.
[0155] Step 3: Differential evolution iterative optimization.
[0156] Step 3.1: Initialize the population. Generate D individuals using a random function. Each individual has NP*Pown genes with random initial values, and the randomly generated initial values satisfy the boundary conditions. The resulting population can be considered as the parent generation. The formula is as follows:
[0157]
[0158] Step 3.2: Mutation. The DE algorithm is similar to the genetic algorithm. The main difference between the two is that the mutation of individuals in the DE algorithm is achieved through a differential strategy. The formula for mutation of equation (18) is as follows:
[0159]
[0160] Here, λ∈[0,1] controls the greediness of the difference operation. For example, when λ=1, it is the DE / best / y / z strategy; when λ=0, it is the DE / rand / y / z strategy; and when λ is between 0 and 1, it is the DE / rand to best / y / z strategy. New individuals obtained through the mutation operation (difference) can be considered as spurious offspring, which will serve as candidates for true offspring.
[0161] For each gene value after differentiation, an out-of-bounds check is performed. If it exceeds the maximum value, it is set to the maximum value; if it is less than the minimum value, it is set to the minimum value.
[0162] Step 3.3: Crossover. By comparing the crossover factors, select some genes from the pseudo-offspring and parent generations to form new individuals and obtain true offspring.
[0163]
[0164] Where, CR is the crossover probability, j rand The random integers are [1,2,……,D], and the purpose of this is to ensure that at least one spurious offspring gene is passed on to the true offspring.
[0165] Step 3.4: Selection. Individuals in the next generation population are selected by comparing the objective function values of individuals in the same position parent and true offspring.
[0166]
[0167] Step 3.4.1: When calculating the objective function value, the input of the function is the overload control command sequence. The control commands are transmitted to the above-mentioned aircraft center of mass motion equation through time division. The Runge-Kutta method is used to iteratively solve the aircraft position at each moment and record it.
[0168] Step 3.4.2: Compare the recorded location with the randomly generated mountain peak map value. When they are at the same x and y coordinates, determine whether the z value is less than the map value of that point. If it is less, penalize it by greatly expanding the flight cost of the solution to avoid the selected route from colliding with the mountain peak.
[0169] Step 4: Record the optimal gene sequence that satisfies the environmental constraints and kinematic model constraints in each iteration. The environmental constraints are the mountain map values generated in the above steps, and the kinematic constraints are the centroid motion equation in equation (5).
[0170] Step 5: Calculate the cost matrix of the distance traveled by each unmanned cluster to each target point.
[0171] The optimal gene sequence represents an optimal solution. Due to the introduction of random operations in each generation, the optimal solution is not exactly the same for each generation. Finally, the optimal solution is selected from 300 generations, which is the solution that minimizes the flight path value of the aircraft after determining the starting and ending points of the environment. Through the above operations, after determining the mountain environment, the flight cost (referring to the value of the objective function) of each unmanned swarm from each target point is obtained according to different starting and ending points. These costs are then combined into a matrix, which is the cost matrix.
[0172] The above method was used to form a large-scale unmanned swarm, and the estimated range cost from each swarm to each target point was obtained, forming a range cost matrix. Therefore, it is only necessary to find an optimal assignment scheme in the N*N cost matrix by looking up values using the Hungarian algorithm. The optimal scheme is defined as having the minimum sum of all values in the N*N matrix. This can quickly complete the task allocation problem while meeting the mission requirements. The gene with the optimal sequence is the optimal individual. Each individual represents a solution. Determining whether this solution is optimal involves using this solution as a control command into the kinematic model of the aircraft, which will yield a trajectory and its length. The shortest trajectory, while avoiding mountainous environments, is the optimal one.
[0173] Since the allocation model is N=M, it is required that the aircraft clusters correspond one-to-one with the tasks to ensure that each unmanned cluster performs a different task.
[0174] See Figure 3 The specific steps are as follows:
[0175] Step 1: Modify the cost matrix to make it a reduced matrix where each row and each column has at least one zero element:
[0176] Step 1.1: Subtract the smallest element in each row of the benefit matrix;
[0177] Step 1.2: Subtract the smallest element of each column from the resulting reduced matrix.
[0178] Step 2: Produce a fully distributed scheme, which corresponds to a reduced matrix with only one zero element in different rows and columns, in order to obtain the optimal solution:
[0179] Step 2.1: If you obtain N zero elements distributed across different rows and columns, then you have completed the process of finding the optimal solution. End.
[0180] Step 2.2: If there are fewer than N zero elements distributed across different rows and columns, proceed to the next step.
[0181] Step 3: Construct the minimum set of lines that cover all zero elements:
[0182] Step 3.1 Mark the rows that have not been assigned.
[0183] Step 3.2 Mark the columns corresponding to all unassigned zero elements in the marked rows.
[0184] Step 3.3 Mark the rows that have been assigned in the marked columns.
[0185] Step 3.4 Repeat steps 3.2 and 3.3 until there are no more zero elements to mark.
[0186] Step 3.5 Draw vertical and horizontal lines on the unlabeled rows and labeled columns. This gives you the minimum number of lines that can cover all zero elements.
[0187] Step 4: Modify the reduced matrix to ensure that each row and each column has at least one zero element:
[0188] Step 4.1: Find the smallest element in the part not covered by a straight line.
[0189] Step 4.2: Subtract the element that is not drawn with a straight line.
[0190] Step 4.3: Add this smallest element to each element at the intersection of the horizontal and straight lines.
[0191] Step 4.4: Keep all elements that have been drawn with a straight line or horizontal line unchanged.
[0192] Step 4.5 Proceed to Step 2.
[0193] In the above process, if N zero elements distributed in different rows and columns are obtained, then the process of finding the optimal solution is complete. The process ends when a matrix with N zero elements in different rows and columns is obtained. The result is this matrix with N zero elements in different rows and columns. The positions of these zeros in different rows and columns represent the selection of the previously obtained N*N cost matrix.
[0194] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for task allocation in a heterogeneous unmanned cluster random environment based on improved k-means clustering, characterized in that, Includes the following steps: Heterogeneous aircraft are grouped using the K-means clustering method to obtain several aircraft formations, the number of which is equal to the number of tasks to be performed; The process of grouping heterogeneous aircraft using K-means clustering includes the following steps: S1. Determine the number of tasks to be executed, set N rendezvous points, and divide the M aircraft into N formations, where M > N; S2. Calculate the distance from all aircraft to N gathering points, find the gathering point closest to each aircraft, assign the aircraft to the formation of the closest gathering point, and record the sum of all distances as the initial index function value. S3. Calculate the centroids of the N formations and use them as the center points for the next clustering. S4. Determine if a formation cannot meet the requirement of having the ability to complete all tasks, and add the penalty value to the initial index function; S5. Randomly select a centroid that does not meet all task capability requirements and move it closer to the centroid that meets the requirement of having the ability to complete all tasks. S6. Repeat steps S3 to S5 until the number of iterations reaches the maximum specified number, or the formation centroid no longer changes and the index function value no longer changes. The index function is: (6) in, For the number of aircraft; Number of aircraft in formation; Indicates the first Does the aircraft belong to the [number]? The value is 1 if it is a class and 0 otherwise; No. One assembly point; This represents the penalty value, which is determined by how many squads, after being divided into groups, do not meet the conditions to perform all tasks. Establish a mathematical model for collaborative task allocation; The mathematical model for the collaborative task allocation is as follows: (14) A range cost matrix is established using the differential evolution algorithm, and the elements in the range cost matrix are the i-th elements. The aircraft formation departed from the starting point and executed the... The range cost required for each task is determined by establishing the range cost matrix, which satisfies both the environmental constraint model and the kinematic model. The environmental constraint model is a randomly generated mountain map, and the kinematic model is the equation of motion of the aircraft's center of mass. The mathematical model of system task allocation in the range cost matrix is solved by the Hungarian algorithm. During the solution process, the goal is to minimize the range of tasks completed and to maximize the range of all aircraft formations executing tasks. This yields the tasks to be executed for each aircraft formation. function f for: (8) in, and These are the weighting coefficients. Let be the set of tasks to be executed, where For the first The missions performed by each formation For formation Execute the One goal; For formation The estimated flight distance to complete the assigned task.
2. The method for task allocation in a heterogeneous unmanned cluster in a random environment based on improved k-means clustering as described in claim 1, characterized in that, The process of establishing the range cost matrix includes the following steps: S1. Set parameters; the parameters include formation assembly points, target location information, and parameters in the differential evolution algorithm; S2. Randomly generate a mountain map and define the number of mountains; S3. Iterative optimization is performed using the differential evolution algorithm. The specific process is as follows: multiple individuals are generated using a random function, each individual has random initial gene values, and the parent population is obtained. The parent population is mutated using the DE algorithm to obtain the pseudo-offspring population. The pseudo-offspring population and the parent population are compared using a crossover factor to obtain the true offspring population. The objective function values of the parent offspring population and the true offspring population at the same position are compared to obtain the individuals in the next generation population. S4. Record the optimal gene sequence that satisfies the environmental constraints and kinematic model constraints during each iteration.
3. The method for task allocation in a heterogeneous unmanned cluster in a random environment based on improved k-means clustering as described in claim 1, characterized in that, The task environment is a mountain peak model, and the mountain peak model is as follows: (16) in, Indicates the total number of mountain peaks; Representing the The center coordinates of each mountain peak; Use terrain parameters to control altitude; and They are the first The attenuation of each mountain peak along the x-axis and y-axis, and the control slope; and These are the coordinates of the current formation in the x and y directions, respectively.
4. The method for task allocation in a heterogeneous unmanned cluster in a random environment based on improved k-means clustering as described in claim 1, characterized in that, The equation of motion for the center of mass of the aircraft is: (5) in, Represents overload in three directions; -speed; —Ballistic inclination angle; g—acceleration due to gravity; —Ballistic deflection angle; —Position in the x-direction; —Position in the y direction; —Z-direction position.
5. The method for task allocation in a heterogeneous unmanned cluster in a random environment based on improved k-means clustering as described in claim 1, characterized in that, The process of solving using the Hungarian algorithm is as follows: (1) Modify the cost matrix, which becomes a reduced matrix, wherein each row and each column of the reduced matrix has at least one zero element; (2) Produce a complete allocation scheme, the complete allocation scheme corresponding to the reduction matrix, and obtain the optimal solution; (3) For the reduced matrix, construct the minimum set of lines that cover all zero elements; (4) Modify the reduced matrix so that each row and each column has at least one zero element.
6. A heterogeneous unmanned cluster random environment task allocation system based on improved k-means clustering for implementing the method of claim 1, characterized in that, include: The formation creation module is used to group heterogeneous aircraft using the K-means clustering method to obtain several aircraft formations, the number of which is equal to the number of tasks to be executed; The mathematical model building module is used to build mathematical models for collaborative task allocation; The matrix construction module is used to construct the range cost matrix using the differential evolution algorithm, wherein the elements in the range cost matrix are the first... The aircraft formation departed from the starting point and executed the... The range cost required for each task is determined by establishing the range cost matrix, which satisfies both the environmental constraint model and the kinematic model. The environmental constraint model is a randomly generated mountain map, and the kinematic model is the equation of motion of the aircraft's center of mass. The solution module uses the Hungarian algorithm to solve the mathematical model of system task allocation in the range cost matrix. During the solution process, the goal is to minimize the range completed by the task and maximize the range of all aircraft formations executing tasks. This yields the tasks to be executed for each aircraft formation.
Citation Information
Patent Citations
Multi-unmanned aerial vehicle cooperative task allocation method based on discrete mapping differential evolution algorithm
CN114399161A
Aircraft collaborative trajectory planning system and method based on decoy-penetration strategy
CN115079721A