Multi-robot task allocation method and device for multi-geometric task scene

By decomposing non-point tasks in multi-geometric task scenarios into point tasks and assigning tasks based on performance functions, the problem of traditional multi-robot task allocation algorithm lacks unified allocation among multi-class geometric tasks, and the unified allocation of multi-robot tasks and the improvement of collaborative operation efficiency is achieved.

CN120215567APending Publication Date: 2025-06-27HUAZHONG UNIV OF SCI & TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510367241.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-26
Publication Date
2025-06-27

AI Technical Summary

Technical Problem

The traditional multi-robot task allocation algorithm lacks a unified task allocation paradigm among multi-class geometric tasks, which affects job efficiency, and is especially unable to effectively allocate point tasks, line tasks and surface tasks.

Method used

By decomposing non-point tasks in multi-geometric task scenarios, a target point task set is obtained, and the marginal gain of each point task is determined based on the performance function of each robot, and then task allocation is performed to achieve unified allocation of multi-robot tasks.

Benefits of technology

In the multi-geometric task scenario, the unified allocation of multi-robot tasks is realized, the collaborative operation efficiency of multi-robots is improved, and task scenarios including point tasks, line tasks and surface tasks can be effectively handled.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120215567A_ABST
    Figure CN120215567A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of multi-robot cooperative control, and particularly discloses a multi-robot task allocation method and device for a multi-geometric task scene. The method comprises the steps of performing point task decomposition on non-point tasks in a multi-geometric task set according to an operation range of a robot to obtain a target point task set corresponding to the multi-geometric task set; based on the performance function of the task executed by each robot, determining the marginal gain of each point task in the target point task set executed by each robot; the performance function is determined based on an important factor of the task, a fitness factor between the robot and the task, a distance discount coefficient of the robot motion indicated by the task and a task number discount coefficient; and distributing each point task according to the marginal gain of executing each point task by each robot, and determining a task distribution result of each robot. According to the invention, the unified distribution of the multi-robot tasks in the multi-geometric task scene can be realized, and the collaborative operation efficiency of the multiple robots is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the technical field of multi-robot collaborative control, and more specifically, to a multi-robot task allocation method and device for multi-geometric task scenarios. Background Art

[0002] With the continuous development of the new generation of artificial intelligence technology, intelligent control technology and task planning technology, low-cost, large-scale multi-robot swarms have been widely used due to their flexible configuration and strong adaptability. Multi-robot swarms are becoming an effective means to solve major application demand problems such as emergency rescue, urban security, unmanned logistics and three-dimensional combat. In these application scenarios, the task type is no longer single. Multi-robot swarms need to perform multiple different types of tasks in a larger scenario, including point tasks such as fixed-point delivery, line tasks for route patrols, and surface tasks for regional detection. These tasks involve different geometric areas and are combined to form a multi-geometric task scenario.

[0003] Then, for this multi-geometric task scenario, the traditional multi-robot task allocation algorithm lacks a unified task allocation paradigm among multiple types of geometric tasks, which will directly affect the mutual cooperation between robots under different geometric tasks, and thus affect the work efficiency. For example, in the prior art, the patent document with publication number CN105956748B discloses a multi-search and rescue robot system task allocation method, which can only allocate tasks of point geometry type, but cannot realize the task allocation of line tasks and surface tasks.

[0004] Therefore, how to achieve unified allocation of multi-robot tasks in scenarios with multiple geometric tasks has become a technical problem that needs to be urgently solved in the industry. Summary of the invention

[0005] In view of the defects of the prior art, the purpose of this application is to achieve unified allocation of multi-robot tasks in scenarios oriented to multiple geometric tasks, aiming to solve the problem that traditional multi-robot task allocation algorithms lack a unified task allocation paradigm among multiple types of geometric tasks, which affects work efficiency.

[0006] To achieve the above objectives, in a first aspect, the present application provides a multi-robot task allocation method for multi-geometric task scenarios, comprising: Decomposing the non-point tasks in the multi-geometric task set into point tasks according to the robot's operating range to obtain a target point task set corresponding to the multi-geometric task set; Based on the performance function for each robot to execute tasks, determine the marginal gain of each robot for executing each point task in the set of target point tasks; the performance function is determined based on the important factor of the task, the fitness factor between the robot and the task, the distance discount coefficient for the task to direct the robot's movement, and the task quantity discount coefficient; Allocate each of the point tasks according to the marginal gain of each robot for executing each of the point tasks, and determine the task allocation result for each robot.

[0007] Optionally, the decomposing the non-point tasks in the multi-geometric task set into point tasks according to the working range of the robot to obtain the set of target point tasks corresponding to the multi-geometric task set includes: Extract multiple feature points of the spatial working surface graph of the non-point tasks in the multi-geometric task set, and perform discrete point processing on the spatial working surface graph according to each of the feature points and the working range of the robot to determine the set of point tasks corresponding to the non-point tasks; Merge the set of point tasks corresponding to the non-point tasks and the point tasks in the multi-geometric task set to obtain the set of target point tasks.

[0008] Optionally, the non-point tasks include surface tasks and / or line tasks, and the set of point tasks corresponding to the non-point tasks includes the set of point tasks corresponding to the surface tasks and / or the set of point tasks corresponding to the line tasks; Correspondingly, the extracting multiple feature points of the spatial working surface graph of the non-point tasks in the multi-geometric task set, and performing discrete point processing on the spatial working surface graph according to each of the feature points and the working range of the robot to determine the set of point tasks corresponding to the non-point tasks includes: Extract each vertex of the closed polygon in which the surface task is distributed in space; Taking any one of the vertices as the starting point, and using the working range of the robot as the side length of the regular polygon grid, perform discrete point processing on the closed polygon to obtain the point set corresponding to the closed polygon; Decompose the surface task according to the point set corresponding to the closed polygon to obtain the set of point tasks corresponding to the surface task; And / or, Extract the two end points of each spliced line segment in which the line task is distributed in space; Taking any one of the two end points of each spliced line segment as the starting point, and using the working range of the robot as the side length of the truncated line segment, perform discrete point processing on each spliced line segment to obtain the point set corresponding to each spliced line segment; Decompose the line task according to the point sets corresponding to the respective stitching line segments to obtain a set of point tasks corresponding to the line task; the characteristic points include the vertexes and / or the end points.

[0009] Optionally, determining the marginal gain of each robot for performing each point task in the target point task set based on the performance function of each robot for performing tasks includes: Using the performance function of each robot for performing tasks, determine the initial marginal gain of each robot for performing each point task; Determine the collaborative task performance gain of each robot for performing each of the point tasks; Based on the initial marginal gain and the collaborative task performance gain of each robot for performing each point task, determine the marginal gain of each robot for performing each point task.

