Jump to content

Rapidly exploring random tree

From Wikipedia, the free encyclopedia
A visualization of an RRT graph after 45 and 390 iterations
An animation of an RRT starting from iteration 0 to 10000

Arapidly exploring random tree(RRT) is analgorithmdesigned to efficiently searchnonconvex,high-dimensional spaces by randomly building aspace-filling tree.The tree is constructed incrementally from samples drawn randomly from the search space and is inherently biased to grow towards large unsearched areas of the problem. RRTs were developed bySteven M. LaValleandJames J. Kuffner Jr.[1][2] They easily handle problems with obstacles and differential constraints (nonholonomicand kinodynamic) and have been widely used inautonomous roboticmotion planning.

RRTs can be viewed as a technique to generate open-loop trajectories for nonlinear systems with state constraints. An RRT can also be considered as aMonte-Carlomethod to bias search into the largestVoronoi regionsof a graph in a configuration space. Some variations can even be consideredstochasticfractals.[3]

RRTs can be used to compute approximate control policies to control high dimensional nonlinear systems with state and action constraints.

Description

[edit]

An RRT grows a tree rooted at the starting configuration by using random samples from the search space. As each sample is drawn, a connection is attempted between it and the nearest state in the tree. If the connection is feasible (passes entirely through free space and obeys any constraints), this results in the addition of the new state to the tree. With uniform sampling of the search space, the probability of expanding an existing state is proportional to the size of itsVoronoi region. As the largestVoronoi regionsbelong to the states on the frontier of the search, this means that the tree preferentially expands towards large unsearched areas.

The length of the connection between the tree and a new state is frequently limited by a growth factor. If the random sample is further from its nearest state in the tree than this limit allows, a new state at the maximum distance from the tree along the line to the random sample is used instead of the random sample itself. The random samples can then be viewed as controlling the direction of the tree growth while the growth factor determines its rate. This maintains the space-filling bias of the RRT while limiting the size of the incremental growth.

RRT growth can be biased by increasing the probability of sampling states from a specific area. Most practical implementations of RRTs make use of this to guide the search towards the planning problem goals. This is accomplished by introducing a small probability of sampling the goal to the state sampling procedure. The higher this probability, the more greedily the tree grows towards the goal.

Algorithm

[edit]

For a generalconfiguration spaceC,the algorithm inpseudocodeis as follows:

AlgorithmBuildRRT
Input: Initial configurationqinit,number of vertices in RRTK,incremental distanceΔq
Output: RRT graphG

G.init(qinit)
fork= 1toKdo
qrand← RAND_CONF()
qnear← NEAREST_VERTEX(qrand,G)
qnew← NEW_CONF(qnear,qrand,Δq)
G.add_vertex(qnew)
G.add_edge(qnear,qnew)
returnG
  • "←" denotesassignment.For instance, "largestitem"means that the value oflargestchanges to the value ofitem.
  • "return"terminates the algorithm and outputs the following value.

In the algorithm above, "RAND_CONF"grabs a random configurationqrandinC.This may be replaced with a function "RAND_FREE_CONF"that uses samples inCfree,while rejecting those inCobsusing some collision detection algorithm.

"NEAREST_VERTEX"is a function that runs through all verticesvin graphG,calculates the distance betweenqrandandvusing some measurement function thereby returning the nearest vertex.

"NEW_CONF"selects a new configurationqnewby moving an incremental distanceΔqfromqnearin the direction ofqrand.(According to[4]in holonomic problems, this should be omitted andqrandused instead ofqnew.)

Variants and improvements for motion planning

[edit]
  • RRT-Rope,[5]a method for fast near-optimal path planning using a deterministic shortening approach, very effective in open and large environments.
  • Parti-game directed RRTs (PDRRTs),[6]a method that combines RRTs with the parti-game method[7]to refine the search where it is needed (for example around obstacles) to be able to plan faster and solve moremotion planningproblems than RRT
  • Closed-loop rapidly exploring random (CL-RRT),[8]an extension of RRT that samples an input to a stable closed-loop system consisting of the vehicle and a controller

