Multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm

Through the multi-dimensional variable neighborhood search algorithm and multiple neighborhood operations, multi-robot task allocation is optimized, and the problem that complex tasks with charging pile constraints is difficult to efficiently solve, achieving efficient task allocation and charging scheduling.

CN119886732AActive Publication Date: 2025-04-25SHENZHEN UNIV

Patent Information

Application Number
CN202510318715.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-18
Publication Date
2025-04-25
Estimated Expiration
2045-03-18

AI Technical Summary

Technical Problem

In multi-robot task allocation, complex tasks with charging pile constraints are difficult to solve efficiently, traditional algorithms find high-quality solutions in large-scale tasks, and intelligent optimization methods are expensive to calculate and easily fall into local optimal.

Method used

The multi-dimensional variable neighborhood search algorithm is used to design a neighborhood structure suitable for problem characteristics, and combined with charging pile insertion and deletion, 2-opt, reordering and destruction-repair and other neighborhood operations, the task allocation plan is optimized, the calculation time is reduced and efficiency is improved.

Benefits of technology

While ensuring the quality of the solution, it significantly reduces the calculation time and improves the overall computing efficiency, and can effectively solve the task allocation and charging scheduling problems of multi-robot systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119886732A_ABST
    Figure CN119886732A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-robot task allocation method based on a multi-dimensional variable neighborhood search algorithm, which comprises the following steps of: generating an initial robot path as an initial solution by using a minimum cost increase algorithm based on electric quantity constraint insertion, and optimizing the initial solution by using the multi-dimensional variable neighborhood search algorithm to obtain a multi-robot task allocation scheme. According to the method, a charging pile insertion and deletion neighborhood is innovatively designed in a multi-dimensional variable neighborhood search algorithm, other neighborhood operation is optimized, a neighborhood random sorting strategy is introduced, solving is carried out from multiple dimensions, the method has excellent performance in the aspect of solving the electric quantity constrained multi-robot task allocation problem, the quality of the solution is guaranteed, and meanwhile, the method is suitable for large-scale popularization and application. The calculation time is shortened, and the overall calculation efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of robot task allocation, and in particular relates to the design of a multi-robot task allocation method based on a multi-dimensional variable neighborhood search algorithm. Background Art

[0002] Multi-Robot Task Allocation (MRTA) is a core research direction in the field of robotics and is widely used in industrial production, logistics, intelligent warehousing, etc. With the increase in the number of robots and the complexity of tasks, how to effectively allocate tasks to improve the efficiency of the overall system and reduce energy consumption has become an important research topic.

[0003] The multi-robot task allocation problem with charging piles is an extension of MRTA, which aims to solve the problem that robots may need to recharge midway during tasks due to battery power limitations. This problem usually involves multiple constraints, such as the timeliness of task execution, the limited number of charging piles, and the differences in robot battery capacity. In addition, the reasonable arrangement of charging behavior directly affects the completion time of the task and the overall performance of the system, making the problem more complicated to solve.

[0004] Traditional task allocation algorithms, such as auction-based algorithms, distributed allocation methods, and heuristic algorithms, perform well when dealing with smaller-scale and simple-constrained tasks, but often have difficulty finding high-quality solutions when faced with large-scale complex tasks with charging pile constraints. To this end, intelligent optimization methods such as genetic algorithms, ant colony optimization, particle swarm optimization, and simulated annealing have been introduced. These methods have advantages in global search capabilities by simulating evolution or group behavior in nature. However, these methods may fall into local optimality during the solution process and have high computational overhead.

[0005] The variable neighborhood search (VNS) algorithm is a global optimization method based on neighborhood structure switching, which has been widely used in combinatorial optimization problems in recent years. VNS improves the algorithm's ability to solve problems by dynamically adjusting the neighborhood structure to avoid the search process falling into local optimality. Combined with the characteristics of the multi-robot task allocation problem with charging piles, the VNS algorithm can balance the conflict between task allocation and charging behavior by designing a neighborhood structure suitable for the problem characteristics, and find a near-optimal solution in a relatively short time.

[0006] Multi-Dimensional means that each solution is considered as an independent dimension, and all solutions participate in the search at the same time. Each solution independently performs variable neighborhood search and explores its possible optimization direction from different neighborhood structures.

[0007] The Multi-Dimensional Variable Neighborhood Search (MD-VNS) algorithm, which combines the idea of ​​multi-dimensional neighborhood, provides a new solution to the multi-robot task allocation problem with charging piles. Multi-dimensional neighborhood significantly improves the global search capability and solution efficiency through the variable neighborhood search of independent solutions and the interaction between multiple dimensions. This method not only has important theoretical significance, but can also effectively solve the task allocation and charging scheduling problems of multi-robot systems in practical scenarios, providing efficient solutions for industries such as industry, logistics, and intelligent warehousing. Summary of the invention

[0008] The purpose of the present invention is to propose a multi-robot task allocation method based on a multi-dimensional variable neighborhood search algorithm, which can efficiently and reasonably allocate multiple scattered task points to multiple robots while satisfying the constraints of power constraints and the upper limit of the number of charging piles, while minimizing the time it takes for the last robot to complete the task and return to the warehouse, and on this basis further optimize the total time it takes for all robots to complete the task and return to the warehouse.

