{"id":28751937,"url":"https://github.com/ethanjameslew/rrt_merci","last_synced_at":"2025-06-16T23:07:36.797Z","repository":{"id":51718908,"uuid":"498583960","full_name":"EthanJamesLew/RRT_Merci","owner":"EthanJamesLew","description":"RRT Implementation used for GRAIC Racing Competition","archived":false,"fork":false,"pushed_at":"2022-06-15T18:02:31.000Z","size":18009,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2023-03-04T05:23:36.330Z","etag":null,"topics":["autonomous-racing","autonomous-vehicles","graic","path-planning","robotics-competition","rrt","rrt-star"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/EthanJamesLew.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-06-01T03:58:54.000Z","updated_at":"2022-08-02T16:49:57.000Z","dependencies_parsed_at":"2022-08-22T09:00:39.769Z","dependency_job_id":null,"html_url":"https://github.com/EthanJamesLew/RRT_Merci","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"purl":"pkg:github/EthanJamesLew/RRT_Merci","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EthanJamesLew%2FRRT_Merci","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EthanJamesLew%2FRRT_Merci/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EthanJamesLew%2FRRT_Merci/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EthanJamesLew%2FRRT_Merci/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EthanJamesLew","download_url":"https://codeload.github.com/EthanJamesLew/RRT_Merci/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EthanJamesLew%2FRRT_Merci/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260256257,"owners_count":22981807,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["autonomous-racing","autonomous-vehicles","graic","path-planning","robotics-competition","rrt","rrt-star"],"created_at":"2025-06-16T23:07:31.714Z","updated_at":"2025-06-16T23:07:36.784Z","avatar_url":"https://github.com/EthanJamesLew.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MERCI RRT Path Planners\nImplementations of RRT-based algorithms used in [GRAIC 2.0](https://popgri.github.io/Race/outreach/) Competition by team \nMERCI (MEthodological Racing Computer Intelligence). **MERCI placed 1st in the Head-to-Head category.**\n\n![racing example](./doc/img/planner_demo.gif)\n\n| Rapidly Exploring Random Trees (RRT)    | RRT*                                            |\n|----------------------------------------|-------------------------------------------------|\n| ![RRT Diagram](./doc/img/RRT_Tree.svg) | ![RRT Star Diagram](./doc/img/RRTStar_Tree.svg) |\n\n## Overview\nThe RRT implementations are designed for 2D vehicle racing, containing\n\n* Planners\n    * Rapidly Exploring Random Trees (RRT)\n    * RRT*\n    * [TODO] Kinematic RRT\n        * Dubins Path\n    * [TODO] Dynamic RRT\n        * LQR RRT?\n* Obstacles\n    * Circles\n    * Rectangles \n    * Convex Polygons \n    * Parallel Curves \n* Smoothers\n    * Random Path Smoothing (obstacle aware)\n* Samplers\n    * Uniform\n    * [TODO] Sobol\n\n## Benchmarks\n\nWe have a crude [benchmarks](./notebooks/rrt-benchmark.ipynb) notebook. We see that for RRT implementations, MerciPy achieves planning **10s to 100s of times faster than an existing python implementation**.\n\n## References \n\nAlgorithms were taken from their respective papers. Also, Pythonrobotics implementations were referenced.\n\n### PythonRobotics\n\u003e Sakai, A., Ingram, D., Dinius, J., Chawla, K., Raffin, A., \u0026 Paques, A. (2018). Pythonrobotics: a python code collection of robotics algorithms. arXiv preprint arXiv:1808.10703.\n\n### RRT\n\u003e LaValle, S. M., \u0026 Kuffner Jr, J. J. (2001). Randomized kinodynamic planning. The international journal of robotics research, 20(5), 378-400.\n\n### RRT*\n\u003e Karaman, S., \u0026 Frazzoli, E. (2011). Sampling-based algorithms for optimal motion planning. The international journal of robotics research, 30(7), 846-894.\n\n## Python Bindings\n\nSee the [mercipy](./mercipy) folder.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethanjameslew%2Frrt_merci","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fethanjameslew%2Frrt_merci","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethanjameslew%2Frrt_merci/lists"}