[0010] Optionally, the allocating each of the point tasks according to the marginal gain of each robot for performing each of the point tasks to determine the task allocation result of each robot includes: Step S101, initialize the task sample set, the corresponding marginal gain value sequence, and the allocated task subset of each robot according to the marginal gain of each robot for performing each of the point tasks; the task sample set is obtained from the target point task set; Step S102, aiming to obtain the task with the global maximum marginal gain value and its corresponding allocated robot, update the task sample set, the corresponding marginal gain value sequence, and the allocated task subset of each robot in the current round; Step S103, sort the marginal gain value sequences of each updated robot in descending order, and sort the tasks in the corresponding task sample sets according to the descending order sorting result; Step S104, in the case where it is determined that the task sample set of each robot in the current round is non-empty, repeat Step S102 to Step S103 until the task sample set of each robot is empty, and execute Step S105; Step S105, output the allocated task subset of each robot, and obtain the task allocation result of each robot according to each allocated task subset.

[0011] Optionally, in Step S102, aiming to obtain the task with the global maximum marginal gain value and its corresponding allocated robot, updating the task sample set, the corresponding marginal gain value sequence, and the allocated task subset of each robot in the current round includes: Update the maximum marginal gain of each robot in the current round and the task with the maximum marginal gain value corresponding to the maximum marginal gain according to the descending sequence of the marginal gain values corresponding to each robot during initialization, so as to update the bid information list of each robot; Merge the bid information lists of each robot with the bid information lists of other robots in its communication neighborhood to determine the global best bid information list for the current round; each piece of information in the bid information list includes the robot number, the maximum marginal gain value, the task with the maximum marginal gain value, and the last task placed in the assigned task subset; the global best bid information list includes the task with the global maximum marginal gain value and the corresponding assigned robot; Based on the task with the global maximum marginal gain value in the current round and the corresponding assigned robot, update the task sample set, the corresponding marginal gain value sequence, and the assigned task subset of each robot, and save the global best bid information list to the locked task list preset for each robot.

[0012] Optionally, the updating the task sample set, the corresponding marginal gain value sequence, and the assigned task subset of each robot based on the task with the global maximum marginal gain value in the current round and the corresponding assigned robot includes: Use the task with the global maximum marginal gain value in the current round and the corresponding assigned robot to determine whether the task with the maximum marginal gain value of each robot in the current round is the task with the global maximum marginal gain value, and whether the task with the global maximum marginal gain value has been assigned to the corresponding assigned robot; According to the judgment result, call the corresponding preset strategy to update the task sample set, the corresponding marginal gain value sequence, and the assigned task subset of each robot.

[0013] In a second aspect, the present application provides a multi-robot task allocation device for a multi-geometric task scenario, including: A decomposition module, configured to decompose non-point tasks in a multi-geometric task set into point tasks according to the operation range of the robot, so as to obtain a target point task set corresponding to the multi-geometric task set; A processing module, configured to determine the marginal gain of each robot for executing each point task in the target point task set based on the performance function of each robot for executing tasks; the performance function is determined based on the important factor of the task, the fitness factor between the robot and the task, the distance discount coefficient indicating the movement of the robot by the task, and the task quantity discount coefficient; An allocation module, configured to allocate each point task according to the marginal gain of each robot for executing each point task, and determine the task allocation result of each robot.

[0014] In a third aspect, the present application provides an electronic device, including: at least one memory for storing programs; at least one processor for executing the programs stored in the memory. When the programs stored in the memory are executed, the processor is configured to execute the method described in the first aspect or any possible implementation manner of the first aspect.

[0015] In a fourth aspect, the present application provides a computer-readable storage medium storing a computer program. When the computer program runs on a processor, the processor is caused to execute the method described in the first aspect or any possible implementation manner of the first aspect.

[0016] In a fifth aspect, the present application provides a computer program product. When the computer program product runs on a processor, the processor is caused to execute the method described in the first aspect or any possible implementation manner of the first aspect.

[0017] Generally speaking, compared with the prior art, the above technical solution conceived by the present application has the following beneficial effects: A multi-robot task allocation method and device for a multi-geometric task scenario provided by the present application, by considering the spatial geometric characteristics of different geometric tasks and the high mobility of robots performing point tasks, in a multi-geometric task scenario including three types of geometric tasks: point tasks, line tasks, and surface tasks, according to the working range of the robots, the line tasks and surface tasks are discretized and dimensionally reduced into a series of target point task sets according to the guiding point conversion strategy, and by comprehensively considering the characteristics of robots performing different point tasks, each point task in the target point task set is allocated according to the marginal gain of each robot performing each point task, which can effectively realize the unified allocation of multi-robot tasks in a multi-geometric task scenario and improve the collaborative operation efficiency of multi-robots. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Figure 1 is a schematic flowchart of a multi-robot task allocation method for a multi-geometric task scenario provided by an embodiment of the present application; Figure 2 is a schematic diagram of a multi-geometric task scenario provided by an embodiment of the present application; Figure 3 is a schematic diagram of the effect of decomposing a surface task in a multi-geometric task provided by an embodiment of the present application; Figure 4 is a schematic diagram of the effect of decomposing a line task in a multi-geometric task provided by an embodiment of the present application; Figure 5 is a schematic diagram of a partition quasi-moment constraint provided by an embodiment of the present application; Figure 6It is a schematic diagram of deadlock existing between cooperative tasks provided by an embodiment of the present invention; Figure 7 It is a schematic diagram of whether there is deadlock in the directed graph of cooperative tasks provided by an embodiment of the present invention; Figure 8 It is a schematic diagram of the process of multi-robot distributed task allocation provided by an embodiment of the present invention; Figure 9 It is a schematic diagram of the comparison of calculation time-consuming between the method provided by an embodiment of the present application and the existing method; Figure 10 It is a schematic diagram of the comparison of the number of communications between the method provided by an embodiment of the present application and the existing method; Figure 11 It is a schematic diagram of the structure of a multi-robot task allocation device for multi-geometry task scenarios provided by an embodiment of the present application; Figure 12 It is a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Detailed implementation manners

[0019] In order to make the objectives, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0020] The term "and / or" in the present application is an association relationship describing associated objects, indicating that three relationships may exist. For example, A and / or B may represent: A exists alone, A and B exist simultaneously, and B exists alone. The symbol " / " in the present application represents an "or" relationship between associated objects. For example, A / B represents A or B.

[0021] In the embodiments of the present application, words such as "exemplary" or "for example" are used to represent examples, illustrations or explanations. Any embodiment or design solution described as "exemplary" or "for example" in the embodiments of the present application should not be construed as being more preferred or having more advantages than other embodiments or design solutions. Rather, the use of words such as "exemplary" or "for example" is intended to present relevant concepts in a specific manner.

[0022] In the description of the embodiments of the present application, unless otherwise specified, the meaning of "a plurality of" refers to two or more. For example, a plurality of feature points refers to two or more feature points, etc.

[0023] The embodiments of the present application will be described below with reference to the accompanying drawings in the embodiments of the present application.