[0009] The technical solution of the present invention is: a multi-robot task allocation method based on a multi-dimensional variable neighborhood search algorithm, comprising the following steps:

[0010] S1. Initialize and set the relevant parameters for multi-robot task allocation.

[0011] S2. Based on relevant parameters, the k-means algorithm is used to obtain the optimal charging pile distribution plan.

[0012] S3. Define a set of task points to be inserted, and construct a set of charging piles and warehouses according to the optimal charging pile distribution plan. Based on the set of task points to be inserted and the set of charging piles and warehouses, an initial robot path is obtained as an initial solution according to power constraints and the minimum cost increase algorithm.

[0013] S4. Determine whether the set of task points to be inserted is an empty set. If so, proceed to step S5; otherwise, return to step S3.

[0014] S5. Use a multi-dimensional variable neighborhood search algorithm to optimize the initial solution and obtain a multi-robot task allocation solution.

[0015] Furthermore, the relevant parameters of the multi-robot task allocation in step S1 include the set of m robots , robot initial position set , need service Mission point collection , Task point location set , the robot's constant driving speed 、Robot's maximum battery life , A collection of charging stations , Charging efficiency of the robot and the fixed charging costs of the robot .

[0016] Further, step S2 includes the following sub-steps:

[0017] S21. According to the location of the task point And a collection of charging stations , the k-means algorithm is used to obtain the charging pile location set .

[0018] S22, taking the charging pile location as the clustering object, and dividing all task points into There are clusters, and the center point of each cluster is the location of the charging pile.

[0019] S23. Continuously adjust the center point of each cluster to make it equal to the average position of all task points in the cluster until the center point position no longer changes, and obtain the optimal charging pile distribution plan.

[0020] Further, step S3 includes the following sub-steps:

[0021] S31. Define a set of task points to be inserted , and build a collection of charging piles and warehouses based on the optimal charging pile distribution plan ,in Represents a collection of repositories.

[0022] S32. Determine whether the robot path violates the power constraint. If so, proceed to step S33; otherwise, proceed to step S34.

[0023] The specific power constraints are:

[0024]

[0025] S33, using charging pile insertion and deletion neighborhood to aggregate charging piles and warehouses The charging piles and warehouses are inserted into the infeasible robot path, and the process returns to step S32.

[0026] S34, execute the minimum cost increase algorithm, and insert the task point set Insert the task points to be inserted into the position with the smallest cost increase in all robot paths, and update the set of task points to be inserted , the output is the initial robot path as the initial solution; the cost increases The calculation formula is:

[0027]

[0028] in Indicates The robot goes to The remaining power after charging.

[0029] Further, step S5 includes the following sub-steps:

[0030] S51, the initial solution Duplicate it into multiple copies so that each dimension corresponds to an independent solution, and Assign value to the current optimal solution , let the number of outer loops be .

[0031] S52, start the outer loop, and make the current execution dimension .

[0032] S53, The solution in the dimension is assigned to the dimension solution , let the number of inner loops be .

[0033] S54. Solve the dimension Assign to current solution , start the inner loop and execute the neighborhood variable , randomly assign numbers 1 to 4 to the swap charging pile neighborhood, 2-opt neighborhood, reordering neighborhood, and damage-repair neighborhood, and assign number 5 to the charging pile insertion and deletion neighborhood.

[0034] S55, the execution value is equal to the execution neighborhood variable The neighborhood of , and according to the execution result, the Boolean value will be executed Set to 0 or 1. Current Solution changes, when Current Solution No changes occur.

[0035] S56, determine the execution Boolean value Is it 1? If so, go to step S57; otherwise, go to step S58.

[0036] S57, execute the neighborhood variable , and re-assign numbers 1 to 4 randomly to the exchange charging pile neighborhood, 2-opt neighborhood, reordering neighborhood, and damage-repair neighborhood to determine the current solution Is it better than the dimensional solution? If so, then solve the dimension Update to current solution , return to step S55, otherwise return directly to step S55.

[0037] S58, execute the neighborhood variable Add 1 to determine the execution neighborhood variable Is it greater than the number of neighbors? If so, go to step S59, otherwise return to step S55.

[0038] S59, command internal loop times Add 1 to determine the number of inner loops Whether the maximum number of inner loops has been reached If so, go to step S510, otherwise return to step S54.

[0039] S510, Determine Dimension Solution Is it better than the current optimal solution? If so, update the current optimal solution Solution for dimension , go to step S511, otherwise go directly to step S511.

[0040] S511, set the current execution dimension Add 1 to determine the current execution dimension Whether the maximum number of dimensions is exceeded, if so, proceed to step S512, otherwise return to step S53.

[0041] S512, probabilistically performing the assimilation dimension operation, that is, assigning the dimension where the optimal solution is located to the solutions of other dimensions according to the preset probability.

[0042] S513, command external loop times Add 1 to determine the number of external loops Whether the maximum number of external loops has been reached If yes, then a multi-robot task allocation solution is obtained, otherwise, return to step S52.

