Multi-robot task allocation method based on distributed optimization
By converting the problem of multi -robot tasks into a saddle point, and combining the optimistic gradient rising decrease algorithm or over -gradient algorithm, a distributed task allocation algorithm is established to solve the problem of applicability and complexity of existing algorithms in non -convex environment, realize The task distribution effect of wider applicability and low computing complexity.
Patent Information
- Application Number
- CN202411503168.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-25
- Publication Date
- 2025-01-28
- Estimated Expiration
- 2044-10-25
AI Technical Summary
The existing distributed task allocation algorithm is only suitable for linear cost functions or strong convex objective functions, and the update process involves solving sub-optimization problems, resulting in poor generalization and complexity of the algorithm.
By converting the multi -robot task allocation problem model into a saddle problem model, and combined with the optimistic gradient rising decrease algorithm or the super gradient algorithm, the target distributed task allocation algorithm is established. This algorithm sets the local variables that contain local decision -making variables in the local area of each robot. By interacting with the neighbor robotic and iteration update status variables, it will reach the preset optimization target.
The problem of non -convex task distribution is solved. The application of the algorithm is wider, and because it does not involve the solution of the child optimization problem, the calculation complexity is low, and it can quickly converge to the best integer solution of the task distribution problem.
Smart Images

Figure CN119378903A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the field of control and information technology, and in particular to a multi-robot task allocation method based on distributed optimization. Background Art
[0002] In the past few decades, multi-robot task allocation has attracted extensive attention due to its wide applications in environmental monitoring, warehousing and logistics, transportation, disaster relief and other fields. Generally speaking, the global task of multi-robot task allocation is usually decomposed into multiple subtasks, which are performed by multiple robots simultaneously. Each robot has a different cost function for the task, which is private information that only it can obtain. The goal of all robots is to cooperate to find an optimal allocation plan that can complete all tasks, and at the same time optimize the global cost as the sum of all task costs.
[0003] Currently, there are relevant distributed task allocation algorithms for the multi-robot task allocation problem. However, the existing distributed task allocation algorithms are only applicable to linear cost functions or strongly convex objective functions, and the update process involves solving sub-optimization problems, resulting in poor versatility and complexity of the algorithms.
[0004] Therefore, the existing technology still needs to be improved and developed. Summary of the invention
[0005] The technical problem to be solved by the present invention is that, in view of the above-mentioned defects of the prior art, a multi-robot task allocation method based on distributed optimization is provided, aiming to solve the problem that the distributed task allocation algorithm in the prior art is only applicable to linear cost functions or strongly convex objective functions, and the update process involves the solution of sub-optimization problems, resulting in poor versatility and complexity of the algorithm.
[0006] The technical solution adopted by the present invention to solve the problem is as follows:
[0007] In a first aspect, an embodiment of the present invention provides a multi-robot task allocation method based on distributed optimization, the method comprising:
[0008] Establishing a multi-robot task allocation problem model through the network topology structure of the multi-robot system, and converting the multi-robot task allocation problem model into a corresponding saddle point problem model;
[0009] By using the saddle point problem model, a target distributed task allocation algorithm is established based on an optimistic gradient ascent and descent algorithm or a super gradient algorithm, wherein the target distributed task allocation algorithm sets each robot to have four state variables including the local decision variables of the robot;
[0010] Through the target distributed task allocation algorithm, each robot interacts with its neighboring robots on some state variables, and iteratively updates the four local state variables through the interacted partial state variables until the preset optimization goal is reached;
[0011] The optimal task allocation strategy for the multi-robot system is determined through the optimization results.
[0012] In one embodiment, the multi-robot task allocation problem model is established through the network topology structure of the multi-robot system, including:
[0013] Pre-establishing a weighted undirected graph corresponding to the network topology structure of the multi-robot system;
[0014] The multi-robot task allocation problem model is established through the weighted undirected graph, the local decision variables of each robot, the inequality constraints, the equality constraints and the binary constraints, wherein the inequality constraints are used to reflect that all tasks are completed by all robots together, and the equality constraints are used to reflect that each robot performs at most one task; the binary constraints are used to reflect that the local decision variables of each robot are determined by one of the binary variables, and the local decision variables are used to reflect the task allocation status.
[0015] In one embodiment, the multi-robot task allocation problem model is converted into a corresponding saddle point problem model, including:
[0016] The binary constraint is replaced by a box constraint to obtain a relaxed multi-robot task allocation problem model, wherein the box constraint is used to reflect that the local decision variable of each robot is determined by a closed interval consisting of binary variables;
[0017] Converting the relaxed multi-robot task allocation problem model into a corresponding dual problem model;
[0018] The dual problem model is transformed into a corresponding saddle point problem model.
[0019] In one embodiment, the target distributed task allocation algorithm is a distributed task allocation algorithm based on an optimistic gradient ascent and descent algorithm. Through the target distributed task allocation algorithm, each robot interacts with its neighboring robots on some state variables, and iteratively updates the four local state variables through the interacted partial state variables until the preset optimization goal is reached, including:
[0020] Receive two state variables from the neighboring robot, and iteratively update the four local state variables according to the received two state variables to obtain the four local iterated state variables;
[0021] Broadcast the two state variables after local iteration to neighboring robots, where the state variables received from neighboring robots and those broadcasted locally are of the same category;
[0022] Determine whether the preset optimization goal is achieved. If not, continue to execute the steps of receiving the two state variables of the neighbor robot, iteratively updating the four local state variables according to the received two state variables, and obtaining the four state variables after local iteration, until the preset optimization goal is achieved.
[0023] In one embodiment, the iterative update calculation formula corresponding to the distributed task allocation algorithm based on the optimistic gradient ascent and descent algorithm is:
[0024]
[0025] in, The four state variables of robot i are set. and are two state variables involved in the interaction; x i represents the local decision variable of robot i, λ i and μ i represents the local multiplier variable of the dual problem model corresponding to robot i, y i represents the Lagrange multiplier corresponding to robot i; i represents the i-th robot, j represents the j-th robot, represents the neighbor set; k represents the number of iterations; f i (x i ) is the local cost function available only to robot i; Represents the projection operator, projected onto the set Ω, Ω = [0, 1] m represents the Cartesian product of m box constraints [0, 1], m represents the number of tasks, N represents the number of robots, and N>m; represents the m-dimensional non-negative Euclidean space; α represents the step size of gradient descent, which is an adjustable parameter; l m represents an m-dimensional column vector with all components equal to 1; T represents the transpose.
[0026] In one embodiment, the target distributed task allocation algorithm is a distributed task allocation algorithm based on a super gradient algorithm. Through the target distributed task allocation algorithm, each robot interacts with its neighboring robots through partial state variables, and iteratively updates the four local state variables through the interacted partial state variables until a preset optimization goal is reached, including:
[0027] Receive two state variables from the neighboring robot, and iteratively update the four local state variables to the intermediate iteration point according to the received two state variables, and obtain the four local state variables after half-step iteration;
[0028] Broadcast the two state variables after the local half-step iteration to the neighboring robots, where the state variables received from the neighboring robots and those broadcasted locally are of the same category;
[0029] Receive the two state variables after the half-step iteration of the neighbor robot, and iteratively update the four local state variables to the next iteration point according to the received two state variables, and obtain the four local state variables after the full-step iteration;
[0030] Broadcast the two state variables after the local full-step iteration to neighboring robots;
[0031] Determine whether the preset optimization goal is achieved. If not, continue to execute the steps of receiving the two state variables of the neighbor robot and iteratively updating the four local state variables to the intermediate iteration point according to the received two state variables until the preset optimization goal is achieved.
[0032] In one implementation, the half-step iterative update calculation formula corresponding to the distributed task allocation algorithm based on the super gradient algorithm is:
[0033]
[0034] in, The four state variables of robot i are set. and are two state variables involved in the interaction; x i represents the local decision variable of robot i, λ i and μ i represents the local multiplier variable of the dual problem model corresponding to robot i, y i represents the Lagrange multiplier corresponding to robot i; i represents the i-th robot, j represents the j-th robot, represents the neighbor set; k represents the number of iterations; f i (x i ) is the local cost function available only to robot i; Represents the projection operator, projected onto the set Ω, Ω=[0,1] m represents the Cartesian product of m box constraints [0,1], where m represents the number of tasks, N represents the number of robots, and N>m; represents the m-dimensional non-negative Euclidean space; α represents the step size of gradient descent, which is an adjustable parameter; l m represents an m-dimensional column vector with all components equal to 1; T represents the transpose.
[0035] In one implementation, the whole-step iterative update calculation formula corresponding to the distributed task allocation algorithm based on the super gradient algorithm is:
[0036]
[0037] in, The four state variables of robot i are set. and are two state variables involved in the interaction; x i represents the local decision variable of robot i, λ i and μ i represents the local multiplier variable of the dual problem model corresponding to robot i, y i represents the Lagrange multiplier corresponding to robot i; i represents the i-th robot, j represents the j-th robot, represents the neighbor set; k represents the number of iterations; f i (x i ) is the local cost function available only to robot i; Represents the projection operator, projected onto the set Ω, Ω=[0,1] m represents the Cartesian product of m box constraints [0, 1], m represents the number of tasks, N represents the number of robots, and N>m; represents the m-dimensional non-negative Euclidean space; α represents the step size of gradient descent, which is an adjustable parameter; 1 m represents an m-dimensional column vector with all components equal to 1; T represents the transpose.
[0038] In one embodiment, the method further comprises:
[0039] When the preset optimization goal is reached, for each robot, if the local decision variables of the robot meet the preset requirements, the local decision variables of the robot are disturbed by random values to solve the inconsistency of the linear objective function.
[0040] In one embodiment, the preset optimization goal is that the gap with the target converges to a preset threshold, or the number of iterations reaches a preset number.
[0041] Beneficial effects of the present invention: The embodiments of the present invention combine saddle point dynamics with optimistic gradient ascent and descent algorithms or super gradient algorithms to establish a distributed task allocation algorithm for a multi-robot system, which can solve non-convex task allocation problems and has a wider range of applications. In addition, the distributed task allocation algorithm established by the present invention is a fully distributed algorithm that does not involve solving sub-optimization problems and only updates the state through simple algebraic operations. The computational complexity is low and it can ensure that the system states of all robots quickly converge to the optimal integer solution to the task allocation problem. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0043] Figure 1 It is a flowchart of a multi-robot task allocation method based on distributed optimization provided in an embodiment of the present invention.
[0044] Figure 2 It is a flowchart of the construction process of the distributed task allocation algorithm provided by the embodiment of the present invention.
[0045] Figure 3 It is a schematic diagram of the convergence trajectory under the linear objective function and cyclic graph network topology provided by an embodiment of the present invention.
[0046] Figure 4 It is a schematic diagram of the convergence trajectory under a linear objective function and a complete graph network topology provided by an embodiment of the present invention.
[0047] Figure 5 It is a schematic diagram of the convergence trajectory under the fractional-exponential objective function and cyclic graph network topology provided by an embodiment of the present invention.
[0048] Figure 6 It is a schematic diagram of the convergence trajectory of the algorithm under the quadratic function cycle graph provided by an embodiment of the present invention.
[0049] Figure 7 It is a schematic diagram of the convergence trajectory of OGDA-TAP (distributed task allocation algorithm based on optimistic gradient ascent and descent algorithm) under the special linear function provided by an embodiment of the present invention.
[0050] Figure 8 It is a schematic diagram of the convergence trajectory of EG-TAP (distributed task allocation algorithm based on super gradient algorithm) under the special linear function provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0051] The present invention discloses a multi-robot task allocation method based on distributed optimization. In order to make the purpose, technical solution and effect of the present invention clearer and more specific, the present invention is further described in detail with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.
[0052] In view of the above-mentioned defects of the prior art, the present invention provides a multi-robot task allocation method based on distributed optimization, which combines saddle point dynamics with optimistic gradient ascent and descent algorithms or super gradient algorithms to establish a distributed task allocation algorithm for a multi-robot system, which can solve non-convex task allocation problems and has a wider range of application. In addition, the distributed task allocation algorithm established by the present invention is a fully distributed algorithm that does not involve solving sub-optimization problems and only updates the state through simple algebraic operations. The computational complexity is low and it can ensure that the system states of all robots quickly converge to the optimal integer solution to the task allocation problem.
[0053] like Figure 1 As shown, the method specifically includes:
[0054] Step S100: establishing a multi-robot task allocation problem model through the network topology structure of the multi-robot system, and converting the multi-robot task allocation problem model into a corresponding saddle point problem model.
[0055] Specifically, the robot in this embodiment refers to a machine device that automatically performs work. The method of this embodiment is mainly applied to a multi-robot system, and each robot collaborates to complete a specified number of tasks. The network topology of the multi-robot system can reflect the network communication topology relationship of each robot, and the robots use the communication network to achieve system collaborative control. The multi-robot task allocation problem is mainly to find the optimal allocation solution that minimizes the sum of the local cost functions of each robot and completes all tasks under the constraints. This embodiment takes into account the existence of non-convex task allocation problems, so through saddle point dynamics, the established multi-robot task allocation problem model is converted into the corresponding saddle point problem model, so as to obtain the optimal solution to the problem.
[0056] In one implementation, the multi-robot task allocation problem model is established through the network topology structure of the multi-robot system, including:
[0057] Pre-establishing a weighted undirected graph corresponding to the network topology structure of the multi-robot system;
[0058] The multi-robot task allocation problem model is established through the weighted undirected graph, the local decision variables of each robot, the inequality constraints, the equality constraints and the binary constraints, wherein the inequality constraints are used to reflect that all tasks are completed by all robots together, and the equality constraints are used to reflect that each robot performs at most one task; the binary constraints are used to reflect that the local decision variables of each robot are determined by one of the binary variables, and the local decision variables are used to reflect the task allocation status.
[0059] Specifically, this embodiment first establishes a multi-robot network topology structure, and uses a weighted undirected graph to characterize the multi-robot system network communication topology relationship. Then, through the weighted undirected graph, a multi-robot task allocation problem model containing local decision variables, inequality constraints, equality constraints and binary constraints of each robot is established. The multi-robot allocation problem considered in this embodiment not only has linear equality constraints, but also includes coupled inequality constraints and binary set constraints, which is applicable to more task allocation scenarios.
[0060] For example, a weighted undirected graph g = (V, E) is used to represent the network communication topology of a multi-robot system, where V = {1, 2, ..., N} represents a node set, Represents a set of edges. Represents the adjacency matrix of graph G, where a ij > 0, if edge (i, j)∈E, otherwise a ij = 0. The Laplace matrix of graph G is defined as L = [l ij ],in and l ij =-a ij , i≠j. Then describe the multi-robot task allocation problem, considering that a system of N robots is assigned to perform m tasks and N>m, and each robot can only perform one task. The multi-robot task allocation problem is that the multi-robot system collaborates to seek the best allocation so that all tasks can be performed while minimizing the global cost function. It can be specifically expressed as:
[0061]
[0062] in are the local decision variables of all robots i, represents m-dimensional Euclidean space, x i,l indicates that its lth component belongs to the binary set {0,1}; if robot i is assigned to perform the lth task, then x i,l =1, otherwise x i,l =0; the total decision variable is f i (x i ) is the local cost function available only to robot i; 1 m represents an m-dimensional column vector with all components equal to 1, T m represents the set of tasks {1,2,…,m}. The inequality constraint indicates that all m tasks are performed by N robots, and the equality constraint indicates that each robot performs only one task.
[0063] It should be noted that due to the iThe binary constraint of , formula (1) is an NP-hard integer optimization problem (NP-hard, non-deterministic problem of polynomial complexity). When the problem scale increases, it is very difficult to solve the integer optimal solution or even the feasible solution.
[0064] In one implementation, the multi-robot task allocation problem model is transformed into a corresponding saddle point problem model, including:
[0065] The binary constraint is replaced by a box constraint to obtain a relaxed multi-robot task allocation problem model, wherein the box constraint is used to reflect that the local decision variable of each robot is determined by a closed interval consisting of binary variables;
[0066] Converting the relaxed multi-robot task allocation problem model into a corresponding dual problem model;
[0067] The dual problem model is transformed into a corresponding saddle point problem model.
[0068] Specifically, in order to facilitate the solution, this embodiment needs to relax the multi-robot task allocation problem. Since the above-mentioned multi-robot task allocation problem is a non-convex problem, the problem relaxation can be achieved by replacing the binary constraint with a box constraint. Then, the corresponding dual problem model is established through the Lagrangian function of the relaxed multi-robot task allocation problem model. Then, by introducing the consistency constraint and combining the dual problem model, an updated dual problem model is established, wherein the two variables contained in the updated dual problem model will be used as the state variables of the robot set in this embodiment. Then, by updating the augmented Lagrangian function of the dual problem model, a ternary augmented Lagrangian dual problem model is established, wherein the ternary augmented Lagrangian dual problem model, in addition to the above-mentioned two variables, also contains a new variable, which will also be used as the state variable of the robot set in this embodiment. Finally, by updating the dual problem model and the ternary augmented Lagrangian dual problem model, the final quaternary saddle point problem model is established, wherein the quaternary saddle point problem model includes not only the above three variables but also the local decision variable of the robot, which will be used as the state variable of the robot set in this embodiment. It should be noted that the saddle point problem model established in this embodiment is a convex-concave function, and the solution process of the multi-robot task allocation problem model is equivalent to finding the saddle point of the saddle point problem model.
[0069] For example, for the above non-convex problem, that is, formula (1), the problem can be relaxed by replacing the binary constraint {0,1} with the box constraint [0,1]:
[0070]
[0071] The relaxed problem, that is, Formula (2), is a convex optimization problem. In the linear objective function In the case of represents the m-dimensional row vector of the cost of robot i for the task, and defines the optimal solution set of formula (1) and formula (2) as and Satisfaction relationship It should be noted that for some special linear objective functions, the optimal solution of formula (2) does not belong to the binary set {0,1}, that is, there may be inconsistency.
[0072] The Lagrangian function of formula (2) is:
[0073]
[0074] in, as well as is the dual variable, μ c represents the Lagrange multiplier of the inequality constraint in formula (2), λ i represents the Lagrange multiplier of the constraint in equation (2), represents an m-dimensional nonnegative Euclidean space.
[0075] Let λ=[λ1,...,λ N ] T , we construct the following dual problem:
[0076]
[0077] Among them, g i represents the dual function of formula (2), g i (μ c ,λ i )for:
[0078]
[0079] Where Ω=[0,1] m represents the Cartesian product of m box constraints [0,1]. In order to ensure that each g i (μ c ,λ i ) have local multiplier variables λ i and μ i ,This embodiment introduces consistency constraints Where L is the Laplacian matrix of graph G, I m represents the m-dimensional identity matrix. The above dual problem, that is, formula (4), can be rewritten as:
[0080]
[0081] Then, the saddle point problem model is constructed. Specifically, the augmented Lagrangian dual problem of formula (6) is expressed as:
[0082]
[0083] Where L1(y,μ,λ) is:
[0084]
[0085] Substituting formula (8) into g i (μ i ,λ i ), formula (7) can be re-expressed as:
[0086]
[0087] Where L2(x, y, μ, λ) is a convex-concave function, which is convex with respect to the primal variable x and the Lagrange multiplier y, and concave with respect to the dual variables μ and λ. Solving formula (2) is equivalent to finding the saddle point of formula (9).
[0088] Step S200: Establish a target distributed task allocation algorithm based on the optimistic gradient ascent and descent algorithm or the super gradient algorithm through the saddle point problem model, wherein the target distributed task allocation algorithm sets each robot's local state variables including the robot's local decision variables.
[0089] Step S300: Through the target distributed task allocation algorithm, each robot interacts with its neighboring robots on some state variables, and iteratively updates the four local state variables through the interacted partial state variables until the preset optimization target is reached.
[0090] Step S400: determining the best task allocation strategy for the multi-robot system through the optimization result.
[0091] Specifically, this embodiment provides two methods to construct a target distributed task allocation algorithm, one is to combine the saddle point problem model with the optimistic gradient ascent and descent algorithm (OGDA algorithm), and the other is to combine the saddle point problem model with the super gradient algorithm (EG algorithm). Both the optimistic gradient ascent and descent algorithm and the super gradient algorithm can effectively deal with convex-concave functions. The target distributed task allocation algorithm sets each robot to contain four state variables. Each robot only needs to interact with its neighboring robots. The interactive state variables guide the collaborative iteration of all local state variables, thereby solving the multi-robot task allocation problem in a distributed manner.
[0092] In one implementation, the target distributed task allocation algorithm is a distributed task allocation algorithm based on an optimistic gradient ascent and descent algorithm. Through the target distributed task allocation algorithm, each robot interacts with its neighboring robots through partial state variables, and iteratively updates the four local state variables through the interacted partial state variables until a preset optimization goal is reached, including:
[0093] Receive two state variables from the neighboring robot, and iteratively update the four local state variables according to the received two state variables to obtain the four local iterated state variables;
[0094] Broadcast the two state variables after local iteration to neighboring robots, where the state variables received from neighboring robots and those broadcasted locally are of the same category;
[0095] Determine whether the preset optimization goal is achieved. If not, continue to execute the steps of receiving the two state variables of the neighbor robot, iteratively updating the four local state variables according to the received two state variables, and obtaining the four state variables after local iteration, until the preset optimization goal is achieved.
[0096] Specifically, for the constrained saddle point problem min x∈X max y∈Y f(x,y), where is a convex set, f(x,y) is a general convex-concave function, and the optimistic gradient ascent and descent algorithm is one of the effective solutions to this problem. Applying the optimistic gradient ascent and descent algorithm to the saddle point problem model equivalent to the multi-robot task allocation problem, we get a distributed task allocation algorithm based on the optimistic gradient ascent and descent algorithm. The algorithm assumes that each robot has four state variables Each robot receives the state from its neighbors during the iteration To update its optimization variables Then the variable after iteration Broadcast to all neighbors, and iterate until the optimization goal is reached. The distributed task allocation algorithm finally established in this embodiment is a completely distributed algorithm. The iterative process does not involve the solution of sub-optimization problems. The state is updated only through simple algebraic operations, and the computational complexity is low. In addition, the distributed task allocation algorithm finally established in this embodiment can also be set as a discrete time algorithm, such as setting event triggering rules, so as to avoid continuous communication between robots and reduce the communication burden.
[0097] For example, the optimistic gradient ascent descent algorithm is expressed as:
[0098]
[0099] Where x represents the original variable; y represents the Lagrange multiplier; k represents the number of iterations; represents the projection operator, projected onto the set X; Represents the projection operator, projecting onto the set Y.
[0100] Among them, applying formula (10) to the saddle point problem model equivalent to the multi-robot task allocation problem, that is, formula (9), we get a distributed task allocation algorithm based on the optimistic gradient ascent and descent algorithm.
[0101] In one implementation, the iterative update calculation formula corresponding to the distributed task allocation algorithm based on the optimistic gradient ascent and descent algorithm is:
[0102]
[0103] in, The four state variables of robot i are set. and are two state variables involved in the interaction; x i represents the local decision variable of robot i, λ i and μ i represents the local multiplier variable of the dual problem model corresponding to robot i, y i represents the Lagrange multiplier corresponding to robot i; i represents the i-th robot, j represents the j-th robot, represents the neighbor set; k represents the number of iterations; f i (x i ) is the local cost function available only to robot i; Represents the projection operator, projected onto the set Ω, Ω=[0,1] m represents the Cartesian product of m box constraints [0, 1], m represents the number of tasks, N represents the number of robots, and N>m; represents the m-dimensional non-negative Euclidean space; α represents the step size of gradient descent, which is an adjustable parameter; 1 m represents an m-dimensional column vector with all components equal to 1; T represents the transpose.
[0104] For example, the process of distributing task allocation algorithm based on optimistic gradient ascent and descent algorithm is as follows:
[0105] 1. Each robot i has a vector
[0106] 2. Initialization:
[0107] 3. Cycle;
[0108] 4. Each robot i executes in parallel:
[0109] 5. From the neighbors Receiving
[0110] 6.
[0111] 7.
[0112] 8. To the neighbors broadcast
[0113] 9. k←k+1;
[0114] 10. Until the preset optimization goal is reached, the preset optimization goal is that the gap between the target and the target converges to a preset threshold, or the number of iterations reaches a preset number.
[0115] In another implementation, the target distributed task allocation algorithm is a distributed task allocation algorithm based on a super gradient algorithm, and the target distributed task allocation algorithm enables each robot to interact with its neighboring robots through partial state variables, and iteratively updates the four local state variables through the interacted partial state variables until the preset optimization goal is reached, including:
[0116] Receive two state variables from the neighboring robot, and iteratively update the four local state variables to the intermediate iteration point according to the received two state variables, and obtain the four local state variables after half-step iteration;
[0117] Broadcast the two state variables after the local half-step iteration to the neighboring robots, where the state variables received from the neighboring robots and those broadcasted locally are of the same category;
[0118] Receive the two state variables after the half-step iteration of the neighbor robot, and iteratively update the four local state variables to the next iteration point according to the received two state variables, and obtain the four local state variables after the full-step iteration;
[0119] Broadcast the two state variables after the local full-step iteration to neighboring robots;
[0120] Determine whether the preset optimization goal is achieved. If not, continue to execute the steps of receiving the two state variables of the neighbor robot and iteratively updating the four local state variables to the intermediate iteration point according to the received two state variables until the preset optimization goal is achieved.
[0121] Specifically, for the constrained saddle point problem min x∈X max y∈Y f(x,y), where is a convex set, f(x,y) is a general convex-concave function, and the super gradient algorithm is also one of the effective solutions to this problem. Applying the super gradient algorithm to the saddle point problem model equivalent to the multi-robot task allocation problem, we get a distributed task allocation algorithm based on the super gradient algorithm. The algorithm assumes that each robot has four state variables Each robot receives the state from its neighbors during the iteration Update the intermediate iteration point first Then after half-step iteration Broadcast to all neighbors. Then receive status from neighbors Update the next iteration The distributed task allocation algorithm finally established in this embodiment is a completely distributed algorithm. The iterative process does not involve solving sub-optimization problems. The state is updated only through simple algebraic operations, and the computational complexity is low. In addition, the distributed task allocation algorithm finally established in this embodiment can also be set as a discrete time algorithm, such as setting event triggering rules, so as to avoid continuous communication between robots and reduce the communication burden.
[0122] For example, for the constrained saddle point problem min x∈X max y∈Y f(x,y), the super gradient algorithm is expressed as:
[0123] Step 1: Calculate the intermediate iteration point
[0124]
[0125] Step 2: Calculate the next iteration
[0126]
[0127] Applying formula (15) and formula (16) to the saddle point problem model equivalent to the multi-robot task allocation problem, that is, formula (9), we obtain a distributed task allocation algorithm based on the super gradient algorithm.
[0128] In one implementation, the half-step iterative update calculation formula corresponding to the distributed task allocation algorithm based on the super gradient algorithm is (i.e., calculating the intermediate iteration point):
[0129]
[0130]
[0131] in, The four state variables of robot i are set. and are two state variables involved in the interaction; x i represents the local decision variable of robot i, λ i and μ i represents the local multiplier variable of the dual problem model corresponding to robot i, y i represents the Lagrange multiplier corresponding to robot i; i represents the i-th robot, j represents the j-th robot, represents the neighbor set; k represents the number of iterations; f i (x i ) is the local cost function available only to robot i; Represents the projection operator, projected onto the set Ω, Ω=[0,1] m represents the Cartesian product of m box constraints [0, 1], m represents the number of tasks, N represents the number of robots, and N>m; represents the m-dimensional non-negative Euclidean space; α represents the step size of gradient descent, which is an adjustable parameter; 1 m represents an m-dimensional column vector with all components equal to 1; T represents the transpose.
[0132] In one implementation, the whole-step iterative update calculation formula corresponding to the distributed task allocation algorithm based on the super gradient algorithm is (i.e., calculating the next iteration):
[0133]
[0134]
[0135] in, The four state variables of robot i are set. and are two state variables involved in the interaction; x i represents the local decision variable of robot i, λ i and μ i represents the local multiplier variable of the dual problem model corresponding to robot i, y i represents the Lagrange multiplier corresponding to robot i; i represents the i-th robot, j represents the j-th robot, represents the neighbor set; k represents the number of iterations; f i (x i ) is the local cost function available only to robot i; Represents the projection operator, projected onto the set Ω, Ω=[0,1] m represents the Cartesian product of m box constraints [0, 1], m represents the number of tasks, N represents the number of robots, and N>m; represents the m-dimensional non-negative Euclidean space; α represents the step size of gradient descent, which is an adjustable parameter; 1 mrepresents an m-dimensional column vector with all components equal to 1; T represents the transpose.
[0136] For example, the pseudo code of the overall process of the distributed task allocation algorithm based on EG is expressed as follows:
[0137] 1. Assume that each robot i has a vector
[0138] 2. Initialization:
[0139] k>0;
[0140] 3. Cycle;
[0141] 4. Each robot i executes in parallel;
[0142] 5. Step 1: Update the intermediate iteration point
[0143] 6. From the neighbors Receiving
[0144] 7.
[0145] 8.
[0146] 9. To the neighbors broadcast
[0147] 10. Step 2: Update the next iteration
[0148] 11. From the Neighbors Receiving
[0149] 12.
[0150] 13.
[0151] 14. To the neighbors broadcast
[0152] 15.k←k+1;
[0153] 16. Until the preset optimization goal is reached, the preset optimization goal is that the gap between the target and the target converges to a preset threshold, or the number of iterations reaches a preset number.
[0154] In one implementation, the method further includes:
[0155] When the preset optimization goal is reached, for each robot, if the local decision variables of the robot meet the preset requirements, the local decision variables of the robot are disturbed by random values to solve the inconsistency of the linear objective function.
[0156] In short, this embodiment is based on the original multi-robot task allocation problem and the relaxed optimization problem, that is, formula (1) and formula (2), and also presets a perturbation algorithm to solve the inconsistency of the linear objective function (such as Figure 2 Specifically, the inconsistency phenomenon is solved by cyclically perturbing the local decision variables of the robot with random values, so that some special linear cost functions can also converge to the optimal integer solution.
[0157] For example, the pseudo code of the overall process of the perturbation-based multi-robot task allocation algorithm is expressed as:
[0158] Code step 1: Repeat code steps 2-9;
[0159] Code step 2: Repeat code step 3;
[0160] Code step 3: Execute the distributed task allocation algorithm based on the optimistic gradient ascent and descent algorithm or the distributed task allocation algorithm based on the super gradient algorithm;
[0161] Code step 4: until variables x, y, μ, λ reach the preset optimization target;
[0162] Code Step 5: Loop through each robot i:
[0163] Code Step 6: If element x exists i,l ∈(0,1), l∈T m Just execute:
[0164] Code Step 7: l∈T m ,in, is a random value;
[0165] Code Step 8: End the loop;
[0166] Code Step 9: Until the original variable x i The components x ij All are 0 or 1.
[0167] Technical effect proof:
[0168] This embodiment considers the convergence of the algorithm under different objective functions and different underlying communication topologies. The robot's objective function includes linear functions Nonlinear Fractional-Exponential Objective Function and the quadratic objective function The underlying communication topology includes cyclic graphs and complete graphs. Consider 30 robots collaboratively performing 5 tasks. The evaluation criterion of the algorithm is the relative error between the calculated solution and the optimal solution. x is the calculated solution, x * is the optimal solution. Figure 3 Table 1 and Table 2 show the convergence and specific results of the algorithm under the cycle graph of the linear objective function. Figure 3 It specifically reflects the convergence of the algorithm under the linear function cycle graph. Table 1 specifically reflects the various numerical values of the algorithm under the linear function cycle graph. Figure 4 Table 3 and Table 4 respectively show the convergence status and specific results of the algorithm under the complete graph of linear objective function. Figure 4 It specifically reflects the convergence of the algorithm under the complete graph of linear function. Table 2 specifically reflects the numerical values of the algorithm under the complete graph of linear function. Figure 5 and Figure 6 The convergence of the algorithm under the cyclic graph of nonlinear fractional-exponential objective function is demonstrated respectively. Figure 7 and Figure 8 The results of the two algorithms on the special linear function after introducing the perturbation strategy are shown respectively. c i =1 m The convergence situation below.
[0169] Table 1. Numerical values of each algorithm under the linear function cycle graph
[0170] algorithm Computation time (ms) Iterations Dealing with inconsistencies MUR-TAP 63358±7121 89±0 Cannot process MURD-TAP 3908±370 1±0 Cannot process MURID-TAP 94.5±29.45 72±16 Cannot process OGDA-TAP 86.11±34.21 95±24 Can handle EG-TAP 21.31±3.02 17±2 Can handle
[0171] Table 2. Numerical values of the algorithm under the complete graph of linear functions
[0172]
[0173]
[0174] The advantages of the present invention are summarized as follows:
[0175] 1. The method proposed in the present invention can solve the non-convex task allocation problem with coupled equality constraints, inequality constraints and binary set constraints, and can ensure that the system states of all robots eventually converge to the optimal integer solution to the task allocation problem. The multi-robot task allocation problem considered in the present invention not only has linear equality constraints, but also includes coupled inequality constraints and binary set constraints. Compared with equality constraints, coupled inequality constraints are more difficult to solve, and non-convex binary constraints are particularly difficult.
[0176] 2. The method proposed in this invention can be applied to the case where the local cost function of each agent is only generally convex, and the algorithm is fully distributed. The algorithm only involves simple arithmetic operations, the communication and computational complexity is low, and it is independent of the number of robots.
[0177] 3. The method proposed in the present invention can handle inconsistencies and ensure that the optimal integer solution to the task allocation problem is calculated.
[0178] Based on the above embodiments, the present invention may further provide a multi-robot system, wherein the multi-robot system performs task allocation for each robot based on the above multi-robot task allocation method based on distributed optimization.
[0179] Based on the above embodiments, the present invention can also provide a terminal. The terminal includes a processor, a memory, a network interface, and a display screen connected through a system bus. Among them, the processor of the terminal is used to provide computing and control capabilities. The memory of the terminal includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the terminal is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a multi-robot task allocation method based on distributed optimization is implemented. The display screen of the terminal can be a liquid crystal display screen or an electronic ink display screen.
[0180] Those skilled in the art will understand that the above are only partial structures related to the scheme of the present invention, and do not constitute a limitation on the terminal to which the scheme of the present invention is applied. A specific terminal may include more or fewer components than the above, or combine certain components, or have a different arrangement of components.
[0181] In one implementation, the terminal has one or more programs stored in its memory, and is configured to be executed by one or more processors, wherein the one or more programs include instructions for performing a multi-robot task allocation method based on distributed optimization.
[0182] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing related hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided by the present invention can include non-volatile and / or volatile memory.
[0183] In summary, the present invention discloses a multi-robot task allocation method based on distributed optimization. The method establishes a multi-robot task allocation problem model through the network topology structure of the multi-robot system, and converts the multi-robot task allocation problem model into a corresponding saddle point problem model; through the saddle point problem model, a target distributed task allocation algorithm is established based on an optimistic gradient ascent and descent algorithm or a super gradient algorithm, wherein the target distributed task allocation algorithm sets each robot to have four state variables including the local decision variables of the robot; through the target distributed task allocation algorithm, each robot interacts with a neighboring robot for some state variables, and iteratively updates the four local state variables through the interacted partial state variables until the preset optimization target is reached; and the optimal task allocation strategy of the multi-robot system is determined through the optimization result. The present invention combines saddle point dynamics with an optimistic gradient ascent and descent algorithm or a super gradient algorithm to establish a distributed task allocation algorithm for a multi-robot system, which can solve non-convex task allocation problems, and the algorithm has a wider range of application. In addition, the distributed task allocation algorithm established by the present invention is a fully distributed algorithm, which does not involve the solution of sub-optimization problems, and only updates the state through simple algebraic operations, has low computational complexity, and can ensure that the system states of all robots quickly converge to the optimal integer solution of the task allocation problem.
[0184] It should be understood that the application of the present invention is not limited to the above examples. For ordinary technicians in this field, improvements or changes can be made based on the above description. All these improvements and changes should fall within the scope of protection of the claims attached to the present invention.
Claims
1. A multi-robot task allocation method based on distributed optimization, characterized in that: The method comprises: Establishing a multi-robot task allocation problem model through the network topology structure of the multi-robot system, and converting the multi-robot task allocation problem model into a corresponding saddle point problem model; By using the saddle point problem model, a target distributed task allocation algorithm is established based on an optimistic gradient ascent and descent algorithm or a super gradient algorithm, wherein the target distributed task allocation algorithm sets each robot to have four state variables including the local decision variables of the robot; Through the target distributed task allocation algorithm, each robot interacts with its neighboring robots on some state variables, and iteratively updates the four local state variables through the interacted partial state variables until the preset optimization goal is reached; The optimal task allocation strategy for the multi-robot system is determined through the optimization results.
2. The multi-robot task allocation method based on distributed optimization according to claim 1 is characterized in that: The multi-robot task allocation problem model is established through the network topology structure of the multi-robot system, including: Pre-establishing a weighted undirected graph corresponding to the network topology structure of the multi-robot system; The multi-robot task allocation problem model is established through the weighted undirected graph, the local decision variables of each robot, the inequality constraints, the equality constraints and the binary constraints, wherein the inequality constraints are used to reflect that all tasks are completed by all robots together, and the equality constraints are used to reflect that each robot performs at most one task; the binary constraints are used to reflect that the local decision variables of each robot are determined by one of the binary variables, and the local decision variables are used to reflect the task allocation status.
3. The multi-robot task allocation method based on distributed optimization according to claim 2 is characterized in that: The multi-robot task allocation problem model is transformed into a corresponding saddle point problem model, including: The binary constraint is replaced by a box constraint to obtain a relaxed multi-robot task allocation problem model, wherein the box constraint is used to reflect that the local decision variable of each robot is determined by a closed interval consisting of binary variables; Converting the relaxed multi-robot task allocation problem model into a corresponding dual problem model; The dual problem model is transformed into a corresponding saddle point problem model.
4. The multi-robot task allocation method based on distributed optimization according to claim 1 is characterized in that: The target distributed task allocation algorithm is a distributed task allocation algorithm based on the optimistic gradient ascent and descent algorithm. Through the target distributed task allocation algorithm, each robot interacts with its neighboring robots on some state variables, and iteratively updates the four local state variables through the interacted partial state variables until the preset optimization goal is reached, including: Receive two state variables from the neighboring robot, and iteratively update the four local state variables according to the received two state variables to obtain the four local iterated state variables; Broadcast the two state variables after local iteration to neighboring robots, where the state variables received from neighboring robots and those broadcasted locally are of the same category; Determine whether the preset optimization goal is achieved. If not, continue to execute the steps of receiving the two state variables of the neighbor robot, iteratively updating the four local state variables according to the received two state variables, and obtaining the four state variables after local iteration, until the preset optimization goal is achieved.
5. The multi-robot task allocation method based on distributed optimization according to claim 4 is characterized in that: The iterative update calculation formula corresponding to the distributed task allocation algorithm based on the optimistic gradient ascent and descent algorithm is: in, The four state variables of robot i are set. and are two state variables involved in the interaction; x i represents the local decision variable of robot i, λ i and μ i represents the local multiplier variable of the dual problem model corresponding to robot i, y i represents the Lagrange multiplier corresponding to robot i; i represents the i-th robot, j represents the j-th robot, represents the neighbor set; k represents the number of iterations; f i (x i ) is the local cost function available only to robot i; Represents the projection operator, projected onto the set Ω, Ω = [0, 1] m represents the Cartesian product of m box constraints [0, 1], m represents the number of tasks, N represents the number of robots, and N>m; represents the m-dimensional non-negative Euclidean space; α represents the step size of gradient descent, which is an adjustable parameter; 1 m represents an m-dimensional column vector with all components equal to 1; T represents the transpose.
6. The multi-robot task allocation method based on distributed optimization according to claim 1 is characterized in that: The target distributed task allocation algorithm is a distributed task allocation algorithm based on the super gradient algorithm. Through the target distributed task allocation algorithm, each robot interacts with its neighboring robots through partial state variables, and iteratively updates the four local state variables through the interacted partial state variables until the preset optimization goal is reached, including: Receive two state variables from the neighboring robot, and iteratively update the four local state variables to the intermediate iteration point according to the received two state variables, and obtain the four local state variables after half-step iteration; Broadcast the two state variables after the local half-step iteration to the neighboring robots, where the state variables received from the neighboring robots and those broadcasted locally are of the same category; Receive the two state variables after the half-step iteration of the neighbor robot, and iteratively update the four local state variables to the next iteration point according to the received two state variables, and obtain the four local state variables after the full-step iteration; Broadcast the two state variables after the local full-step iteration to neighboring robots; Determine whether the preset optimization goal is achieved. If not, continue to execute the steps of receiving the two state variables of the neighbor robot and iteratively updating the four local state variables to the intermediate iteration point according to the received two state variables until the preset optimization goal is achieved.
7. The multi-robot task allocation method based on distributed optimization according to claim 6 is characterized in that: The half-step iterative update calculation formula corresponding to the distributed task allocation algorithm based on the super gradient algorithm is: in, The four state variables of robot i are set. and are two state variables involved in the interaction; x i represents the local decision variable of robot i, λ i and μ i represents the local multiplier variable of the dual problem model corresponding to robot i, y i represents the Lagrange multiplier corresponding to robot i; i represents the i-th robot, j represents the j-th robot, represents the neighbor set; k represents the number of iterations; f i (x i ) is the local cost function available only to robot i; Represents the projection operator, projected onto the set Ω, Ω = [0, 1] m represents the Cartesian product of m box constraints [0, 1], m represents the number of tasks, N represents the number of robots, and N>m; represents the m-dimensional non-negative Euclidean space; α represents the step size of gradient descent, which is an adjustable parameter; 1 m represents an m-dimensional column vector with all components equal to 1; T represents the transpose.
8. The multi-robot task allocation method based on distributed optimization according to claim 6 is characterized in that: The whole-step iterative update calculation formula corresponding to the distributed task allocation algorithm based on the super gradient algorithm is: in, The four state variables of robot i are set. and are two state variables involved in the interaction; x i represents the local decision variable of robot i, λ i and μ i represents the local multiplier variable of the dual problem model corresponding to robot i, y i represents the Lagrange multiplier corresponding to robot i; i represents the i-th robot, j represents the j-th robot, represents the neighbor set; k represents the number of iterations; f i (x i ) is the local cost function available only to robot i; Represents the projection operator, projected onto the set Ω, Ω = [0, 1] m represents the Cartesian product of m box constraints [0,1], where m represents the number of tasks, N represents the number of robots, and N>m; represents the m-dimensional non-negative Euclidean space; α represents the step size of gradient descent, which is an adjustable parameter; l m represents an m-dimensional column vector with all components equal to 1; T represents the transpose.
9. The multi-robot task allocation method based on distributed optimization according to claim 1 is characterized in that: The method further comprises: When the preset optimization goal is reached, for each robot, if the local decision variables of the robot meet the preset requirements, the local decision variables of the robot are disturbed by random values to solve the inconsistency of the linear objective function.
10. The multi-robot task allocation method based on distributed optimization according to claim 1, characterized in that: The preset optimization goal is that the gap with the target converges to a preset threshold, or the number of iterations reaches a preset number.
Citation Information
Patent Citations
Distributed optimization method of solar energy wireless acquisition system
CN109345809A
Distributed multi-robot system task allocation method for online ST-SR problem
CN111680836A
Power market real-time pricing method and system for promoting optimal distribution of power resources
CN117455588A
Computation of a saddle-point
US11343650B1
Method and system to differentiate through bilevel optimization problems using machine learning
US20220277859A1
Cited By
Distributed optimal formation method of cluster unmanned system
CN121411455A