[0024] Figure 1 It is a schematic diagram of the process of a multi-robot task allocation method for multi-geometry task scenarios provided by an embodiment of the present application, asFigure 1 As shown in Step S1: Decompose the non-point tasks in the multi-geometric task set into point tasks according to the operation range of the robot, so as to obtain the target point task set corresponding to the multi-geometric task set; Step S2: Based on the performance function of each robot to execute tasks, determine the marginal gain of each robot to execute each point task in the target point task set; the performance function is determined based on the important factor of the task, the fitness factor between the robot and the task, the distance discount coefficient indicating the movement of the robot by the task, and the task quantity discount coefficient; Step S3: Allocate each point task according to the marginal gain of each robot to execute each point task, and determine the task allocation result of each robot.

[0025] Specifically, the multi-geometric task set described in the embodiments of the present application refers to a set of tasks on multiple working surfaces of different geometric types, and specifically may include, for example, point tasks for fixed-point delivery, line tasks for route patrol, and surface tasks for area detection.

[0026] The target point task set described in the embodiments of the present application refers to the point task set obtained by dividing the multi-geometric task set into point tasks.

[0027] The important factor of the task described in the embodiments of the present application is used to characterize the different importance levels of different point tasks.

[0028] The fitness factor between the robot and the task described in the embodiments of the present application is used to reflect the matching fitness between the task and the robot.

[0029] The distance discount coefficient described in the embodiments of the present application is used to characterize that the robot tends to execute the nearest task first and can balance the path lengths of all robots.

[0030] The task quantity discount coefficient described in the embodiments of the present application is used to prevent a large number of tasks from being assigned to the same robot and balance the task quantities among robots.

[0031] In the embodiments of the present application, non-point tasks are tasks other than point tasks, specifically including line tasks and surface tasks. In step S1, by considering the spatial geometric characteristics of different geometric tasks, for example, the working area of a point task in space is dot-shaped, the working area of a surface task in space is polygonal, and the working area of a line task in space is polyline-shaped. Thus, according to the operation attributes of the robot, using its operation range as the division scale, the spatial geometric regions corresponding to non-point tasks in the multi-geometric task set can be divided, and each task in the multi-geometric task set can be decomposed into point tasks, which is convenient for the robot to better execute tasks. Thus, a set composed of the original point tasks and all the decomposed point tasks can be obtained, that is, the target point task set corresponding to the multi-geometric task set can be obtained.

[0032] Here, it should be noted that the multi-robot system described in the embodiments of the present application belongs to a robot cluster system, and the individual robots specifically include, but are not limited to, unmanned aerial vehicles, land search and rescue robots, etc.

[0033] Further, in the embodiments of the present application, in step S2, by analyzing the performance of each robot in executing tasks and the characteristic attributes of the tasks themselves, a performance function for each robot to execute tasks is constructed based on the importance factor of the task, the fitness factor between the robot and the task, the distance discount coefficient indicating the movement of the robot by the task, and the task quantity discount coefficient, and the incremental benefit brought by the robot in executing different tasks is calculated through this performance function, that is, the marginal gain of each robot in executing each point task in the target point task set is determined.

[0034] Furthermore, in the embodiments of the present application, in step S3, by combining a preset optimization algorithm and a real-time feedback mechanism, according to the marginal gain of each robot in executing each point task, by dynamically matching the task characteristics with the robot capabilities, each point task is executed by the robot that can bring the maximum marginal gain globally, thereby realizing the allocation of each point task, and thus determining the task allocation result of each robot in the multi-geometric task scenario.

[0035] The multi-robot task allocation method for a multi-geometric task scenario in the embodiments of the present application, by considering the spatial geometric characteristics of different geometric tasks and the high mobility of the robot in executing point tasks, in a multi-geometric task scenario including three types of geometric tasks: point tasks, line tasks, and surface tasks, according to the operation range of the robot, the line tasks and surface tasks are discretized and dimensionally reduced into a series of target point task sets according to the guiding point conversion strategy, and by comprehensively considering the characteristics of each robot in executing different point tasks, each point task in the target point task set is allocated according to the marginal gain of each robot in executing each point task, which can effectively realize the unified allocation of multi-robot tasks in the multi-geometric task scenario and improve the cooperative operation efficiency of multi-robots.

[0036] Based on the content of the above embodiments, as an alternative embodiment, in step S1, non-point tasks in the multi-geometric task set are decomposed into point tasks according to the working range of the robot, so as to obtain a target point task set corresponding to the multi-geometric task set, including: Extract multiple feature points of the spatial working surface graph of the non-point tasks in the multi-geometric task set, and perform discrete point processing on the spatial working surface graph according to each feature point and the working range of the robot to determine the point task set corresponding to the non-point tasks; Merge the point task set corresponding to the non-point tasks and the point tasks in the multi-geometric task set to obtain the target point task set.

[0037] Specifically, in the embodiments of the present application, by studying the characteristics of the spatial working surface graph of the non-point tasks in the multi-geometric task set, feature points of the spatial working surface graph are selected, and the non-point tasks are divided into point tasks with the working range of the robot as the division scale.

[0038] Based on the content of the above embodiments, as an alternative embodiment, the non-point tasks include surface tasks and / or line tasks, and the point task set corresponding to the non-point tasks includes the point task set corresponding to the surface tasks and / or the point task set corresponding to the line tasks; Correspondingly, extracting multiple feature points of the spatial working surface graph of the non-point tasks in the multi-geometric task set, and performing discrete point processing on the spatial working surface graph according to each feature point and the working range of the robot to determine the point task set corresponding to the non-point tasks includes: Extract each vertex of the closed polygon in which the surface task is distributed in space; Taking any vertex among each vertex as the starting point and the working range of the robot as the side length of the regular polygon grid, perform discrete point processing on the closed polygon to obtain the point set corresponding to the closed polygon; Decompose the surface task according to the point set corresponding to the closed polygon to obtain the point task set corresponding to the surface task; and / or, Extract the two end points of each spliced line segment in which the line task is distributed in space; Taking any end point among the two end points of each spliced line segment as the starting point and the working range of the robot as the side length of the truncated line segment, perform discrete point processing on each spliced line segment to obtain the point set corresponding to each spliced line segment; Decompose the line task according to the point set corresponding to each spliced line segment to obtain the point task set corresponding to the line task; The feature points include vertices and / or end points.

[0039] Specifically, in the embodiments of the present application, the non-point tasks include surface tasks and / or line tasks. That is to say, the multi-geometric task set may only include point tasks and surface tasks, or may only include point tasks and line tasks; it may also be as Figure 2As shown in [figure], the multi - geometric task set simultaneously includes point tasks, surface tasks, and line tasks.

[0040] In an embodiment of the present application, when performing task type conversion, the multi - geometric task scenario can be defined as: ; Among them, the point task is represented as , the line task is represented as and the surface task is represented as , which are used to describe tasks of different geometric types.

[0041] Among them, the point task can be represented by the two - dimensional coordinates of sub - tasks at the same position, that is ; the line task can be described by the two - dimensional coordinates of the endpoints of the multiple line segments that make up the line task, that is ; the surface task can be described by the two - dimensional coordinates of the vertices that make up the closed polygon, that is ; .

[0042] For the decomposition of the surface task, in an embodiment of the present application, the surface task decomposition can be specifically implemented through the following steps: Step S10: Extract the vertices of the closed polygon in which the surface task is distributed in space ; Step S20: Use the diameter of the robot's working range as the side length of the regular polygon grid; Step S30: Starting from any one of the vertices, with the robot's working range as the side length of the regular polygon grid, perform discrete - point processing on the closed polygon using the vertices of the regular polygon to obtain a point set formed by the vertices of each regular polygon, that is, obtain the point set corresponding to the closed polygon; Step S40: Finally, decompose the surface task according to the point set corresponding to the closed polygon, assign task attributes to each point in the point set, and the point task set corresponding to the surface task can be obtained; Step S50: For all surface tasks in the multi - geometric task set, repeat steps S10 to S40 until all surface tasks are completed in decomposition, and the point task sets corresponding to all surface tasks are obtained.

[0043] It should be noted that in steps S20 to S40, the regular polygon grid can specifically adopt grids such as regular triangles, squares, or regular hexagons. In the embodiments of the present application, no specific limitation is made on the type of grid shape.

[0044] Optionally, the regular polygon grid preferably adopts an equilateral triangle grid instead of a square or regular hexagon grid. The reason is that at each vertex of the equilateral triangle grid, up to 6 equidistant edges in different directions can be generated, while at each vertex of the square and regular hexagon grids, only 4 and 3 equidistant edges in different directions can be generated respectively. Therefore, using the equilateral triangle grid for decomposition is more conducive to improving the convenience and efficiency of the robot's movement between spatial task points.

[0045] Figure 3 is a schematic diagram of the effect of face task decomposition in the multi-geometry task provided by the embodiment of the present application. As Figure 3 shown, in the embodiment of the present application, the left part of the attached drawing represents extracting the vertices of the closed polygons where the face tasks are distributed in space ; the right part of the attached drawing represents that after the face task is decomposed in the above manner, 121 point tasks are obtained, and the corresponding point task set is .

[0046] For the decomposition of line tasks, in the embodiment of the present application, the face task decomposition can be specifically implemented through the following steps: Step S10: Extract the endpoint list of each spliced line segment where the line task is distributed in space ; Step S20: Take the length of the longest internal connection line segment within the robot's working range as the side length of the truncated line segment; Step S30: Starting from any one of the two endpoints of each spliced line segment, with the robot's working range as the side length of the truncated line segment, use the endpoints of the truncated line segment to perform discrete point processing on each spliced line segment to obtain a point set formed by the endpoints of each truncated line segment, that is, obtain the point set corresponding to each spliced line segment; Step S40: Finally, decompose the line task according to the point set corresponding to each spliced line segment, and assign task attributes to each point in the point set to obtain the point task set corresponding to the line task; Step S50: For all line tasks in the multi-geometry task set, repeat Step S10 to Step S40 until all line tasks are completed in decomposition to obtain the point task sets corresponding to all line tasks.

[0047] Thus, according to the above implementation manner, non-point tasks in the multi-geometry task set, including face tasks and / or line tasks, can be decomposed into corresponding point task sets to obtain the point task sets corresponding to non-point tasks.

[0048] Figure 4 is a schematic diagram of the effect of line task decomposition in the multi-geometry task provided by the embodiment of the present application. As Figure 4 shown, in the embodiment of the present application, the left part of the attached drawing represents extracting the endpoints of each spliced line segment where the line task is distributed in space ; The right part of the attached figure shows that the line task is decomposed into 14 point tasks through the above method, and the corresponding set of point tasks is .

[0049] In the method of the embodiment of the present application, by considering the spatial distribution characteristics of the surface task and the line task, in two different operation task areas, the operation path starting from the vertex can ensure covering all edges and internal areas, improve the operation efficiency and coverage rate, and by transforming the robot path planning problem into the shortest path or optimal traversal problem between nodes, optimize the task planning and path generation of the robot, and enhance the adaptability to complex environments.

[0050] Furthermore, in the embodiment of the present application, the set of point tasks corresponding to the non-point tasks and the point tasks in the multi-geometric task set are merged to form a large set containing a large number of point tasks, that is, the target set of point tasks is obtained.

[0051] In the method of the embodiment of the present application, by analyzing the spatial distribution characteristics of various geometric tasks and combining the operation step length of the robot for the discretization process of non-point tasks, the complex tasks of multiple robots can be decomposed into multiple simple point tasks, reducing the difficulty of robot task allocation, improving the operation efficiency of multi-robot cooperation, reducing the moving distance and computing resource consumption of the robots, and at the same time, further improving the environmental adaptability of multi-robot operation.

[0052] Based on the content of the above embodiment, as an alternative embodiment, in step S2, based on the performance function of each robot for executing tasks, determine the marginal gain of each robot for executing each point task in the target set of point tasks, including: Using the performance function of each robot for executing tasks, determine the initial marginal gain of each robot for executing each point task; Determine the collaborative task performance gain of each robot for executing each point task; Based on the initial marginal gain and the collaborative task performance gain of each robot for executing each point task, determine the marginal gain of each robot for executing each point task.

[0053] Specifically, in the embodiment of the present application, when starting to model the task allocation problem, for the given set of robots and the decomposed target set of point tasks and the performance function of each robot for executing tasks is: ; Wherein, represents the task executed by robot , represents the number of tasks executed by robot ; represents the a task is an important factor that can characterize the importance of the task. Among them, the robot preferentially executes tasks that are more valuable than other tasks; represents the robot and the task the fitness factor between them, which can reflect the task and the robot the matching fitness between them; represents the distance discount coefficient for the task to indicate the robot's movement. It can characterize that the robot tends to preferentially execute the nearest task and can balance the path lengths of all robots; represents the task quantity discount coefficient, which can prevent a large number of tasks from being assigned to the same robot and balance the task quantities among robots; represents the robot from the initial position to the task path segment; represents the path segment the estimated travel time, represents the path segment the number of tasks within;

[0054] Furthermore, the initial marginal gain for each robot to execute each point task can be expressed as: ; the robot path segment the estimated travel time depends on the sum of the estimated interval times for each task from the initial position to the task Assume that the robot task and the task the prerequisite task of the estimated time between them is . When the task belongs to an ordinary task, the estimated travel time is: ; When the task and the task belong to the same type of collaborative task, that is, they need to perform spatio-temporal collaboration with other robots from the prerequisite task to execute the task , then the estimated travel time can be obtained by the following formula: ; Furthermore, as Figure 5As shown in the figure, considering the non - conflict constraint between robots, it can be equivalently transformed into a partition - matroid constraint. Here, the non - conflict constraint means that the same task cannot be assigned to multiple robots for repeated execution, that is, the subtask is already the smallest indivisible task, and a single task can only be executed by one robot.

[0055] Specifically, construct a matroid , and the ground set is the set of all assignment pairs, and the subset family of is the set of all possible non - conflict assignment solutions. Here, an assignment pair includes a task and its corresponding assigned robot. The ground set

[0056] is divided into several partitions, and a feasible assignment solution can contain at most one pair of assignment pairs from each partition.

[0057] In the embodiments of the present application, the collaborative performance gain of the collaborative tasks included is calculated. When updating the marginal gain value of the tasks in the task set, the collaborative task performance gain is increased to make it more applicable to the collaborative task scenario. Among them, the collaborative task performance gain of robot executing task is expressed as follows: Among them, and respectively represent the first power of the distance discount coefficient and the first power of the task quantity discount coefficient .

[0058] Furthermore, in the embodiments of the present application, based on the initial marginal gain and the collaborative task performance gain of each robot executing each point task, the marginal gain of each robot executing each point task can be calculated according to the following formula, that is, the marginal gain of robot on task can be expressed as follows: ; It should be noted that there may be a dead - lock phenomenon among multiple collaborative tasks as shown in Figure 6 . Mark the collaborative task as , indicating that tasks all belong to the collaborative task with spatio - temporal collaborative requirements.

[0059] As shown in Figure 7 , a directed graph is used to characterize the dead - lock of the collaborative task, where represents Class collaborative task marking node, The arc in Indicates that there is a robot that first executes The task in and then executes The task in; Directed graph The strongly connected component (i.e., loop) in indicates deadlock, and finally, depth-first search can be used to detect whether there is deadlock in the directed graph in

[0060] The method of the embodiment of the present application calculates the marginal gain of each robot executing each point task by introducing collaborative task performance gain. According to the analysis result of the marginal gain, tasks can be more reasonably allocated to each robot to improve the working efficiency of multi-robot collaborative operations. At the same time, by optimizing task allocation and algorithm adjustment, waste of resources can be reduced and resource utilization efficiency can be improved.

[0061] Based on the content of the above embodiment, as an optional embodiment, step S3, allocate each point task according to the marginal gain of each robot executing each point task, and determine the task allocation result of each robot, including: Step S101, initialize the task sample set, the corresponding marginal gain value sequence, and the allocated task subset of each robot according to the marginal gain of each robot executing each point task; The task sample set is obtained according to the target point task set; Step S102, aiming to obtain the task with the global maximum marginal gain value and its corresponding allocated robot, update the task sample set, the corresponding marginal gain value sequence, and the allocated task subset of each robot in the current round; Step S103, sort the updated marginal gain value sequences of each robot in descending order, and sort each task in the corresponding task sample set according to the descending order result; Step S104, in the case where it is determined that the task sample set of each robot in the current round is non-empty, repeat steps S102 to S103 until the task sample set of each robot is empty, and execute step S105; Step S105, output the allocated task subset of each robot, and obtain the task allocation result of each robot according to each allocated task subset.

[0062] Specifically, the task sample set described in the embodiment of the present application is obtained according to the target point task set. Assume that the target point task set is represented as , then the task sample set of each robot can also be represented as .

[0063] In the embodiments of the present application, the core of step S3 is to perform task allocation. The distributed task allocation process provided by the embodiments of the present application is specifically implemented through the following steps: In step S101, the marginal gains of each robot for executing each point task can be sorted in descending order, and the corresponding tasks are sorted in the task sample set to complete the initialization of the task sample set to be allocated and the corresponding descending sequence of marginal gain values as well as the subset of tasks already allocated .

[0064] In an alternative embodiment, the task sample set to be allocated is initialized , and the marginal gain value sequence of each robot for each task is determined through the foregoing implementation manner , and the subset of tasks already allocated is set . .

[0065] In step S102, aiming to obtain the task with the global maximum marginal gain value and its corresponding allocated robot, according to the allocation situation of the task with the global maximum marginal gain value, the task sample set, the corresponding marginal gain value sequence, and the subset of tasks already allocated for each robot in the current round are updated.

[0066] In the prior art, in a distributed multi-robot cluster, the performance level of traditional task allocation algorithms also depends on the topological structure and communication stability of the communication network. Limited by the communication hardware level, a certain degree of communication fluctuation often unavoidably occurs in actual application scenarios, which may lead to the loss of consensus messages during task allocation, thereby affecting the propagation consistency of bid information, and ultimately resulting in an incorrect consensus during the consensus negotiation process, causing task allocation conflicts.

[0067] Based on the content of the above embodiments, as an alternative embodiment, step S102, aiming to obtain the task with the global maximum marginal gain value and its corresponding allocated robot, updating the task sample set, the corresponding marginal gain value sequence, and the subset of tasks already allocated for each robot in the current round includes: According to the descending sequence of marginal gain values corresponding to each initialized robot, update the maximum marginal gain of each robot in the current round, and the task with the maximum marginal gain value corresponding to the maximum marginal gain, so as to update the bid information list of each robot; Merge the bid information list of each robot with the bid information lists of other robots within its communication neighborhood to determine the global best bid information list for the current round; each piece of information in the bid information list includes the robot's number, the maximum marginal gain value, the maximum marginal gain value task, and the last task placed in the assigned task subset; the global best bid information list includes the global maximum marginal gain value task and its corresponding assigned robot. Based on the global maximum marginal gain value task and its corresponding assigned robot for the current round, update the task sample set, the corresponding marginal gain value sequence, and the assigned task subset of each robot, and save the global best bid information list to the locked task list preset for each robot.

[0068] Specifically, update the maximum marginal gain of each robot for the current round according to the initialized descending sequence of marginal gain values corresponding to each robot. and the maximum marginal gain value task corresponding to the maximum marginal gain to update the bid information list of each robot which can be expressed as and it contains multiple pieces of bid information, each piece of bid information including the robot's number, the maximum marginal gain value, the maximum marginal gain value task, and the last task placed in the assigned task subset. Among them, the descending sequence of marginal gain values is the sequence obtained by sorting the marginal gain values of each task for the robot in descending order.

[0069] In the specific implementation, each robot will obtain the task sample set of itself for the current round the maximum marginal gain value task and the marginal gain value sequence corresponding to the element order the maximum marginal gain value in it.

[0070] Among them, when it is determined that the maximum marginal gain value no calculation is required and the first task is directly selected .

[0071] When the maximum marginal gain value the robot only recalculates the marginal benefit value of the first task from the sorted task sample set If the new marginal benefit value is still greater than the original second marginal benefit value then select this task ; otherwise, recalculate the task sample set The marginal benefit values of all the remaining tasks are sorted from largest to smallest, and the first task is selected .

[0072] Robot For the best bid task among all the tasks to be assigned The best bid information is , and the maximum marginal gain value can be expressed as: ; Among them, represents the last task placed in the subset of the assigned tasks of robot . If , then , then .

[0073] Furthermore, in the embodiments of the present application, through the communication and propagation between robots, according to the list of bid information of each robot and the list of bid information of other robots within its communication neighborhood to perform information merging, that is, robot merges its own best bid information with the best bid information of other robots within its communication neighborhood, and shares the merged list of bid information with other robots. Then, update the list of bid information of the robot through information merging , and determine the global best bid information for the current round. This process can be expressed as: ; Furthermore, filter out the invalid information in the list of bid information corresponding to robot to find the assignment of the global best bid for the current round , and then determine the corresponding global best bid information list for the current round . .

