Rapidly exploring random tree explained

A rapidly exploring random tree (RRT) is an algorithm designed to efficiently search nonconvex, high-dimensional spaces by randomly building a space-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 by Steven M. LaValle and James J. Kuffner Jr.[1] [2] They easily handle problems with obstacles and differential constraints (nonholonomic and kinodynamic) and have been widely used in autonomous robotic motion 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 a Monte-Carlo method to bias search into the largest Voronoi regions of a graph in a configuration space. Some variations can even be considered stochastic fractals.[3]

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

Description

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 its Voronoi region.As the largest Voronoi regions belong 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

For a general configuration space C, the algorithm in pseudocode is as follows:

Input: Initial configuration qinit, number of vertices in RRT K, incremental distance Δq Output: RRT graph G G.init(qinit) for k = 1 to K do qrand ← RAND_CONF qnear ← NEAREST_VERTEX(qrand, G) qnew ← NEW_CONF(qnear, qrand, Δq) G.add_vertex(qnew) G.add_edge(qnear, qnew) return G

In the algorithm above, "RAND_CONF" grabs a random configuration qrand in C. This may be replaced with a function "RAND_FREE_CONF" that uses samples in Cfree, while rejecting those in Cobs using some collision detection algorithm.

"NEAREST_VERTEX" is a function that runs through all vertices v in graph G, calculates the distance between qrand and v using some measurement function thereby returning the nearest vertex.

"NEW_CONF" selects a new configuration qnew by moving an incremental distance Δq from qnear in the direction of qrand. (According to [4] in holonomic problems, this should be omitted and qrand used instead of qnew.)

Variants and improvements for motion planning

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.

See also

External links

Notes and References

  1. LaValle. Steven M.. Steven M. LaValle. Rapidly-exploring random trees: A new tool for path planning. Technical Report. October 1998. TR 98–11. Computer Science Department, Iowa State University.
  2. LaValle. Steven M.. Steven M. LaValle. Kuffner Jr.. James J.. James J. Kuffner Jr.. Randomized Kinodynamic Planning. The International Journal of Robotics Research . 2001. 20. 5. 10.1177/02783640122067453. 378–400. 40479452.
  3. http://msl.cs.uiuc.edu/rrt/about.html About 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
  5. Book: Petit. Louis. Desbiens. Alexis Lussier. 2021 IEEE International Conference on Systems, Man, and Cybernetics (SMC) . RRT-Rope: A deterministic shortening approach for fast near-optimal path planning in large-scale uncluttered 3D environments . 2021-10-17. https://ieeexplore.ieee.org/document/9659071. Melbourne, Australia. IEEE. 1111–1118. 10.1109/SMC52423.2021.9659071. 978-1-6654-4207-7. 252590377 .
  6. Ranganathan, Ananth; Koenig, Sven. PDRRTs: "Integrating Graph-Based and Cell-Based Planning". In Proceedings 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.. Real-time Motion Planning with Applications to Autonomous Urban Driving. IEEE Transactions on Control Systems Technology. September 2009. 17. 5. 1105–1118. 10 April 2017. 10.1109/tcst.2008.2012116. 10.1.1.169.7922. 1721.1/52527. 14526513. 12 June 2021. https://web.archive.org/web/20210612232111/http://acl.mit.edu/papers/KuwataTCST09.pdf. dead.
  9. Karaman . Sertac . Frazzoli . Emilio . 1005.0416 . Incremental Sampling-based Algorithms for Optimal Motion Planning . cs.RO . 3 May 2010.
  10. Karaman . Sertac . Frazzoli . Emilio . 1105.1186 . Sampling-based Algorithms for Optimal Motion Planning . cs.RO . 5 May 2011.
  11. Web site: OlzhasAdi. RRT* Brief Explanation. https://ghostarchive.org/varchive/youtube/20211212/JM7kmWE8Gtc. 2021-12-12 . live. YouTube. 3 August 2016. video. Jan 26, 2015.
  12. Book: Perez . Alejandro . Platt . Robert . Konidaris . George . Kaelbling . Leslie . Lozano-Perez . Tomas . 2012 IEEE International Conference on Robotics and Automation . LQR-RRT*: Optimal sampling-based motion planning with automatically derived extension heuristics . May 2012 . https://ieeexplore.ieee.org/document/6225177 . 2537–2542 . 10.1109/ICRA.2012.6225177. 978-1-4673-1405-3 . 1914056 .
  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. en. 100. 3. 777–789. 10.1007/s10846-020-01217-w. 3622004 . 1573-0409.
  14. Islam, Fahad; Nasir, Jauwairia; Malik, Usman; Ayaz, Yasar; Hasan, Osman; "RRT*-Smart: Rapid convergence implementation of RRT* towards optimal solution", in Proceedings 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," in Int. Conf. on Robotics and Automation (ICRA), Karlsruhe, Germany, 2013.
  16. Adiyatov, Olzhas; Varol, Huseyin Atakan. "Rapidly-exploring random tree based memory efficient motion planning". In Mechatronics and Automation (ICMA), 2013 IEEE International Conference on, pages 354–359, 2013.
  17. Web site: Adiyatov, Olzhas. Varol, Atakan. MATLAB Toolbox of RRT, RRT* and RRT*FN algorithms. 3 August 2016. 2013.
  18. Web site: OlzhasAdi. RRT*FN Brief Explanation. https://ghostarchive.org/varchive/youtube/20211212/Kv0yqVP5iNA. 2021-12-12 . live. YouTube. 3 August 2016. video. Jan 26, 2015.
  19. Choudhury, Sanjiban; Scherer, Sebastian; Singh, Sanjiv. "RRT*-AR: Sampling-based alternate routes planning with applications to autonomous emergency landing of a helicopter". In Robotics and Automation (ICRA), 2013 IEEE International Conference on, Karlsruhe, 6–10 May 2013, pages 3947–3952.
  20. Book: Jonathan D. . Gammell . Siddhartha S.. Srinivasa . Timothy D. . Barfoot . 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems . Informed RRT*: Optimal sampling-based path planning focused via direct sampling of an admissible ellipsoidal heuristic . 1404.2334 . 8 Apr 2014 . 10.1109/IROS.2014.6942976 . 2997–3004 . 978-1-4799-6934-0 . 12233239 .
  21. Web site: utiasASRL. Informed RRT* @ UTIAS (IROS 2014) . https://ghostarchive.org/varchive/youtube/20211212/nsl-5MZfwu4. 2021-12-12 . live. YouTube. 3 August 2016. video. Jul 4, 2014.
  22. Naderi, Kourosh; Rajamäki, Joose; Hämäläinen, Perttu (2015). "RT-RRT*: a real-time path planning algorithm based on RRT*". In Proceedings of the 8th ACM SIGGRAPH Conference on Motion in Games (MIG '15). ACM, New York, NY, USA, 113–118.
  23. Web site: RRT: Real-Time Motion Planning/Replanning for Environments with Unpredictable Obstacles . 2018-03-02 . 2017-05-19 . https://web.archive.org/web/20170519114919/http://robot.cmpe.boun.edu.tr/wafr2014/papers/paper_35.pdf . dead .
  24. https://www.youtube.com/watch?v=xq1qAkvgX_Q 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". In Robotics and Automation (ICRA), 2016 Proceedings of the IEEE International Conference on, pages 2775-2781, 2016.
  26. https://www.youtube.com/watch?v=hXTnWN8NiKE RRT* FND - motion planning in dynamic environments
  27. Adiyatov, Olzhas; Varol, Huseyin Atakan. "A novel RRT-based algorithm for motion planning in Dynamic environments". In Mechatronics and Automation (ICMA), 2017 IEEE International Conference on, pages 1416-1421, 2017.
  28. Ford. Christen. RRT-GPU and Minecraft: Hardware Accelerated Rapidly Exploring Random Trees in Three Dimensions. 2018-06-12. 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 . 731–736 .
  30. Sieverling. Arne. Eppner. Clemens. Wolff. Felix. Brock. Oliver. 2017. Interleaving motion in contact and in free space for planning under uncertainty.. 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) . 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. cs.RO. en. 1305.1102.
  32. Web site: Maciej Kalisiak - RRT-blossom. www.dgp.toronto.edu. 2020-01-18.
  33. Book: Tahirovic . Adnan . Ferizbegovic . Mina . 2018 IEEE International Conference on Robotics and Automation (ICRA) . Rapidly-Exploring Random Vines (RRV) for Motion Planning in Configuration Spaces with Narrow Passages . May 2018 . https://ieeexplore.ieee.org/document/8460186 . 7055–7062 . 10.1109/ICRA.2018.8460186. 978-1-5386-3081-5 . 52285080 .
  34. Book: Lacevic . Bakir . Osmankovic . Dinko . Ademovic . Adnan . 2016 IEEE International Conference on Robotics and Automation (ICRA) . Burs of free C-space: A novel structure for path planning . May 2016 . https://ieeexplore.ieee.org/document/7487117 . 70–76 . 10.1109/ICRA.2016.7487117. 978-1-4673-8026-3 . 15834630 .
  35. https://ieeexplore.ieee.org/document/6907855. Time-based RRT algorithm for rendezvous planning of two dynamic systems. Sintov. Avishai. Shapiro. Amir. 2014 IEEE International Conference on Robotics and Automation (ICRA) . 2014. 6745–6750 . 10.1109/ICRA.2014.6907855. 978-1-4799-3685-4 . IEEE International Conference on Robotics and Automation (ICRA).
  36. Book: Lai. Tin. Ramos. Fabio. Francis. Gilad. 2019 International Conference on Robotics and Automation (ICRA) . Balancing Global Exploration and Local-connectivity Exploitation with Rapidly-exploring Random disjointed-Trees . 2019. https://ieeexplore.ieee.org/document/8793618. Montreal, QC, Canada. IEEE. 5537–5543. 10.1109/ICRA.2019.8793618. 978-1-5386-6027-0. 1810.03749. 52945105.
  37. Lai . Tin . Morere . Philippe . Ramos . Fabio . Francis . Gilad . Bayesian Local Sampling-Based Planning . IEEE Robotics and Automation Letters . April 2020 . 5 . 2 . 1954–1961 . 10.1109/LRA.2020.2969145. 1909.03452. 210838739 .
  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. en. 21. 2. 333. 10.3390/s21020333. 231303809 . 1424-8220 . free . 7825297.
  39. Kang. Jin-Gu. Jung. Jin-Woo. Post Triangular Rewiring Method for Shorter RRT Robot Path Planning. cs.RO . 12 Jul 2021. 2107.05344.
  40. Strub . Marlin P. . Gammell . Jonathan D. . 2 Nov 2021 . AIT* and EIT*: Asymmetric bidirectional sampling-based path planning . 2111.01877 . cs.RO.