A rule-driven local cooperation method for multiple mobile robots
By initializing a local cost map and designing dynamic priority rules in a multi-mobile robot system, the safety hazards of dynamic obstacles to multi-robot collaboration are resolved, and the system's computational speed and adaptability are improved.
Patent Information
- Application Number
- CN202310306545.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-27
- Publication Date
- 2026-03-03
- Estimated Expiration
- 2043-03-27
AI Technical Summary
Existing distributed multi-robot collaboration methods fail to effectively consider dynamic obstacles in the working environment, posing safety risks.
A rule-driven local collaboration method for multiple mobile robots is adopted. By initializing a local cost map, identifying and handling dynamic obstacles, designing dynamic priority rules and local obstacle avoidance paths, safe collaboration between robots can be achieved.
It improves the computational speed and adaptability of multi-robot systems in complex environments, reduces the safety risks of dynamic obstacles to collaboration, and achieves reliable local collaboration.
Smart Images

Figure CN116449827B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of multi-machine collaboration technology, and in particular to a rule-driven method for local collaboration among multiple mobile robots. Background Technology
[0002] While single robots offer advantages in handling simple tasks due to their ease of control and implementation, as problem complexity increases, the internal functional coupling of a single robot intensifies, and lags in response time both within and outside the system become more difficult to maintain and expand. For large-scale, complex applications, multi-robot technology is often necessary. This is because multi-robot systems, in addition to possessing the perception, communication, learning, reasoning, and autonomous decision-making capabilities of a single robot, also exhibit organizational collaboration and distributed management. They offer strong fault tolerance and robustness. Furthermore, considering that multi-robot systems allow for heterogeneity among individual robots within their interface specifications, they possess exceptional expressive and abstract capabilities and scalability for real-world tasks, enabling more efficient implementation of complex tasks that are difficult or impossible for a single robot to complete.
[0003] Team collaboration is one of the main research contents and fundamental technologies of multi-robot control. Mainstream team collaboration strategies are divided into centralized and distributed approaches. Centralized collaboration designates a central control center to manage system operation, offering advantages such as simple deployment and ease of maintenance. However, its drawbacks include limitations imposed by the scale of the problem and the complexity of the task, and the collapse of the central control center leading to the collapse of the entire business process. Distributed collaboration, centered on decentralization, relies on information exchange among robots to jointly decide the optimal collaborative operation mode. In the field of multi-robot control, distributed collaboration can effectively reduce computational complexity and alleviate problems such as network bandwidth loss and untimely response of the control system caused by computational latency, making it the mainstream solution for multi-robot team collaboration. However, existing distributed collaboration only considers the relationships between robots and neglects the impact of dynamic obstacles that may exist in the working environment, posing safety risks. Summary of the Invention
[0004] The purpose of this invention is to overcome the shortcomings of the existing technology and provide a rule-driven local collaboration method for multiple mobile robots. This invention is reliable, easy to implement, and has strong dynamic adaptability to complex environments, thus alleviating the safety hazards of dynamic obstacles to multi-robot collaboration.
[0005] The objective of this invention can be achieved through the following technical solutions:
[0006] This invention provides a rule-driven method for local cooperation among multiple mobile robots, comprising the following steps:
[0007] S1: Based on the workspace where the multiple mobile robots are located, initialize a square window for each mobile robot and build a local cost map within the square window;
[0008] S2: For each mobile robot, iterate through and determine whether there are dynamic obstacles on each grid in the local cost map corresponding to the mobile robot. If yes, execute S3; otherwise, execute S6.
[0009] S3: Determine whether the dynamic obstacle in the current grid is another robot in the current mobile robot's workspace. If yes, execute S4; otherwise, execute S5.
[0010] S4: Determine if the priority of the current mobile robot is lower than that of the mobile robot in the current grid. If so, the current mobile robot avoids the mobile robot in the current grid and generates a local planning path.
[0011] S5: Determine whether there are obstacle grids and / or predicted grids within the square window of the current mobile robot, determine the collision type between the current mobile robot and the dynamic obstacles of the obstacle grids and / or predicted grids, and determine the obstacle avoidance path and planned path of the current mobile robot based on the collision type.
[0012] S6: Repeat S2 to S5 until every cell in the local cost map has been traversed;
[0013] S7: Return the planned path from S4 or S5 as the current robot's collaborative path.
[0014] Preferably, in step S2, a fatal obstacle grid cost is set. lethal By determining whether the grid cost of a grid and the grid cost of a fatal obstacle satisfy the following relationship:
[0015] grid.cost≥λ·cost lethal and
[0016] Then determine whether there is a dynamic obstacle on the grid; if so, a dynamic obstacle exists.
[0017] In the formula, grid.cost is the grid cost of the grid, λ is a coefficient that measures the cost level, map.obstacles is the set of static obstacles in the local cost map, and grid is the grid.
[0018] Preferably, in step S4, the priority calculation formula is as follows:
[0019]
[0020] In the formula, α1 represents the average priority of the task assigned to the robot; len(path) represents the path taken by the robot to complete the task; α1 and α2 are normalized weight coefficients.
[0021] Preferably, in step S5, the obstacle grid is the grid containing all dynamic obstacles detected within the current robot's square window, and the predicted grid is determined according to the following rules:
[0022] (1) When a dynamic obstacle is temporarily stopped or running on the global path, the obstacle grid is converted into a prediction grid.
[0023] (2) If a dynamic obstacle is not on the global path, but its velocity vector direction intersects the global path travel direction, then the intersection grid is the prediction grid.
[0024] Preferably, the prediction raster is an array data structure in the program, containing 7 fields: raster coordinates (x, y), estimated time t for obstacle entry into the prediction raster, and so on. obs,in The estimated time t for the obstacle to leave the prediction grid obs,out The estimated collision direction (v) of the obstacle entering the prediction grid. obs,x ,v obs,y Obstacle Priority R p The obstacle grid only contains two fields: grid coordinates (x, y).
[0025] Preferably, the process of determining the obstacle avoidance path and path planning for the current mobile robot is as follows:
[0026] If there is no predicted grid within the square window of the current mobile robot, the current robot will maintain its original global path and will not need to avoid obstacles.
[0027] If a predicted grid exists within the square window of the current mobile robot and it is a side collision, then the current robot will wait in place.
[0028] If a predicted grid exists within the current mobile robot's square window and it is a frontal collision, the current robot will treat all obstacle grids within the square window and the predicted grid as static obstacles and perform local path planning.
[0029] If there is a predicted grid within the current mobile robot's square window and it is a head-on collision, and the robot's local path planning fails, then it will backtrack to the previous global path point.
[0030] If a high-speed dynamic obstacle appears near the mobile robot, preventing the robot from calculating an obstacle avoidance route within the effective time, emergency braking will be applied.
[0031] Preferably, the in-situ waiting time t p for:
[0032] t p =t obs,out -t agent,in +t ε
[0033] In the formula, t agent,in t represents the time it takes for the robot to enter the predicted grid, calculated based on the robot's speed. ε The fault tolerance time is defined as the time it takes for a robot to traverse a grid.
[0034] Preferably, taking the current robot's direction of travel as the positive direction, within the dynamic window, the interval θ∈[-φ / 2,φ / 2]∪[π-φ / 2,π+φ / 2] belongs to the frontal collision zone, and the rest belongs to the side collision zone, satisfying β=π-φ and β>φ;
[0035] In the formula, φ and β are both collision thresholds, and θ is the angle between the current mobile robot and the dynamic obstacle in the grid.
[0036] Preferably, the expression describing the calculation of the costmap is as follows:
[0037] cost = exp(-αd) × 254
[0038] In the formula, α is the expansion coefficient, and d is the difference between the shortest distance from the robot's geometric center to the obstacle and the robot's inscribed radius.
[0039] Preferably, in step S3, the current grid position is sent to the control center, which then determines and feeds back to the current mobile robot whether the dynamic obstacle in the current grid is another robot in the current mobile robot's workspace.
[0040] Compared with the prior art, the present invention has the following beneficial effects:
[0041] (1) The rule-driven local collaboration method for multiple mobile robots provided by the present invention adopts a two-layer collaboration rule. The first layer is a local obstacle avoidance layer, which considers the impact of dynamic obstacles within a certain range on the collaborative execution of tasks by multiple robots. The second layer is a local collaboration layer, which designs dynamic priority rules to enable low-priority robots to avoid high-priority robots and achieve dynamic collaboration.
[0042] (2) The method of the present invention is reliable and easy to implement, and improves the calculation speed of multi-robot collaboration by pre-setting collaboration rules.
[0043] (3) The present invention adopts a distributed collaboration strategy, which makes system integration and expansion not limited by the scale of the problem and the complexity of the task, and is more adaptable in complex environments of multi-robot collaborative applications. Attached Figure Description
[0044] Figure 1 The flowchart of an algorithm for a rule-driven local cooperation method for multiple mobile robots provided in this embodiment is shown.
[0045] Figure 2To achieve Figure 1 The algorithm pseudocode provided in the illustrated embodiment.
[0046] Figure 3 yes Figure 1 The embodiments shown are schematic diagrams of the collision area division, (a) is a schematic diagram of the collision area division, (b) is an example diagram of frontal collision, and (c) is an example diagram of side collision.
[0047] Figure 4 yes Figure 1 The illustrated embodiment is a schematic diagram of the collaboration in Embodiment 1.
[0048] Figure 5 yes Figure 1 The illustrated embodiment is a schematic diagram of the collaboration process in Embodiment 1.
[0049] Figure 6 yes Figure 1 The illustrated embodiment is a schematic diagram of the end of collaboration in Embodiment 1. Detailed Implementation
[0050] The present invention will now be described in detail with reference to the accompanying drawings and specific embodiments. These embodiments are based on the technical solution of the present invention and provide detailed implementation methods and specific operating procedures. However, the scope of protection of the present invention is not limited to the following embodiments.
[0051] This embodiment provides a rule-driven method for local cooperation among multiple mobile robots, including the following steps:
[0052] S1: Based on the workspace of the multiple mobile robots, initialize a square window for each mobile robot and create a local cost map within this square window. Initialize the square window for each mobile robot with a radius r = 2m and an obstacle coefficient γ = 0.65; set the cost of fatal obstacle grids. lethal =254, iterator iter=1, collision threshold φ=15°, β=165°.
[0053] The expression describing the calculation of the costmap is as follows:
[0054] cost = exp(-αd) × 254
[0055] In the formula, α is the expansion coefficient, and d is the difference between the shortest distance from the robot's geometric center to the obstacle and the robot's inscribed radius, which characterizes the risk of collision to the robot.
[0056] S2: For each mobile robot, determine whether there are dynamic obstacles on each grid in the local cost map corresponding to the mobile robot. If yes, execute S3; otherwise, execute S6.
[0057] As an optional implementation, a cost is set for the fatal obstacle grid. lethal By determining whether the grid cost of a grid and the grid cost of a fatal obstacle satisfy the following relationship:
[0058] grid.cost≥λ·cost lethal and
[0059] This allows us to determine whether there are dynamic obstacles on the grid.
[0060] In the formula, grid.cost is the grid cost of the grid, λ is a coefficient that measures the cost level, map.obstacles is the set of static obstacles in the local cost map, and grid is the grid.
[0061] If the above relationship is satisfied, it means that the grid is affecting the normal operation of the robot and there is a dynamic obstacle.
[0062] S3: Determine whether the dynamic obstacle in the grid is another robot in the current mobile robot's workspace. If yes, execute S4; otherwise, execute S5.
[0063] By sending the current grid position to the control center, the control center determines and provides feedback to the current mobile robot whether the dynamic obstacle in the current grid is another robot in the current mobile robot's workspace.
[0064] S4: Calculate the obstacle avoidance path according to the second-layer local cooperation rules, and determine whether the priority of the current mobile robot is lower than that of the mobile robot in the current grid. If so, the current mobile robot avoids the mobile robot in the current grid.
[0065] The formula for calculating priority is as follows:
[0066]
[0067] In the formula, Here, α1 represents the average priority of the tasks assigned to the robot; len(path) represents the path taken by the robot to complete the tasks; and α1 and α2 are normalized weighting coefficients. Generally, the higher the task priority assigned to a robot by the system and the shorter the path taken by the robot to complete all tasks, the higher its own priority. In particular, since dynamic obstacles cannot be controlled or scheduled, all robots should prioritize avoiding conflicts with them; therefore, dynamic obstacles have the highest priority and are set to 0.
[0068] S5: Calculate the obstacle avoidance path according to the first-level local obstacle avoidance rules, determine whether there are obstacle grids and / or predicted grids in the square window of the current mobile robot, determine the collision type between the current mobile robot and the dynamic obstacles of the obstacle grids and / or predicted grids, and determine the obstacle avoidance path and path planning of the current mobile robot based on the collision type.
[0069] As an optional implementation, the obstacle grid is the grid containing all dynamic obstacles detected within the robot's current square window, and the prediction grid is determined according to the following rules:
[0070] (1) When a dynamic obstacle is temporarily stopped or running on the global path, the obstacle grid is converted into a prediction grid.
[0071] (2) If a dynamic obstacle is not on the global path, but its velocity vector direction intersects the global path travel direction, then the intersection grid is the prediction grid.
[0072] In the program, the prediction raster is an array data structure containing 7 fields: raster coordinates (x, y), estimated time t for obstacles to enter the prediction raster, and so on. obs,in The estimated time t for the obstacle to leave the prediction grid obs,out The estimated collision direction (v) of the obstacle entering the prediction grid. obs,x ,v obs,y Obstacle Priority R p The obstacle grid only contains two fields: grid coordinates (x, y).
[0073] The process of determining the obstacle avoidance path and path planning for the current mobile robot is as follows:
[0074] Taking the current robot's direction of travel as the positive direction, within the dynamic window, the interval θ∈[-φ / 2,φ / 2]∪[π-φ / 2,π+φ / 2] belongs to the frontal collision zone, and the rest belongs to the side collision zone, satisfying β=π-φ and β>φ, where φ and β are both collision thresholds, and θ is the angle between the current mobile robot and the dynamic obstacle in the grid.
[0075] Generally, frontal collisions are more avoidable and more dangerous than side collisions. Figure 3 The diagram shows the division of the collision area in the local cooperation, as well as examples of frontal and side collisions between the robot and dynamic obstacles.
[0076] 1) If there is no predicted grid within the square window of the current mobile robot, the current robot will maintain its original global path and will not need to avoid obstacles.
[0077] 2) If there is a predicted grid within the square window of the current mobile robot and it is a side collision, then the current robot should wait in place.
[0078] Waiting time t p for:
[0079] t p =t obs,out -t agent,in +t ε
[0080] In the formula, t agent,in t represents the time it takes for the robot to enter the predicted grid, calculated based on the robot's speed. ε The fault tolerance time can be defined as the time it takes for the robot to traverse a grid. In this embodiment, G represents the raster granularity, v a This represents the robot's current speed.
[0081] 3) If a predicted grid exists within the current mobile robot's square window and it's a frontal collision, the robot treats all obstacle grids within the square window, along with the predicted grid, as static obstacles and performs local path planning. Local path planning is performed using existing local path planning algorithms, including but not limited to the DWA algorithm.
[0082] 4) If there is a predicted grid in the current mobile robot's square window and it is a frontal collision, and the robot's local path planning fails, then backtrack to the previous global path point.
[0083] 5) If a high-speed dynamic obstacle appears near the mobile robot, preventing the robot from calculating an obstacle avoidance route within the effective time, emergency braking will be applied to reduce accident losses.
[0084] S6: Repeat S2 to S5 until every grid cell in the local cost map has been traversed.
[0085] S7: Return the planned path from S4 or S5 as the current robot's collaborative path.
[0086] Example 1
[0087] To verify the cooperativeness and dynamic adaptability of the rule-driven local cooperation method for multiple mobile robots provided by this invention, a 20m×20m static map was prepared, several static and dynamic obstacles were designed, and several robots were deployed for a three-dimensional simulation experiment.
[0088] like Figure 4 As shown, robots A and B proceed along their planned paths until robot B is detected in robot A's scrolling window. Since robot A has priority over robot B, it only needs to maintain its original path. Correspondingly, robot B needs to avoid obstacles from robot A, which is determined to be a side collision, and thus it waits in place. Figure 5 As shown. Figure 6As shown, after the conflict is resolved, robots A and B continue to travel along the original global path.
[0089] The preferred embodiments of the present invention have been described in detail above. It should be understood that those skilled in the art can make numerous modifications and variations based on the concept of the present invention without creative effort. Therefore, all technical solutions that can be obtained by those skilled in the art based on the concept of the present invention through logical analysis, reasoning, or limited experimentation on the basis of existing technology should be within the scope of protection defined by the claims.
Claims
1. A rule-driven local cooperation method for multiple mobile robots, characterized in that, Includes the following steps: S1: Based on the workspace where the multiple mobile robots are located, initialize a square window for each mobile robot and build a local cost map within the square window; S2: For each mobile robot, iterate through and determine whether there are dynamic obstacles on each grid in the local cost map corresponding to the mobile robot. If yes, execute S3; otherwise, execute S6. S3: Determine whether the dynamic obstacle in the current grid is another robot in the current mobile robot's workspace. If yes, execute S4; otherwise, execute S5. S4: Determine if the priority of the current mobile robot is lower than that of the mobile robot in the current grid. If so, the current mobile robot avoids the mobile robot in the current grid and generates a local planning path. S5: Determine whether there are obstacle grids and / or predicted grids within the square window of the current mobile robot, determine the collision type between the current mobile robot and the dynamic obstacles of the obstacle grids and / or predicted grids, and determine the obstacle avoidance path and planned path of the current mobile robot based on the collision type. S6: Repeat S2~S5 until every cell in the local cost map has been traversed; S7: Return the planned path from S4 or S5 as the current robot's collaborative path; In step S5, the obstacle grid is the grid containing all dynamic obstacles detected within the current robot's square window. The predicted grid is determined according to the following rules: (1) When a dynamic obstacle is temporarily stopped or running on the global path, the obstacle grid is converted into a prediction grid; (2) If a dynamic obstacle is not on the global path, but its velocity vector direction intersects the global path travel direction, then the intersection grid is the prediction grid. In the program, the prediction raster is an array data structure containing seven fields: raster coordinates. Estimated time for obstacle entry into the prediction grid Estimated time for obstacle to leave the prediction grid Estimated collision direction for obstacle entry into the prediction grid Obstacle Priority The obstacle grid only contains grid coordinates. Two fields.
2. The rule-driven local cooperation method for multiple mobile robots according to claim 1, characterized in that, In S2, a fatal obstacle grid cost is set. By determining whether the grid cost of a grid and the grid cost of a fatal obstacle satisfy the following relationship: Then determine whether there is a dynamic obstacle on the grid; if so, a dynamic obstacle exists. In the formula, For the raster cost, A coefficient used to measure the level of cost. It is a set of static obstacles in the local cost map. For grids.
3. The rule-driven local cooperation method for multiple mobile robots according to claim 1, characterized in that, In step S4, the priority calculation formula is as follows: In the formula, The average priority to which the robot is assigned to tasks; The path taken by the robot to complete the task; , These are the normalized weighting coefficients.
4. The rule-driven local cooperation method for multiple mobile robots according to claim 1, characterized in that, The process of determining the obstacle avoidance path and path planning for the current mobile robot is as follows: If there is no predicted grid within the square window of the current mobile robot, the current robot will maintain its original global path and will not need to avoid obstacles. If a predicted grid exists within the square window of the current mobile robot and it is a side collision, then the current robot will wait in place. If a predicted grid exists within the current mobile robot's square window and it is a frontal collision, the current robot will treat all obstacle grids within the square window and the predicted grid as static obstacles and perform local path planning. If there is a predicted grid within the current mobile robot's square window and it is a head-on collision, and the robot's local path planning fails, then it will backtrack to the previous global path point. If a high-speed dynamic obstacle appears near the mobile robot, preventing the robot from calculating an obstacle avoidance route within the effective time, emergency braking will be applied.
5. A rule-driven local cooperation method for multiple mobile robots according to claim 4, characterized in that, The waiting time in place for: In the formula, The time for the robot to enter the predicted grid, calculated based on the robot's speed; The fault tolerance time is defined as the time it takes for a robot to traverse a grid.
6. The rule-driven local cooperation method for multiple mobile robots according to claim 4, characterized in that, Taking the current direction of robot movement as the positive direction, within the dynamic window, The section within the frontal collision zone and the rest within the side collision zone satisfy the condition. ; In the formula, and All are collision thresholds. The angle between the current mobile robot and the dynamic obstacle within the grid.
7. A rule-driven local cooperation method for multiple mobile robots according to claim 1, characterized in that, describe costmap The calculation expression is as follows: : In the formula, The coefficient of thermal expansion is 1 / 3. It is the difference between the shortest distance from the robot's geometric center to the obstacle and the robot's inscribed radius.
8. A rule-driven local cooperation method for multiple mobile robots according to claim 1, characterized in that, In step S3, the current grid position is sent to the control center, which then determines and feeds back to the current mobile robot whether the dynamic obstacle in the current grid is another robot in the current mobile robot's workspace.
Citation Information
Patent Citations
Multi-target searching-based two-colony multidirectional route planning method for robot
CN106323293A
Route planning method and device
CN109540146A