[0074] Among them, in an optional embodiment, robot screens all the bid information in the list of bid information according to the process shown in Figure 8 . Among them, according to the invalid information judgment table shown in Table 1, filter out the invalid information in the list of bid information corresponding to robot and store the invalid bid information in the preset locked task list , and delete the bid information from the list of bid information . For the list of bid information after screening by robot ​, find out the global maximum marginal revenue value in this round allocation .

[0075] Table 1

[0076] As Figure 8 shown, in the embodiments of the present application, the method for determining each data in the global best bid information list among multiple robots is as follows: First, initialize the global best bid as empty; then, through the bid information list of each robot and the bid information lists of other robots within its communication neighborhood perform information merging, and share the merged bid information list with other robots, thereby obtaining the merged global best bid information list. Then, each robot reads the information in the global best bid information list, determines whether the read information is the last piece of information. If so, the algorithm ends, and the global best bid information list with all data updated is obtained; otherwise, other information in the global best bid information list will be read sequentially.

[0077] Immediately afterwards, determine whether the status of the read information is locked. If so, remove this piece of information from the global best bid information list, and continue to read other information in the global best bid information list sequentially; otherwise, continue to determine whether the information is invalid information; if so, remove this piece of information from the global best bid information list, otherwise record this information as the global best bid information. Then, further determine whether this information is the last piece of information in the global best bid information list. If so, the algorithm ends, and the global best bid information list with all data updated is obtained; otherwise, the subsequent information in the global best bid information list will be read sequentially.

[0078] Similarly, it is necessary to determine whether the read information is locked. If so, remove this piece of information from the global best bid information list, otherwise, continue to determine whether the information is invalid information; if so, remove this piece of information from the global best bid information list, and continue to read other information in the global best bid information list sequentially; otherwise, continue to determine whether the information is higher than the global best bid information. If so, record this information as the global best bid information, and then loop to determine whether this information is the last piece of information in the global best bid information list until the global best bid information list with all data updated is obtained.

[0079] Furthermore, in the embodiments of the present application, the global best bid information list includes the global maximum marginal gain value task and its corresponding allocated robot, that is , based on the global allocation information determined in the current round , update the task sample set of each robot , the corresponding marginal gain value sequence and the assigned task subset and other information, and save the global best bid information list to the locked task list preset for each robot.

[0080] In the method of this embodiment of the present application, by improving the bid message list structure and message sharing strategy in the task allocation algorithm, when the system performs task allocation, the recorded global best bid information will not be directly deleted from the local bid information list of the robot, but will continue to be retained in the bid information list until the message is determined to be invalid, and then the message will be deleted from the bid information list and put into the preset locked task list. This can ensure that even when the communication network fluctuates and the recorded global best bid information is not the real global best bid information, the recorded global best bid information can still be restored from the local locked task list and continue to be propagated to other robots for negotiation in subsequent communication rounds, so that the performance level of the method does not depend on the topology structure and communication stability of the communication network.

[0081] Based on the content of the above embodiment, as an alternative embodiment, based on the global maximum marginal gain value task in the current round and its corresponding assigned robot, update the task sample set, the corresponding marginal gain value sequence and the assigned task subset of each robot, including: Use the global maximum marginal gain value task in the current round and its corresponding assigned robot to determine whether the maximum marginal gain value task of each robot in the current round is the global maximum marginal gain value task, and whether the global maximum marginal gain value task has been assigned to the corresponding assigned robot; According to the judgment result, call the corresponding preset strategy to update the task sample set, the corresponding marginal gain value sequence and the assigned task subset of each robot.

[0082] Specifically, in the embodiment of the present application, use the global maximum marginal gain value task in the current round and its corresponding assigned robot, that is , determine whether the maximum marginal gain value task of each robot in the current round is the global maximum marginal gain value task , and whether the global maximum marginal gain value task has been assigned to the corresponding assigned robot , thus, through consensus negotiation for task selection and resolution of allocation conflicts, to update each robot 's , , , and 。

[0083] More specifically, in the above update process, according to the judgment result, the corresponding preset strategy is called to update the task sample set, the corresponding marginal gain value sequence, and the assigned task subset of each robot. The specific implementation methods for task selection and conflict resolution can be divided into the following two preset strategies for cases.

[0084] In the first case, when That is, the bid of robot for task is not exceeded by the best bid of other robots. At this time, the processing is divided into the following four states.

[0085] Among them, state 1-1: If the bid of robot for task is not exceeded by the best bid of other robots, and task is already in the assigned task subset , then the bid information is put into the locked task list . State 1-2: If the bid of robot for task is not exceeded by the best bid of other robots, and task is in the task sample set , if at this time is the last task of the assigned task subset of robot in this round, then task is added to the end of the assigned task subset , then task is deleted from the task sample set and the gain value in the corresponding marginal gain value sequence is deleted, and finally the bid information is put into the locked task list , and the best bid value is executed, that is, the best bid value is reset to 0.

[0086] State 1-3: If the bid of robot for task is not exceeded by the best bid of other robots, and task is in the task sample set , if at this time is not the assigned task subset of robot The last task , the bid information will be put into the locked task list , and the best bid value will be executed .

[0087] Status 1 - 4: If the robot for the task is not outbid by the best bid of other robots, and the task is neither in the subset of assigned tasks nor in the task sample set , then the bid information will be directly put into the locked task list , and the best bid value will be executed ; In the second case, when , that is, if the robot for the task is outbid by the best bid of other robots for the task , at this time, it is also divided into the following four statuses for processing.

[0088] Among them, Status 2 - 1: If the robot for the task is outbid by the best bid of other robots for the task , and the task is already in the subset of assigned tasks , if the bid is higher than the historical bid of the robot for the task , then the task in the subset of assigned tasks and all tasks with an assignment order after the task will be deleted, and the bid information will be put into the locked task list ; Status 2 - 2: If the robot for the task is outbid by the best bid of other robots for the task , and the task is already in the subset of assigned tasks , if the bid is not higher than the robot for the task ​​​If there is a historical bid, the bid information will be directly put into the locked task list ; Status 2-3: If the robot for the task bid is exceeded by the best bid of other robots for the task and the task is in the task sample set If the task is the task then the task will be deleted from the task sample set and the marginal gain value sequence corresponding to the deleted element order will be deleted, and finally the bid information in the gain value will be put into the locked task list and the best bid value ; ; Status 2-4: If the robot for the task bid is exceeded by the best bid of other robots for the task and the task is in the task sample set If the task is not the task then the task will be deleted from the task sample set and the marginal gain value sequence corresponding to the deleted element order will be deleted, and finally the bid information in the gain value will be put into the locked task list ; .

[0089] With the method of the embodiment of the present application, through the above-mentioned task selection and implementation method for resolving allocation conflicts, it is not necessary to ensure the consistency of all robot bid information through a bid information consistent propagation protocol. In this way, the communication times between robots can be greatly reduced, and the influence of communication disturbances on the algorithm can be eliminated, further improving the efficiency and reliability of task allocation.

[0090] Further, in the embodiment of the present application, in step S103, after completing the above round of task allocation, each robot will sort the remaining marginal gain value sequences in their respective bid information in descending order and sort the remaining tasks in the task sample set in accordance with the corresponding element order.

[0091] In step S104, it is judged whether the termination condition is reached, that is, when it is determined that the task sample set of each robot is in a non-empty state, the aforementioned steps S102 to S103 are repeated until the task sample set of each robot is in an empty state, indicating that the algorithm reaches the termination condition, and each point task in the task sample set has been allocated. At this time, step S105 is executed.

[0092] Furthermore, in step S105, the allocated task subset of each robot can be output, and the returned allocated task subset is used as the task allocation result of the robot . That is, according to each allocated task subset , the task allocation result of each robot can be obtained, so that each robot can clearly know each point task it needs to execute.

[0093] The method of the embodiment of the present application constructs the task sample set, the corresponding marginal gain value sequence and the allocated task subset of each robot by using the marginal gain of each robot to execute each point task, and aims to obtain the global maximum marginal gain value task and its corresponding allocated robot, and iteratively updates the task sample set, the corresponding marginal gain value sequence and the allocated task subset of each robot until the best task allocation result of each robot is obtained, which can optimize the resource utilization of the robot and improve the efficiency and reliability of multi-robot task allocation.

[0094] Exemplarily, as shown in Figure 9 and Figure 10 , in the embodiment of the present application, simulation calculations are also performed to show the effectiveness of the method proposed in the present application. Among them, in the simulation environment, the starting points of the robots and various tasks are fixed, instances of different scales are set, the number after the abscissa R is the total number of robots, and the number after T is the number of tasks; the communication networks of the robots are respectively set as a fully connected network, a small world network, and a chain network, and 10 groups of simulation experiments are carried out according to the multi-robot task allocation method provided in the present application, and the average calculation time and the average number of communications are obtained for comparison with other existing distributed task allocation methods.

[0095] Among them, the existing methods for comparison include the Decentralized Sample-based Task Allocation (DSTA) algorithm and the Lazy Sample based Task Allocation (LSTA) algorithm.

[0096] As Figure 9 shown, by comparing the computing time consumption of the method provided in the embodiment of the present application with that of the existing methods, it can be seen that the method of the present application (Ours) has almost the same computing time consumption on a large scale of instances under two types of networks, namely the fully connected network and the small-world network. However, under the condition of a chain network where the communication network is easily restricted, it has less computing time consumption on a large scale of instances.

[0097] As Figure 10 shown, by comparing the number of communications of the method provided in the embodiment of the present application with that of the existing methods, it can be seen that under the condition of a fully connected network, the communication performances of the three are the same. However, under the conditions of a small-world network and a chain network, the method of the present application can achieve task allocation with fewer communication times, and the number of communications is minimally affected by changes in the communication network structure.

[0098] Next, a multi-robot task allocation device for a multi-geometric task scenario provided by the present application will be described. The multi-robot task allocation device for a multi-geometric task scenario described below can be correspondingly referred to the multi-robot task allocation method for a multi-geometric task scenario described above.

[0099] Figure 11 is a schematic structural diagram of a multi-robot task allocation device for a multi-geometric task scenario provided by an embodiment of the present application. As Figure 11 shown, it includes: A decomposition module 10, configured to perform point task decomposition on non-point type tasks according to the operation range of the robot to obtain a target point task set; A processing module 20, configured to determine the marginal gain of each robot for executing each point task in the target point task set based on the performance function of each robot for executing tasks; the performance function is determined based on the important factor of the task, the fitness factor between the robot and the task, the distance discount coefficient indicating the movement of the robot by the task, and the task quantity discount coefficient; An allocation module 30, configured to allocate each point task according to the marginal gain of each robot for executing each point task, and determine the task allocation result of each robot.

[0100] It can be understood that the detailed function implementation of the above-mentioned each unit / module can refer to the introduction in the foregoing method embodiment, and will not be elaborated here.

[0101] The multi-robot task allocation device for multi-geometric task scenarios according to the embodiments of the present application, by considering the spatial geometric characteristics of different geometric tasks and the high mobility of robots in performing point tasks, in a multi-geometric task scenario including three types of geometric tasks: point tasks, line tasks, and surface tasks, according to the operation range of the robots, discretizes and reduces the dimension of line tasks and surface tasks into a series of target point task sets according to the guiding point conversion strategy, and by comprehensively considering the characteristics of robots in performing different point tasks, allocates each point task in the target point task set according to the marginal gain of each robot in performing each point task, can effectively achieve the unified allocation of multi-robot tasks in a multi-geometric task scenario and improve the collaborative operation efficiency of multi-robots.

[0102] Based on the method in the above embodiments, the embodiments of the present application provide an electronic device, such as Figure 12 shown. The electronic device may include: a processor 1210, a communication interface 1220, a memory 1230, and a communication bus 1240. Among them, the processor 1210, the communication interface 1220, and the memory 1230 communicate with each other through the communication bus 1240. The processor 1210 may call the logical instructions in the memory 1230 to execute the method in the above embodiments. In addition, when the logical instructions in the above memory 1230 are implemented in the form of a software functional unit and sold or used as an independent product, they may be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.

[0103] Based on the method in the above embodiments, the embodiments of the present application provide a computer-readable storage medium. The computer-readable storage medium stores a computer program. When the computer program runs on a processor, the processor is caused to execute the method in the above embodiments.

[0104] Based on the method in the above embodiments, the embodiments of the present application provide a computer program product. When the computer program product runs on a processor, the processor is caused to execute the method in the above embodiments.

[0105] It can be understood that the processor in the embodiments of the present application may be a central processing unit (CPU), or may also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The general-purpose processor may be a microprocessor or any conventional processor.

[0106] The method steps in the embodiments of the present application may be implemented in a hardware manner or by a processor executing software instructions. The software instructions may be composed of corresponding software modules, and the software modules may be stored in a random access memory (RAM), flash memory, read-only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), registers, hard disks, removable hard disks, CD-ROMs, or any other form of storage medium well known in the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium may also be a component of the processor. The processor and the storage medium may be located in the ASIC.

[0107] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present application are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium or transmitted through the computer-readable storage medium. The computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center in a wired manner (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or a wireless manner (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more integrated available media. The available medium can be a magnetic medium (such as a floppy disk, hard disk, magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (SSD)), etc.

[0108] It can be understood that the various digital numbers involved in the embodiments of the present application are only for the convenience of description and are not used to limit the scope of the embodiments of the present application.

[0109] It should be understood that expressions such as "including" and "may include" that can be used in the present application indicate the existence of the disclosed functions, operations, or constituent elements, and do not limit the existence of one or more additional functions, operations, and constituent elements. In the present application, terms such as "including" and / or "having" can be interpreted as indicating a specific characteristic, number, operation, constituent element, component, or a combination thereof, but cannot be interpreted as excluding the existence or possibility of addition of one or more other characteristics, numbers, operations, constituent elements, components, or a combination thereof.

[0110] As described above, the above is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed in the present application, and all of them should be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A multi-robot task allocation method for multi-geometric task scenarios, characterized in that: include: Decomposing the non-point tasks in the multi-geometric task set into point tasks according to the robot's operating range to obtain a target point task set corresponding to the multi-geometric task set; Based on the performance function of each robot performing the task, determining the marginal gain of each robot performing each point task in the target point task set; the performance function is determined based on the importance factor of the task, the fitness factor between the robot and the task, the distance discount coefficient of the task indicating the robot to move, and the task quantity discount coefficient; Each of the point tasks is allocated according to the marginal gain of each of the robots in performing each of the point tasks, and a task allocation result for each of the robots is determined.

2. The multi-robot task allocation method according to claim 1, characterized in that: The step of performing point task decomposition on the non-point tasks in the multi-geometric task set according to the robot's operating range to obtain a target point task set corresponding to the multi-geometric task set includes: Extracting multiple feature points of the spatial working surface graph of the non-point task in the multi-geometric task set, and performing discrete point processing on the spatial working surface graph according to each of the feature points and the working range of the robot, to determine the point task set corresponding to the non-point task; The point task set corresponding to the non-point task and the point tasks in the multi-geometry task set are merged to obtain the target point task set.

3. The multi-robot task allocation method according to claim 2, characterized in that: The non-point task includes a surface task and / or a line task, and the point task set corresponding to the non-point task includes a point task set corresponding to the surface task and / or a point task set corresponding to the line task; Correspondingly, the extracting of multiple feature points of the spatial working surface graph of the non-point task in the multi-geometric task set, and performing discrete point processing on the spatial working surface graph according to each of the feature points and the working range of the robot to determine the point task set corresponding to the non-point task includes: Extracting each vertex of the closed polygon distributed in the space of the surface task; Taking any vertex among the vertices as a starting point, the robot's operating range is the side length of the regular polygon grid, and performing discrete point processing on the closed polygon to obtain a point set corresponding to the closed polygon; Decomposing the surface task according to the point set corresponding to the closed polygon to obtain a point task set corresponding to the surface task; and / or, Extracting two endpoints of each splicing line segment of the line task distributed in space; Taking any of the two endpoints of each splicing line segment as a starting point, the robot's operating range is the side length of the truncated line segment, and performing discrete point processing on each splicing line segment to obtain a point set corresponding to each splicing line segment; The line task is decomposed according to the point set corresponding to each of the spliced ​​line segments to obtain a point task set corresponding to the line task; the feature point includes the vertex and / or the endpoint.

4. The multi-robot task allocation method according to claim 1, characterized in that: The step of determining the marginal gain of each robot performing each point task in the target point task set based on the performance function of each robot performing the task comprises: Using the performance function of each robot performing the task, determine the initial marginal gain of each robot performing the task at each point; Determining the collaborative task performance gain of each of the robots performing each of the point tasks; Based on the initial marginal gain of each robot performing each point task and the collaborative task performance gain, the marginal gain of each robot performing each point task is determined.

5. The multi-robot task allocation method according to any one of claims 1 to 4, characterized in that: The allocating each of the point tasks according to the marginal gain of each of the robots performing each of the point tasks, and determining the task allocation result of each of the robots, comprises: Step S101, initializing a task sample set of each robot, a corresponding marginal gain value sequence, and an assigned task subset according to the marginal gain of each robot performing each point task; the task sample set is obtained according to the target point task set; Step S102, with the goal of obtaining the task with the global maximum marginal gain value and its corresponding assigned robot, updating the task sample set of each robot in the current round, the corresponding marginal gain value sequence and the assigned task subset; Step S103, sorting the updated marginal gain value sequence of each robot in descending order, and sorting the tasks in the corresponding task sample set according to the descending sorting result; Step S104, when it is determined that the task sample set of each robot in the current round is in a non-empty state, repeat steps S102 to S103 until the task sample set of each robot is in an empty state, and then execute step S105; Step S105, outputting the assigned task subset of each of the robots, and obtaining the task assignment result of each of the robots according to each of the assigned task subsets.

6. The multi-robot task allocation method according to claim 5, characterized in that: The step S102 aims to obtain the task with the global maximum marginal gain value and its corresponding assigned robot, and updates the task sample set, the corresponding marginal gain value sequence and the assigned task subset of each robot in the current round, including: According to the initialization of the descending sequence of marginal gain values ​​corresponding to each of the robots, the maximum marginal gain of the current round of each of the robots and the maximum marginal gain value task corresponding to the maximum marginal gain are updated to update the bidding information list of each of the robots; Merging the bidding information list of each robot with the bidding information lists of other robots in its communication neighborhood to determine the global best bidding information list of the current round; each piece of information in the bidding information list includes the robot number, the maximum marginal gain value, the task with the maximum marginal gain value, and the last task placed in the assigned task subset; the global best bidding information list includes the task with the global maximum marginal gain value and its corresponding assigned robot; Based on the global maximum marginal gain value task of the current round and its corresponding assigned robot, the task sample set, corresponding marginal gain value sequence and assigned task subset of each robot are updated, and the global best bid information list is saved to the preset locked task list of each robot.

7. The multi-robot task allocation method according to claim 6, characterized in that: The updating of the task sample set, the corresponding marginal gain value sequence and the assigned task subset of each robot based on the global maximum marginal gain value task of the current round and its corresponding assigned robot comprises: Using the global maximum marginal gain value task of the current round and its corresponding assigned robot, determine whether the maximum marginal gain value task of each robot in the current round is the global maximum marginal gain value task, and whether the global maximum marginal gain value task has been assigned to the corresponding assigned robot; According to the judgment result, the corresponding preset strategy is called to update the task sample set, the corresponding marginal gain value sequence and the assigned task subset of each robot.

8. A multi-robot task allocation device for multi-geometric task scenarios, characterized in that: include: A decomposition module, used for performing point task decomposition on non-point tasks in a multi-geometric task set according to the robot's operating range, to obtain a target point task set corresponding to the multi-geometric task set; A processing module, configured to determine the marginal gain of each robot in performing each point task in the target point task set based on a performance function of each robot performing the task; the performance function is determined based on an important factor of the task, a fitness factor between the robot and the task, a distance discount coefficient of the task indicating the robot to move, and a task quantity discount coefficient; The allocation module is used to allocate each of the point tasks according to the marginal gain of each of the robots performing each of the point tasks, and determine the task allocation result of each of the robots.

9. An electronic device, characterized in that: include: at least one memory for storing a computer program; At least one processor is used to execute the program stored in the memory. When the program stored in the memory is executed, the processor is used to execute the method according to any one of claims 1 to 7.

10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program runs on a processor, the processor is caused to execute the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Task allocation method for multi-search and rescue robot systems

    CN105956748B