CN117724495A - Method for distributing task areas of robot clusters facing to known boundaries - Google Patents

Method for distributing task areas of robot clusters facing to known boundaries Download PDF

Info

Publication number
CN117724495A
CN117724495A CN202311741088.8A CN202311741088A CN117724495A CN 117724495 A CN117724495 A CN 117724495A CN 202311741088 A CN202311741088 A CN 202311741088A CN 117724495 A CN117724495 A CN 117724495A
Authority
CN
China
Prior art keywords
robot
grid map
matrix
task
allocation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202311741088.8A
Other languages
Chinese (zh)
Other versions
CN117724495B (en
Inventor
闫金金
王萍
张家豪
韩海程
高文霞
高逸松
汲赫婵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Harbin Engineering University Innovation Development Center
Original Assignee
Qingdao Harbin Engineering University Innovation Development Center
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qingdao Harbin Engineering University Innovation Development Center filed Critical Qingdao Harbin Engineering University Innovation Development Center
Priority to CN202311741088.8A priority Critical patent/CN117724495B/en
Priority claimed from CN202311741088.8A external-priority patent/CN117724495B/en
Publication of CN117724495A publication Critical patent/CN117724495A/en
Application granted granted Critical
Publication of CN117724495B publication Critical patent/CN117724495B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The invention discloses a method for distributing task areas of a robot cluster facing a known boundary, which comprises the following steps: establishing a grid map for the whole task space; constructing a grid map matrix based on initial positions of a grid map and a robot cluster to represent meanings of units on the grid map, wherein the units comprise barrier units, units to be covered and units occupied by robots; based on the grid map matrix, obtaining a wavefront distance matrix of all cells on the grid map; based on the wave front distance matrix, initially distributing a task area; and presetting a distribution requirement, and performing error correction on an initial distribution result until the distribution requirement is met, so as to obtain a final distribution result. The task area allocation method can not only improve the overall efficiency of the robot cluster, but also help to optimize resource utilization, thereby better meeting the requirements of full-coverage tasks.

Description

Method for distributing task areas of robot clusters facing to known boundaries
Technical Field
The invention belongs to the technical field of robot application, and particularly relates to a method for distributing task areas of a robot cluster oriented to a known boundary.
Background
In recent years, robots are increasingly entering into many fields of human production and living, such as search and rescue, indoor cleaning, area killing, and the like. To ensure that an area can be fully covered, the problem of fully covered path planning for robots becomes a hotspot problem. The purpose of the robot cluster full coverage task area allocation is to serve full coverage cluster path planning, which is a challenging problem, because the robot clusters need to share space, which can lead to the problem that the robot cluster coverage path planning is easy to have path conflicts, and finally, collision, deadlock and the like are generated.
The common practice for the research of the multi-robot full-coverage path planning problem at home and abroad is to divide a task area first and then plan a path to cover the whole area. The robot cluster task area allocation algorithm facing the known environment needs to have 3 conditions: (i) The distribution can be performed in proportion, namely the distribution can be performed according to the initial positions of the robot cluster members, the cluster scale (the number of robots) and the task execution capacity of the cluster members, namely the capacity of each robot is fully utilized; (ii) complete communication is required within the sub-regions. The interior of each sub-area needs to be completely communicated, because the non-communicated areas increase the movement cost of the robots, and the collision between the robots is more likely to be caused; (iii) Full coverage, i.e. the sum of all allocated sub-areas is the task area of the known boundary.
The existing task area method is divided into a unit decomposition method and a clustering method. None of these algorithms meet the above 3 conditions simultaneously. For example, boustrophedon Cellular Decomposition is a unit decomposition method that, although it can partition an obstructed environmental space, cannot be used for task allocation by robots due to the division of the environment into an uncontrollable number of finely divided sub-areas. The K-means clustering method (K-means) is the most commonly used clustering method, and the region division method based on this method can divide all regions into substantially equal sub-regions and can set the number of the partitions, but this method is prone to a situation in which the regions are not connected, and cannot specify the allocation size of each region. Therefore, it is necessary to study a rational allocation method of the full coverage task area.
Disclosure of Invention
The invention aims to provide a method for distributing task areas of a robot cluster facing a known boundary, which is used for rasterizing a two-dimensional environment map of the known boundary, automatically calculating task subareas according to the initial position of a cluster robot and the task execution capacity of cluster members, dividing the task areas into subareas with the same number as the number of the robot clusters, and completely communicating the subareas in order to solve the problems in the prior art.
In order to achieve the above object, the present invention provides a method for assigning task areas of a robot cluster facing a known boundary, including the following steps:
establishing a grid map for the whole task space;
constructing a grid map matrix based on the grid map and the initial position of the robot cluster;
based on the grid map matrix, obtaining a wavefront distance matrix of all cells on a grid map;
based on the wave front distance matrix, initially distributing a task area;
and presetting a distribution requirement, and performing error correction on an initial distribution result until the distribution requirement is met, so as to obtain a final distribution result.
Optionally, the process of constructing the grid map matrix includes: firstly, based on a grid map, according to the initial position of an obstacle, the initial position of a robot and the distribution proportion of the robot; and judging whether the initial positions of the obstacle and the robot are in the grid map, judging whether the initial positions of the robot are overlapped with the initial positions of the obstacle, judging whether the sum of the distribution proportion of all robots is 1, and if the conditions are reasonable, obtaining the grid map matrix if the environment conditions of the grid map are reasonable.
Optionally, the grid map matrix represents meanings of units on the grid map, including obstacle units, units to be covered, and units occupied by the robot.
Optionally, the process of obtaining the wavefront distance matrix is as follows:
wherein, (x) i ,y i ) For the initial position point of the ith robot, χ is the cell to be covered excluding the starting point of the ith robot, d is χ to (x i ,y i ) The distance between the wave fronts, { 1.. r is (r) n The number of each robot is n.
Optionally, the process of initially assigning the task area includes: and obtaining an allocation matrix based on the wavefront distance matrix, obtaining an area allocated by each robot based on the allocation matrix, and obtaining the actual allocation unit number of each robot based on the area allocated by each robot.
Optionally, the allocation requirement includes: the actual number of dispense units per robot is within error compared to the desired number of dispense units and the sub-regions allocated by each robot have continuity.
Optionally, the process of obtaining the desired number of allocation units includes: and obtaining the expected distribution unit number of each robot based on the grid map matrix, the robot distribution proportion, the initial position of the obstacle and the number of the robots.
Optionally, the process of error correcting the initial allocation result includes: the wavefront distance matrix is corrected based on the expected allocation error matrix and the continuity error matrix, and the task area is reassigned based on the corrected wavefront distance matrix.
The invention has the technical effects that:
the method can automatically calculate the allocation of the task areas by only acquiring the boundary of the two-dimensional environment, the obstacle area, the initial position of the robot cluster and the allocation proportion of the robot cluster, and can meet the three requirements of the task area allocation of the robot cluster in the two-dimensional environment with the known boundary by the task allocation area, and the sub areas are fully communicated and fully covered according to the proportion. The reasonable task area distribution method not only can improve the overall efficiency of the robot cluster, but also is beneficial to optimizing resource utilization, thereby better meeting the requirements of full-coverage tasks.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application, illustrate and explain the application and are not to be construed as limiting the application. In the drawings:
FIG. 1 is a flow chart of a task area method and algorithm based on wavefront distance in an embodiment of the present invention;
fig. 2 is a schematic diagram of an initial position of a 6*6 grid map, an obstacle region, and a robot in an embodiment of the invention;
FIG. 3 is a schematic diagram of a wavefront distance of a robot with a starting point A on a 6*6 grid map in an embodiment of the invention;
FIG. 4 is a schematic diagram of a wavefront distance of a robot with a starting point B on a 6*6 grid map in an embodiment of the invention;
FIG. 5 is a schematic diagram of a wavefront distance of a robot with a C origin on a 6*6 grid map in an embodiment of the invention;
fig. 6 is a schematic diagram of task area allocation results of three robots on a grid map in an embodiment of the present invention.
Detailed Description
It should be noted that, in the case of no conflict, the embodiments and features in the embodiments may be combined with each other. The present application will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
It should be noted that the steps illustrated in the flowcharts of the figures may be performed in a computer system such as a set of computer executable instructions, and that although a logical order is illustrated in the flowcharts, in some cases the steps illustrated or described may be performed in an order other than that illustrated herein.
Example 1
As shown in fig. 1, the method for allocating task areas of a robot cluster facing a known boundary in this embodiment includes the following steps:
step 1: the environment is initialized. The whole task area is modeled as a grid map in units of square cells of a certain side length.
Specifically, the whole task area is modeled as a grid map in units of square cells of a certain length as a side length. Assuming that the diameter of the robot is d, in order to facilitate subsequent path planning and task area division of the robot, the grid width of the grid map is d, the number of the grid lines after grid formation is rows, the number of columns is cols, and the whole task space is:
S=rows×cols×d 2
all the cells are:
Grid all ={x,y:x∈[1,rows],y∈[1,cols]}
with B i (i=1, 2,3.., n) to represent an obstacle in the grid map, B i Representing the Grid area occupied by the obstacle numbered i in w, and the initial position set of the obstacle in the Grid map, namely the obstacle area Grid obs The method comprises the following steps:
Grid obs ={x,y:(x,y)∈B i }
the grid cells P to be allocated are:
P={x,y:(x,y)∈Grid all \Grid obs }
establishing a grid map for the whole task space to obtain the size r of the grid mapows Xcols and Grid set of obstacles at initial position of Grid map obs Initial position set Grid of robot in_ops Proportional ports assigned by the robot. Checking whether the initial positions of the obstacle and the robot are in the grid map, checking whether the task allocation proportion of the robot is reasonable (namely, the sum of the allocation proportions of all robots is 1), and checking whether the initial positions of the robot are on the obstacle. If the unreasonable situation occurs, the device is stopped directly.
Inputting correct raster map data, creating raster map matrix Grid Env Adding an obstacle, setting a starting position of the robot, marking a free area of a grid map matrix as 0, marking an obstacle area as-1, judging whether an area to be covered has an area which is not communicated, and outputting error information and exiting if the area to be covered has the area which is not communicated. Each robot initial position is marked as an index value of the robot, a Grid map matrix, namely a matrix of 2 x 2, is calculated, the content of the Grid map matrix is represented by each Grid unit, for example, a free unit is represented by 0, an obstacle unit is represented by-1, a unit occupied by the robot initial position is represented by 1, 2..rn, wherein rn represents n robots in total, and the Grid map matrix Grid Env The method comprises the following steps:
Grid Env ={-1,0,1...r n }
the dispensing ratio of the robot is C r1 ,C r2 ...C rn The grid units to be covered are P, the number of robots is n, the number of units to be covered of each robot is calculated, and the expected distribution unit number P of each robot ri The method comprises the following steps:
if P ri Not an integer, fair Thr is assigned to 1, and the cell to be covered represents:
P=P r1 ∪P r2 ∪...∪P rn
step 2: based on the wavefront distance principle, an initial wavefront distance matrix is calculated. And calculating a wave front distance matrix of all the cells on the grid map according to the initial positions of the robot cluster members.
Specifically, an initial wavefront distance matrix is calculated based on the wavefront distance principle. The wave front distance needs a starting cell, and each cell on the grid map is assigned by a wave-like distance conversion mode, which is equivalent to the pseudo gradient descent of a digital potential function consisting of starting point labels. The distance between the initial position of the robot and the cells is represented by the wavefront distance, so that the distance from each cell to the starting point is more visual, the influence of the obstacle on the continuity of the distribution area can be reflected by the wavefront algorithm representing distance, and the distance matrix converted by the wavefront algorithm can well represent the distance from the starting point to any passable position. According to the initial positions of the robot cluster members, the wavefront distance matrix of all the cells on the grid map is calculated. Fig. 2 shows a 6 x 6 grid map, with grey parts as obstacles and five stars as initial positions of the robot. And calculating the distance from each cell to the starting unit, and finally obtaining the wavefront matrix of the starting point. The wavefront distances from A, B, C are shown in fig. 3, 4, and 5, respectively.
With the initial position (x 1 ,y 1 ),(x 2 ,y 2 )...(x n ,y n ) As a starting point, expands outwards to calculate a corresponding wavefront distance matrix M 1 ,M 2 ...M n . Initial wavefront distance matrix M 1 ,M 2 ...M n The wavefront distance matrix of the ith robot is:
wherein (x) i ,y i ) For the initial position point of the ith robot, χ is x to (x i ,y i ) Wavefront distance. Therefore, there is no non-contiguous sub-region of the initial allocation matrix D.
Step 3: allocation of task areas. And judging whether the allocated area reaches the upper limit of the execution capacity according to the wave front distance matrix corresponding to the robot cluster member, and obtaining an initial allocation result of the cluster member, as shown in fig. 6.
Specifically, according to the wavefront distance matrix, initial allocation of the task area is realized, namely, an allocation matrix D is calculated.
Zone L allocated per robot i The method comprises the following steps:
the ith robot has a distribution unit number L i Aggregation:
if the number of the units is actually distributed by each robotAnd the expected number of distribution units P r1 ,P r2 ,...,P rn Compared with the method which is within the error and has continuity of the sub-areas allocated by each robot, namely, meets all requirements, the result can be directly used as the final result of allocation of the task area.
Step 4: and (5) error correction. And calculating an error matrix based on the task area and the initial allocation result of the last step, and adjusting and correcting the wavefront distance matrix of the corresponding robot cluster member, so that the task allocation area finally meets the requirements of full communication and full coverage in the subarea according to the proportion.
Specifically, in order to ensure that each robot distributes units according to a given proportion, expected distribution errors are calculated, and distribution results are adjusted and corrected, namely a wavefront distance matrix is adjusted. The method adopts a cyclic coordinate descent algorithm (a non-gradient optimization method), searches along the direction of one coordinate in each iteration step, and achieves the local minimum value of the objective function by using different coordinate methods in a cyclic way.
In the case where the global minimum of the objective function is always between the upper and lower threshold values, the lower threshold value and upper threshold value are expressed as:
assuming the ith robotAbove the upper threshold, there are more actual allocation units than desired allocation units, and the wavefront distance matrix needs to be corrected. Assuming that the wavefront distance matrix of other robots remains unchanged, correction factor e i (>1) Obtaining a corresponding correction matrix E i The method comprises the following steps:
corrected wavefront distance matrix M i The method comprises the following steps:
wherein the method comprises the steps ofRepresenting element-by-element multiplication, i.e., multiplication of the corresponding positions of the two matrices.
Since the wavefront distance matrix of other robots is assumed to be unchanged, M after correction i The corresponding wavefront distance becomes larger, which, based on the calculation, will lead to an allocated element k i Is reduced in number, corresponding toReduction of. If +.>Below the lower threshold, i.e. fewer actual dispensing units than desired dispensing units, corresponding correction factor e i (<1) Corrected M i The corresponding wave front distance becomes smaller, which, based on the calculation, will lead to an allocated element k i Is increased, corresponding->And becomes larger.
Assume that the continuity matrix S of the ith robot i And calculating the number of the connected areas, and if the number is greater than 2, occupying two or more different areas if the number is greater than 2 and the robot has a non-connected area. To deal with this case, a matrix Z is introduced i The construction principle of the matrix is to reward the area around the subset of the ith robot position and punish the other area subset not connected around, so as to gradually construct an area with a closed shape. If all units assigned to the ith robot belong to the same closed shape area of the ith robot position, Z i A matrix with all elements being 1 indicates that no correction is required for the wavefront conversion matrix.
Wherein T is i Representing the connected set of units, the ith robot is actually located at the initial position (x i ,y i ),J i A union representing all other connected sets, which are all assigned to the ith robot, but these unit sets do not have a union with T i Spatial connectivity is collected.
Correcting the wavefront distance matrix M of the ith robot i The method comprises the following steps:
the wavefront distance matrix correction of the ith robot is:
the foregoing is merely a preferred embodiment of the present application, but the scope of the present application is not limited thereto, and any changes or substitutions easily contemplated by those skilled in the art within the technical scope of the present application should be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (8)

