CN110275528B - Improved path optimization method for RRT algorithm - Google Patents
Improved path optimization method for RRT algorithm Download PDFInfo
- Publication number
- CN110275528B CN110275528B CN201910482275.6A CN201910482275A CN110275528B CN 110275528 B CN110275528 B CN 110275528B CN 201910482275 A CN201910482275 A CN 201910482275A CN 110275528 B CN110275528 B CN 110275528B
- Authority
- CN
- China
- Prior art keywords
- waypoint
- newi
- new
- goal
- init
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000005457 optimization Methods 0.000 title claims abstract description 17
- 238000001914 filtration Methods 0.000 claims abstract description 7
- 101100273916 Schizosaccharomyces pombe (strain 972 / ATCC 24843) wip1 gene Proteins 0.000 claims description 22
- 101100460203 Schizosaccharomyces pombe (strain 972 / ATCC 24843) new2 gene Proteins 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000009499 grossing Methods 0.000 claims description 3
- 230000003044 adaptive effect Effects 0.000 abstract description 6
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0287—Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
- G05D1/0289—Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling with means for avoiding collisions between vehicles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0287—Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
- G05D1/0291—Fleet control
-
- 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
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种针对RRT算法改进的路径优化方法。该方法在RRT算法中引入无效路点的过滤方法和自适应扩展方法,有效的快速填充局部最小值并防止过度搜素配置空间,并且通过重建联合空间中的边界点,不断改进可达空间信息,避免重复扩展无效的路点,这样可以提高搜索效率,缩短时间。它可以使路径规划算法更快的跳出局部最小区域并快去的接近目标区域。
The present invention provides an improved path optimization method for the RRT algorithm. This method introduces the filtering method of invalid waypoints and the adaptive expansion method in the RRT algorithm, which effectively and quickly fills the local minimum and prevents excessive search of the configuration space, and continuously improves the reachable space information by reconstructing the boundary points in the joint space. , to avoid repeated expansion of invalid waypoints, which can improve the search efficiency and shorten the time. It can make the path planning algorithm jump out of the local minimum area faster and approach the target area faster.
Description
技术领域technical field
本发明属于工业机器人的路径规划领域,特别是针对RRT算法引入了无效路点的过滤方法和自适应扩展方法的路径优化方法。The invention belongs to the field of path planning of industrial robots, in particular to a path optimization method which introduces an invalid waypoint filtering method and an adaptive expansion method for the RRT algorithm.
背景技术Background technique
随着现代化制造业的发展,工业机器人已广泛应用于很多领域,例如集成电路,汽车食品和其他自动化生产线。然而,由于应用广泛,工业机器人的编程技术面临了许多新的挑战;对于很多复杂的任务,传统的在线编程和离线编程方法需要花大量的时间和精力,并且不能确保得到满意的效果;因此,工业机器人的自主路劲规划已经成为当前的迫切需要。With the development of modern manufacturing, industrial robots have been widely used in many fields, such as integrated circuits, automotive food and other automated production lines. However, due to the wide range of applications, the programming technology of industrial robots faces many new challenges; for many complex tasks, traditional online programming and offline programming methods require a lot of time and effort, and cannot ensure satisfactory results; therefore, The autonomous road strength planning of industrial robots has become an urgent need at present.
多年以来,机器人路径规划在机器人研究中获得了很多的关注,其相关的算法也是很全面的。相关的规划方法有概率路线图方法、人工势场方法,快速探索随机树(RRT)等。与轨迹优化相比,路径规划是机器人运动的几何描述,应为它被定义为几何路径的生成,而没有提及任何特定的时间规律。在大多数情况下,路径优化先于轨迹优化。RRT算法的开创性形式随机的将树大面积的扩展到未探测区域,并最终达到目标状态。其具有概率完备性,易于实现并且适用于解决高维问题。然而,RRT算法会慢慢地对配置空间进行统一的搜索。基于RRT算法的一些改进算法可以在一定程度上提高搜索效率,但它们很容易陷入局部最小值。因此,当机器人操作手臂面对相对狭窄的操作环境时,原始的RRT算法不能很好地解决路劲规划问题。大多数基于RRT算法的研究都集中在算法的本身,它们在不同程度上提高了算法的效率。但是,它们并没有特别紧密地集成特定的应用环境和工艺特性。例如,对于复杂环境中机器人操纵器的路径规划。Over the years, robot path planning has gained a lot of attention in robotics research, and its related algorithms are also very comprehensive. Related planning methods include probabilistic roadmap method, artificial potential field method, rapid exploration random tree (RRT) and so on. In contrast to trajectory optimization, path planning is a geometric description of the robot's motion, and should be defined as the generation of a geometric path without mentioning any specific temporal regularity. In most cases, path optimization precedes trajectory optimization. The pioneering form of the RRT algorithm randomly expands the tree over large areas into the unexplored region and eventually reaches the target state. It is probabilistically complete, easy to implement and suitable for solving high-dimensional problems. However, the RRT algorithm slowly performs a uniform search of the configuration space. Some improved algorithms based on the RRT algorithm can improve the search efficiency to a certain extent, but they are easily trapped in local minima. Therefore, the original RRT algorithm cannot solve the problem of road strength planning well when the robot manipulator arm faces a relatively narrow operating environment. Most of the research based on RRT algorithms focuses on the algorithms themselves, which improve the efficiency of the algorithms to varying degrees. However, they are not particularly tightly integrated with specific application environments and process characteristics. For example, for path planning of robotic manipulators in complex environments.
中国发明专利文献(CN 108444489A)于2018年8月24日公开的一种改进RRT算法的路径规划方法中,随机树在扩展过程中当遇到障碍物进行随机扩展;当没有遇到障碍物时,引入目标引力策略修正随机树的扩展方向;引入双向扩展方法,分别从起始点和目标点进行扩展。该方法存在以下不足:In a path planning method for an improved RRT algorithm disclosed in the Chinese invention patent document (CN 108444489A) on August 24, 2018, the random tree is expanded randomly when an obstacle is encountered during the expansion process; when no obstacle is encountered , the target gravity strategy is introduced to correct the expansion direction of the random tree; the bidirectional expansion method is introduced to expand from the starting point and the target point respectively. This method has the following shortcomings:
(1)在随机树的扩展过程中没有考虑到多次重复到同一个路点的问题,大大降低了路径扩展的效率;(1) The problem of repeating to the same waypoint multiple times is not considered in the expansion process of the random tree, which greatly reduces the efficiency of path expansion;
(2)在随机树的扩展过程中没有考虑到路点在将来的扩展过程中是否会与障碍物发送碰撞,若发生碰撞就会增加路径扩展时间;(2) In the expansion process of the random tree, it is not considered whether the waypoint will collide with the obstacle in the future expansion process. If a collision occurs, the path expansion time will be increased;
中国发明专利文献(CN 109211242A)于2019年1月15日公开的一种融合RRT与蚁群算法的三维空间多目标路径规划方法中,将各目标点之间的直线距离作为初始路径代价,将三维空间中多目标路径规划问题转变为已知路径的旅行商问题,然后用蚁群算法对该旅行商问题进行优化求解。该方法存在不足的地方为:没有考虑扩展过程中的效率问题,对无效路点大量进行扩展降低路径规划的效率。Chinese invention patent document (CN 109211242A) disclosed on January 15, 2019 in a three-dimensional space multi-objective path planning method integrating RRT and ant colony algorithm, the straight-line distance between each target point is used as the initial path cost, and the The multi-objective path planning problem in three-dimensional space is transformed into a traveling salesman problem with known paths, and then the ant colony algorithm is used to solve the traveling salesman problem optimally. The shortcomings of this method are: the efficiency problem in the expansion process is not considered, and a large number of invalid waypoints are expanded to reduce the efficiency of path planning.
因此,一种针对RRT算法改进的路径优化方法具有重要的研究意义和应用价值。Therefore, an improved path optimization method for RRT algorithm has important research significance and application value.
发明内容SUMMARY OF THE INVENTION
本发明针对RRT算法所存在的不足,提出了引入无效路点的过滤方法和自适应扩展方法来对其进行优化,其目的是提高RRT算法的效率。Aiming at the shortcomings of the RRT algorithm, the invention proposes a filtering method and an adaptive expansion method that introduce invalid waypoints to optimize it, and the purpose is to improve the efficiency of the RRT algorithm.
本发明目的是这样实现的,本发明提供了一种针对RRT算法改进的路径优化方法,在RRT算法中引入了无效路点的过滤方法和自适应扩展方法来提高路径搜索效率,具体步骤如下:The object of the present invention is achieved in this way. The present invention provides a path optimization method for RRT algorithm improvement. In the RRT algorithm, a filtering method of invalid waypoints and an adaptive expansion method are introduced to improve the path search efficiency. The specific steps are as follows:
步骤1,参数设定Step 1, parameter setting
初始化机器人扩展步长p,设置起始路点Xinit、目标路点Xgoal和阈值τ;Initialize the robot expansion step p, set the starting waypoint X init , the target waypoint X goal and the threshold τ;
步骤2,设随机树T扩展到目标路点Xgoal需要的扩展次数为n,即通过n次扩展,将随机树T扩展到目标路点Xgoal,并得到n个新路点,将n个新路点中的任意一个记为新路点Xnewi,i=1,2,..,n;以起始路点Xinit作为第一次扩展的父路点,对随机树T进行n次扩展;记n次扩展中的任一次扩展为扩展i,扩展i中的父路点为当前父路点Xpi,i=1,2,..,,则一次扩展的步骤如下:Step 2, let the number of expansions required to expand the random tree T to the target waypoint X goal is n, that is, through n expansions, the random tree T is expanded to the target waypoint X goal , and n new waypoints are obtained. Any one of the new waypoints is denoted as a new waypoint X newi , i=1, 2, . . . , n; taking the starting waypoint X init as the parent waypoint of the first expansion, perform n times on the random tree T Expansion; denote any one of the n expansions as expansion i, and the parent waypoint in expansion i is the current parent waypoint X pi , i=1, 2, .. , and the steps of one expansion are as follows:
步骤2.1,从当前父路点Xpi开始扩展,在自由空间Cfree中随机任选一个探索路点Xrandi,i=1,2,..,n,然后在随机树T中找到一个与探索路点Xrandi之间欧式距离最小的路点并记为最小路点Xneari,i=1,2,..,n,所述自由空间Cfree为机器人避障环境中无障碍物的安全空间;Step 2.1, expand from the current parent waypoint X pi , randomly select an exploration waypoint X randi in the free space C free , i=1, 2, .., n, and then find one in the random tree T and explore The waypoint with the smallest Euclidean distance between waypoints X randi is denoted as the smallest waypoint X neari , i=1, 2, .., n, the free space C free is the safe space without obstacles in the robot obstacle avoidance environment ;
步骤2.2,在步骤2.1得到的探索路点Xrandi和最小路点Xneari之间作连线并记为连线A,并判断连线A上是否有障碍物:Step 2.2, make a connection between the exploration waypoint X randi obtained in step 2.1 and the minimum waypoint X neari and record it as connection A, and determine whether there is an obstacle on the connection A:
当连线A上有障碍物时,返回步骤2.1,重新选择探索路点Xrandi;When there is an obstacle on the connection line A, return to step 2.1, and re-select the exploration waypoint X randi ;
当连线A上没有遇到障碍物时,执行步骤2.3;When there is no obstacle on connection A, go to step 2.3;
步骤2.3,在连线A上任意位置随机选择一个路点记为新路点Xnewi;Step 2.3, randomly select a waypoint at any position on the connection line A and record it as a new waypoint X newi ;
步骤2.4,记新路点Xnewi与当前父路点Xpi之间的欧式距离为D(Xnewi,Xpi)、新路点Xnewi和最小路点Xneari之间的欧式距离为D(Xnewi,Xneari),进行如下判断:Step 2.4, record the Euclidean distance between the new waypoint Xnewi and the current parent waypoint Xpi as D( Xnewi , Xpi ), and the Euclidean distance between the new waypoint Xnewi and the minimum waypoint Xneari as D( X newi , X neari ), make the following judgments:
若D(Xnewi,Xpi)>D(Xnewi,Xneari),新路点Xnewi是无效路点,返回步骤2.3,重新选择新路点Xnewi;If D(X newi , X pi )>D(X newi , X neari ), the new waypoint X newi is an invalid waypoint, return to step 2.3, and reselect the new waypoint X newi ;
若D(Xnewi,Xpi)≤D(Xnewi,Xneari),新路点Xnewi是有效路点,执行步骤2.5;If D(X newi , X pi )≤D(X newi , X neari ), the new waypoint X newi is a valid waypoint, and step 2.5 is executed;
步骤2.5,根据新路点Xnewi的状态值η和新路点Xnewi的碰撞指数κ之间的关系,进行以下判断:Step 2.5, according to the relationship between the state value η of the new waypoint X newi and the collision index κ of the new waypoint X newi , the following judgments are made:
若η>κ,则新路点Xnewi的未来扩展将会发生冲突,返回2.3,重新选择新路点Xnewi;If η>κ, the future expansion of the new waypoint X newi will conflict, return to 2.3, and reselect the new waypoint X newi ;
若η值≤κ,则新路点Xnew1的未来扩展不会发生冲突,执行步骤2.6;If the value of η≤κ, the future expansion of the new waypoint X new1 will not conflict, and step 2.6 is executed;
步骤2.6,将步骤2.5得到的新路点Xnewi与目标路点Xgoal之间的欧式距离记为欧式距离D(Xnewi,Xgoal),将欧式距离D(Xnewi,Xgoal)与设定的阈值τ进行比较,判断随机树T是否已经扩展到目标路点Xgoal,即判断是否达到扩展目标:In step 2.6, the Euclidean distance between the new waypoint X newi obtained in step 2.5 and the target waypoint X goal is recorded as the Euclidean distance D(X newi , X goal ), and the Euclidean distance D(X newi , X goal ) and the set Compared with the predetermined threshold τ, it is judged whether the random tree T has been expanded to the target waypoint X goal , that is, whether the expansion goal has been reached:
(1)若D(Xnewi,Xgoal)>τ,则未达到扩展目标,更新随机树T得到第i+1次扩展的父路点Xp(i+1),Xp(i+1)=Xnewi;(1) If D(X newi , X goal )>τ, the expansion goal is not reached, update the random tree T to obtain the parent waypoint X p(i+1) of the i+1th expansion, X p(i+1 ) =X newi ;
返回步骤2.1,并将第i+1次的父路点Xp(i+1)代入当前父路点Xpi进行下一次随机树T的扩展;Return to step 2.1, and substitute the i+1 th parent waypoint Xp (i+1) into the current parent waypoint Xpi for the next expansion of the random tree T;
(2)若D(Xnewi,Xgoal)≤τ,已达到扩展目标,随机树T扩展结束,记录新路点Xnewi,并进入步骤3;(2) If D(X newi , X goal )≤τ, the expansion goal has been reached, the expansion of the random tree T ends, the new waypoint X newi is recorded, and step 3 is entered;
步骤3,记录通过步骤2得到的n个新路点,并以起始路点Xinit为起点、目标路点Xgoal为终点,将n个新路点与起始路点Xinit、目标路点Xgoal顺序连接得到路径队列(Xinit,Xnew1,Xnew2....Xnewn,Xgoal);Step 3, record the n new waypoints obtained by step 2, and take the starting waypoint X init as the starting point and the target waypoint X goal as the end point, and connect the n new waypoints with the starting waypoint X init and the target waypoint. Connect the points X goal sequentially to get the path queue (X init , X new1 , X new2 ....X newn , X goal );
步骤4,对路径队列(Xinit,Xnew1,Xnew2,...Xnewn,Xgoal)进行平滑处理;Step 4, smoothing the path queue (X init , X new1 , X new2 , . . . X newn , X goal );
步骤4.1,令起始路点Xinit为起点,依次尝试连接路径队列(Xinit,Xnew1,Xnew2,...,Xnewn,Xgoal)中的每一个路点,若在连接过程中发现路径队列(Xinit,Xnew1,Xnew2,...,Xnewn,Xgoal)中的一个路点与该路点前相邻的两个路点不在同一条直线上,则记该路点为不可到达路点Xnewj,用一条直线连接起始路点与路点Xnew(j-1)得到一条平滑路径(Xinit,Xnew1,Xnew2,...,Xnew(j-1));j=1,2...m,m为正整数,m≤n;Step 4.1, let the starting point X init be the starting point, and try to connect each way point in the path queue (X init , X new1 , X new2 , . . . , X newn , X goal ) in turn, if in the connection process If it is found that a waypoint in the path queue (X init , X new1 , X new2 , ..., X newn , X goal ) is not on the same straight line with the two adjacent way points before the way point, then record this way The point is an unreachable waypoint X newj , a straight line is used to connect the starting waypoint and the waypoint X new (j-1) to obtain a smooth path (X init , X new1 , X new2 ,..., X new (j- 1) ); j=1,2...m,m is a positive integer, m≤n;
步骤4.2,首先从路径队列(Xinit,Xnew1,Xnew2,...,Xnewn,Xgoal)中删除步骤4.1得到的平滑路径(Xinit,Xnew1,Xnew2,...,Xnew(j-1)),,得到一条剩余路径队列(Xnew(j-1),Xnewj,...,Xnewn,Xgoal),然后以路点Xnew(j-1)为起点,按步骤4.1的方法依次尝试连接剩余路径队列(Xnew(j-1),Xnewj,...,Xnewn,Xgoal)中的每一个路点,又得到一条平滑路径;依次类推,当起点为目标路点xgoal时,共得到若干条平滑路径,即路径队列(Xinit,Xnew1,Xnew2,…Xnewn,Xgoal)被平滑为若干相连直线,路径优化结束。Step 4.2, first delete the smooth path ( Xinit , Xnew1 , Xnew2 ,...,X) obtained in step 4.1 from the path queue ( Xinit , Xnew1 , Xnew2 ,..., Xnewn , Xgoal ) new(j-1) ), to get a remaining path queue (X new(j-1) , X newj , ..., X newn , X goal ), and then take the waypoint X new(j-1) as the starting point , try to connect each waypoint in the remaining path queue (X new(j-1) , X newj , ..., X newn , X goal ) in turn according to the method of step 4.1, and obtain a smooth path again; and so on, When the starting point is the target waypoint x goal , a total of several smooth paths are obtained, that is, the path queue (X init , X new1 , X new2 , ... X newn , X goal ) is smoothed into several connected straight lines, and the path optimization ends.
优选地,所述阈值τ=P/3。Preferably, the threshold τ=P/3.
优选地,所述欧式距离为两个路点之间的直线距离,计算公式如下:Preferably, the Euclidean distance is the straight-line distance between two waypoints, and the calculation formula is as follows:
其中D(p1,p2)为任意路点p1和任意路点p2的欧式距离,(x1,y1)为任意路点p1的平面坐标;(x2,y2)任意路点p2的平面坐标。where D(p 1 , p 2 ) is the Euclidean distance between any waypoint p 1 and any waypoint p 2 , (x 1 , y 1 ) is the plane coordinate of any way point p 1 ; (x 2 , y 2 ) is arbitrary The plane coordinates of waypoint p2 .
与现有技术相比,本发明的有益效果为:Compared with the prior art, the beneficial effects of the present invention are:
本发明可以有效的快速填充局部最小值并防止过度搜素配置空间,并且通过重建联合空间中的边界点,不断改进可达空间信息,避免重复扩展无效的路点,这样可以提高搜索效率,缩短时间。它可以使路径规划算法更快的跳出局部最小区域并快去的接近目标区域。The invention can effectively and quickly fill the local minimum value and prevent excessive searching of the configuration space, and by reconstructing the boundary points in the joint space, the reachable space information can be continuously improved, and the repeated expansion of invalid waypoints can be avoided, so that the search efficiency can be improved and the shortening time can be shortened. time. It can make the path planning algorithm jump out of the local minimum area faster and approach the target area faster.
附图说明Description of drawings
图1是本发明针对RRT算法改进的路径优化方法的流程图。FIG. 1 is a flow chart of the path optimization method improved by the present invention for the RRT algorithm.
图2是本发明的路径扩展中无效路点的示意图。FIG. 2 is a schematic diagram of an invalid waypoint in the path extension of the present invention.
具体实施方式Detailed ways
下面将结合附图对本发明的技术方案进行清楚、完整的描述。The technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings.
图1是本发明针对RRT算法改进的路径优化方法的流程图。从图1可见,本发明提供了一种针对RRT算法改进的路径优化方法,在RRT算法中引入了无效路点的过滤方法和自适应扩展方法来提高路径搜索效率,具体步骤如下:FIG. 1 is a flow chart of the path optimization method improved by the present invention for the RRT algorithm. As can be seen from Figure 1, the present invention provides a path optimization method for RRT algorithm improvement, and introduces the filtering method of invalid waypoints and the adaptive expansion method in the RRT algorithm to improve the path search efficiency, and the specific steps are as follows:
步骤1,参数设定Step 1, parameter setting
初始化机器人扩展步长p,设置起始路点Xinit、目标路点Xgoal和阈值τ。所述阈值τ=P/3。Initialize the robot expansion step p, set the starting waypoint X init , the target waypoint X goal and the threshold τ. The threshold τ=P/3.
步骤2,设随机树T扩展到目标路点Xgoal需要的扩展次数为n,即通过n次扩展,将随机树T扩展到目标路点Xgoal,并得到n个新路点,将n个新路点中的任意一个记为新路点Xnewi,i=1,2,..,n。Step 2, let the number of expansions required to expand the random tree T to the target waypoint X goal is n, that is, through n expansions, the random tree T is expanded to the target waypoint X goal , and n new waypoints are obtained. Any one of the new waypoints is denoted as a new waypoint X newi , i=1, 2, . . . , n.
以起始路点Xinit作为第一次扩展的父路点,对随机树T进行n次扩展;记n次扩展中的任一次扩展为扩展i,扩展i中的父路点为当前父路点Xpi,i=1,2,..,n,则一次扩展的步骤如下:Taking the starting waypoint X init as the parent waypoint of the first expansion, the random tree T is expanded n times; any one of the n expansions is expanded as expansion i, and the parent waypoint in expansion i is the current parent way Point X pi , i=1, 2, .., n, the steps of one expansion are as follows:
步骤2.1,从当前父路点Xpi开始扩展,在自由空间Cfree中随机任选一个探索路点Xrandi,i=1,2,..,n,然后在随机树T中找到一个与探索路点Xrandi之间欧式距离最小的路点并记为最小路点Xneari,i=1,2,..,n,所述自由空间Cfree为机器人避障环境中无障碍物的安全空间。Step 2.1, expand from the current parent waypoint X pi , randomly select an exploration waypoint X randi in the free space C free , i=1, 2, .., n, and then find one in the random tree T and explore The waypoint with the smallest Euclidean distance between the waypoints X randi is denoted as the smallest waypoint X neari , i=1, 2, .., n, the free space C free is the safe space without obstacles in the robot obstacle avoidance environment .
步骤2.2,在步骤2.1得到的探索路点Xrandi和最小路点Xneari之间作连线并记为连线A,并判断连线A上是否有障碍物:Step 2.2, make a connection between the exploration waypoint X randi obtained in step 2.1 and the minimum waypoint X neari and record it as connection A, and determine whether there is an obstacle on the connection A:
当连线A上有障碍物时,返回步骤2.1,重新选择探索路点Xrandi;When there is an obstacle on the connection line A, return to step 2.1, and re-select the exploration waypoint X randi ;
当连线A上没有遇到障碍物时,执行步骤2.3。When no obstacle is encountered on connection A, go to step 2.3.
步骤2.3,在连线A上任意位置随机选择一个路点记为新路点Xnewi。Step 2.3, randomly select a waypoint at any position on the connection line A and record it as a new waypoint X newi .
步骤2.4,判断新路点Xnewi是否满足无效路点的过滤条件。具体的,记新路点Xnewi与当前父路点Xpi之间的欧式距离为D(Xnewi,Xpi)、新路点Xnewi和最小路点Xneari之间的欧式距离D(Xnewi,Xneari),进行如下判断:Step 2.4, determine whether the new waypoint X newi satisfies the filtering condition of the invalid waypoint. Specifically, denote the Euclidean distance between the new waypoint X newi and the current parent waypoint X pi as D(X newi , X pi ), and the Euclidean distance between the new waypoint X newi and the minimum waypoint X neari D(X newi , X neari ), make the following judgments:
若D(Xnewi,Xpi)>D(Xnewi,Xneari),新路点Xnewi是无效路点,返回步骤2.3,重新选择新路点Xnewi;If D(X newi , X pi )>D(X newi , X neari ), the new waypoint X newi is an invalid waypoint, return to step 2.3, and reselect the new waypoint X newi ;
若D(Xnewi,Xpi)≤D(Xnewi,Xneari),新路点Xnewi是有效路点,执行步骤2.5。If D(X newi , X pi )≤D(X newi , X neari ), the new waypoint X newi is a valid waypoint, and step 2.5 is executed.
步骤2.5,判断新路点Xnewi是否满足自适应扩展的条件。具体的,根据新路点Xnewi的状态值η和新路点Xnewi的碰撞指数κ之间的关系,进行以下判断:Step 2.5, determine whether the new waypoint X newi satisfies the condition of adaptive expansion. Specifically, according to the relationship between the state value η of the new waypoint X newi and the collision index κ of the new waypoint X newi , the following judgments are made:
若η>κ,则新路点Xnewi的未来扩展将会发生冲突,返回2.3,重新选择新路点Xnewi;If η>κ, the future expansion of the new waypoint X newi will conflict, return to 2.3, and reselect the new waypoint X newi ;
若η值≤κ,则新路点Xnew1的未来扩展不会发生冲突,执行步骤2.6。If the value of η≤κ, the future expansion of the new waypoint X new1 will not conflict, and step 2.6 is executed.
所述碰撞指数是导致机器人操作手臂与连接到路点的所有边缘发生碰撞的指数。新路点Xnew1的κ值越小,新路点Xnew1成功扩展的可能性越大。在本发明中,令κ=0.8。The collision index is the index that causes the robot manipulator arm to collide with all edges connected to the waypoint. The smaller the κ value of the new waypoint Xnew1 , the greater the possibility of the successful expansion of the new waypoint Xnew1 . In the present invention, let κ=0.8.
所述路点的状态值是衡量路点是否可以进行自由扩展的参数。在随机树T的扩展过程中,若所有路点的状态值η的初始值都是0,即表示所有路点可以自由扩展。假设当前有r条边连接到路点q,若经碰撞检测q的子路点与障碍物发生碰撞,q路点的η值增加若经碰撞检测下一个子路点没有与障碍物发生碰撞时,q路点的η值减在本发明中,设新路点Xnewi的状态值η的初始值为0,即新路点Xnewi可以自由扩展。The state value of the waypoint is a parameter to measure whether the waypoint can be freely expanded. In the expansion process of the random tree T, if the initial value of the state value η of all waypoints is 0, it means that all waypoints can be expanded freely. Assuming that there are currently r edges connected to waypoint q, if the sub-waypoint of q collides with an obstacle after collision detection, the η value of q waypoint increases If the next sub-waypoint does not collide with the obstacle after collision detection, the η value of the q-waypoint decreases In the present invention, the initial value of the state value η of the new waypoint X newi is set to 0, that is, the new waypoint X newi can be freely expanded.
步骤2.6,将步骤2.5得到的新路点Xnewi与目标路点Xgoal之间的欧式距离记为欧式距离D(Xnewi,Xgoal),将欧式距离D(Xnewi,Xgoal)与设定的阈值τ进行比较,判断随机树T是否已经扩展到目标路点Xgoal,即判断是否达到扩展目标:In step 2.6, the Euclidean distance between the new waypoint X newi obtained in step 2.5 and the target waypoint X goal is recorded as the Euclidean distance D(X newi , X goal ), and the Euclidean distance D(X newi , X goal ) and the set Compared with the predetermined threshold τ, it is judged whether the random tree T has been expanded to the target waypoint X goal , that is, whether the expansion goal has been reached:
(1)若D(Xnewi,Xgoal)>τ,则未达到扩展目标,更新随机树T得到第i+1次扩展的父路点Xp(i+1),Xp(i+1)=Xnewi;(1) If D(X newi , X goal )>τ, the expansion goal is not reached, update the random tree T to obtain the parent waypoint X p(i+1) of the i+1th expansion, X p(i+1 ) =X newi ;
返回步骤2.1,并将第i+1次的父路点Xp(i+1)代入当前父路点Xpi进行下一次随机树T的扩展。Return to step 2.1, and substitute the i+1 th parent waypoint Xp (i+1) into the current parent waypoint Xpi to perform the next expansion of the random tree T.
(2)若D(Xnewi,Xgoal)≤τ,已达到扩展目标,随机树T扩展结束,记录新路点Xnewi,并进入步骤3。(2) If D(X newi , X goal )≤τ, the expansion goal has been reached, the expansion of the random tree T is completed, the new waypoint X newi is recorded, and step 3 is entered.
步骤3,记录通过步骤2得到的n个新路点,并以起始路点Xinit为起点、目标路点Xgoal为终点,将n个新路点与起始路点Xinit、目标路点Xgoal顺序连接得到路径队列(Xinit,Xnew1,Xnew2,...,Xnewn,Xgoal)。Step 3, record the n new waypoints obtained by step 2, and take the starting waypoint X init as the starting point and the target waypoint X goal as the end point, and connect the n new waypoints with the starting waypoint X init and the target waypoint. The points X goal are sequentially connected to obtain the path queue (X init , X new1 , X new2 , . . . , X newn , X goal ).
步骤4,对路径队列(Xinit,Xnew1,Xnew2,...,Xnewn,Xgoal)进行平滑处理。Step 4: Smooth the path queues (X init , X new1 , X new2 , . . . , X newn , X goal ).
步骤4.1,令起始路点Xinit为起点,依次尝试连接路径队列(Xinit,Xnew1,Xnew2,...,Xnewn,Xgoal)中的每一个路点,若在连接过程中发现路径队列(Xinit,Xnew1,Xnew2,...,Xnewn,Xgoal)中的一个路点与该路点前相邻的两个路点不在同一条直线上,则记该路点为不可到达路点Xnewj,用一条直线连接起始路点Xinit与路点Xnew(j-1)得到一条平滑路径(Xinit,Xnew1,Xnew2,...,Xnew(j-1));j=1,2...m,m为正整数,m≤n。Step 4.1, let the starting point X init be the starting point, and try to connect each way point in the path queue (X init , X new1 , X new2 , . . . , X newn , X goal ) in turn, if in the connection process If it is found that a waypoint in the path queue (X init , X new1 , X new2 , ..., X newn , X goal ) is not on the same straight line with the two adjacent way points before the way point, then record this way The point is an unreachable waypoint X newj , and a straight line is used to connect the starting waypoint Xinit and the waypoint Xnew (j-1) to obtain a smooth path (Xinit, Xnew1 , Xnew2 ,..., Xnew ( j-1) ); j=1,2...m,m is a positive integer, m≤n.
步骤4.2,首先从路径队列(Xinit,Xnew1,Xnew2,...,Xnewn,Xgoal)中删除步骤4.1得到的平滑路径(Xinit,Xnew1,Xnew2,...,Xnew(j-1)),得到一条剩余路径队列(Xnew(j-1),Xnewj,...,Xnewn,Xgoal),然后以路点Xnew(j-1)为起点,按步骤4.1的方法依次尝试连接剩余路径队列(Xnew(j-1),Xnewj,...,Xnewn,Xgoal)中的每一个路点,又得到一条平滑路径;依次类推,当起点为目标路点xgoal时,共得到若干条平滑路径,即路径队列(Xinit,Xnew1,Xnew2,...Xnewn,Xgoal)被平滑为若干相连直线,路径优化结束。Step 4.2, first delete the smooth path ( Xinit , Xnew1 , Xnew2 ,...,X) obtained in step 4.1 from the path queue ( Xinit , Xnew1 , Xnew2 ,..., Xnewn , Xgoal ) new(j-1) ), get a remaining path queue (X new(j-1) , X newj , ..., X newn , X goal ), and then take the waypoint X new(j-1) as the starting point, According to the method of step 4.1, try to connect each waypoint in the remaining path queue (X new(j-1) , X newj , ..., X newn , X goal) in turn, and get a smooth path; and so on, when When the starting point is the target waypoint x goal , a total of several smooth paths are obtained, that is, the path queue (X init , X new1 , X new2 , ... X newn , X goal ) is smoothed into several connected straight lines, and the path optimization ends.
在以上步骤中,所述的欧式距离为两个路点之间的直线距离,计算公式如下:In the above steps, the Euclidean distance is the straight-line distance between two waypoints, and the calculation formula is as follows:
其中D(p1,p2)为任意路点p1和任意路点p2的欧式距离,(x1,y1)为任意路点p1的平面坐标;(x2,y2)任意路点p2的平面坐标。where D(p 1 , p 2 ) is the Euclidean distance between any waypoint p 1 and any waypoint p 2 , (x 1 , y 1 ) is the plane coordinate of any way point p 1 ; (x 2 , y 2 ) is arbitrary Planar coordinates of waypoint p2 .
图2是本发明的路径扩展中无效路点的示意图。由图2可见,从当前父路点Xpi出发,通过最小路点Xneari,找到新路点Xnewi的途径。因为D(Xnewi,Xpi)>D(Xnewi,Xneari),所以该新路点为无效路点。另外通过本发明,已经将路径队列平滑成若干相连直线。FIG. 2 is a schematic diagram of an invalid waypoint in the path extension of the present invention. As can be seen from FIG. 2 , starting from the current parent waypoint X pi , through the minimum waypoint X neari , a way to find the new waypoint X newi . Since D(X newi , X pi )>D(X newi , X neari ), the new waypoint is an invalid waypoint. Also by the present invention, the path queue has been smoothed into several connected straight lines.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910482275.6A CN110275528B (en) | 2019-06-04 | 2019-06-04 | Improved path optimization method for RRT algorithm |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910482275.6A CN110275528B (en) | 2019-06-04 | 2019-06-04 | Improved path optimization method for RRT algorithm |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110275528A CN110275528A (en) | 2019-09-24 |
CN110275528B true CN110275528B (en) | 2022-08-16 |
Family
ID=67961956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910482275.6A Active CN110275528B (en) | 2019-06-04 | 2019-06-04 | Improved path optimization method for RRT algorithm |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110275528B (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111506073B (en) * | 2020-05-07 | 2022-04-19 | 安徽理工大学 | A mobile robot path planning method integrating membrane computing and RRT |
CN111752281A (en) * | 2020-07-13 | 2020-10-09 | 浪潮软件股份有限公司 | Mobile robot path planning method and system based on improved RRT algorithm |
CN112987799B (en) * | 2021-04-16 | 2022-04-05 | 电子科技大学 | A UAV Path Planning Method Based on Improved RRT Algorithm |
US12104910B2 (en) | 2022-02-23 | 2024-10-01 | Toyota Research Institute, Inc. | Systems and methods for informable multi-objective and multi-direction rapidly exploring random tree route planning |
CN115950439B (en) * | 2023-03-15 | 2023-06-02 | 季华实验室 | Bidirectional RRT path planning method and device, electronic equipment and storage medium |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017104775A1 (en) * | 2015-12-14 | 2017-06-22 | Mitsubishi Electric Corporation | Method for controlling vehicle and control system of vehicle |
CN107883961A (en) * | 2017-11-06 | 2018-04-06 | 哈尔滨工程大学 | A kind of underwater robot method for optimizing route based on Smooth RRT algorithms |
CN108507575A (en) * | 2018-03-20 | 2018-09-07 | 华南理工大学 | A kind of unmanned boat sea paths planning method and system based on RRT algorithms |
CN108762270A (en) * | 2018-06-01 | 2018-11-06 | 上海理工大学 | The two-way rapidly-exploring random tree modified two-step method planning algorithm of changeable probability |
CN109445444A (en) * | 2018-12-25 | 2019-03-08 | 同济大学 | A kind of barrier concentrates the robot path generation method under environment |
CN109542117A (en) * | 2018-10-19 | 2019-03-29 | 哈尔滨工业大学(威海) | Based on the submarine navigation device Rolling Planning algorithm for improving RRT |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108444489A (en) * | 2018-03-07 | 2018-08-24 | 北京工业大学 | A kind of paths planning method improving RRT algorithms |
-
2019
- 2019-06-04 CN CN201910482275.6A patent/CN110275528B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017104775A1 (en) * | 2015-12-14 | 2017-06-22 | Mitsubishi Electric Corporation | Method for controlling vehicle and control system of vehicle |
CN107883961A (en) * | 2017-11-06 | 2018-04-06 | 哈尔滨工程大学 | A kind of underwater robot method for optimizing route based on Smooth RRT algorithms |
CN108507575A (en) * | 2018-03-20 | 2018-09-07 | 华南理工大学 | A kind of unmanned boat sea paths planning method and system based on RRT algorithms |
CN108762270A (en) * | 2018-06-01 | 2018-11-06 | 上海理工大学 | The two-way rapidly-exploring random tree modified two-step method planning algorithm of changeable probability |
CN109542117A (en) * | 2018-10-19 | 2019-03-29 | 哈尔滨工业大学(威海) | Based on the submarine navigation device Rolling Planning algorithm for improving RRT |
CN109445444A (en) * | 2018-12-25 | 2019-03-08 | 同济大学 | A kind of barrier concentrates the robot path generation method under environment |
Non-Patent Citations (1)
Title |
---|
基于RRT算法的非完整移动机器人运动规划;李加东;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20140930;第33-64页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110275528A (en) | 2019-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110275528B (en) | Improved path optimization method for RRT algorithm | |
CN111546347B (en) | Mechanical arm path planning method suitable for dynamic environment | |
CN110497403A (en) | A motion planning method for manipulator with improved two-way RRT algorithm | |
CN105740644B (en) | Cleaning robot optimal target path planning method based on model learning | |
CN104155974B (en) | Path planning method and apparatus for robot fast collision avoidance | |
CN112683278B (en) | Global path planning method based on improved A-algorithm and Bezier curve | |
CN110744543B (en) | Improved PRM obstacle avoidance motion planning method based on UR3 manipulator | |
CN107631734A (en) | A kind of dynamic smoothing paths planning method based on D*_lite algorithms | |
Xu et al. | A fast path planning algorithm fusing prm and p-bi-rrt | |
Peng et al. | Robot path planning based on improved A* algorithm | |
CN114939872B (en) | MIRRT-Connect algorithm-based intelligent storage redundant mechanical arm dynamic obstacle avoidance motion planning method | |
CN113858210A (en) | Robotic Arm Path Planning Method Based on Hybrid Algorithm | |
CN115047880A (en) | Intelligent path planning method for robot in unknown dynamic environment | |
CN115056222A (en) | Mechanical arm path planning method based on improved RRT algorithm | |
CN111216132A (en) | Six-degree-of-freedom mechanical arm path planning method based on improved RRT algorithm | |
CN116652932A (en) | An autonomous obstacle avoidance method for manipulators based on improved RRT* algorithm | |
Le et al. | Search-based planning and replanning in robotics and autonomous systems | |
CN115870990A (en) | Obstacle avoidance path planning method for mechanical arm | |
CN115741686A (en) | Robot path planning method based on variable probability constraint sampling | |
Zhao et al. | Path planning of manipulator based on RRT-Connect and Bezier curve | |
CN117124335B (en) | Improved RRT path planning method based on path marking backtracking strategy | |
CN117400269B (en) | Mechanical arm path planning method based on bidirectional sampling and virtual potential field guiding | |
CN117848372A (en) | A mobile robot path planning method based on spatially restricted sampling | |
CN118163104A (en) | A multi-target path planning method for snake-like manipulators | |
CN117740020A (en) | Smooth path improvement method based on A-star algorithm and cubic B spline curve fusion |
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 |