It has been shown that, under 'mild technical conditions', the cost of the best path in the RRT converges almost surely to a non-optimal value.[9]For that reason, it is desirable to find variants of the RRT that converges to an optimum, like RRT*. Below follows is a list of RRT*-based methods (starting with RRT* itself). Not all of the derived methods do themselves converge to an optimum, though.

  • Rapidly exploring random graph (RRG) and RRT*,[9][10][11]a variant of RRT that converges towards an optimal solution
  • RRT+,[13]a family of RRT-based planners aiming to generate solutions for high-dimensional systems in real-time, by progressively searching in lower-dimensional subspaces.
  • RRT*-Smart,[14]a method foraccelerating the convergence rateof RRT* by using path optimization (in a similar fashion toTheta*) and intelligent sampling (by biasing sampling towards path vertices, which – after path optimization – are likely to be close to obstacles)
  • A*-RRT and A*-RRT*,[15]a two-phasemotion planningmethod that uses agraph search algorithmto search for an initial feasible path in a low-dimensional space (not considering the complete state space) in a first phase, avoiding hazardous areas and preferring low-risk routes, which is then used to focus the RRT* search in the continuous high-dimensional space in a second phase
  • RRT*FN,[16][17][18]RRT* with a fixed number of nodes, which randomly removes a leaf node in the tree in every iteration
  • RRT*-AR,[19]sampling-based alternate routes planning
  • Informed RRT*,[20][21]improves the convergence speed of RRT* by introducing a heuristic, similar to the way in whichA*improves uponDijkstra's algorithm
  • Real-Time RRT* (RT-RRT*),[22]a variant of RRT* and informed RRT* that uses an online tree rewiring strategy that allows the tree root to move with the agent without discarding previously sampled paths, in order to obtainreal-timepath-planning in a dynamic environment such as a computer game
  • RRTXand RRT#,[23][24]optimization of RRT* for dynamic environments
  • RRT* FND,[26][27]extension of RRT* for -dynamic environments
  • RRT-GPU,[28]three-dimensional RRT implementation that utilizes hardware acceleration
  • APF-RRT,[29]a combination of RRT planner with Artificial Potential Fields method that simplify the replanning task
  • CERRT,[30]a RRT planner modeling uncertainty, which is reduced exploiting contacts
  • MVRRT*,[31]Minimum violation RRT*, an algorithm that finds the shortest route that minimizes the level of unsafety (the "cost" of the environment rules that have been violated, e.g. traffic laws)
  • RRT-Blossom,[32]RRT planner for highly constrained environments.
  • RRV,[33]efficiently expand the tree around obstacles and through narrow passages, using dominant eigenvectors around tree nodes.
  • RBT,[34]uses simple distance computations in the workspace to expand the tree instead of expensive collision check.
  • TB-RRT,[35]Time-based RRT algorithm for rendezvous planning of two dynamic systems.
  • RRdT*,[36][37]a RRT*-based planner that uses multiple local trees to actively balances the exploration and exploitation of the space by performing local sampling.
  • Tri-RRT-Connect,[38][39]Triangular inequality-based rewiring method with RRT-Connect algorithm to bring it closer to the optimum.
  • Adaptively informed trees (AIT*) and effort informed trees (EIT*)[40]

See also

[edit]

References

