A multi-agent autonomous collaborative exploration method, system, device and storage medium for unknown environments

By optimizing multi-agent exploration of unknown environments through fast random tree strategies and obstacle filters, the problems of large computational complexity and misjudgment of boundary points are solved, achieving efficient and stable environment exploration.

CN116300876BActive Publication Date: 2025-09-16NANJING UNIV OF INFORMATION SCI & TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310039534.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-01-12
Publication Date
2025-09-16
Estimated Expiration
2043-01-12

AI Technical Summary

Technical Problem

Existing technologies have high computational complexity and are highly susceptible to interference in multi-agent exploration of unknown environments, leading to operational failures. In addition, misjudgment of boundary points near obstacles interferes with task allocation.

Method used

A fast random tree strategy is used to obtain the boundary point set, mean shift clustering and information gain function are used to filter the explored boundary points, obstacle boundary point filter is combined to remove misjudged points, and task allocation is optimized through market bidding strategy and hysteresis gain.

Benefits of technology

It effectively reduces the computational complexity of task allocation and exploration modules, improves system efficiency and robustness, optimizes the strategy of multi-agent collaborative exploration, and improves exploration efficiency and mapping quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116300876B_ABST
    Figure CN116300876B_ABST
Patent Text Reader

Abstract

The present invention discloses a method, system, device and storage medium for autonomous collaborative exploration of an unknown environment by multiple intelligent agents, which belongs to the field of intelligent unmanned technology. The method comprises the following steps: obtaining a first boundary point set obtained by exploration based on a fast random tree strategy and sending the first boundary point set to a mean shift clustering module, calculating the center point of the cluster, and using the set of center points as a second boundary point set; filtering the second boundary point set by using an information gain function and an obstacle boundary point filter; calculating the benefit of each intelligent agent after reaching the remaining boundary points, processing the benefit by using a discount strategy, and then adding a hysteresis gain to obtain the total benefit of each intelligent agent after reaching each boundary point, subtracting the cost from the total benefit with the Euclidean distance from the intelligent agent to the boundary point as the cost, obtaining the total benefit of each intelligent agent reaching each boundary point, allocating the boundary point corresponding to the maximum value of the total benefit of the intelligent agent to the intelligent agent, and performing autonomous collaborative exploration of the unknown environment after the allocation is completed. The present invention reduces the amount of calculation and improves the operation efficiency and robustness.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a method, system, device and storage medium for autonomous collaborative exploration of an unknown environment by multiple intelligent agents, belonging to the field of intelligent unmanned technology. Background Art

[0002] In recent years, with the rapid development of unmanned technology, a large number of intelligent unmanned swarms have the characteristics of low cost, strong survivability, good maneuverability and high flexibility, and have increasingly broad application potential. In practice, intelligent unmanned swarms often face unfamiliar or even unknown environments, such as disaster areas, basements, underground, controlled areas, etc. Robots need to complete other operational plans, and the construction of unknown maps is the premise and foundation of the task.

[0003] Map building reflects a robot's environmental perception capabilities, while autonomous planning and exploration is a direct reflection of path planning and exploration. The combination of the two forms the foundation of intelligent robotics and is the key to intelligent robot decision-making, with profound implications for the development of artificial intelligence. Multiple machines offer numerous advantages over a single machine. They can provide effective solutions for complex, dynamic tasks, shorten task completion times, and optimize the entire system. Multiple machines can effectively improve system robustness and fault tolerance in the event of single-machine damage. They offer greater portability and scalability for performance algorithm updates, effectively sharing computing loads to ensure efficient tasks and battery life, ensuring task completion in diverse scenarios.

[0004] Currently, the use of boundary point search strategy is one of the mainstream methods for exploring unknown environments; there have been some related studies at home and abroad on boundary exploration and task allocation.

[0005] However, the following problems are common in current research: ① The misjudged boundary points are not processed and sent to the task allocation module, resulting in increased computing consumption; ② The presence of misjudged boundary points near obstacles interferes with the task allocation of the intelligent agent and causes system operation failure. Summary of the Invention

[0006] The purpose of the present invention is to provide a method, system, device and storage medium for autonomous collaborative exploration of unknown environments by multiple intelligent agents, which solves the problems of large computational complexity and high interference level in the existing technology, resulting in operational failure.

[0007] To achieve the above objectives, the present invention is implemented by adopting the following technical solutions:

[0008] In a first aspect, the present invention provides a multi-agent autonomous collaborative exploration method for an unknown environment, comprising:

[0009] Obtain the first boundary point set obtained by exploration based on the fast random tree strategy;