1. A method for assigning a task area of a robot-oriented cluster with a known boundary, comprising the steps of:
establishing a grid map for the whole task space;
obtaining a grid map matrix based on the grid map and the initial position of the robot cluster;
based on the grid map matrix, obtaining a wavefront distance matrix of all cells on the grid map;
based on the wave front distance matrix, initially distributing a task area;
and presetting a distribution requirement, and performing error correction on an initial distribution result until the distribution requirement is met, so as to obtain a final distribution result.
2. The method for robot-cluster-task-area allocation with known boundaries as claimed in claim 1, wherein,
the process of constructing the grid map matrix includes: firstly, based on a grid map, according to the initial position of an obstacle, the initial position of a robot and the distribution proportion of the robot; and judging whether the initial positions of the obstacle and the robot are in the grid map, judging whether the initial positions of the robot are overlapped with the initial positions of the obstacle, judging whether the sum of the distribution proportion of all robots is 1, and if the conditions are reasonable, obtaining the grid map matrix if the environment conditions of the grid map are reasonable.
3. The method of robot-cluster-task-area-allocation oriented to known boundaries of claim 2 wherein,
the grid map matrix represents the meaning of each unit on the grid map and comprises obstacle units, units to be covered and units occupied by a robot.
4. The method for robot-cluster-task-area allocation with known boundaries as claimed in claim 1, wherein,
the process of obtaining the wavefront distance matrix is shown in the following formula:
wherein, (x) i ,y i ) For the initial position point of the ith robot, χ is the cell to be covered excluding the starting point of the ith robot, d is χ to (x i ,y i ) The distance between the wave fronts,the number of robots is n.
5. The method for robot-cluster-task-area allocation with known boundaries as claimed in claim 1, wherein,
the process of initially allocating the task area comprises the following steps: and obtaining an allocation matrix based on the wavefront distance matrix, obtaining an area allocated by each robot based on the allocation matrix, and obtaining the actual allocation unit number of each robot based on the area allocated by each robot.
6. The method for robot-cluster-task-area allocation with known boundaries as claimed in claim 1, wherein,
the allocation requirements include: the actual number of dispense units per robot is within error compared to the desired number of dispense units and the sub-regions allocated by each robot have continuity.
7. The method for robot-cluster-task-area allocation with known boundaries of claim 6 wherein,
the process of obtaining the desired number of allocation units includes: and obtaining the expected distribution unit number of each robot based on the grid map matrix, the robot distribution proportion, the initial position of the obstacle and the number of the robots.
8. The method for robot-cluster-task-area allocation with known boundaries as claimed in claim 1, wherein,
the process of error correction for the initial allocation result comprises: the wavefront distance matrix is corrected based on the expected allocation error matrix and the continuity error matrix, and the task area is reassigned based on the corrected wavefront distance matrix.
CN202311741088.8A 2023-12-18 Method for distributing task areas of robot clusters facing to known boundaries Active CN117724495B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311741088.8A CN117724495B (en) 2023-12-18 Method for distributing task areas of robot clusters facing to known boundaries

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311741088.8A CN117724495B (en) 2023-12-18 Method for distributing task areas of robot clusters facing to known boundaries