[edit]
  1. ^ LaValle, Steven M.(October 1998)."Rapidly-exploring random trees: A new tool for path planning"(PDF).Technical Report(TR 98–11). Computer Science Department, Iowa State University.
  2. ^ LaValle, Steven M.;Kuffner Jr., James J.(2001)."Randomized Kinodynamic Planning"(PDF).The International Journal of Robotics Research.20(5): 378–400.doi:10.1177/02783640122067453.S2CID40479452.
  3. ^http://msl.cs.uiuc.edu/rrt/about.htmlArchived2007-10-21 at theWayback MachineAbout RRTs, by Steve LaValle
  4. ^Rapidly-Exploring Random Trees: Progress and Prospects (2000), by Steven M. Lavalle, James J. Kuffner, Jr. Algorithmic and Computational Robotics: New Directions,http://eprints.kfupm.edu.sa/60786/1/60786.pdf[permanent dead link]
  5. ^Petit, Louis; Desbiens, Alexis Lussier (2021-10-17)."RRT-Rope: A deterministic shortening approach for fast near-optimal path planning in large-scale uncluttered 3D environments".2021 IEEE International Conference on Systems, Man, and Cybernetics (SMC).Melbourne, Australia: IEEE. pp. 1111–1118.doi:10.1109/SMC52423.2021.9659071.ISBN978-1-6654-4207-7.S2CID252590377.
  6. ^Ranganathan, Ananth;Koenig, Sven.PDRRTs: "Integrating Graph-Based and Cell-Based Planning".InProceedings of the IEEE International Conference on Intelligent Robots and Systems (IROS),pages 2799–2808, 2004.
  7. ^Moore, A. W.; Atkeson, C. G., "The parti-game algorithm for variable resolution reinforcement learning in multidimensional state-spaces,"Machine Learning,vol. 21, no. 3, pages 199–233, 1995.
  8. ^Kuwata, Yoshiaki; Teo, Justin; Fiore, Gaston; Karaman, Sertac; Frazzoli, Emilio; How, Jonathan P. (September 2009)."Real-time Motion Planning with Applications to Autonomous Urban Driving"(PDF).IEEE Transactions on Control Systems Technology.17(5): 1105–1118.CiteSeerX10.1.1.169.7922.doi:10.1109/tcst.2008.2012116.hdl:1721.1/52527.S2CID14526513.Archived fromthe original(PDF)on 12 June 2021.Retrieved10 April2017.
  9. ^abKaraman, Sertac; Frazzoli, Emilio (3 May 2010). "Incremental Sampling-based Algorithms for Optimal Motion Planning".arXiv:1005.0416[cs.RO].
  10. ^Karaman, Sertac; Frazzoli, Emilio (5 May 2011). "Sampling-based Algorithms for Optimal Motion Planning".arXiv:1105.1186[cs.RO].
  11. ^OlzhasAdi (Jan 26, 2015)."RRT* Brief Explanation"(video).YouTube.Archivedfrom the original on 2021-12-12.Retrieved3 August2016.
  12. ^Perez, Alejandro; Platt, Robert; Konidaris, George; Kaelbling, Leslie; Lozano-Perez, Tomas (May 2012)."LQR-RRT*: Optimal sampling-based motion planning with automatically derived extension heuristics".2012 IEEE International Conference on Robotics and Automation.pp. 2537–2542.doi:10.1109/ICRA.2012.6225177.ISBN978-1-4673-1405-3.S2CID1914056.
  13. ^Xanthidis, Marios; Esposito, Joel M.; Rekleitis, Ioannis; O’Kane, Jason M. (2020-12-01)."Motion Planning by Sampling in Subspaces of Progressively Increasing Dimension".Journal of Intelligent & Robotic Systems.100(3): 777–789.doi:10.1007/s10846-020-01217-w.ISSN1573-0409.S2CID3622004.
  14. ^Islam, Fahad; Nasir, Jauwairia; Malik, Usman; Ayaz, Yasar; Hasan, Osman; "RRT*-Smart: Rapid convergence implementation of RRT* towards optimal solution",inProceedings of IEEE International Conference on Mechatronics and Automation (ICMA),pages 1651–1656, Chengdu, China, August 2012.
  15. ^Brunner, M.; Bruggemann, B.; Schulz, D.. "Hierarchical rough terrain motion planning using an optimal sampling-based method,"inInt. Conf. on Robotics and Automation (ICRA),Karlsruhe, Germany, 2013.
  16. ^Adiyatov, Olzhas; Varol, Huseyin Atakan. "Rapidly-exploring random tree based memory efficient motion planning". InMechatronics and Automation (ICMA), 2013 IEEE International Conference on,pages 354–359, 2013.doi:10.1109/ICMA.2013.6617944
  17. ^Adiyatov, Olzhas; Varol, Atakan (2013)."MATLAB Toolbox of RRT, RRT* and RRT*FN algorithms".Retrieved3 August2016.
  18. ^OlzhasAdi (Jan 26, 2015)."RRT*FN Brief Explanation"(video).YouTube.Archivedfrom the original on 2021-12-12.Retrieved3 August2016.
  19. ^Choudhury, Sanjiban; Scherer, Sebastian; Singh, Sanjiv. "RRT*-AR: Sampling-based alternate routes planning with applications to autonomous emergency landing of a helicopter".InRobotics and Automation (ICRA), 2013 IEEE International Conference on,Karlsruhe, 6–10 May 2013, pages 3947–3952.doi:10.1109/ICRA.2013.6631133
  20. ^Gammell, Jonathan D.; Srinivasa, Siddhartha S.; Barfoot, Timothy D. (8 Apr 2014). "Informed RRT*: Optimal sampling-based path planning focused via direct sampling of an admissible ellipsoidal heuristic".2014 IEEE/RSJ International Conference on Intelligent Robots and Systems.pp. 2997–3004.arXiv:1404.2334.doi:10.1109/IROS.2014.6942976.ISBN978-1-4799-6934-0.S2CID12233239.
  21. ^utiasASRL (Jul 4, 2014)."Informed RRT* @ UTIAS (IROS 2014)"(video).YouTube.Archivedfrom the original on 2021-12-12.Retrieved3 August2016.
  22. ^Naderi, Kourosh; Rajamäki, Joose; Hämäläinen, Perttu (2015). "RT-RRT*: a real-time path planning algorithm based on RRT*".InProceedings of the 8th ACM SIGGRAPH Conference on Motion in Games(MIG '15). ACM, New York, NY, USA, 113–118.doi:10.1145/2822013.2822036
  23. ^"RRTX:Real-Time Motion Planning/Replanning for Environments with Unpredictable Obstacles "(PDF).Archived fromthe original(PDF)on 2017-05-19.Retrieved2018-03-02.
  24. ^Comparison of RRTX, RRT# and RRT* when a shortcut is discovered in a static environment
  25. ^Palmieri, Luigi;Koenig, Sven;Arras, Kai O. "RRT-Based Nonholonomic Motion Planning Using Any-Angle Path Biasing".InRobotics and Automation (ICRA), 2016 Proceedings of the IEEE International Conference on,pages 2775-2781, 2016.
  26. ^RRT* FND - motion planning in dynamic environments
  27. ^Adiyatov, Olzhas; Varol, Huseyin Atakan. "A novel RRT-based algorithm for motion planning in Dynamic environments". InMechatronics and Automation (ICMA), 2017 IEEE International Conference on,pages 1416-1421, 2017.doi:10.1109/ICMA.2017.8016024
  28. ^Ford, Christen (2018-06-12).RRT-GPU and Minecraft: Hardware Accelerated Rapidly Exploring Random Trees in Three Dimensions(Thesis).doi:10.13140/rg.2.2.15658.11207.
  29. ^Amiryan, Javad; Jamzad, Mansour (2015).Adaptive motion planning with artificial potential fields using a prior path.Robotics and Mechatronics (ICROM), 2015 3rd RSI International Conference on. pp. 731–736.
  30. ^Sieverling, Arne; Eppner, Clemens; Wolff, Felix; Brock, Oliver (2017).Interleaving motion in contact and in free space for planning under uncertainty(PDF).2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). pp. 4011–4073.
  31. ^Rus, Daniela; Frazzoli, Emilio; Karaman, Sertac; Tumova, Jana; Chaudhari, Pratik; Castro, Luis I. Reyes (2013-05-06). "Incremental Sampling-based Algorithm for Minimum-violation Motion Planning".arXiv:1305.1102[cs.RO].
  32. ^"Maciej Kalisiak - RRT-blossom".dgp.toronto.edu.Retrieved2020-01-18.
  33. ^Tahirovic, Adnan; Ferizbegovic, Mina (May 2018)."Rapidly-Exploring Random Vines (RRV) for Motion Planning in Configuration Spaces with Narrow Passages".2018 IEEE International Conference on Robotics and Automation (ICRA).pp. 7055–7062.doi:10.1109/ICRA.2018.8460186.ISBN978-1-5386-3081-5.S2CID52285080.
  34. ^Lacevic, Bakir; Osmankovic, Dinko; Ademovic, Adnan (May 2016)."Burs of free C-space: A novel structure for path planning".2016 IEEE International Conference on Robotics and Automation (ICRA).pp. 70–76.doi:10.1109/ICRA.2016.7487117.ISBN978-1-4673-8026-3.S2CID15834630.
  35. ^Sintov, Avishai; Shapiro, Amir (2014)."Time-based RRT algorithm for rendezvous planning of two dynamic systems".2014 IEEE International Conference on Robotics and Automation (ICRA).IEEE International Conference on Robotics and Automation (ICRA). pp. 6745–6750.doi:10.1109/ICRA.2014.6907855.ISBN978-1-4799-3685-4.
  36. ^Lai, Tin; Ramos, Fabio; Francis, Gilad (2019)."Balancing Global Exploration and Local-connectivity Exploitation with Rapidly-exploring Random disjointed-Trees".2019 International Conference on Robotics and Automation (ICRA).Montreal, QC, Canada: IEEE. pp. 5537–5543.arXiv:1810.03749.doi:10.1109/ICRA.2019.8793618.ISBN978-1-5386-6027-0.S2CID52945105.
  37. ^Lai, Tin; Morere, Philippe; Ramos, Fabio; Francis, Gilad (April 2020). "Bayesian Local Sampling-Based Planning".IEEE Robotics and Automation Letters.5(2): 1954–1961.arXiv:1909.03452.doi:10.1109/LRA.2020.2969145.S2CID210838739.
  38. ^Kang, Jin-Gu; Lim, Dong-Woo; Choi, Yong-Sik; Jang, Woo-Jin; Jung, Jin-Woo (2021-01-06)."Improved RRT-Connect Algorithm Based on Triangular Inequality for Robot Path Planning".Sensors.21(2): 333.doi:10.3390/s21020333.ISSN1424-8220.PMC7825297.S2CID231303809.
  39. ^Kang, Jin-Gu; Jung, Jin-Woo (12 Jul 2021). "Post Triangular Rewiring Method for Shorter RRT Robot Path Planning".arXiv:2107.05344[cs.RO].
  40. ^Strub, Marlin P.; Gammell, Jonathan D. (2 Nov 2021). "AIT* and EIT*: Asymmetric bidirectional sampling-based path planning".arXiv:2111.01877[cs.RO].
[edit]