CN115507858A - Single-robot and multi-robot driving path navigation method - Google Patents
Single-robot and multi-robot driving path navigation method Download PDFInfo
- Publication number
- CN115507858A CN115507858A CN202211478448.5A CN202211478448A CN115507858A CN 115507858 A CN115507858 A CN 115507858A CN 202211478448 A CN202211478448 A CN 202211478448A CN 115507858 A CN115507858 A CN 115507858A
- Authority
- CN
- China
- Prior art keywords
- node
- robot
- time
- module
- subsequent
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
The invention discloses a single robot and a multi-robot running path navigation method, which belong to the technical field of navigation and are used for path navigation of multiple robotsPWill bePLeading the data into a module to be processed, and calling and fusing a heuristic method to detect a path setPWhether a conflict exists in (1); if no conflict exists, the path set is outputPAnd finishing, if the conflict exists, calling a single robot driving path navigation method to formAAnd will beALeading the data into a module to be processed, and repeatedly executing the dataPAnd (4) importing the data into a module to be processed until no conflict exists.
Description
Technical Field
The invention discloses a single-robot and multi-robot driving path navigation method, and belongs to the technical field of navigation.
Background
With the continuous development of logistics technology, the intelligent technology represented by artificial intelligence and robots is deeply integrated with a warehouse logistics system, a warehouse system combined with an intelligent sorting robot is developed, and the key for improving the navigation capability of a multi-robot system in the warehouse logistics system is to improve the logistics efficiency. In multi-robot system navigation, the algorithm of the multi-robot path planning problem mostly assumes that the motions of the robots have uniform duration, and the time is dispersed into time steps, and each time step of the robots occupies one node and moves to an adjacent node in a unit time step. However, in a real scene, the motion of the robot is continuous and uneven, and meanwhile, the influences of the geometric dimension, the motion direction and the like of the robot need to be considered. Therefore, the multi-robot path planning problem algorithm under discrete time has certain limitation in the practical environment.
The conventional multi-robot path planning related algorithm described above strongly constrains the graph and the robot, including but not limited to the following points: the time discretization is carried out as unit step length; the time overhead spent for each move is one unit step; the robot just occupies an independent position in each time step, and the positions correspond to nodes on the graph; robot edgex、yThe coordinate axis moves in four directions, and focusing and multidirectional movement are not considered; each robot moves at a constant speed without considering the geometric size, and the influence of inertia effect is ignored. The above conditions define that the motion of multiple robots is synchronous, the cost of moving to adjacent nodes is a unit time step, and the multi-robot path planning problem under the strong constraint is defined as a unit cost multi-robot path planning problem. However, in the actual movement of the robots in the real warehousing environment, because the movement of each robot is continuous and non-uniform, the movement of each robot is difficult to achieve complete synchronization, and the movement duration is the sameAnd the time expenditure and the waiting cost of the multi-robot path planning problem are increased due to the constraints that the waiting time can only be multiples of the time step length and the like. In addition, the problem of unit overhead multi-robot path planning limits that only node conflicts and edge conflicts exist among multiple robots, and node occupation conflicts caused by the size of the robots are not fully considered.
Disclosure of Invention
The invention provides a single-robot and multi-robot driving path navigation method, which solves the problem that navigation paths of a multi-robot system in the prior art are easy to conflict.
The single robot driving path navigation method comprises the following steps:
s1, inputting a grid map G, a starting node S and a final node into a processing system of the robotRepresenting a subsequent node;
s2, the processing system comprises a module to be processed, a processed module and a subsequent module, wherein the processed node is led into the processed module, and the unprocessed node is led into the unprocessed module;
s3, importing the starting node into a module to be processed, and initializing an unprocessed module;
s4, if the nodes exist in the module to be processed, executing S5, if the nodes do not exist, outputting the robot path, and then ending;
s5, selecting the minimum node in the total cost of the initial node from the module to be processed as the current node, outputting the robot path if the current node reaches the target state of the initial node, and ending the robot path, otherwise, putting the current node into the processed module, and calling a state expansion method to generate a subsequent module;
s6, judging whether the subsequent nodes in the subsequent module are expanded or not, and if the subsequent nodes are expanded, setting the total cost and the actual cost of the subsequent nodes as the total cost and the actual cost of the subsequent nodesThen executing S7, if the expansion is not carried out, directly executing S7;
s7, judging whether the actual cost of the subsequent node is larger than the actual cost of the initial node and the actual cost from S to SIf yes, the actual cost of the subsequent node is equal to the actual cost of the initial node and the sum of the costs from s to sThen executing S8, if not, directly executing S8;
s8, updating the time variable of the subsequent node, enabling the total cost of the subsequent node to be equal to the sum of the actual cost of the subsequent node and the estimated cost of the subsequent node, and then importing the subsequent node into the module to be processed;
and S9, repeatedly executing the steps from S4 to S8 until the module to be processed has no node.
The state expansion method comprises the following steps:
z1, inputting a starting node, initializing a subsequent module, and setting a function M(s) to return to the action executed by the starting node;
z2, for each action in M(s)mLet s perform action m with a starting safety interval time equal to the sum of the time spent performing action m and the time of s, and let s perform action m with an ending safety interval time equal to the sum of the time spent performing action m and the interval ending time;
z3, outputting a subsequent module and ending if each configuration parameter in the configuration of the state s after the action m is executed meets the judgment condition; if the judgment condition is not satisfied, lettEqual to safety intervaliInternal earliest arrival to post-execution action m stateAnd then determines the time of the configurationtIf yes, outputting the subsequent module and ending, if not, making the subsequent state equal toiAndtand configuring the state, and importing the subsequent state into the subsequent module.
The judgment conditions in Z3 include:iis greater than the end safety interval time when state s performs action m, oriIs less than the starting safety interval time when state s performs action m.
The multi-robot driving path navigation method comprises the following steps:
b1, inputting a grid map G, an initial node s and a final node t into a path processing system of the robot;
b2, planning an optimal path for each robot by using a single robot driving path navigation method, and calculating path cost;
b3, merging the optimal paths of the robots into a path setPWill bePLeading the path to a module to be processed, and calling and fusing a heuristic method to detect a path setPWhether a conflict exists in (1);
b4, if no conflict exists, outputting the path setPEnding, if conflict exists, executing B5;
b5, defining quadrupletsTo show the robotr i In a time period oft i Execute actions at the timea i Will interact with the robotr j In a time period oft j Execute actions at the same timea j The sound-making conflict is generated,t i 、t j are all time periods of time,r i is a new path ofP i A plurality ofP i Composing a set of new pathsAAnd a single robot driving path navigation method is called to formAAnd will beAAnd (4) importing the data into a module to be processed, and repeatedly executing B3 until no conflict exists.
Compared with the prior art, the invention has the beneficial effects that: the CCBS algorithm is optimal, complete and efficient. Under the condition that the number of the robots is the same, compared with a CBS algorithm, the operation speed of the CCBS is greatly improved, and when the number of the robots is 30, the calculation speed of the CCBS is only 99% of that of the CBS. The high-level and low-level search extension of the CCBS is less, the improved SIPP algorithm as a low-level search algorithm has smaller search space by a method of calculating a position-time interval pair to replace an original position-time step pair, and the algorithm operation efficiency is improved; the improved ECCBS and hybrid-ECCBS algorithm improves the operation efficiency, and meanwhile, the conflict detection and solution performance is better, and the operation time is relatively less. The hybrid-ECCBS can offset the accumulated overhead loss caused by the suboptimal boundary, and the solution time is still acceptable when the number of robots reaches 70 in the simulation environment.
Drawings
FIG. 1 is a graph comparing the MAPF problem with the MAPFR problem;
FIG. 3 is an example of collision detection for robots of different geometries;
fig. 4 is a robot 1 motion timeline;
FIG. 5 is an example of a high level constraint tree resolving a conflict;
FIG. 6 is a CCBS high level restriction tree extension;
fig. 7 is a schematic view of the principle of focus search.
Detailed Description
The following description will further illustrate embodiments of the present invention with reference to specific examples:
the single robot driving path navigation method comprises the following steps:
s1, inputting a grid map G, a starting node S and a final node into a processing system of the robotRepresenting a subsequent node;
s2, the processing system comprises a module to be processed, a processed module and a subsequent module, wherein the processed node is led into the processed module, and the unprocessed node is led into the unprocessed module;
s3, importing the starting node into a module to be processed, and initializing an unprocessed module;
s4, if the nodes exist in the module to be processed, executing S5, if the nodes do not exist, outputting the robot path, and then ending;
s5, selecting the minimum node in the total cost of the initial node from the module to be processed as a current node, outputting a robot path if the current node reaches the target state of the initial node, and ending, otherwise, putting the current node into the processed module, and calling a state expansion method to generate a subsequent module;
s6, judging whether the subsequent nodes in the subsequent module are expanded or not, and if the subsequent nodes are expanded, setting the total cost and the actual cost of the subsequent nodes as the total cost and the actual cost of the subsequent nodesThen executing S7, if the expansion is not carried out, directly executing S7;
s7, judging whether the actual cost of the subsequent node is larger than the actual cost of the initial node and the actual cost from S to SIf yes, the actual cost of the subsequent node is equal to the actual cost of the initial node and the sum of the costs from s to sThen executing S8, if not, directly executing S8;
s8, updating the time variable of the subsequent node, enabling the total cost of the subsequent node to be equal to the sum of the actual cost of the subsequent node and the estimated cost of the subsequent node, and then importing the subsequent node into the module to be processed;
and S9, repeatedly executing the steps from S4 to S8 until the module to be processed does not have a node.
The state expansion method comprises the following steps:
z1, inputting a starting node, initializing a subsequent module, and setting a function M(s) to return to the action executed by the starting node;
z2, for each action in M(s)mLet s equal the time it takes to perform action m to sThe sum of time, the end safety interval time when s executes the action m is equal to the sum of the time consumed by executing the action m and the interval end time;
z3, outputting a subsequent module and ending if each configuration parameter in the configuration of the state s after the action m is executed meets the judgment condition; if the judgment condition is not satisfied, lettEqual to safety intervaliInternal earliest arrival to post-execution action m stateAnd then determines the time of the configurationtIf yes, outputting the subsequent module and ending, if not, making the subsequent state equal toiAndtand configuring the state, and importing the subsequent state into the subsequent module.
The judgment conditions in Z3 include:iis greater than the ending safety interval time when state s performs action m, oriIs less than the starting safety interval time when state s executes action m.
The navigation method for the driving path of the multiple robots comprises the following steps:
b1, inputting a grid map G, an initial node s and a final node t into a path processing system of the robot;
b2, planning an optimal path for each robot by using a single robot driving path navigation method, and calculating path cost;
b3, merging the optimal paths of the robots into a path setPWill bePLeading the data into a module to be processed, and calling and fusing a heuristic method to detect a path setPWhether a conflict exists in (1);
b4, if no conflict exists, outputting the path setPAnd ending, if the conflict exists, executing B5;
b5, defining quadrupletsTo show the robotr i In a time period oft i Execute actions at the timea i Will interact with the robotr j In a time period oft j Execute actions at the timea j The sound-making conflict is generated,t i 、t j are all time periods of time,r i the new path of (A) isP i A plurality ofP i Composing a set of new pathsAAnd a single robot driving path navigation method is called to formAAnd will beAAnd (4) importing the data into a module to be processed, and repeatedly executing B3 until no conflict exists.
In order to enable the multi-robot path planning algorithm to be better adapted to the real warehousing environment, a non-unit overhead multi-robot path planning problem corresponding to the multi-robot path planning algorithm is provided. Undirected connected graph of non-unit overhead multi-robot path planning problemOn the basis of the weight, add the weight to form an undirected weighted graphIn which each node is definedvNon-uniform positive value weight ofThe weight of the edge reflects the duration of the robot motion. Representing a non-unit overhead multi-robot path planning problem MAPF closer to a real motion scene as MAPF R MAPF and MAPF as in FIG. 1 R Comparison of (4). For the four-way connectivity map, MAPF R The robots under the problem can freely start and stop, do not need to wait for the next time step to start moving, and can avoid collision only by keeping each robot in a safe interval, so that the accumulated overhead of the system is reduced.
For a multi-degree-of-freedom motion model, MAPF, of a mobile robot in an intelligent machine picking system R Is not limited to a four-way communication diagram, but is expanded toA neighborhood grid multidirectional connectivity graph, thisThe computation of the time-cost is no longer based on the manhattan distance but on the euclidean distance. For example, for the case of d =3, the robot may be allowed to move diagonally along the four hypotenuses in the eight-way connectivity graph, with the overhead of diagonal movement being along the coordinate axisIn comparison of four-direction movement and eight-direction movement of multiple robots at the same initial target position, the degree of freedom of the robot movement is higher, but the collision detection model should be changed accordingly. A schematic diagram in the case of d =2,3,4,5, etc. is shown in fig. 2. MAPF, a variant of the multi-robot path planning problem MAPF under continuous-time constraints R More storage environment practical factors are considered.
For solving the non-unit overhead multi-robot path planning problem MAPF R The invention provides an improved CCBS double-layer search algorithm based on continuous time constraint. The lower-layer algorithm part is an improved safe time interval SIPP algorithm, so that a single-robot continuous time path planning algorithm is introduced firstly.
First, the present invention proposes a continuous time Path Planning algorithm for a single robot, i.e. a Safe time Interval (SIPP) algorithm.
The Safe Time interval (Safe Time Internal) means that the robot can stay at the nodevThe longest period of time during which there is no conflict with other robots, but during which there is a conflict one time step before and one time step after the period. In contrast, a collision Time interval (conflicttime Internal) represents a continuous Time period, in which Time steps Conflict with the dynamic obstacle, but the former Time step and the latter Time step are safe Time intervals. Defining a State Space (State Space) as a Set of all possible configurations of the system (Set of Configuration), replacing a plurality of states in the past (expressed as Configuration and Time step pair State = (Configuration, time interval)) with a single State (expressed as Configuration and Time interval pair State = (Configuration)) on the State Space descriptionTime step)), where Configuration is an independent variable independent of time, defined as a set of robot posesAnd contains multidimensional information such as position coordinates, orientation angles, and joint angles.
The safe time interval algorithm SIPP is improved on the basis of the A-algorithm, and the main improvement is that an extended state node is generated and a time variable is updated for a subsequent node. SIPP algorithm uses evaluation function of A-algorithmIn whichWhich represents the total overhead of the system,representing the actual cost, representing the distance from the initial node to the current location node,in order to estimate the cost, the distance from the current node to the target node is expressed as a heuristic operator. The SIPP algorithm establishes a time axis for each spatial configuration at initialization for predicting the trajectory of dynamic obstacles.
In the SIPP algorithm, the input quantities are a grid map G, a start node s and a final node t. In the algorithm flow, if s is used to represent the current state,indicating its subsequent state, from s toCan be expressed as. First of all, when a user wants to use the apparatus,defining two lists, namely openlist and closed list, storing nodes which are already traversed in the closed list and storing nodes which are not yet traversed in the openlist. Will be in the initial statePut into openlist, initialize closelist to empty set. When the openlist is not an empty set, the following loop is executed: firstly, selecting from openlistThe minimum node is used as currentnode (current node), if currentnode has reached the target state, path is output, otherwise currentnode is put into closelist, and state expansion method is adoptedGenerating a list of subsequent nodes for state s. For each oneIn (1)If not previously expandedThen it willAndare all provided with。
If it is notTo make an order. Then updatedAnd time variable ofAt the same time willInserted into openlist. The above cycle is repeated until openlist is empty.
State expansion methodThe action executed by the function M(s) to return to the state s includes both the wait and move actions. Firstly, a successor state node list is listedSet as the empty set. For each action M in M(s), let config be the configuration of state s after execution of action M, including information such as coordinates, angles, etc. of the robot.For each action's execution time, to assist in confirming which safe time intervals are available in the generated configuration.Andindicating the start and end safety intervals when state s performs action m. For each configuration parameter in configi,Andindicating the corresponding start and end times. If it is notOrThis configuration iteration is skipped, with the start and end times not being within the safe interval. This iteration is also skipped if there is no time within the safe interval at which the configuration config can be reached earliest. If the configuration iteration is not skipped after the two determinations, the method is implementedNamely the nodes of the subsequent state, and the nodes of the subsequent state have the objective function of minimizing the cumulative costTo arrive at the configured time as early as possible. Will be provided withIs added toIn the list. Repeating the iteration action m until the iteration is finished, and returning a successor state node list。
Based on the robot Continuous multi-degree-of-freedom motion model considering the safety interval and the strong constraint of the CBS algorithm under the multi-robot path planning problem, the invention provides a CCBS (Continuous-time Conflict-Based Search) algorithm Based on Continuous time constraint, and can solve the multi-robot path planning problem under Continuous time. As a complete, robust and optimal double-layer search algorithm, the CCBS follows the high-layer constraint tree of the CBS algorithm at the high layer for solving the robot conflict. The low-level algorithm searches for a path satisfying the constraint condition for each robot based on the improved SIPP algorithm. The main differences from CBS are: on the high level search, different conflict detection and conflict resolution models are adopted. Due to the discrete and continuous time differences, CCBS employs a collision detection and collision resolution mechanism that computes time intervals. CBS adds position-time pair as constraint on constraint tree, and CCBS adds action-time pair as constraint; on the low-level search, the improved SIPP algorithm is adopted as the path search algorithm of the single robot.
The CCBS employs different collision detection and collision resolution models in the higher layer search. Under the continuous time constraint, the robot can have any geometric dimension, so the time overhead of each action can be any, the position-time step-based conflict detection model in the CBS is not applicable any more, the actions are adopted in the CCBS to describe conflicts, and quadruples are definedTo show the robotr i In a time period oft i Execute actions at the timea i Will interact with the robotr j In a time period oft j Execute actions at the same timea j The sound-making conflict is generated,t i 、t j are all time periods.
The method adopts a closed-loop accurate detection method based on collective computation to carry out conflict detection, and has the core that the time of possible conflicts in the future of the dynamic barrier is predicted, whether time overlapping exists when a plurality of robots with specific shapes execute actions is detected, and a safe time interval is computed for the possible conflicts among the actions so as to avoid the collisions. The robot model is abstracted into disc processing, the condition that geometric conflict occurs is that the connecting line of the circle centers of the two robots is smaller than the sum of the radiuses of the robots, the time period of the geometric conflict is a conflict time interval, and the safety time interval is the complement of the conflict interval on the total movement time interval. As shown in FIG. 3, 3 robots are providedMove from the initial position to the target position along the respective tracks in case of slight conflict, and have a radius relationAll robots move at uniform speed and the speed isvThe length of the grid side islWhen detecting that there is a possible conflict between the robot 1 and the robots 2 and 3, the condition for ensuring that there is no geometric conflict between the robots isIn the above formula, the first reaction mixture is,the distance from the center of the robot 1 to the center of the robot 2,the same is true. For time interval conflicts, the movement time of the robot 3 isAt time intervalsAccording toThe condition can be calculated by the time when the robot 3 and the robot 1 start to overlap geometricallyAnd end time,Then the conflict time interval isSafe time intervalIs that. In a similar way, a safe time interval of robot 1 can be obtained asSafe time intervals for the robot 2Fig. 4 shows a motion time axis of the robot 1 as an example.
In the aspect of conflict resolution mechanism, the high-level constraint tree is also expanded by adopting the optimal priority search and is selectedopenlistAnd taking the node N with the minimum repeated iteration accumulated cost as a root node of the constraint tree, firstly judging whether the node N is a target node, and if the node N is the target node, terminating iteration. Secondly, a conflict detection mechanism verifies whether a conflict exists in the path planning under the condition that the N is used as the root node, and if the conflict exists, the conflict existsThen N is expanded into two constraint child nodes, respectivelyAndsince each action completion time is arbitrary and continuous and needs to be described by a time interval, adding a constraint to each child node requires calculating a conflict time interval existing between each action, and for a conflict, calculating a time interval of a conflict existing between each actionAct ina i And actionsa j The maximum collision time interval of (d) is expressed as: fromt i Start to perform motiona i Robot (2)r i Will be in timet j Begin to perform an actiona j Robot (2)r j A collision occurs. Left sub-tree of constraint treePresentation robotr i In the time domainInability to perform actions thereina i Similar constraint tree right subtreePresentation robotr j In the time domainInability to perform actions thereina j The time period is calculated by the collision detection model. In conflict time intervalAndthe calculation of (the safe time interval is opposite) needs to consider the kinematics and the geometric dimension of the robot, but only the uniform motion is considered by neglecting the inertia effect of starting and stopping the robot, and the dimensions of the robots are arbitrary and the same. By using multiple time samples, the sampling time interval is a very small time incrementFrom the start time point of the collision time intervalt i Starting to increment until the end of the collision interval, soWherein n is a positive integer. FIG. 5 is an example of the high level constraint tree resolution conflict described above.
As the CCBS conflict detection model needs to calculate the safety time interval considering the volume size of the robot, compared with the situation that the CBS only needs to calculate the conflict position node and the time without considering the volume size, along with the increase of the scale number of the robot, especially for a picking system of an intensive warehouse, the conflict detection occupies a large part of the operation time of an algorithm, and in order to accelerate the conflict detection and simplify a conflict detection mechanism model, only action conflicts with time overlapping and geometric shape overlapping are detected. In addition, the following two heuristic methods are adopted to accelerate the collision detection process.
A history conflict Heuristic method (Past-conflicts Heuristic) is used for tracking and recording each pair of robotsAnd the number of times of conflict occurrence is determined, the robot pairs with the larger number of times of conflict occurrence in the past are considered preferentially when the conflict is detected, the search is stopped immediately when the conflict search is detected, and the conflict is added into the constraint tree to generate child nodes for conflict resolution. The principle adopted by the robot is that the robots with a large number of conflicts in the past may conflict with each other in the future, so that the robot takes priority in detection. Although the heuristic can accelerate the collision detection, there is a limitation that what type of collision is preferentially solved when the constraint tree nodes are expanded has a great influence on the size and the overall running time of the constraint tree, so that the collision type is considered to be classified. Conflicts are divided here into basic conflicts (Cardinal conflicts) and Semi-basic conflicts (Semi-Cardinal conflicts). Basic conflict means that any constraint added when resolving a conflict raises the system cumulative Cost (Sum of Cost, SOC), while semi-basic conflict means that one constraint added when resolving a conflict raises the SOC, but the other constraint added does not change the SOC, i.e. there is a sub-tree in the constraint tree to increase the system SOC. There is also a Non-fundamental conflict (Non-fundamental conflict) associated with it, meaning that any constraint added does not change the SOC. The basic conflict is solved firstly, and then the semi-basic conflict is solved to accelerate the algorithm speed, because the basic conflict is the main conflict type which causes the system SOC to be improved, and after two sub-constraint trees are addedThere is no more expensive path between the two robots to choose from, and resolving such conflicts first reduces the likelihood of semi-basic conflicts occurring. Although the historical conflict elicitation needs to detect all conflict types for resolution, the method can terminate the search once a conflict is detected, and does not need to wait until all conflict types are detected.
A fusion Heuristic method (Hybrid Heuristic) is used for fusing acceleration of conflict detection of a history conflict Heuristic method and a method for preferentially solving basic conflict acceleration. All conflict types are detected at the beginning and only basic conflicts are selected for resolution, if all the nodes are non-basic conflicts (no basic conflicts or semi-basic conflicts), the heuristic method of selecting historical conflicts for subtrees containing the nodes in all constraint tree nodes is replaced. The fusion heuristic is primarily directed to nodes that contain only non-fundamental conflicts.
For the lower search part of the CCBS, the aforementioned SIPP algorithm is employed. The SIPP only considers the path search of a single robot for avoiding the dynamic obstacle, and for better high-level constraint suitable for the CCBS algorithm, a consistent solution meeting the constraint condition is searched, and the SIPP is required to be limited from executing actions in a conflict time interval. For robotr i Is restricted byThe classified discussion is made for the case where the action is waiting and moving.
The first kind isa i When the movement action is executed. Let initial and target positions be vANDIf it is an actiona i For a robotr i Step of timeWhen the initial position v is reached, the action is removed and a new action is addedDenotes waiting at v until the momentThen move to. The constraint is added to avoidIn-process conflict occurs, waiting for conflict intervalAnd after the collision is finished, the mobile terminal moves to avoid the generation of the collision.
The second kind isa i When a wait action is performed. If it is moveda i Is composed ofr i At time intervalsWait at internal node v, then generate a new actionBy disabling the time interval in sectionsr i Waiting for, limiting during, the periodr i Only at time intervalsAndand (4) internally waiting. This constraint is added to prevent conflicts from occurring while node v waits.
In an embodiment, d =3 allows diagonal motion, three disc robot radiiThe side length of the grid is 2m, the grid moves at a constant speed and the speeds are allThe start (filled circle) and target position (dashed circle) are in the figure. After inputting grid map G, initial node list s and target node list T, firstly neglecting conflict calling functionPlanning an optimal path for each robot and calculating the path cost of each robot to obtainr 1 Of (2) a,r 2 Of (2) a,r 3 Of (2) aSet of pathsAnd the total cost for calculating the three paths is 22.828, and the conflict exists at the position EAt this time, the root node is not the target node, two child nodes need to be generated to solve the conflict, and the constraint is added to the left node on the constraint treeRight node adding constraintsCalling the bottom layerCalculate a new path that satisfies the left node constraint, at this pointr 1 It is necessary to wait for 2s at Dr 2 By conflicting nodesE, moving the movable table after the step E,r 1 new path of (2),r 2 Is kept constant,r 3 At this point, there is no conflicting edgeThe vehicle is continuously driven, and the vehicle is driven,the total cost of computation is 24.828, and Openlist is updated with A, howeverr 2 Stay inr 3 The hard magnet generates new conflict at the H position, further branch expansion solution is needed, the condition of adding the right node is considered firstly at the momentr 2 It is necessary to wait 2s at Br 1 The node E passes through the collision node and then moves,r 1 new path of (2),r 2 The path remains unchanged,r 3 At the moment, no protruding edge existsThe vehicle is continuously driven, and the vehicle is driven,the total calculation cost is also 24.828, and when no conflict exists, a consistent solution, namely paths of all robots, is output. The constraint tree corresponding to resolving conflicts is shown in FIG. 6.
Meanwhile, in order to improve the calculation speed and the scale of the CCBS algorithm, the CCBS is subjected to boundary suboptimal expansionAnd (4) performing optimization, namely improving a low-level SIPP search algorithm and a high-level search tree of the CCBS by adopting a focus search method. The ECCBS algorithm with the suboptimal expanded boundary can also improve the calculation scale and the operation speed of the CCBS, and is convenient to compare with the performance of the ECBS algorithm under the same environment variable. In the aspect of low-level algorithm, SIPP is based onImproved algorithm of, therefore, CBSThe focus search of the algorithm is equally applicable.
Focus search may utilize a free-spread cumulative cost functionThe value of (a) widens the selection range of the optimal solution to an interval, thereby shortening the time taken to find the optimal solution. Given configurable sub-optimal factorsSpecifying a search path total cost equal to or less than a boundary valueWhereinIs the total cost of the optimal path. The focus search defines Openlist for storing traversed nodes and Focallist, which is a subset of Openlist and defines two arbitrary functionsAnd,determines which nodes are in the FocallistRepresenting minimum on OpenlistValue of,is a node in Openlist, thenFor all nodes nThe latter minimum value can be expressed asSub-optimum factor for a given boundaryFocallist contains a minimum overheadTo the boundary value As shown in fig. 7,,for selecting which nodes of the Focallist to expand,can be selected asOrOther parameters may be considered depending on the constraints. By usingAndthe focus search for an arbitrary function is represented asAccumulating the cost function in the optimization of the boundary suboptimal extension of CCBSThe nodes used for selecting and storing the Focallist are set with different suboptimal factors to meet the requirementsThe node(s) is stored in the Focallist from the Openlist. Conflict elicitorAn extension node is decided. The high level focus search is also based onThe node stored in the Focallist is selected,the node extended in Focallist is selected.
The method carries out experimental simulation in the warehouse multi-robot environment based on the CCBS algorithm under continuous time, considers the motion direction, the geometric dimension and the motion model under continuous time for being closer to the real scene, and carries out test calculationMethod for solving MAPF R And (4) performing various indexes of path quality and algorithm performance in case of problems. The CCBS algorithm under continuous time is mainly designed according to the following three aspects:
(1) Solving MAPF in structured standard warehouse map by CCBS algorithm R And comparing the performance of each index of the problem path quality and the algorithm performance with the experimental result of the discrete-time CBS algorithm under the same calculation example.
(2) ECCBS improved through boundary suboptimal thought is compared with an ECBS algorithm experimental result of discrete time, and a hybird-ECCBS algorithm after conflict detection is accelerated by fusing a heuristic method R And (4) optimizing each algorithm index on the problem.
(3) Testing MAPF R In the problem ofIn the neighborhood connected graph, the influence of different motion direction d values on path results and various indexes of algorithm performance.
In order to verify the performance of the algorithm of the invention, a multi-robot warehousing environment is adopted for simulation. The simulation map is a 161m × 63m standardized warehouse map, which comprises 5699 goods shelves, each grid node is 1m × 1m in size, and the simulation map is in the shape of a disc and is in the size ofThe reason for setting this particular size is that multiple robots can safely follow the previous robot movement without collision when moving diagonally and furthermore do not geometrically conflict with the robot located in the center of the grid when the cross-diagonal movement occurs, the robot speed being 1m/s.
CBS is a multi-robot path planning algorithm that is widely used. The invention provides an improved CCBS algorithm on the basis of CBS, a conflict detection and conflict solution mechanism for calculating time intervals is adopted in high-level search, and a low-level algorithm is designed on the basis of a safe time interval SIPP algorithm, so that the CCBS can better solve the problem of multi-robot path planning in continuous time and is verified through a simulation experiment; performing boundary suboptimal expansion on CCBSDeveloping optimization to form an improved ECCBS algorithm, introducing a fusion heuristic method to accelerate the formation of a hybrid-ECCBS algorithm, and accelerating the solution of the multi-robot path planning problem in continuous time; provides a multi-degree-of-freedom motion model of a mobile robot and usesThe neighborhood weighted graph ensures that the motion direction of the robot in the multi-robot path planning problem is not limited to four directions any more, thereby improving the motion diversity of the robot; the system accumulated cost can be reduced by properly increasing the value d of the movable direction of the robot, but the operation time of the algorithm is prolonged due to the fact that the value d is too large. In general, the value of d can be set to 2,3 or 4 according to the actual robot operation condition, and if the value of d is set to 5, an acceptable path solution cannot be obtained when the number of robots is too large.
It is to be understood that the above description is not intended to limit the present invention, and the present invention is not limited to the above examples, and those skilled in the art may make modifications, alterations, additions or substitutions within the spirit and scope of the present invention.
Claims (4)
1. The single robot driving path navigation method is characterized by comprising the following steps:
s1, inputting a grid map G, a starting node S and a final node into a processing system of the robotRepresenting a subsequent node;
s2, the processing system comprises a module to be processed, a processed module and a subsequent module, wherein the processed node is led into the processed module, and the unprocessed node is led into the unprocessed module;
s3, importing the starting node into a module to be processed, and initializing an unprocessed module;
s4, if the nodes exist in the module to be processed, executing S5, if the nodes do not exist, outputting the robot path, and then ending;
s5, selecting the minimum node in the total cost of the initial node from the module to be processed as a current node, outputting a robot path if the current node reaches the target state of the initial node, and ending, otherwise, putting the current node into the processed module, and calling a state expansion method to generate a subsequent module;
s6, judging whether the subsequent nodes in the subsequent module are expanded or not, and if the subsequent nodes are expanded, setting the total cost and the actual cost of the subsequent nodes as the total cost and the actual cost of the subsequent nodesThen executing S7, if the expansion is not carried out, directly executing S7;
s7, judging whether the actual cost of the subsequent node is larger than the actual cost of the initial node and the actual cost from S to SIf yes, the actual cost of the subsequent node is equal to the actual cost of the initial node and the sum of the costs from s to sThen executing S8, if not, directly executing S8;
s8, updating the time variable of the subsequent node, enabling the total cost of the subsequent node to be equal to the sum of the actual cost of the subsequent node and the estimated cost of the subsequent node, and then importing the subsequent node to a module to be processed;
and S9, repeatedly executing the steps from S4 to S8 until the module to be processed has no node.
2. The single robot travel path navigation method as set forth in claim 1, wherein the state extension method includes:
z1, inputting a starting node, initializing a subsequent module, and setting a function M(s) to return to the action executed by the starting node;
z2, for each action in M(s)mLet s perform action m with a starting safe interval time equal to the sum of the time spent performing action m and the time of sMaking s an end safety interval time when executing action m equal to the sum of time consumed by executing action m and an interval end time;
z3, outputting a subsequent module and ending if each configuration parameter in the configuration of the state s after the action m is executed meets the judgment condition; if the judgment condition is not satisfied, lettEqual to safety intervaliInternal earliest arrival to post-execution action m stateAnd then determines the time of the configurationtIf yes, outputting the subsequent module and ending, if no, making the subsequent state equal toiAndtand configuring the state, and importing the subsequent state into the subsequent module.
3. The single-robot travel path guidance method according to claim 2, wherein the judgment condition in Z3 includes:iis greater than the end safety interval time when state s performs action m, oriIs less than the starting safety interval time when state s performs action m.
4. A multi-robot travel path navigation method using the single-robot travel path navigation method of any one of claims 1 to 3, comprising:
b1, inputting a grid map G, an initial node s and a final node t into a path processing system of the robot;
b2, planning an optimal path for each robot by using a single robot driving path navigation method, and calculating path cost;
b3, merging the optimal paths of the robots into a path setPWill bePLeading the data into a module to be processed, and calling and fusing a heuristic method to detect a path setPWhether a conflict exists in (1);
b4, if no conflict exists, outputting the path setPAnd ending, if the conflict exists, executing B5;
b5, defining quadrupletsTo show the robotr i In a time period oft i Execute actions at the timea i Will communicate with the robotr j In a time period oft j Execute actions at the timea j The sound-making conflict is generated,t i 、t j are all time periods of time,r i the new path of (A) isP i A plurality ofP i Composing a set of new pathsAAnd a single robot driving path navigation method is called to formAAnd will beAAnd (4) importing the data into a module to be processed, and repeatedly executing B3 until no conflict exists.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211478448.5A CN115507858B (en) | 2022-11-24 | 2022-11-24 | Single-robot and multi-robot driving path navigation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211478448.5A CN115507858B (en) | 2022-11-24 | 2022-11-24 | Single-robot and multi-robot driving path navigation method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115507858A true CN115507858A (en) | 2022-12-23 |
CN115507858B CN115507858B (en) | 2023-03-03 |
Family
ID=84514018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211478448.5A Active CN115507858B (en) | 2022-11-24 | 2022-11-24 | Single-robot and multi-robot driving path navigation method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115507858B (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106931970A (en) * | 2015-12-30 | 2017-07-07 | 北京雷动云合智能技术有限公司 | Robot security's contexture by self air navigation aid in a kind of dynamic environment |
CN109115226A (en) * | 2018-09-01 | 2019-01-01 | 哈尔滨工程大学 | The paths planning method of multirobot conflict avoidance based on jump point search |
CN110275535A (en) * | 2019-06-27 | 2019-09-24 | 大连理工大学 | A kind of multimode vehicle path planning method based on improvement A star algorithm |
CN111238519A (en) * | 2020-01-06 | 2020-06-05 | 华侨大学 | Multi-unmanned vehicle road finding method based on topological map and conflict elimination strategy |
WO2022043404A1 (en) * | 2020-08-26 | 2022-03-03 | Autostore Technology AS | Routing of container handling vehicles operating an automated storage system |
CN114690787A (en) * | 2022-05-20 | 2022-07-01 | 西安交通大学 | Multi-mobile-robot path planning method, system, computer equipment and storage medium |
CN115237135A (en) * | 2022-08-02 | 2022-10-25 | 山东大学深圳研究院 | Mobile robot path planning method and system based on conflict |
-
2022
- 2022-11-24 CN CN202211478448.5A patent/CN115507858B/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106931970A (en) * | 2015-12-30 | 2017-07-07 | 北京雷动云合智能技术有限公司 | Robot security's contexture by self air navigation aid in a kind of dynamic environment |
CN109115226A (en) * | 2018-09-01 | 2019-01-01 | 哈尔滨工程大学 | The paths planning method of multirobot conflict avoidance based on jump point search |
CN110275535A (en) * | 2019-06-27 | 2019-09-24 | 大连理工大学 | A kind of multimode vehicle path planning method based on improvement A star algorithm |
CN111238519A (en) * | 2020-01-06 | 2020-06-05 | 华侨大学 | Multi-unmanned vehicle road finding method based on topological map and conflict elimination strategy |
WO2022043404A1 (en) * | 2020-08-26 | 2022-03-03 | Autostore Technology AS | Routing of container handling vehicles operating an automated storage system |
CN114690787A (en) * | 2022-05-20 | 2022-07-01 | 西安交通大学 | Multi-mobile-robot path planning method, system, computer equipment and storage medium |
CN115237135A (en) * | 2022-08-02 | 2022-10-25 | 山东大学深圳研究院 | Mobile robot path planning method and system based on conflict |
Non-Patent Citations (3)
Title |
---|
ANTON ANDREYCHUK ET AL.: ""Multi-agent pathfinding with continuous time"", 《ARTIFICIAL INTELLIGENCE》 * |
刘庆周;吴锋;: "多智能体路径规划研究进展" * |
张云旺: ""物流中心多任务场景下多AGV的路径规划算法设计"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115507858B (en) | 2023-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110806218B (en) | Parking path planning method, device and system | |
CN112577491A (en) | Robot path planning method based on improved artificial potential field method | |
CN107677279A (en) | It is a kind of to position the method and system for building figure | |
CN109163722B (en) | Humanoid robot path planning method and device | |
CN106931970A (en) | Robot security's contexture by self air navigation aid in a kind of dynamic environment | |
CN109269518B (en) | Intelligent agent-based method for generating limited space path of movable device | |
CN115079705A (en) | Routing planning method for inspection robot based on improved A star fusion DWA optimization algorithm | |
CN105527964A (en) | Robot path planning method | |
CN109341698B (en) | Path selection method and device for mobile robot | |
CN111649758A (en) | Path planning method based on reinforcement learning algorithm in dynamic environment | |
Chen et al. | A coordinated path planning algorithm for multi-robot in intelligent warehouse | |
CN111427341B (en) | Robot shortest expected time target searching method based on probability map | |
Masehian et al. | An improved particle swarm optimization method for motion planning of multiple robots | |
CN114690787A (en) | Multi-mobile-robot path planning method, system, computer equipment and storage medium | |
CN115507858B (en) | Single-robot and multi-robot driving path navigation method | |
CN116673968B (en) | Mechanical arm track planning element selection method and system based on reinforcement learning | |
CN113885567B (en) | Collaborative path planning method for multiple unmanned aerial vehicles based on conflict search | |
CN114743385B (en) | Vehicle processing method and device and computer equipment | |
Yan et al. | A study of improved global path planning algorithm for parking robot based on ros | |
Panov et al. | Automatic formation of the structure of abstract machines in hierarchical reinforcement learning with state clustering | |
CN114879701A (en) | Robot track obstacle avoidance method and system | |
CN112764413B (en) | Robot path planning method | |
Mi et al. | Path planning of indoor mobile robot based on improved A* algorithm incorporating RRT and JPS | |
CN116922398B (en) | Rope robot and path planning method and device thereof | |
Abi-Char et al. | A Collision-Free Path Planning Algorithm for Non-Complex ASRS Using Heuristic Functions |
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 | ||
GR01 | Patent grant |