Publications (2)

Publication Number Publication Date
CN117724495A true CN117724495A (en) 2024-03-19
CN117724495B CN117724495B (en) 2024-05-17

Family

ID=

Similar Documents

Publication Publication Date Title
Lindhé et al. Flocking with obstacle avoidance: A new distributed coordination algorithm based on voronoi partitions
CN107563803B (en) Quotient circle dividing method based on distance consumption grid
CN104121903B (en) A kind of rolling Route planner based on boundary value problem
CN110243373B (en) Path planning method, device and system for dynamic storage automatic guided vehicle
CN105046363A (en) Gridding method for one-line diagram layout and optimization of zone electric distribution system
CN104548597B (en) The automatic generation method and device of navigation grid
CN112965485B (en) Robot full-coverage path planning method based on secondary area division
Ann et al. Area allocation algorithm for multiple UAVs area coverage based on clustering and graph method
CN112835064B (en) Mapping positioning method, system, terminal and medium
Nair et al. MR-SimExCoverage: Multi-robot simultaneous exploration and coverage
CN106060781A (en) Spatial location method based on fusion of BIM (Building Information Modeling) and Zigbee technology
Gautam et al. Cluster, allocate, cover: An efficient approach for multi-robot coverage
CN117724495B (en) Method for distributing task areas of robot clusters facing to known boundaries
CN101533525B (en) Method for analyzing the overlay of point and face
CN117724495A (en) Method for distributing task areas of robot clusters facing to known boundaries
CN112817316B (en) Multi-robot path planning method and device
CN116880507A (en) Cooperative scheduling method for multi-task allocation and multi-robot path planning with kinematic constraint
CN104598614A (en) Data multi-scale modal diffusing update method based on geographic semantics
JP7369012B2 (en) Channel optimization support device, channel optimization support method, access point management system, and program
CN104240232A (en) Road damage detection optimization method based on image processing
CN115268461A (en) Mobile robot autonomous navigation method with fusion algorithm
CN114543808A (en) Indoor relocation method, device, equipment and storage medium
Datta et al. Multiple drones driven hexagonally partitioned area exploration: Simulation and evaluation
Diéguez et al. A global motion planner that learns from experience for autonomous mobile robots
Wellhausen et al. Efficient grid map data structures for autonomous driving in large-scale environments

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant