Multi-robot system non-convex region coverage control method based on generalized Voronoi diagram

By using a generalized Voronoi diagram to divide the non-convex region into sub-regions and perform load balancing, combined with dynamics and regulatory region models, the coverage problem of multi-robot systems in non-convex obstacle regions is solved, achieving efficient coverage and reasonable distribution.

CN121165722APending Publication Date: 2025-12-19ZHEJIANG UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511364477.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-23
Publication Date
2025-12-19

AI Technical Summary

Technical Problem

Existing multi-robot coverage control methods cannot be effectively applied to non-convex areas containing obstacles, resulting in robots being unable to reach ideal positions, high computational resource requirements, or limitations on specific obstacle shapes.

Method used

A method based on generalized Voronoi graphs is adopted to establish a topological structure in non-convex regions, divide sub-regions, calculate the ideal number of robots through a load balancing algorithm, and achieve efficient coverage through dynamics and a monitored region model. The robots move along the edges of the generalized Voronoi graph.

Benefits of technology

It achieves efficient coverage of non-convex areas with multiple obstacles, is applicable to a wider range of scenarios, and considers the weighted load distribution to reasonably distribute robots to fully utilize the coverage capability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121165722A_ABST
    Figure CN121165722A_ABST
Patent Text Reader

Abstract

The invention provides a coverage control method of a multi-robot system in a non-convex area containing a plurality of obstacles based on a generalized Voronoi diagram, which comprises the following steps of: establishing the generalized Voronoi diagram in the non-convex area, and dividing the generalized Voronoi diagram into sub-areas; locally calculating the number of robots in the sub-region and an environment field intensity integral value by the robots in each sub-region, and calculating a ratio of the number of robots in the sub-region to the environment field intensity integral value; on the basis of a local calculation result, robots in adjacent sub-regions are exchanged, so that each sub-region achieves load balance, and the robots in the sub-regions are reasonably distributed; and on the basis of the generalized Voronoi diagram, a kinetic model of the robot is established, so that each robot can perform efficient coverage along the generalized Voronoi diagram. According to the method, novel coverage control over the multi-robot system in the non-convex area containing the multiple obstacles is achieved, and a key foundation is laid for practical application of multiple robots in the fields of environment monitoring, disaster rescue and the like.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application belongs to the field of multi-robot cooperative environment monitoring, and mainly relates to a multi-robot coverage control method realized by using a generalized Voronoi diagram in a non-convex environment with multiple obstacles. BACKGROUND

[0002] With the rapid development of robot technology, multi-robot systems show great application potential in today's era due to their flexibility, scalability and high efficiency. As one of the important research directions of multi-robot systems, cooperative coverage control can significantly improve the coverage efficiency of the system, reduce energy consumption and cost through optimizing the cooperation strategy between robots, which is of great significance to improve the intelligent level of the overall system. In recent years, multi-robot cooperative coverage control technology has made significant progress in the field of environment detection, such as pollutant detection, disaster rescue and fire warning. In these practical applications, monitoring of specific environmental field values is very important, which helps people to judge the severity of the situation and respond in a timely manner. For this purpose, multi-robot system cooperative coverage control technology is to use multiple robots to establish their own regulatory areas to obtain the information of the environmental field in the specific area, and then control the movement of the robots through the controller to achieve efficient coverage of the entire area, thereby improving the accuracy of detection.

[0003] Most of the existing coverage control methods focus on the case where the environment is a convex region. However, in actual applications, most scenarios are non-convex regions containing obstacles, and robots cannot directly traverse these obstacles to achieve coverage. Therefore, many existing methods cannot be used in non-convex regions containing obstacles.

[0004] In the scenario of non-convex regions containing obstacles, the main difficulty of multi-robot coverage control methods is that the interior of the obstacle region is not reachable, so that the robot cannot move freely like in a convex region, resulting in the robot may not be able to reach the ideal optimal position.

[0005] To solve this problem, some research methods use differential homeomorphism transformation to convert the non-convex region into a convex region, allowing the robot to perform coverage in the convex region, and then map the trajectory back to the original region. However, this method requires high computational resources, and the final result is highly dependent on the selection of differential homeomorphism transformation points; there are also research methods that achieve coverage control in non-convex regions by considering load balancing, but this method is only limited to star-shaped regions containing one obstacle. SUMMARY

[0006] To solve the problems in the prior art, the present application provides a multi-robot system non-convex region coverage control method based on a generalized Voronoi diagram, comprising the following steps:

[0007] Step 1): Establish edges and nodes of the generalized Voronoi diagram in the non-convex region, and further divide the entire non-convex region according to the same to obtain a sub-region corresponding to each edge;

[0008] Step 2): Each robot obtains the number of robots in the sub-region where the robot is located, calculates the environmental field strength integral value in the sub-region, and calculates the ratio of the two;

[0009] Step 3): Based on the calculation result of step 2), the ratio of the number of robots to the environmental field strength integral value in the load balancing is calculated, and the ideal number of robots required by each sub-region is obtained;

[0010] Step 4): The ideal number of robots obtained in step 3) is used to exchange robots in adjacent sub-regions, so as to meet the ideal robot distribution in step 3);

[0011] Step 5): For the robots in each sub-region after distribution, a dynamic model and a supervision region model are established, so that each robot can efficiently cover the sub-region based on the generalized Voronoi diagram in the corresponding sub-region.

[0012] According to the preferred scheme of the present application, step 3) specifically comprises the following steps:

[0013] Step 3.1): Define t as the iteration time, x i (t) as the sub-region G i The ratio of the number of robots in the region at iteration time t to the region field strength integral value is denoted as the region load, wherein i∈{1,2,…,|E|}; Let t=0;

[0014] Step 3.2): When t<t1, the robot in the sub-region G i selects a neighbor sub-region with the smallest region load value from its neighbor sub-region N i ; wherein t1 represents a pre-set iteration number; N i represents the serial number set of the neighbor sub-regions of the sub-region G i , wherein j represents the serial number of the neighbor sub-region of the sub-region G i ;

[0015] Step 3.3): If the load value of the selected neighbor sub-region is less than x i (t), the robots in the two regions simultaneously locally calculate the average value of the two load values, and take the average value as the region load of the two regions at this time;

[0016] Step 3.4): t is added by 1, and the above steps 3.2) to 3.3) are cycled until t=t1, and xi (t1) ;

[0017] Step 3.5): Let μ i = e i x i (t1) ; wherein μ i represents the number of robots that should be allocated in the sub-area G i in the ideal case of load balancing.

[0018] According to a preferred scheme of the present application, said step 4) specifically comprises the following steps:

[0019] Step 4.1): Define wherein K i (t) is the number of robots in the sub-area G i at the t iteration time; is a floor operator; c i (t) is used to measure the gap between the number of robots in the sub-area G i at the t iteration time and , expressed in terms of load difference;

[0020] Step 4.2): When t < t2, the robots in the sub-area G i select from their neighbor sub-areas N i the neighbor sub-area with the smallest load difference; if the load difference of the selected neighbor is smaller than c i (t), the robots in the sub-area G i send a message to the robots in the neighbor sub-area; wherein t2 > t1 is a pre-set iteration number;

[0021] Step 4.3): The robots in the sub-area G i obtain the load difference of the neighbor sub-area that sent a message to them, and select the neighbor sub-area with the largest load difference, and send a receiving information to it;

[0022] Step 4.4): The robots in the sub-area G i determine whether they have received the receiving information from the robots in the neighbor sub-area that sent a message; if so, the load difference c i (t) of the robots is reduced by 1, i.e. one robot in the sub-area is moved to the neighbor sub-area; if not, the load difference remains unchanged, and t is increased by 1.

[0023] Step 4.5): Repeat the above steps 4.2) to 4.4) until t = t2, and output c i (t2) ;

[0024] Step 4.6): Let as the final iteration time sub-area Gi the number of robots in the region.

[0025] The application also provides a system for the foregoing method, comprising:

[0026] a region topology module for establishing edges and nodes of a generalized Voronoi diagram of a non-convex region containing a plurality of obstacles, so that the region is divided by the topology;

[0027] an iteration and adjustment module for obtaining a final ideal robot quantity value of each sub-region and controlling the distribution of robots by real-time adjustment, so that the robot quantity value in each sub-region finally reaches the ideal situation;

[0028] a coverage control module for controlling the robots to cover the sub-regions, so that the robots can efficiently cover the region along the edges of the generalized Voronoi diagram in the respective sub-regions by setting a suitable controller.

[0029] The application also provides an electronic device comprising a memory and a processor, a computer program stored on the memory and executable on the processor, and the processor implements the foregoing coverage control method of a multi-robot system based on a generalized Voronoi diagram in a non-convex region when executing the computer program.

[0030] Compared with the prior art, the application has the following beneficial effects:

[0031] (1) The application proposes a non-convex region coverage control method of a multi-robot system based on a generalized Voronoi diagram, which realizes the distribution and coverage of robots by constructing a topology structure of the entire region by using a generalized Voronoi diagram, and completes efficient coverage of a non-convex region containing a plurality of obstacles.

[0032] (2) In the method of the application, a load balancing algorithm is used to obtain the ideal robot quantity finally required by each sub-region, and the distribution of robots in the sub-region not only considers the number of robots, but also considers the environmental field integral value of each sub-region, so that the application can be applied to a wider range of scenarios, such as load distribution situations that need to consider weights.

[0033] (3) The method of the application establishes a dynamics model and a regulatory region model, and each robot moves based on the edges of the generalized Voronoi diagram of the region where it is located, which guarantees the reasonable distribution of robots in the sub-region and fully utilizes the coverage ability of each robot. BRIEF DESCRIPTION OF DRAWINGS

[0034] Figure 1This is a schematic diagram illustrating the principle of the multi-robot system based on the generalized Voronoi diagram in the coverage control method of a non-convex region containing multiple obstacles.

[0035] Figure 2 This is a schematic diagram of the motion trajectory of multiple robots in an embodiment of the present invention.

[0036] Figure 3 This is a schematic diagram showing the final positions of multiple robots in an embodiment of the present invention.

[0037] Figure 4 To cover the cost function Curve showing how it changes over time. Detailed Implementation

[0038] The embodiments of the method of the present invention will be described in detail below with reference to the accompanying drawings.

[0039] The purpose of this invention is to solve the coverage problem of multi-robot systems in non-convex regions containing multiple obstacles. To this end, this invention proposes a coverage control method for multi-robot systems in non-convex regions with multiple obstacles based on a generalized Voronoi diagram, which constructs the topology of the entire region. This method can achieve robot allocation and coverage, achieving efficient coverage of non-convex regions with multiple obstacles. Figure 1 As shown, the method of this invention first establishes a generalized Voronoi diagram in a non-convex region containing multiple obstacles, and then further divides the entire non-convex region into multiple sub-regions based on this diagram. Next, each robot obtains the number of robots in its sub-region, calculates the integral value of the environmental field strength within the sub-region, and the ratio between the two values. Then, using the ratio of the initial number of robots to the integral value of the environmental field strength in each sub-region, the ratio of the number of robots at equilibrium to the integral value of the environmental field strength in the sub-region is calculated, thus obtaining the ideal number of robots required for each sub-region. Subsequently, the ideal number of robots is used to guide the exchange of robots in adjacent sub-regions, thereby satisfying the final ideal robot allocation. Finally, for the robots in each sub-region after allocation, a dynamic model and a monitoring area model are established, enabling each robot to efficiently cover the region based on the generalized Voronoi diagram within the region.

[0040] In a preferred embodiment of the present invention, the method for coverage control of a multi-robot system based on a generalized Voronoi diagram in a non-convex region includes the following steps:

[0041] Step 1): Establishing edges and nodes of the generalized Voronoi diagram in the non-convex region, and further dividing the entire non-convex region according to the same to obtain sub-regions corresponding to each edge; the non-convex region in the application is a two-dimensional non-convex region containing multiple obstacles; the robots have the same characteristics (for example, having the same model and size) and follow the same dynamics model.

[0042] The edge of the generalized Voronoi diagram of the non-convex region is:

[0043]

[0044] Where q represents a point in the non-convex region; D represents a two-dimensional non-convex region containing multiple obstacles; E ij represents the generalized Voronoi diagram between obstacle i and obstacle j; d i (q) is the shortest distance from point q to obstacle i; is the gradient of d i (q); i, j, and k are all obstacle serial numbers; the set E represents all edges of the generalized Voronoi diagram in the region, and the cardinality is |E|;

[0045] The node of the generalized Voronoi diagram is the intersection point of three or more edges of the generalized Voronoi diagram, that is, for an edge of the generalized Voronoi diagram, its node q * meets the following characteristics:

[0046] d i (q * ) = d j (q * ) = d k (q * )

[0047] Where, except for obstacles i and j, there is at least one obstacle k;

[0048] After the generalized Voronoi diagram is established, the two-dimensional non-convex region is divided into sub-regions corresponding to each edge (see Figure 2 , the closed region surrounded by the blue boundary and the black obstacle is a sub-region, and each sub-region corresponds to an edge of the Voronoi diagram shown by a red line, that is, a red edge corresponds to a sub-region), for the edge E ij of the generalized Voronoi diagram, the corresponding sub-region G ij is constrained by the following set:

[0049]

[0050] Where V ij and V ji are the edges Eij the nodes on both sides; denotes the line segment connecting the nodes V ij and obstacle i, the length of which is the shortest distance from the node V ij to the obstacle i; is the boundary of the obstacle i;

[0051] The subscript i represents the serial number of each edge of the generalized Voronoi diagram and its corresponding sub-region, and the edge with serial number i is denoted as E i , and its corresponding sub-region is denoted as G i , i∈{1,2,…,|E|}.

[0052] Step 2): Each robot obtains the number of robots in the sub-region it is located in, calculates the environmental field strength integral value in the sub-region, and calculates the ratio of the two;

[0053] Each robot in the sub-region G i obtains the initial number of robots K i (0) in the region and the field strength integral value e i of the region G i :

[0054]

[0055] where φ(q) is the environmental density function at point q in the region, representing the importance of the point;

[0056] Then the ratio of the two is calculated:

[0057]

[0058] Step 3): Based on the calculation results of step 2), the ratio of the number of robots to the environmental field strength integral value in the sub-region during load balancing is calculated, and the ideal number of robots required by each sub-region is obtained accordingly; Specifically, this step includes the following sub-steps:

[0059] Step 3.1): Define t as the iteration time, x i (t) as the ratio of the number of robots in the sub-region G i to the environmental field strength integral value at iteration time t, denoted as the regional load, where i∈{1,2,…,|E|}; Let t = 0;

[0060] Step 3.2): When t < t1, the robot in the sub-region G i selects the neighbor sub-region with the smallest regional load value from its neighbor sub-regions N i ; Where t1 represents a pre-set iteration number; N i represents the neighbor sub-regions of the sub-region G ithe serial number set of the neighbor sub-area of G wherein j represents the serial number of the neighbor sub-area G i ;

[0061] Step 3.3): if the load value of the selected neighbor sub-area is less than x i (t), the robots in the two areas simultaneously locally calculate the average of the two load values, and take the average as the area load of the two areas at this moment;

[0062] Step 3.4): t is added by 1, and the above steps 3.2) to 3.3) are cycled until t = t1, and x i (t1) is outputted;

[0063] Step 3.5): let μ i = e i x i (t1); wherein μ i represents the number of robots that should be allocated in the sub-area G i in the ideal case of load balancing.

[0064] Step 4): using the ideal number of robots obtained in step 3), the robots in the adjacent sub-areas are exchanged so as to meet the ideal robot allocation in step 3); specifically including the following steps:

[0065] Step 4.1): define wherein K i (t) is the number of robots in the sub-area G i at the t iteration moment; is a down rounding operator; c i (t) is used to measure the gap between the number of robots in the sub-area G i at the t iteration moment and , in the form of load difference value;

[0066] Step 4.2): when t < t2, the robots in the sub-area G i select the neighbor sub-area with the smallest load difference value from its neighbor sub-area N i ; if the load difference value of the selected neighbor is less than c i (t), the robots in the sub-area G i send a message to the robots in the neighbor sub-area; wherein t2 > t1 is a pre-set iteration number;

[0067] Step 4.3): the robots in the sub-area G i obtain the load difference value of the neighbor sub-area which sends a message to them, and select a neighbor sub-area with the largest load difference value, and send a receiving information to it;

[0068] Step 4.4): Sub-region G i the robot in the sub-region G i (t) subtracts 1, i.e. moves one robot in the sub-region G i to the neighbor sub-region G i , and adds 1 to t; if not received, the load difference value is unchanged, and t is added by 1.

[0069] Step 4.5): Loop the above steps 4.2) to 4.4) until t = t2, and output c j (t2).

[0070] Step 4.6): Let be the number of robots in the sub-region G i at the final iteration time.

[0071] Step 5): For each sub-region robot after distribution is completed, a dynamic model and a supervision region model are established, so that each robot can efficiently cover the sub-region based on the generalized Voronoi diagram in the sub-region.

[0072] In step 5), the dynamic model of the robot is:

[0073]

[0074] where p j (t) represents the position of robot j in the sub-region G i at time t; k i represents the final number of robots in the sub-region G i after step 4), i.e. K i (t2) = K i ; represents the speed of robot j at time t; u j (t) represents the control input value of robot j at time t.

[0075] The robot supervision region model is:

[0076]

[0077] When j = 1, we have:

[0078]

[0079] When j = K i , we have:

[0080]

[0081] where q(s, r) = γ(s) + rv(s) represents points in the parameterized region along the direction of the edges of the generalized Voronoi diagram and the direction perpendicular to the edges of the generalized Voronoi diagram; γ(s) is the parameterized curve of E i The parameterized curve representation, parameter s ∈ [0, L], where L represents the length of E i , s represents the length from the starting point of the curve to a certain point; v(s) represents the unit normal vector of the curve γ(s); r ∈ [-∈(s), ∈(s)], ∈(s) represents the distance from the point γ(s) on the curve to the nearest obstacle along the direction of v(s); represents the projection of the normal vector of E i on the robot j; represents the conversion of the point on the curve to the corresponding value of the parameter s; O j represents the supervision area of the robot j.

[0082] 8. The method of claim 7, wherein step 5) is specifically:

[0083] First, the robots establish their respective supervision areas according to the supervision area model, and then the robot j uses the following control model to move on the sub-area G i to achieve effective coverage of the area by all robots along the generalized Voronoi diagram:

[0084]

[0085] where k tan and k norm are positive gains; represents the value of the parameter s of the curve corresponding to the boundary between the jth robot and the j+1th robot, that is, represents the aggregation of the environmental density function in the direction of v(s) at the parameter s; κ(s) represents the curvature of the curve at γ(s);

[0086] The first term on the right side of the above control model controls the movement of the robot along the E i direction of the sub-area G i , and the second term on the right side of the equation controls the movement of the robot along the normal vector of the E i tangent vector; by executing this control model, the following coverage cost function is minimized:

[0087]

[0088] where, represents the sub-area G ithe smaller the result is, the better the coverage effect is; q represents a point on the robot supervisory region O j j represents the actual position of the robot j. j

[0089] Based on the foregoing method, the application further provides a system for the foregoing method, which comprises:

[0090] a region topology module for establishing edges and nodes of the generalized Voronoi diagram of the non-convex region containing multiple obstacles, so that the region is divided by the topology structure;

[0091] an iteration and adjustment module for obtaining the final ideal robot quantity value of each sub-region and controlling the distribution of the robots through real-time adjustment, so that the robot quantity value in each sub-region finally reaches the ideal situation;

[0092] a coverage control module for controlling the robots to cover the sub-regions, so that the robots can efficiently cover the region along the edges of the generalized Voronoi diagram in the respective sub-regions through the appropriate controller setting.

[0093] Further, the application further provides an electronic device comprising a memory and a processor, a computer program stored on the memory and executable on the processor, and the processor implements the foregoing coverage control method of the multi-robot system based on the generalized Voronoi diagram in the non-convex region when executing the computer program.

[0094] The robots and sensors used in the method of the application are all conventional models; the robots have the same characteristics and follow the same dynamics model. The method of the application is suitable for any two-dimensional non-convex region containing multiple obstacles, such as a two-dimensional terrestrial environment with obstacles. Each step, module or calculation process in the method of the application can be realized by programming by those skilled in the art.

[0095] The effectiveness of the application will be verified below in combination with a specific implementation.

[0096] Consider a two-dimensional terrestrial environment of 372dm×268dm as a specific scenario of the non-convex region in the method of the application, which is provided with three rectangular obstacles of 305dm×34dm, respectively, and their upper left corners are located at the positions of (36.5dm, 36.5dm), (36.5dm, 116.5dm) and (36.5dm, 193.5dm) in the environment, and the scalar field in the environment is modeled as φ(x, y)=10 -8 [(x-186 2 +(y-86 2 ​]. In order to verify the effectiveness of the method proposed in the present application, 14 robots are used to cover the whole area. Other parameters in the setting method are as follows: k tan = 0.1, k norm = 0.1. The following function is used to measure the pros and cons of coverage, and the higher the value of the function represents the worse the coverage effect, and the lower the value represents the better the coverage effect:

[0097]

[0098] The initial positions of the robots are randomly distributed, and after the coverage control by the method of the present application, the results of the coverage task are shown in Figure 2 and Figure 3 , and the black rectangle in the figure is the obstacle. Figure 2 is a schematic diagram of the motion trajectory of each robot in the two-dimensional space in the example of the present application after the aforementioned step 4), and the black cross in the figure represents the initial position of the robot, the green triangle represents the final position of the robot, the blue hollow circle represents the historical trajectory of the robot, the blue solid line is the sub-area division, and the red line represents the generalized Voronoi diagram of the area. Figure 3 is a schematic diagram of the final position of the robot in the example of the present application, and the green triangle represents the final position of the robot, and the blue solid line represents the supervision area of each robot. It can be seen from Figure 2 and Figure 3 that the multi-robot based on the generalized Voronoi diagram and the coverage control method of the present application completes the coverage of the whole area. Figure 4 shows the curve of the coverage cost function with time, and it can be found from the figure that due to the random position of the robot in the early stage, the coverage cost is high, and then the coverage cost is continuously reduced as the robot acts according to the controller, and finally stabilizes at a minimum value, and the coverage effect reaches the best.

[0099] The embodiments of the present application are described above in combination with the drawings, but the present application is not limited to the above specific embodiments, and the above specific embodiments are only illustrative but not limiting, and those skilled in the art can make many forms under the inspiration of the present application without departing from the purpose of the present application and the scope protected by the claims, and these all belong to the protection scope of the present application.

Claims

1. A method for coverage control of a multi-robot system based on a generalized Voronoi diagram in a non-convex region, characterized in that, Includes the following steps: Step 1): Establish the edges and nodes of the generalized Voronoi diagram in the non-convex region, and further divide the entire non-convex region accordingly to obtain the sub-regions corresponding to each edge. Step 2): For each robot, obtain the number of robots in its sub-region, calculate the integral value of the environmental field strength in the sub-region and the ratio of the two; Step 3): Based on the calculation results of Step 2), calculate the ratio of the number of robots when the load is balanced to the integral value of the environmental field strength of the sub-region, and obtain the ideal number of robots required for each sub-region. Step 4): Using the ideal number of robots obtained in Step 3), robots in adjacent sub-regions are exchanged to satisfy the ideal robot allocation in Step 3); Step 5): For each sub-region robot after allocation, establish a dynamic model and a monitoring area model so that each robot can efficiently cover the sub-region based on the generalized Voronoi diagram in its corresponding sub-region.

2. The method according to claim 1, characterized in that, The non-convex region is a two-dimensional non-convex region containing multiple obstacles; the robot follows the same dynamic model.

3. The method according to claim 1, characterized in that, In step 1), the edges of the generalized Voronoi diagram for the non-convex region are: Where q represents a point within a non-convex region; D represents a two-dimensional non-convex region containing multiple obstacles; E ij Represents the generalized Voronoi diagram between obstacle i and obstacle j; d i (q) represents the shortest distance from point q to obstacle i; For d i The gradient of (q); i, j, k are all obstacle indices; let set E represent all edges of the generalized Voronoi graph within the region, and its cardinality is |E|; A node in a generalized Voronoi graph is the intersection of three or more edges in the generalized Voronoi graph. That is, for an edge in a generalized Voronoi graph, its node q... * It meets the following characteristics: d i (q * )=d j (q * )=d k (q * ) Among them, there is at least one obstacle k other than obstacles i and j; After constructing the generalized Voronoi graph, the two-dimensional non-convex region is divided into sub-regions corresponding to each edge. For the edge E of the generalized Voronoi graph... ij Corresponding subregion G ij Its boundary is constrained by the following set: Among them, V ij and V ji Edge E ij The nodes on both sides; Indicates the connection node V ij The line segment connecting obstacle i, the length of which is node V ij The shortest distance to obstacle i; Let i be the boundary of obstacle i; The superscript 'i' represents the index of each edge and its corresponding subregion in the generalized Voronoi diagram. The edge with index 'i' is denoted as E. i The corresponding subregion is denoted as G. i , i∈{1,2,…,|E|}.

4. The method according to claim 3, characterized in that, Step 2) specifically includes the following: Subregion G i Each robot in the process obtains the initial number K of robots in the region. i (0) and region G i field strength integral value e i : Wherein, φ(q) is the environmental density function at point q in the region, representing the importance of that point; Then calculate the ratio of the two:

5. The method according to claim 4, characterized in that, Step 3) specifically includes the following steps: Step 3.1): Define t as the iteration time, x i (t) represents the subregion G i The ratio of the number of robots in the region to the integral value of the regional field strength at iteration time t is denoted as the regional load, where i∈{1,2,…,|E|}; let t=0; Step 3.2): When t < t1, the robot in sub-region G i selects the neighbor sub-region with the minimum regional load value from its neighbor sub-regions N i ; where t1 represents the preset number of iterations; N i represents the set of serial numbers of the neighbor sub-regions of sub-region G i , where j represents the serial number of the neighbor sub-region of sub-region G i ; Step 3.3): If the load value of the selected neighbor sub-region is less than x i If (t), then the robots in the two regions simultaneously calculate the average of the two load values ​​locally, and use this average as the regional load of the two regions at this moment. Step 3.4): Increment t by 1, and repeat steps 3.2) to 3.3) until t = t1, then output x. i (t1); Step 3.5): Let μ i =e i x i (t1); where μ i Subregion G represents the ideal load-balanced region. i The number of robots to be allocated.

6. The method according to claim 5, characterized in that, Step 4) specifically includes the following steps: Step 4.1): Definition Among them, K i (t) represents the subregion G at iteration time t. i The number of robots in the system; The floor operator; c i (t) is used to measure the subregion G at iteration time t. i Number of robots and The difference is expressed as a load difference; Step 4.2): When t < t2, the robot in sub-region G i selects the neighboring sub-region with the smallest load difference from its neighboring sub-regions N i ; if the load difference of the selected neighbor is less than c i (t), then the robot in sub-region G i sends a message to the robot in that neighboring sub-region; where t2 > t1 is a preset number of iterations; Step 4.3): Subregion G i The robot obtains the load difference of the neighboring sub-regions that sent messages to it, and selects the neighboring sub-region with the largest load difference to send the received information to it; Step 4.4): Subregion G i The robot in the process determines whether it has received a reception message from the neighboring sub-region robot that sent the message; if it has, it assigns itself a load difference value c. i (t) minus 1 means moving one robot from its own region to the neighboring sub-region; if not received, the load difference remains unchanged, and t is incremented by 1; Step 4.5): Repeat steps 4.2) to 4.4) until t = t2, then output c. i (t2); Step 4.6): Let Subregion G at the final iteration time i The number of robots in the game.

7. The method according to claim 6, characterized in that, In step 5), the robot dynamics model is: Where, p j (t) represents the position of robot j in subregion G at time t. i Position in the middle; K i This indicates that after step 4), subregion G... i The final number of robots, K i (t2)=K i ; u represents the velocity of robot j at time t; j (t) represents the control input value of robot j at time t; The robot-controlled area model is as follows: When j = 1, we have: When j = K i At that time, there were: Where q(s,r)=γ(s)+rv(s) represents a point in the region parameterized along the edge directions of the generalized Voronoi graph and perpendicular to the edge directions of the generalized Voronoi graph; γ(s) is the parameterized region of E. i The parameterized curve is represented by the parameter s∈[0,L], where L represents E. i The length of γ is s, which represents the length from the starting point of the curve to a certain point; v(s) represents the unit normal vector of the curve γ(s); r∈[-∈(s),∈(s)], ∈(s) represents the distance from the point γ(s) on the curve along the direction of v(s) to the nearest obstacle; Indicates that robot j moves along E i The projection of the normal vector onto it; This indicates the points on the curve. Convert to the corresponding parameter s value; O j This indicates the area under the supervision of robot j.

8. The method according to claim 7, characterized in that, Step 5) specifically refers to: First, the robots establish their respective regulatory areas based on the regulatory area model. Then, robot j uses the following control model in sub-region G. i The robots move along the generalized Voronoi diagram to effectively cover the region. Where, k tan and k norm All are positive gains; The value of parameter s represents the curve corresponding to the boundary between the j-th robot and the (j+1)-th robot, i.e. κ(s) represents the convergence of the environmental density function along the v(s) direction at parameter s; κ(s) represents the curvature of the curve at γ(s); The first term on the right-hand side of the above control model equation controls the robot along sub-region G. i E i The robot moves in the direction of E, while the second term on the right side of the equation controls the robot to move along E. i The motion proceeds along the normal direction of the tangent vector; by implementing this control model, the following coverage cost function is minimized: in, Subregion G i The smaller the result of the coverage cost function, the better the coverage effect; q represents the coverage cost within the robot's supervised area O. j The point on; p j This represents the actual position of robot j.

9. A system for use in the method according to any one of claims 1-8, characterized in that, include: The region topology module is used to construct the edges and nodes of a generalized Voronoi graph for a non-convex region containing multiple obstacles, so that the region can be divided by topological structure. The iteration and adjustment module is used to obtain the final ideal number of robots in each sub-region and control the distribution of robots through real-time adjustments, so that the number of robots in each sub-region reaches the ideal situation. The coverage control module is used to control the robot to cover sub-regions. With appropriate controller settings, the robot can efficiently cover the regions along the edges of the generalized Voronoi diagram in each sub-region.

10. An electronic device, characterized in that, The system includes a memory and a processor, a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, implements a method for covering control of a multi-robot system based on a generalized Voronoi diagram in a non-convex region as described in any one of claims 1 to 8.