[0010] Send the first boundary point set to the mean shift clustering module, calculate the center points of the clusters, and use the set of center points of the clusters as the second boundary point set;

[0011] Using the information gain function to filter the boundary points explored by the agent from the second boundary point set, and using the obstacle boundary point filter to filter the boundary points within a preset distance of the obstacle from the second boundary point set;

[0012] The benefits of each agent after reaching the remaining boundary points in the second boundary point set are calculated, and the benefits are processed using a discount strategy. The hysteresis gain is then added to obtain the total benefit of each agent. The Euclidean distance from the agent to the boundary point is used as the cost, and the total benefit of each agent reaching each boundary point is subtracted from the total benefit to obtain the total benefit of each agent. The boundary point corresponding to the maximum total benefit of the agent is assigned to the agent. After the assignment is completed, autonomous collaborative exploration of the unknown environment is carried out.

[0013] In combination with the first aspect, further, the first boundary point set is obtained by the following method: based on the fast random tree strategy, combining the global detector and the local detector scheme, wherein the global detector expands the detection outward with the initial base point as the root node, and the local detector expands the detection outward with each unmanned vehicle as the root node, and eliminates the random tree after the boundary point is detected, and all detected boundary points are used as the first boundary point set.

[0014] In combination with the first aspect, further, filtering the boundary points explored by the agent from the second boundary point set using the information gain function includes:

[0015] The information gain function is used to determine the circle with the boundary point as the center and η*r info Is there an unknown area in the circular area with a radius of r info represents the information gain radius, η represents a constant whose value range is (0,1]; if there is an unknown area in the region, skip the point and calculate the next boundary point; otherwise, delete the point and start traversing all boundary points again.

[0016] In combination with the first aspect, further, filtering the boundary points within the preset distance of the obstacle from the second boundary point set using the obstacle boundary point filter includes:

[0017] With the boundary point as the center, r filter To filter the radius, determine whether there is an obstacle in the circular area. If there is an obstacle, filter the boundary point and repeat the above steps until all the boundary points in the second boundary point set are traversed.

[0018] In combination with the first aspect, further, whether there is an obstacle in the circular area is determined by the following method:

[0019] The corresponding index value of the boundary point in the grid map is:

[0020]

[0021] Where (x i ,y i ) represents the coordinates of boundary point i in the robot Cartesian coordinate system, index(i) represents the index value of boundary point i in the grid map; origin.x and origin.y represent the x-axis and y-axis offsets of the robot Cartesian coordinate system and the grid map coordinate system respectively; resolution represents the resolution of the grid map; width represents the width of the grid map;

[0022] Convert the circular area in the robot's Cartesian coordinate system to a grid map, traverse all grids in the area, and if there is an obstacle grid, convert the grid to the robot's Cartesian coordinate system:

[0023]

[0024]

[0025] Where (x j ,y j ) represents the coordinates of obstacle grid j in the robot's Cartesian coordinate system; index[j] represents the index value of obstacle grid j in the grid map, which is calculated in the same way as the index value of the boundary point in the grid map; width represents the width of the grid map; origin.x and origin.y represent the offsets of the robot's Cartesian coordinate system and the grid map coordinate system on the x-axis and y-axis respectively; resolution represents the resolution of the grid map;

[0026] Calculate the obstacle grid j coordinate (x j ,y j ) and the coordinates of the boundary point i (x i ,y i ) of the Euclidean distance, if the Euclidean distance is less than the filter radius r filter , then filter the point.

[0027] In combination with the first aspect, further, the gain is the unknown area obtained when the agent reaches the boundary point:

[0028] InfoGain(i)=∑S(x iu ,y iu )

[0029] stGridValue(x iu ,y iu )==-1;

[0030] ||(x iu ,y iu )-(x i ,y i )||≤r info

[0031] Among them, InfoGain(i) represents the benefit obtained by the agent when it moves to the boundary point i; (x iu ,y iu ) means that the boundary point i is the center, r info The unknown grid coordinates in the circular area with radius S(x iu ,y iu ) means that the boundary point i is the center, r info The area of ​​an unknown grid area in a circular area with a radius of iu ,y iu ) means that the boundary point i is the center, r info The area of ​​all unknown grids in the circular area with a radius of GridValue(x iu ,y iu ) represents the grid (x iu ,y iu ) value, -1 indicates unknown area; (x i ,y i ) represents the coordinates of the boundary point i; r info represents the information gain radius;

[0032] The processing of revenue by using a discount strategy includes:

[0033] discount(i)=InfoGain(i)-∑S(x o ,y o )

[0034] stGridValue(x o ,y o )==-1

[0035] ||(x o ,y o )-x i ||≤r info

[0036] ||(x o ,y o )-x i+1 ||≤r info

[0037] InfoGain(i) represents the gain obtained by the agent when it moves to the boundary point i; x i and x i+1Represents two adjacent boundary points; (x o ,y o ) represents the boundary point x i and x i+1 is the center of the circle, r info The unknown area grid of the intersection area of ​​the circular area with radius S(x o ,y o ) represents the unknown area grid (x o ,y o ) area; GridValue(x o ,y o ) represents the grid (x o ,y o ), -1 indicates unknown area; r info represents the information gain radius;

[0038] The hysteresis gain is calculated as follows:

[0039]

[0040] where x i represents the boundary point i; R n represents agent n; r h represents the hysteresis radius; h gain represents the hysteresis gain, which is a constant greater than 1;

[0041] The cost is calculated by the following method:

[0042] At the cost of the Euclidean distance between the frontier point i and the agent n:

[0043] cost(i)=||x i -R n ||

[0044] where x i represents the boundary point i; R n represents agent n; cost(i) represents the cost of agent n to boundary point i;

[0045] Finally, the total benefit of agent n to boundary point i is calculated as:

[0046] Revenue(i)=λh(x i ,R n )discount(i)-cost(i)

[0047] Revenue(i) represents the total benefit of agent n to the boundary point i; λ is a modifiable weight parameter; h(x i ,R n) represents the hysteresis gain of agent n to boundary point i; discount(i) represents the discounted value of the benefit obtained by the agent moving to boundary point i; cost(i) represents the cost of agent n to reach boundary point i.

[0048] In a second aspect, the present invention further provides a multi-agent autonomous collaborative exploration system for an unknown environment, comprising:

[0049] Boundary point acquisition module: used to obtain the first boundary point set obtained by exploration based on the fast random tree strategy;

[0050] Center point calculation module: used to send the first boundary point set to the mean shift clustering module, calculate the center point of the cluster, and use the set of the center point of the cluster as the second boundary point set;

[0051] Boundary point filtering module: used to filter the boundary points explored by the agent from the second boundary point set using the information gain function, and to filter the boundary points within a preset distance of the obstacle from the second boundary point set using the obstacle boundary point filter;

[0052] Task allocation and exploration module: used to calculate the benefits of each agent after reaching the remaining boundary points in the second boundary point set, process the benefits using a discount strategy, and then add a hysteresis gain to obtain the total benefit of each agent. The Euclidean distance from the agent to the boundary point is used as the cost, and the total benefit of each agent reaching each boundary point is subtracted from the total benefit to obtain the total benefit of each agent reaching each boundary point. The boundary point corresponding to the maximum total benefit of the agent is allocated to the agent. After the allocation is completed, autonomous collaborative exploration of the unknown environment is carried out.

[0053] In a third aspect, the present invention further provides a multi-agent autonomous collaborative exploration system for an unknown environment, comprising a processor and a storage medium;

[0054] The storage medium is used to store instructions;

[0055] The processor is configured to operate according to the instructions to execute the steps of the method according to any one of the first aspects.

[0056] In a fourth aspect, the present invention further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of any one of the methods described in the first aspect.

[0057] Compared with the prior art, the present invention has the following beneficial effects:

[0058] The present invention provides a method, system, device and storage medium for autonomous collaborative exploration of an unknown environment by multiple agents. The method processes boundary points after passing through an information gain function and then through an obstacle boundary point filter to calculate whether there are obstacles in the neighborhood of the boundary points, and filters out boundary points that are misjudged on or adjacent to obstacles. The present invention adds an obstacle boundary point filter to effectively filter out misjudged boundary points, adds an information gain function to delete explored boundary points, and reduces the computational complexity of task allocation and exploration modules. Since boundary points that cannot be reached by the agents are filtered out, the new system achieves higher efficiency and robustness than the original system. Considering the situation where the same agent prioritizes exploration of adjacent boundary points, a hysteresis gain is proposed. Considering the situation where two agents explore two adjacent boundary points, a discount strategy is proposed, thereby optimizing the strategy of autonomous collaborative exploration and improving the efficiency of multi-agent collaborative exploration. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Figure 1 This is one of the flow charts of the multi-agent autonomous collaborative exploration method in an unknown environment provided by an embodiment of the present invention;

[0060] Figure 2 This is the second flow chart of the multi-agent autonomous collaborative exploration method in an unknown environment provided by an embodiment of the present invention;

[0061] Figure 3 This is a comparison chart of the mapping effects before and after the algorithm improvement provided by the embodiment of the present invention;

[0062] Figure 4 This is a three-dimensional simulation scene 1 provided by an embodiment of the present invention;

[0063] Figure 5 yes Figure 4 Comparison of map construction time before and after algorithm improvement in scenario 1;

[0064] Figure 6 yes Figure 4 The image of the map construction effect before and after the algorithm improvement in scene 1;

[0065] Figure 7 This is a three-dimensional simulation scene 2 provided by an embodiment of the present invention;

[0066] Figure 8 yes Figure 7 Comparison of map construction time before and after algorithm improvement in scenario 2.

[0067] Figure 9 yes Figure 7 The image of the map construction effect before and after the algorithm improvement in scene 2; DETAILED DESCRIPTION

[0068] The present invention will be further described below in conjunction with the accompanying drawings. The following embodiments are only used to more clearly illustrate the technical solutions of the present invention and are not intended to limit the scope of protection of the present invention.

[0069] Example 1

[0070] like Figure 1 and Figure 2 As shown, an embodiment of the present invention provides a multi-agent autonomous collaborative exploration method in an unknown environment, comprising:

[0071] A fusion model consisting of three unmanned vehicles and navigation, positioning, and indirect map is constructed. The boundary points of unknown environments are explored based on global and local detectors. The center points of the clusters are sent to the mean shift clustering module to be used as boundary points. The intelligent agent moves to the boundary points to update the map information, and the explored boundary points are deleted based on the information gain function. The obstacle boundary point filtering module filters out misjudged boundary points near obstacles. A market bidding strategy is used, with the unknown environment area that the intelligent agent can obtain when reaching the boundary point as the benefit and the Euclidean distance from the intelligent agent to the boundary point as the cost. Discount gain and hysteresis gain are combined to increase the exploration efficiency.

[0072] Based on the fast random tree strategy, a global detector and a local detector scheme are combined. The global detector expands the detection outward with the initial base point as the root node, and the local detector expands the detection outward with each unmanned vehicle as the root node and eliminates the random tree after detecting the boundary point, and puts all the detected boundary points into the first boundary point set.

[0073] Step 1: Randomly generate a root node x in space init , merged into the root node set V, there is no edge at this time, so the edge set E is an empty set; Step 2 generates a random sampling point x in space rand ,; Step 3 traverses the root nodes in the set V and returns the root nodes and x rand The point with the minimum Euclidean distance is named x nearest ; Step 4: Follow x rand with x nearest Take point x on the line new , where x nearest with x new The Euclidean distance is ω, so

[0074]

[0075] where x rand represents a random sampling point in space; x nearest Represents the point set V with x rand The point with the smallest Euclidean distance; x new Indicates that in x rand with x nearestThe point on the line is ω, which is a constant and represents the step size of the random tree growth. The random tree grows with the number of iterations.

[0076] Detection x nearest with x new The line passes through the area. If it passes through the obstacle area, delete point x. new , re-expand the random tree; if it passes through the free area, then point x new Merge into set V,x nearest with x new The line is merged into the set E; if it passes through the unknown area, the point x new Sent to the mean shift clustering module as boundary points.

[0077] The first boundary point set is sent to the mean shift clustering module to calculate the center point of the cluster and use it as the new boundary point set to obtain the second boundary point set. The offset mean is:

[0078]

[0079] where x c represents the cluster center point, M(x c ) represents x c is the offset of the center point, k represents the number of boundary points, f(i) represents the i-th boundary point, S b Indicates x c The circular area with centered at and b as radius.

[0080] Move the center point to the offset mean:

[0081] x t+1 =M t +x t

[0082] where x t represents the center point at state t, x t+1 Indicates the center point of the t+1 state, M t Indicates the offset of the t state.

[0083] In the second boundary point set, the information gain function is used to determine the boundary point as the center of the circle, η*r info Is there an unknown area in the circular area with radius r info represents the information gain radius, η represents a constant whose value range is (0,1]; if there is an unknown area in the region, skip the point and calculate the next boundary point; otherwise, delete the point and start traversing all boundary points again.

[0084] In the second boundary point set, based on the obstacle boundary point filtering module, the misjudged boundary points near the obstacle are filtered. With the boundary point as the center, rfilter To filter the radius, determine whether there is an obstacle area in the circular area. If there is an obstacle, filter the boundary point.

[0085] Considering the difference between the robot's Cartesian coordinate system and the grid coordinate system, the corresponding index values ​​of the boundary points in the grid are:

[0086]

[0087] Where (x i ,y i ) represents the coordinates of boundary point i in the robot Cartesian coordinate system, index(i) represents the index value of boundary point i in the grid map; origin.x and origin.y represent the x-axis and y-axis offsets of the robot Cartesian coordinate system and the grid map coordinate system, respectively; resolution represents the resolution of the grid map; width represents the width of the grid map.

[0088] Convert the filter radius to the number of grid cells covered in the raster image:

[0089] r_region=r filter / resolution

[0090] Where r_region represents the number of grids covered by the filter radius converted into the raster map; r filter Indicates the filter radius; resolution indicates the grid resolution.

[0091] In the grid map, the circular area in the robot's Cartesian coordinate system is transformed into a square area centered at the boundary point, with r_region covering the grid number radiating outward to form a square area. The grid index of the lower left corner is obtained as follows:

[0092] init_index(i)=index(i)-r_region*(width+1)

[0093] Where init_index(i) represents the grid index value of the lower left corner of the square area centered on boundary point i, index(i) represents the index value of boundary point i, r_region represents the number of grid cells covered by the filter radius converted into the grid image; width represents the width of the grid image.

[0094] Convert the circular area in the robot to a square area grid map, traverse all grids in the area, and if there is an obstacle grid, convert the grid to the robot's Cartesian coordinate system:

[0095]

[0096]

[0097] Where (x j ,y j ) represents the coordinates of obstacle grid j in the robot's Cartesian coordinate system; index[j] represents the index value of obstacle grid j in the grid map, width represents the width of the grid map; origin.x and origin.y represent the x-axis and y-axis offsets of the robot's Cartesian coordinate system and the grid map coordinate system, respectively; resolution represents the resolution of the grid map.

[0098] Calculate the obstacle grid j coordinate (x j ,y j ) and the coordinates of the boundary point i (x i ,y i ) of the Euclidean distance, if the distance is less than the filter radius r filter , then filter the point.

[0099] like Figure 3 As shown in the figure, the green points are boundary points. Without the obstacle boundary point filter, there are a large number of misjudgment points near the obstacles, which seriously affects the operation of the task allocation module. After adding the obstacle boundary point filter, all misjudgment boundary points are deleted without affecting the mapping effect.

[0100] After processing the boundary points, the task allocator plans the agents for automated collaborative exploration. Based on a market bidding strategy, boundary points are treated as commodities, and multi-agent clusters are used as bidders. Discounting strategies and hysteresis gains are incorporated to calculate the overall gain. The agent ID corresponding to the maximum gain is assigned to the corresponding boundary point.

[0101] At the cost of the Euclidean distance between the frontier point i and the agent n:

[0102] cost(i)=||x i -R n ||

[0103] where x i represents the boundary point i; R n represents agent n; cost(i) represents the cost of agent n to boundary point i.

[0104] The unknown area obtained by the agent when it reaches the boundary point is the profit:

[0105] InfoGain(i)=∑S(x iu ,y iu )

[0106] stGridValue(x iu ,y iu )==-1;

[0107] ||(x iu ,y iu )-(x i ,y i )||≤r info

[0108] Among them, InfoGain(i) represents the benefit obtained by the agent when it moves to the boundary point i; (x iu ,y iu ) means that the boundary point i is the center, r info The unknown grid coordinates in the circular area with radius S(x iu ,y iu ) means that the boundary point i is the center, r info The area of ​​an unknown grid area in a circular area with a radius of iu ,y iu ) means that the boundary point i is the center, r info The area of ​​all unknown grids in the circular area with a radius of GridValue(x iu ,y iu ) represents the grid (x iu ,y iu ) value, -1 indicates unknown area; (x i ,y i ) represents the coordinates of the boundary point i; r info represents the information gain radius.

[0109] Considering the situation where two agents explore two adjacent boundary points, a discount strategy is proposed:

[0110] discount(i)=InfoGain(i)-∑S(x o ,y o )

[0111] stGridValue(x o ,y o )==-1

[0112] ||(x o ,y o )-x i ||≤r info

[0113] ||(x o ,y o )-x i+1 ||≤r info

[0114] InfoGain(i) represents the gain obtained by the agent when it moves to the boundary point i; x i and x i+1Represents two adjacent boundary points; (x o ,y o ) represents the boundary point x i and x i+1 is the center of the circle, r info The unknown area grid of the intersection area of ​​the circular area with radius S(x o ,y o ) represents the unknown area grid (x o ,y o ) area; GridValue(x o ,y o ) represents the grid (x o ,y o ), -1 indicates unknown area; r info represents the information gain radius.

[0115] Considering the priority exploration of the same agent at adjacent boundary points, a hysteresis gain is proposed:

[0116]

[0117] where x i represents the boundary point i; R n represents agent n; r h represents the hysteresis radius; h gain represents the hysteresis gain, which is a constant greater than 1.

[0118] The total benefit of the final boundary point i is:

[0119] Revenue(i)=λh(x i ,R n )discount(i)-cost(i)

[0120] Revenue(i) represents the total benefit of agent n to the boundary point i; λ is a modifiable weight parameter; h(x i ,R n ) represents the hysteresis gain of agent n to boundary point i; discount(i) represents the discounted value of the benefit obtained by the agent moving to boundary point i; cost(i) represents the cost of agent n to reach boundary point i.

[0121] In order to verify the effectiveness of the solution of the present invention, the following simulation experiment is carried out.

[0122] like Figure 4 As shown, scene 1 is designed, a simple scene with a size of 20*8.25m, where three agents are placed side by side.

[0123] like Figure 5As shown in Figure 2, three scene 1 mapping experiments were conducted using two algorithms. Figure 5 (a) is the mapping effect before the algorithm is improved. Figure 5 (b) is the mapping effect after the algorithm is improved, where Figure 5 (a) The third experiment showed incomplete mapping, and the comparison was obvious. Figure 5 (b) Higher mapping quality.

[0124] like Figure 6 As shown, in Figure 5 In the experiment, the time consumed before and after the algorithm improvement was counted for three experiments. The black bar graph represents the time consumed before the algorithm improvement, and the white bar graph represents the time consumed after the algorithm improvement. The time consumed after the algorithm improvement is shorter, the time consumption is more stable, and the system robustness is better.

[0125] like Figure 7 As shown, scene 2 is designed, a complex scene with a size of 22*22m, where three agents are placed side by side.

[0126] like Figure 8 As shown in Figure 2, three scene 2 mapping experiments were conducted using two algorithms. Figure 8 (a) is the mapping effect before the algorithm is improved. Figure 8 (b) is the mapping effect after the algorithm is improved, where Figure 8 (a) Many obstacles on the map are not fully displayed. Figure 8 (b) Better mapping effect.

[0127] like Figure 9 As shown, in Figure 8 In the experiment, the time consumed before and after the algorithm improvement was counted for three experiments. The black bar graph represents the time consumed before the algorithm improvement, and the white bar graph represents the time consumed after the algorithm improvement. The time consumed after the algorithm improvement is shorter, the time consumption is more stable, and the system robustness is better.

[0128] In summary, after the obstacle boundary point filter is added to the system, the mapping effect is better, the time consumption is shorter, the system efficiency is higher, and the robustness is better.

[0129] Example 2

[0130] An embodiment of the present invention provides a multi-agent autonomous collaborative exploration system for an unknown environment, characterized by comprising:

[0131] Boundary point acquisition module: used to obtain the first boundary point set obtained by exploration based on the fast random tree strategy;

[0132] Center point calculation module: used to send the first boundary point set to the mean shift clustering module, calculate the center point of the cluster, and use the set of the center point of the cluster as the second boundary point set;

[0133] Boundary point filtering module: used to filter the boundary points explored by the agent from the second boundary point set using the information gain function, and to filter the boundary points within a preset distance of the obstacle from the second boundary point set using the obstacle boundary point filter;

[0134] Task allocation and exploration module: used to calculate the benefits of each agent after reaching the remaining boundary points in the second boundary point set, process the benefits using a discount strategy, and then add a hysteresis gain to obtain the total benefit of each agent. The Euclidean distance from the agent to the boundary point is used as the cost, and the total benefit of each agent reaching each boundary point is subtracted from the total benefit to obtain the total benefit of each agent reaching each boundary point. The boundary point corresponding to the maximum total benefit of the agent is allocated to the agent. After the allocation is completed, autonomous collaborative exploration of the unknown environment is carried out.

[0135] Example 3

[0136] An embodiment of the present invention provides a multi-agent autonomous collaborative exploration system for an unknown environment, comprising a processor and a storage medium;

[0137] The storage medium is used to store instructions;

[0138] The processor is configured to operate according to the instructions to execute the steps of the following method:

[0139] Obtain the first boundary point set obtained by exploration based on the fast random tree strategy;

[0140] Send the first boundary point set to the mean shift clustering module, calculate the center points of the clusters, and use the set of center points of the clusters as the second boundary point set;

[0141] Using the information gain function to filter the boundary points explored by the agent from the second boundary point set, and using the obstacle boundary point filter to filter the boundary points within a preset distance of the obstacle from the second boundary point set;

[0142] The benefits of each agent after reaching the remaining boundary points in the second boundary point set are calculated, and the benefits are processed using a discount strategy. The hysteresis gain is then added to obtain the total benefit of each agent. The Euclidean distance from the agent to the boundary point is used as the cost, and the total benefit of each agent reaching each boundary point is subtracted from the total benefit to obtain the total benefit of each agent. The boundary point corresponding to the maximum total benefit of the agent is assigned to the agent. After the assignment is completed, autonomous collaborative exploration of the unknown environment is carried out.

[0143] Example 4

[0144] An embodiment of the present invention provides a computer-readable storage medium having a computer program stored thereon, characterized in that when the program is executed by a processor, the steps of the following method are implemented:

[0145] Obtain the first boundary point set obtained by exploration based on the fast random tree strategy;

[0146] Send the first boundary point set to the mean shift clustering module, calculate the center points of the clusters, and use the set of center points of the clusters as the second boundary point set;

[0147] Using the information gain function to filter the boundary points explored by the agent from the second boundary point set, and using the obstacle boundary point filter to filter the boundary points within a preset distance of the obstacle from the second boundary point set;

[0148] The benefits of each agent after reaching the remaining boundary points in the second boundary point set are calculated, and the benefits are processed using a discount strategy. The hysteresis gain is then added to obtain the total benefit of each agent. The Euclidean distance from the agent to the boundary point is used as the cost, and the total benefit of each agent reaching each boundary point is subtracted from the total benefit to obtain the total benefit of each agent. The boundary point corresponding to the maximum total benefit of the agent is assigned to the agent. After the assignment is completed, autonomous collaborative exploration of the unknown environment is carried out.

[0149] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0150] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the steps in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0151] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1The function specified in one or more boxes.

[0152] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0153] The above is only a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the technical principles of the present invention. These improvements and modifications should also be regarded as the scope of protection of the present invention.

Claims

1. A multi-agent autonomous collaborative exploration method for an unknown environment, characterized by: include: Obtain the first boundary point set obtained by exploration based on the fast random tree strategy; Send the first boundary point set to the mean shift clustering module, calculate the center points of the clusters, and use the set of center points of the clusters as the second boundary point set; Using the information gain function to filter the boundary points explored by the agent from the second boundary point set, and using the obstacle boundary point filter to filter the boundary points within a preset distance of the obstacle from the second boundary point set; The benefits of each agent after reaching the remaining boundary points in the second boundary point set are calculated, and the benefits are processed using a discount strategy. The hysteresis gain is then added to obtain the total benefit of each agent. The Euclidean distance from the agent to the boundary point is used as the cost, and the total benefit of each agent reaching each boundary point is subtracted from the total benefit to obtain the total benefit of each agent. The boundary point corresponding to the maximum total benefit of the agent is assigned to the agent. After the assignment is completed, autonomous collaborative exploration of the unknown environment is carried out.

2. A multi-agent autonomous collaborative exploration method in an unknown environment according to claim 1, characterized in that: The first boundary point set is obtained by the following method: based on a fast random tree strategy, a global detector and a local detector scheme are combined, wherein the global detector expands outward detection with the initial base point as the root node, and the local detector expands outward detection with each unmanned vehicle as the root node, and after the boundary point is detected, the random tree is eliminated, and all detected boundary points are used as the first boundary point set.

3. The multi-agent autonomous collaborative exploration method in an unknown environment according to claim 1, characterized in that: The step of filtering the boundary points explored by the agent from the second boundary point set by using the information gain function includes: The information gain function is used to determine the circle with the boundary point as the center and η*r info Is there an unknown area in the circular area with a radius of r info represents the information gain radius, η represents a constant whose value range is (0,1]; if there is an unknown area in the region, skip the point and calculate the next boundary point; otherwise, delete the point and start traversing all boundary points again.

4. The multi-agent autonomous collaborative exploration method in an unknown environment according to claim 1, characterized in that: The step of filtering the boundary points within the preset distance of the obstacle from the second boundary point set by using the obstacle boundary point filter includes: With the boundary point as the center, r filter To filter the radius, determine whether there is an obstacle in the circular area. If there is an obstacle, filter the boundary point and repeat the above steps until all the boundary points in the second boundary point set are traversed.

5. The multi-agent autonomous collaborative exploration method in an unknown environment according to claim 1, characterized in that: Whether there is an obstacle in the circular area is determined by the following method: The corresponding index value of the boundary point in the grid map is: Where (x i ,y i ) represents the coordinates of boundary point i in the robot Cartesian coordinate system, index(i) represents the index value of boundary point i in the grid map; origin.x and origin.y represent the x-axis and y-axis offsets of the robot Cartesian coordinate system and the grid map coordinate system respectively; resolution represents the resolution of the grid map; Width indicates the width of the grid image; Convert the circular area in the robot's Cartesian coordinate system to a grid map, traverse all grids in the area, and if there is an obstacle grid, convert the grid to the robot's Cartesian coordinate system: Where (x j ,y j ) represents the coordinates of obstacle grid j in the robot's Cartesian coordinate system; index[j] represents the index value of obstacle grid j in the grid map, which is calculated in the same way as the index value of the boundary point in the grid map; width represents the width of the grid map; origin.x and origin.y represent the offsets of the robot's Cartesian coordinate system and the grid map coordinate system on the x-axis and y-axis respectively; resolution represents the resolution of the grid map; Calculate the obstacle grid j coordinate (x j ,y j ) and the coordinates of the boundary point i (x i ,y i ) of the Euclidean distance, if the Euclidean distance is less than the filter radius r filter , then filter the point.

6. The multi-agent autonomous collaborative exploration method in an unknown environment according to claim 1, characterized in that: The benefit is the unknown area obtained when the agent reaches the boundary point: InfoGain(i)=∑S(x iu ,y iu ) s.t.GridValue(x iu ,y iu )==-1; ||(x iu ,and iu )-(x i ,and i )||≤r info Among them, InfoGain(i) represents the benefit obtained by the agent when it moves to the boundary point i; (x iu ,y iu ) means that the boundary point i is the center, r info The unknown grid coordinates in the circular area with radius S(x iu ,y iu ) means that the boundary point i is the center, r info The area of ​​an unknown grid area in a circular area with a radius of iu ,y iu ) means that the boundary point i is the center, r info The area of ​​all unknown grids in the circular area with a radius of GridValue(x iu ,y iu ) represents the grid (x iu ,y iu ) value, -1 indicates unknown area; (x i ,y i ) represents the coordinates of the boundary point i; r info represents the information gain radius; The processing of revenue by using a discount strategy includes: discount(i)=InfoGain(i)-∑S(x o ,y o ) s.t.GridValue(x o ,y o )==-1 ||(x o ,y o )-x i ||≤r info ||(x o ,y o )-x i+1 ||≤r info InfoGain(i) represents the gain obtained by the agent when it moves to the boundary point i; x i and x i+1 Represents two adjacent boundary points; (x o ,y o ) represents the boundary point x i and x i+1 is the center of the circle, r info The unknown area grid of the intersection area of ​​the circular area with radius S(x o ,y o ) represents the unknown area grid (x o ,y o ) area; GridValue(x o ,y o ) represents the grid (x o ,y o ), -1 indicates unknown area; r info represents the information gain radius; The hysteresis gain is calculated as follows: where x i represents the boundary point i; R n represents agent n; r h represents the hysteresis radius; h gain represents the hysteresis gain, which is a constant greater than 1; The cost is calculated by the following method: At the cost of the Euclidean distance between the frontier point i and the agent n: cost(i)=||x i -R n || where x i represents the boundary point i; R n represents agent n; cost(i) represents the cost of agent n to boundary point i; Finally, the total benefit of agent n to boundary point i is calculated as: Revenue(i)=λh(x i ,R n )discount(i)-cost(i) Revenue(i) represents the total benefit of agent n to the boundary point i; λ is a modifiable weight parameter; h(x i ,R n ) represents the hysteresis gain of agent n to boundary point i; discount(i) represents the discounted value of the benefit obtained by the agent moving to boundary point i; cost(i) represents the cost of agent n to reach boundary point i.

7. A multi-agent autonomous collaborative exploration system for unknown environments, characterized by: include: Boundary point acquisition module: used to obtain the first boundary point set obtained by exploration based on the fast random tree strategy; Center point calculation module: used to send the first boundary point set to the mean shift clustering module, calculate the center point of the cluster, and use the set of the center point of the cluster as the second boundary point set; Boundary point filtering module: used to filter the boundary points explored by the agent from the second boundary point set using the information gain function, and to filter the boundary points within a preset distance of the obstacle from the second boundary point set using the obstacle boundary point filter; Task allocation and exploration module: used to calculate the benefits of each agent after reaching the remaining boundary points in the second boundary point set, process the benefits using a discount strategy, and then add a hysteresis gain to obtain the total benefit of each agent. The Euclidean distance from the agent to the boundary point is used as the cost, and the total benefit of each agent reaching each boundary point is subtracted from the total benefit to obtain the total benefit of each agent reaching each boundary point. The boundary point corresponding to the maximum total benefit of the agent is allocated to the agent. After the allocation is completed, autonomous collaborative exploration of the unknown environment is carried out.

8. A multi-agent autonomous collaborative exploration system for unknown environments, characterized by: including processors and storage media; The storage medium is used to store instructions; The processor is configured to operate according to the instructions to execute the steps of the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Path following method and system, electronic equipment and storage medium

    CN110362070A

  • Multi-robot autonomous exploration method and system based on improved rapid exploration random tree

    CN115248592A