[0043] Furthermore, the specific method of exchanging the charging pile neighborhood is as follows: traverse the charging pile nodes in each robot path and calculate the change in the total cost of the path after replacing them with other charging piles. If there are multiple charging pile distribution replacement schemes that meet the power constraint and can reduce the total cost of the path, the Boolean value will be executed. Set to 1, select the charging pile distribution replacement scheme with the largest path total cost reduction to update the current solution ; If there is only one charging pile distribution replacement solution that meets the power constraint and can reduce the total path cost, the Boolean value will be executed Set to 1 and execute the charging pile distribution replacement scheme to update the current solution ; If there is no alternative solution that satisfies the power constraint and can reduce the total cost of the path, the Boolean value will be executed Set to 0 to keep the current solution constant;

[0044] Changes in total path cost after replacing with other charging piles Specifically:

[0045]

[0046] in Indicates Mission points and The Euler distance of the charging piles, Indicates The charging station and The Euler distance of the task points, Indicates Mission points and The Euler distance of the charging piles, Indicates The charging station and The Euler distance between the task points.

[0047] Furthermore, the 2-opt neighborhood is specifically as follows: the positions of any two task points in the exchange path are calculated, and the change in the total cost of the path before and after the exchange is calculated. If there is an exchange scheme that satisfies the power constraint and can reduce the total cost of the path, the Boolean value will be executed Set to 1 and update the current solution according to the exchange scheme , otherwise the Boolean value will be executed Set to 0 to keep the current solution constant;

[0048] Changes in total path cost before and after the switch Specifically:

[0049]

[0050]

[0051] in Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance between the task points.

[0052] Furthermore, the reordering neighborhood is specifically as follows: randomly select a robot and randomly select a sub-path from the path of the robot. The starting point and end point of the sub-path are any task points in the path that do not include the starting point and end point. The sub-paths are reordered to form a new path, and the total path cost of the new path is calculated. If the new path meets the power constraint and the total path cost is lower than the original path, the Boolean value will be executed. Set to 1 and update the current solution according to the new path , otherwise the Boolean value will be executed Set to 0 to keep the current solution constant.

[0053] Ways to reorder subpaths include randomly shuffling the subpath order, flipping the subpath order, and heuristic sorting based on the shortest distance.

[0054] The specific steps of randomly disrupting the subpath order are as follows: taking all nodes from the subpath, generating a randomly arranged index, and rearranging the nodes in the subpath according to the index.

[0055] Reversing the subpath order is specifically as follows: taking all nodes from the subpath and reversing the order of the nodes in the subpath from left to right.

[0056] The heuristic sorting based on the shortest distance is as follows: select the first node in the subpath as the starting point and remove it from the subpath, then repeat the following steps until the subpath is empty: calculate the distance from the last node of the current subpath to all removed nodes in the removed node set, add the closest removed node to the subpath, and remove the closest removed node from the removed node set.

[0057] Furthermore, the destruction-repair neighborhood is specifically as follows: randomly select a robot path, or select the current longest robot path, randomly select a subpath from the robot path and delete it from the robot path, and add the task points in the deleted subpath to the deleted task point set; then traverse all robot paths, insert the task points in the deleted task point set in turn to the position where the robot path meets the power constraint, calculate the insertion cost increase, and insert each task point in the deleted task point set in turn to the position where the insertion cost increase is the smallest, and remove it from the deleted task point set; in response to the deleted task point set being an empty set, if the total cost of the robot path at this time is lower than the total cost of the robot path without the destruction-repair neighborhood, the Boolean value will be executed Set to 1 and update the current solution according to the robot path at this time , otherwise the Boolean value will be executed Set to 0 to keep the current solution constant.

[0058] Insert cost added value Specifically:

[0059]

[0060] in Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance between the task points.

[0061] Furthermore, the charging pile insertion and deletion neighborhood includes a charging pile minimum marginal cost insertion phase and a charging pile maximum saving cost deletion phase.

[0062] The minimum marginal cost insertion phase of the charging pile is as follows: the power of each robot in the current path is calculated. If the power does not meet the power constraint, the Boolean value is executed. Set to 1, and continuously insert charging piles into the robot path that does not meet the power constraint through the minimum marginal cost method until the robot path meets the power constraint and enters the charging pile maximum saving cost deletion phase, otherwise the Boolean value will be executed Set to 0 to keep the current solution constant.

[0063] Marginal Cost The calculation formula is:

[0064]

[0065]

[0066] in Indicates that the Insert the charging pile into the The robot path The additional cost required for the location of each mission point, represents the proportionality coefficient, Indicates the task point and The Euler distance of the charging piles, Indicates Charging stations and mission points The Euler distance of Indicates the task point and mission points The Euler distance of Indicates The robot path Mission points, Indicates The robot path A mission point.

[0067] The maximum saving cost of charging pile removal phase is as follows: Calculate the saving cost of removing each charging pile in the robot path If the robot path no longer meets the power constraint after the charging pile is removed, the saving cost of the charging pile is Set as , delete the charging pile with the largest cost saving in the robot path in sequence until the cost saving When it is less than or equal to 0, the charging pile maximum saving cost deletion phase ends.

[0068] Cost saving The calculation formula is:

[0069]

[0070] in Indicates the task point and The Euler distance of the charging piles, Indicates the task point and mission points The Euler distance of Indicates The robot path A mission point.

[0071] The beneficial effects of the present invention are as follows: the present invention innovatively designs a charging pile insertion and deletion neighborhood in a multi-dimensional variable neighborhood search algorithm, optimizes other neighborhood operations, and introduces a neighborhood random sorting strategy, solving the problem from multiple dimensions, and has superior performance in solving the multi-robot task allocation problem with power constraints. While ensuring the quality of the solution, it reduces the calculation time and improves the overall calculation efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0072] Figure 1 Shown is a flow chart of a multi-robot task allocation method based on a multi-dimensional variable neighborhood search algorithm provided by an embodiment of the present invention.

[0073] Figure 2 FIG. 1 is a schematic diagram of a heuristic sorting method based on the shortest distance provided in an embodiment of the present invention.

[0074] Figure 3 The figure shows a schematic diagram of the charging pile insertion and deletion neighborhood provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0075] Now, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. It should be understood that the embodiments shown and described in the accompanying drawings are only exemplary and are intended to explain the principles and spirit of the present invention, rather than to limit the scope of the present invention.

[0076] The embodiment of the present invention provides a multi-robot task allocation method based on a multi-dimensional variable neighborhood search algorithm, such as Figure 1 As shown, the following steps S1 to S5 are included:

[0077] S1. Initialize and set the relevant parameters for multi-robot task allocation.

[0078] In the embodiment of the present invention, the relevant parameters of multi-robot task allocation include a set of m robots: , robot initial position set , need service Mission point collection , Task point location set , the robot's constant driving speed 、Robot's maximum battery life , A collection of charging stations , Charging efficiency of the robot and the fixed charging costs of the robot .

[0079] S2. Based on relevant parameters, the k-means algorithm is used to obtain the optimal charging pile distribution plan.

[0080] Step S2 includes the following sub-steps S21 to S23:

[0081] S21. According to the location of the task point And a collection of charging stations , the k-means algorithm is used to obtain the charging pile location set .

[0082] S22, taking the charging pile location as the clustering object, and dividing all task points into There are clusters, and the center point of each cluster is the location of the charging pile.

[0083] S23. Continuously adjust the center point of each cluster to make it equal to the average position of all task points in the cluster until the center point position no longer changes, and obtain the optimal charging pile distribution plan.

[0084] S3. Define a set of task points to be inserted, and construct a set of charging piles and warehouses according to the optimal charging pile distribution plan. Based on the set of task points to be inserted and the set of charging piles and warehouses, an initial robot path is obtained as an initial solution according to power constraints and the minimum cost increase algorithm.

[0085] Step S3 includes the following sub-steps S31 to S34:

[0086] S31. Define a set of task points to be inserted , and build a collection of charging piles and warehouses based on the optimal charging pile distribution plan ,in Represents a collection of repositories.

[0087] In the embodiment of the present invention, since the warehouse can also be charged, and the warehouse is set at the initial position of the robot and has a one-to-one correspondence with the robot, the warehouse set Assemble with robots same.

[0088] S32. Determine whether the robot path violates the power constraint. If so, proceed to step S33; otherwise, proceed to step S34.

[0089] In the embodiment of the present invention, the power constraint is specifically:

[0090]

[0091] S33, using charging pile insertion and deletion neighborhood to aggregate charging piles and warehouses The charging piles and warehouses are inserted into the infeasible robot path, and the process returns to step S32.

[0092] S34, execute the minimum cost increase algorithm, and insert the task point set Insert the task points to be inserted into the position with the smallest cost increase in all robot paths, and update the set of task points to be inserted , the initial robot path is output as the initial solution.

[0093] Increased costs The calculation formula is:

[0094]

[0095] in Indicates The robot goes to The remaining power after charging.

[0096] S4. Determine whether the set of task points to be inserted is an empty set. If so, it means that all task points are inserted into the robot path, and go to step S5. Otherwise, return to step S3.

[0097] S5. Use a multi-dimensional variable neighborhood search algorithm to optimize the initial solution and obtain a multi-robot task allocation solution.

[0098] Step S5 includes the following sub-steps S51 to S513:

[0099] S51, the initial solution Duplicate it into multiple copies so that each dimension corresponds to an independent solution, and Assign value to the current optimal solution , let the number of outer loops be .

[0100] S52, start the outer loop, and make the current execution dimension .

[0101] S53, The solution in the dimension is assigned to the dimension solution , let the number of inner loops be .

[0102] S54. Solve the dimension Assign to current solution , start the inner loop and execute the neighborhood variable , randomly assign numbers 1 to 4 to the swap charging pile neighborhood, 2-opt neighborhood, reordering neighborhood, and damage-repair neighborhood, and assign number 5 to the charging pile insertion and deletion neighborhood.

[0103] S55, the execution value is equal to the execution neighborhood variable The neighborhood of , and according to the execution result, the Boolean value will be executed Set to 0 or 1. Current Solution changes, when Current Solution No changes occur.

[0104] In the embodiment of the present invention, the specific method of exchanging the charging pile neighborhood is as follows: traverse the charging pile nodes in each robot path, and calculate the change in the total cost of the path after replacing them with other charging piles. If there are multiple charging pile distribution replacement schemes that meet the power constraint and can reduce the total cost of the path, the Boolean value will be executed. Set to 1, select the charging pile distribution replacement scheme with the largest path total cost reduction to update the current solution ; If there is only one charging pile distribution replacement solution that meets the power constraint and can reduce the total path cost, the Boolean value will be executed Set to 1 and execute the charging pile distribution replacement scheme to update the current solution ; If there is no alternative solution that satisfies the power constraint and can reduce the total cost of the path, the Boolean value will be executed Set to 0 to keep the current solution constant.

[0105] Changes in total path cost after replacing with other charging piles Specifically:

[0106]

[0107] in Indicates Mission points and The Euler distance of the charging piles, Indicates The charging station and The Euler distance of the task points, Indicates Mission points and The Euler distance of the charging piles, Indicates The charging station and The Euler distance between the task points.

[0108] In the embodiment of the present invention, the 2-opt neighborhood is specifically: the positions of any two task points in the exchange path are calculated, and the change of the total cost of the path before and after the exchange is calculated. If there is an exchange scheme that satisfies the power constraint and can reduce the total cost of the path, the Boolean value is executed. Set to 1 and update the current solution according to the exchange scheme , otherwise the Boolean value will be executed Set to 0 to keep the current solution constant.

[0109] Changes in total path cost before and after the switch Specifically:

[0110]

[0111]

[0112] in Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance between the task points.

[0113] In the embodiment of the present invention, the reordering neighborhood is specifically as follows: randomly selecting a robot and randomly selecting a sub-path from the path of the robot, the starting point and the end point of the sub-path are any task points in the path that do not include the starting point and the end point, reordering the sub-path to form a new path, and calculating the total path cost of the new path. If the new path meets the power constraint and the total path cost is lower than that of the original path, the Boolean value is executed. Set to 1 and update the current solution according to the new path , otherwise the Boolean value will be executed Set to 0 to keep the current solution constant.

[0114] In the embodiment of the present invention, the manner of reordering the sub-paths includes randomly disrupting the order of the sub-paths, reversing the order of the sub-paths, and heuristic sorting based on the shortest distance.

[0115] Specifically, randomly disrupting the order of the subpaths is as follows: taking all nodes from the subpaths, generating a randomly arranged index, and rearranging the nodes in the subpaths according to the index.

[0116] Reversing the subpath order is specifically as follows: taking all nodes from the subpath and reversing the order of the nodes in the subpath from left to right.

[0117] The heuristic sorting based on the shortest distance is as follows: select the first node in the subpath as the starting point and remove it from the subpath, and then repeat the following steps until the subpath is empty: select the first node in the subpath as the starting point and remove it from the subpath, and then repeat the following steps until the subpath is empty: calculate the distance from the last node of the current subpath to all removed nodes in the removed node set, add the closest removed node to the subpath, and remove the closest removed node from the removed node set.

[0118] by Figure 2 For example, Figure 2 (a) is the original robot path, Figure 2 (b) is the robot path obtained after using the heuristic sorting based on the shortest distance. The initial path of a robot is: 1-2-3-4-5-6-7-1, and the selected sub-path is 2-3-4-5-6. Node 2 is used as the new starting point in the sub-path, and the other nodes are added to the removed node set [3, 4, 5, 6]. In the removed node set, the node closest to node 2 is 6, so the sub-path becomes 2-6, and the removed node set becomes [3, 4, 5]. Then, the node closest to the last node 6 in the sub-path is 4 in the removed node set, so the sub-path becomes 2-6, and the removed node set becomes [3, 4, 5]. The path becomes 2-6-4, and the set of removed nodes becomes [3, 5]. In the sub-path, find the nearest node of the last node 4 in the set of removed nodes, which is 3. Then insert node 3 after the sub-path, and the sub-path becomes 2-6-4-3. After that, only node 5 is left, which can be added directly. Then the sub-path becomes 2-6-4-3-5. Put the sub-path back into the robot path, and it becomes 1-2-6-4-3-5-7-1. This path is improved compared to the original path.

[0119] In the embodiment of the present invention, the destruction-repair neighborhood is specifically as follows: randomly select a robot path, or select the current longest robot path, randomly select a sub-path from the robot path and delete it from the robot path, and add the task points in the deleted sub-path to the deleted task point set; then traverse all robot paths, insert the task points in the deleted task point set in turn to the position where the robot path meets the power constraint, calculate the insertion cost increase value, and insert each task point in the deleted task point set in turn to the position where the insertion cost increase value is the smallest, and remove it from the deleted task point set at the same time; in response to the deleted task point set being an empty set, if the total cost of the robot path at this time is lower than the total cost of the robot path without the destruction-repair neighborhood, the Boolean value will be executed Set to 1 and update the current solution according to the robot path at this time , otherwise the Boolean value will be executed Set to 0 to keep the current solution constant.

[0120] Insert cost added value Specifically:

[0121]

[0122] in Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance between the task points.

[0123] In the damage-repair neighborhood, the total cost of the robot path is the time it takes for the robot to complete the task and return to the warehouse.

[0124] In the embodiment of the present invention, Figure 3 As shown, the charging pile insertion and deletion neighborhood includes the charging pile minimum marginal cost insertion stage and the charging pile maximum saving cost deletion stage.

[0125] The minimum marginal cost insertion phase of the charging pile is as follows: the power of each robot in the current path is calculated. If the power does not meet the power constraint, the Boolean value is executed. Set to 1, and continuously insert charging piles into the robot path that does not meet the power constraint through the minimum marginal cost method until the robot path meets the power constraint and enters the charging pile maximum saving cost deletion phase, otherwise the Boolean value will be executed Set to 0 to keep the current solution constant.

[0126] Marginal Cost The calculation formula is:

[0127]

[0128]

[0129] in Indicates that the Insert the charging pile into the The robot path The additional cost required for the location of each mission point, represents the proportionality coefficient, Indicates the task point and The Euler distance of the charging piles, Indicates Charging stations and mission points The Euler distance of Indicates the task point and mission points The Euler distance of Indicates The robot path Mission points, Indicates The robot path A mission point.

[0130] In the embodiment of the present invention, the power is greater than When the robot does not need to be plugged into the charging station, the proportionality factor Set to a larger value; When the robot needs to charge, but it is not urgent, the proportional coefficient exist arrive The less power, The smaller; the power is less than When the robot is in use, the charging demand is high. Set to a smaller value, .

[0131] The maximum saving cost of charging pile removal phase is as follows: Calculate the saving cost of removing each charging pile in the robot path If the robot path no longer meets the power constraint after the charging pile is removed, the saving cost of the charging pile is Set as , delete the charging pile with the largest cost saving in the robot path in sequence until the cost saving When it is less than or equal to 0, the charging pile maximum saving cost deletion phase ends.

[0132] Cost saving The calculation formula is:

[0133]

[0134] in Indicates the task point and The Euler distance of the charging piles, Indicates the task point and mission points The Euler distance of Indicates The robot path A mission point.

[0135] like Figure 3 As shown in the figure, when it is found that the robot path does not meet the power constraint, it is necessary to add a charging pile (the warehouse is also considered a charging pile because the warehouse can also be charged), enter the charging pile insertion stage, and find the marginal cost of adding in the path The smallest charging pile is 25, plug in Figure 3 However, when checking the robot path, it is found that the robot path still violates the power constraint, so it is necessary to use the minimum marginal cost to insert the charging pile. The calculation formula to find the current marginal cost of joining The smallest charging pile is 26. Add it to the robot path and check that the robot path does not violate the power constraint. Then enter the charging pile deletion phase. In the charging pile deletion phase, try to delete the charging piles in each path and find the cost saving by deleting the charging piles one by one. Delete the charging piles that are the largest and will not cause the robot's power to violate the power constraint. For example, first find the ones that can be deleted and save costs. The largest charging pile 24, after being deleted, becomes the second to last path, and the same strategy is used to delete charging piles (although the saving cost of charging pile 26 is greater than charging post 25, but because deleting charging post 26 will cause the robot to violate the power constraint, the saving cost of deleting charging post 26 is 0). When there is no charging post, the saving cost is When it is greater than 0, the charging pile deletion phase is completed.

[0136] S56, determine the execution Boolean value Is it 1? If so, go to step S57; otherwise, go to step S58.

[0137] S57, execute the neighborhood variable , and re-assign numbers 1 to 4 randomly to the exchange charging pile neighborhood, 2-opt neighborhood, reordering neighborhood, and damage-repair neighborhood to determine the current solution Is it better than the dimensional solution? If so, then solve the dimension Update to current solution , return to step S55, otherwise return directly to step S55.

[0138] S58, execute the neighborhood variable Add 1 to determine the execution neighborhood variable Is it greater than the number of neighbors? If so, go to step S59, otherwise return to step S55.

[0139] S59, command internal loop times Add 1 to determine the number of inner loops Whether the maximum number of inner loops has been reached If so, go to step S510, otherwise return to step S54.

[0140] S510, Determine Dimension Solution Is it better than the current optimal solution? If so, update the current optimal solution Solution for dimension , go to step S511, otherwise go directly to step S511.

[0141] S511, set the current execution dimension Add 1 to determine the current execution dimension Whether the maximum number of dimensions is exceeded, if so, proceed to step S512, otherwise return to step S53.

[0142] S512, probabilistically performing the assimilation dimension operation, that is, assigning the dimension where the optimal solution is located to the solutions of other dimensions according to the preset probability.

[0143] S513, command external loop times Add 1 to determine the number of external loops Whether the maximum number of external loops has been reached If yes, then a multi-robot task allocation solution is obtained, otherwise, return to step S52.

[0144] Those skilled in the art will appreciate that the embodiments described herein are intended to help readers understand the principles of the present invention, and should be understood that the protection scope of the present invention is not limited to such specific statements and embodiments. Those skilled in the art can make various other specific variations and combinations that do not deviate from the essence of the present invention based on the technical revelations disclosed by the present invention, and these variations and combinations are still within the protection scope of the present invention.

Claims

1. A multi-robot task allocation method based on a multi-dimensional variable neighborhood search algorithm, characterized in that: The following steps are involved: S1. Initialize and set the relevant parameters of multi-robot task allocation; S2. Based on relevant parameters, the k-means algorithm is used to obtain the optimal charging pile distribution plan; S3. Define a set of task points to be inserted, and construct a set of charging piles and warehouses according to the optimal charging pile distribution plan. Based on the set of task points to be inserted and the set of charging piles and warehouses, an initial robot path is obtained as an initial solution according to power constraints and a minimum cost increase algorithm. S4, determine whether the set of task points to be inserted is an empty set, if so, proceed to step S5, otherwise return to step S3; S5. Use a multi-dimensional variable neighborhood search algorithm to optimize the initial solution and obtain a multi-robot task allocation solution.

2. The multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm according to claim 1 is characterized in that: The relevant parameters of the multi-robot task allocation in step S1 include a set of m robots , robot initial position set , need service Mission point collection , Task point location set , the robot's constant driving speed 、Robot's maximum battery life , A collection of charging stations , the robot's charging efficiency and the fixed charging costs of the robot .

3. The multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm according to claim 2 is characterized in that: The step S2 comprises the following sub-steps: S21. According to the location of the task point And a collection of charging stations , the k-means algorithm is used to obtain the charging pile location set ; S22, taking the charging pile location as the clustering object, and dividing all task points into There are clusters, and the center point of each cluster is the location of the charging pile; S23. Continuously adjust the center point of each cluster to make it equal to the average position of all task points in the cluster until the center point position no longer changes, and obtain the optimal charging pile distribution plan.

4. The multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm according to claim 2 is characterized in that: The step S3 comprises the following sub-steps: S31. Define a set of task points to be inserted , and build a collection of charging piles and warehouses based on the optimal charging pile distribution plan ,in Represents a collection of warehouses; S32, determine whether the robot path violates the power constraint, if so, proceed to step S33, otherwise proceed to step S34; The power constraints are specifically: S33, using charging pile insertion and deletion neighborhood to aggregate charging piles and warehouses The charging pile and the warehouse are inserted into the infeasible robot path, and the process returns to step S32; S34, execute the minimum cost increase algorithm, and insert the task point set Insert the task points to be inserted into the position with the smallest cost increase in all robot paths, and update the set of task points to be inserted , the initial robot path is output as the initial solution; The cost increase The calculation formula is: in Indicates The robot goes to The remaining power after charging.

5. The multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm according to claim 4 is characterized in that: The step S5 comprises the following sub-steps: S51, the initial solution Duplicate it into multiple copies so that each dimension corresponds to an independent solution, and Assign value to the current optimal solution , let the number of outer loops be ; S52, start the outer loop, and make the current execution dimension ; S53, The solution in the dimension is assigned to the dimension solution , let the number of inner loops be ; S54. Solve the dimension Assign to current solution , start the inner loop and execute the neighborhood variable , randomly assign numbers 1 to 4 to the swap charging pile neighborhood, 2-opt neighborhood, reordering neighborhood, and damage-repair neighborhood, and assign number 5 to the charging pile insertion and deletion neighborhood; S55, the execution value is equal to the execution neighborhood variable The neighborhood of , and according to the execution result, the Boolean value will be executed Set to 0 or 1. Current Solution changes, when Current Solution No changes occur; S56, determine the execution Boolean value Is it 1? If yes, go to step S57; otherwise, go to step S58; S57, execute the neighborhood variable , and re-assign numbers 1 to 4 randomly to the exchange charging pile neighborhood, 2-opt neighborhood, reordering neighborhood, and damage-repair neighborhood to determine the current solution Is it better than the dimensional solution? If so, then solve the dimension Update to current solution , return to step S55, otherwise directly return to step S55; S58, execute the neighborhood variable Add 1 to determine the execution neighborhood variable Is it greater than the number of neighbors? If so, go to step S59, otherwise return to step S55; S59, command internal loop times Add 1 to determine the number of inner loops Whether the maximum number of inner loops has been reached If yes, go to step S510, otherwise return to step S54; S510, Determine Dimension Solution Is it better than the current optimal solution? If so, update the current optimal solution Solution for dimension , go to step S511, otherwise go directly to step S511; S511, set the current execution dimension Add 1 to determine the current execution dimension Whether the maximum number of dimensions is exceeded, if so, proceed to step S512, otherwise return to step S53; S512, probabilistically performing the assimilation dimension operation, that is, assigning the dimension where the optimal solution is located to the solutions of other dimensions according to the preset probability; S513, command external loop times Add 1 to determine the number of external loops Whether the maximum number of external loops has been reached If yes, then a multi-robot task allocation solution is obtained, otherwise, return to step S52.

6. The multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm according to claim 5 is characterized in that: The specific method of exchanging the charging pile neighborhood is to traverse the charging pile nodes in each robot path and calculate the change in the total cost of the path after replacing them with other charging piles. If there are multiple charging pile distribution replacement schemes that meet the power constraint and can reduce the total cost of the path, the Boolean value will be executed. Set to 1, select the charging pile distribution replacement scheme with the largest path total cost reduction to update the current solution ; If there is only one charging pile distribution replacement solution that meets the power constraint and can reduce the total path cost, the Boolean value will be executed Set to 1 and execute the charging pile distribution replacement scheme to update the current solution ; If there is no alternative solution that satisfies the power constraint and can reduce the total cost of the path, the Boolean value will be executed Set to 0 to keep the current solution constant; The change of the total cost of the path after replacing other charging piles Specifically: in Indicates Mission points and The Euler distance of the charging piles, Indicates The charging station and The Euler distance of the task points, Indicates Mission points and The Euler distance of the charging piles, Indicates The charging station and The Euler distance between the task points.

7. The multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm according to claim 5 is characterized in that: The 2-opt neighborhood is specifically: swap the positions of any two task points in the path, calculate the change in the total cost of the path before and after the swap, and if there is a swap solution that satisfies the power constraint and can reduce the total cost of the path, then execute the Boolean value Set to 1 and update the current solution according to the exchange scheme , otherwise the Boolean value will be executed Set to 0 to keep the current solution constant; The change of the total cost of the path before and after the exchange Specifically: in Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance between the task points.

8. The multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm according to claim 5 is characterized in that: The reordering neighborhood is specifically as follows: randomly select a robot and randomly select a sub-path from the robot's path. The starting point and end point of the sub-path are any task points in the path that do not include the starting point and end point. The sub-paths are reordered to form a new path, and the total path cost of the new path is calculated. If the new path meets the power constraint and the total path cost is lower than the original path, the Boolean value is executed. Set to 1 and update the current solution according to the new path , otherwise the Boolean value will be executed Set to 0 to keep the current solution constant; The method of reordering the subpaths includes randomly disrupting the subpath order, reversing the subpath order, and heuristic sorting based on the shortest distance; The random disruption of the subpath order is specifically as follows: taking all nodes from the subpath, generating a randomly arranged index, and rearranging the nodes in the subpath according to the index; The reversing subpath order is specifically as follows: taking all nodes from the subpath and reversing the order of the nodes in the subpath from left to right; The heuristic sorting based on the shortest distance is specifically as follows: select the first node in the subpath as the starting point and remove it from the subpath, and then repeat the following steps until the subpath is empty: calculate the distance from the last node of the current subpath to all removed nodes in the removed node set, add the closest removed node to the subpath, and remove the closest removed node from the removed node set.

9. The multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm according to claim 5 is characterized in that: The destruction-repair neighborhood is specifically as follows: randomly selecting a robot path, or selecting the current longest robot path, randomly selecting a sub-path from the robot path and deleting it from the robot path, and adding the task points in the deleted sub-path to the deleted task point set; Then, all robot paths are traversed, and the task points in the deleted task point set are inserted into the positions of the robot path that meet the power constraint in turn. The insertion cost increase is calculated, and each task point in the deleted task point set is inserted into the position with the smallest insertion cost increase in turn, and is removed from the deleted task point set at the same time; in response to the deleted task point set being an empty set, if the total cost of the robot path at this time is lower than the total cost of the robot path without the destruction-repair neighborhood, the Boolean value is executed Set to 1 and update the current solution according to the robot path at this time , otherwise the Boolean value will be executed Set to 0 to keep the current solution constant; The insertion cost increases the value Specifically: in Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance of the task points, Indicates Mission points and The Euler distance between the task points.

10. The multi-robot task allocation method based on multi-dimensional variable neighborhood search algorithm according to claim 5 is characterized in that: The charging pile insertion and deletion neighborhood includes a charging pile minimum marginal cost insertion phase and a charging pile maximum saving cost deletion phase; The charging pile minimum marginal cost insertion stage is specifically as follows: calculate the power of each robot in the current path, if the power does not meet the power constraint, then execute the Boolean value Set to 1, and continuously insert charging piles into the robot path that does not meet the power constraint through the minimum marginal cost method until the robot path meets the power constraint and enters the charging pile maximum saving cost deletion phase, otherwise the Boolean value will be executed Set to 0 to keep the current solution constant; The marginal cost The calculation formula is: in Indicates that the Insert the charging pile into the The robot path The additional cost required for the location of each mission point, represents the proportionality coefficient, Indicates the task point and The Euler distance of the charging piles, Indicates Charging stations and mission points The Euler distance of Indicates the task point and mission points The Euler distance of Indicates The robot path Mission points, Indicates The robot path Mission points; The maximum saving cost deletion stage of the charging pile is specifically as follows: calculating the saving cost of removing each charging pile in the robot path If the robot path no longer meets the power constraint after the charging pile is removed, the saving cost of the charging pile is Set as , delete the charging pile with the largest cost saving in the robot path in sequence until the cost saving When it is less than or equal to 0, the charging pile maximum saving cost deletion phase ends; The cost of saving The calculation formula is: in Indicates the task point and The Euler distance of the charging piles, Indicates the task point and mission points The Euler distance of Indicates The robot path A mission point.

Citation Information

Patent Citations

  • Self-adaptive large neighborhood search method for AEOS (agile earth observation satellite) scheduling

    CN107025363A

  • Distribution optimization method for continuous multi-time replenishment of gas station in push-type distribution mode

    CN116843259A

  • Multi-robot task allocation method based on performance influence under rescue time limitation

    CN117314134A

  • Unmanned aerial vehicle and logistics cabinet collaborative distribution method and system based on variable neighborhood search

    CN117610881A

  • Multi-truck multi-unmanned aerial vehicle task allocation method based on improved variable neighborhood descent

    CN118378981A

Cited By

  • Multi-robot task allocation method

    CN121073034A