Skip to content

Implementation of a Research Paper on MOD-RRT* - A Sampling Based Algorithm for Robot Path Planning in Dynamic Environment

License

Notifications You must be signed in to change notification settings

okritvik/MOD-RRT-Star-Implementation-Point-Robot

Repository files navigation

MOD-RRT* on a Point Robot in a Dynamic Environment

Project - 05 for the course, 'ENPM661 - Planning for Autonomous Robots' at the University of Maryland, College Park.

Implementation of the Multi-Objective Dynamic RRT* algorithm for path planning of a holonomic point robot.

Reference Paper

  • J. Qi, H. Yang and H. Sun, "MOD-RRT*: A Sampling-Based Algorithm for Robot Path Planning in Dynamic Environment," in IEEE Transactions on Industrial Electronics, vol. 68, no. 8, pp. 7244-7251, Aug. 2021, doi: 10.1109/TIE.2020.2998740.

Team Members:

  • Kumara Ritvik Oruganti (117368963)
  • Adarsh Malapaka (118119625)

Required Libraries:

  • cv2 : To add arrows, lines or circles in the map at the desired coordinates.
  • time: To calculate the running time for the RRT* algorithm.
  • numpy: To define the obstacle map matrix
  • argparse: To parse command line arguments
  • random: To generate random nodes
  • copy: To create copy of lists

For Map 01:

[co-ordinates with respect to bottom left corner origin of the window]

Start-Node: (10, 10)

Goal-Node:  (350, 150)

Robot Clearance: 5
Obstacle Map (Known) Modified RRT* Tree Expansion Modified RRT* Path
Optimized Modified RRT* Path Obstacle Map - Known (Blue) & Unknown (Green) Optimized Re-planned Path

For Map 02:

[co-ordinates with respect to bottom left corner origin of the window]

Start-Node: (10, 10)

Goal-Node:  (350, 150)

Robot Clearance: 5
Obstacle Map (Known) Modified RRT* Tree Expansion Modified RRT* Path
Optimized Modified RRT* Path Obstacle Map - Known (Blue) & Unknown (Green) Optimized Re-planned Path

Note:

The shapes in the map including the outer boudary walls have been bloated by robot clearance amount on all sides.

Running the Code:

The code map number as an argument.

Format/Syntax:

	  'python3 mod_rrt_star.py <map-argument>'

For Map 01:

	  'python3 mod_rrt_star.py --map1'

For Map 02:

	  'python3 mod_rrt_star.py --map2'

Note:

The algorithm is dependent on the randomly generated nodes. If the nodes are not sufficient (i.e. the path converges very quickly), the algorithm maynot find a feasible path avoiding the obstacles. Hence, it is adviced to rerun the program again. If the path doesn't converge, rerun the program using the above commands after pressing the ctrl+c to force quit the current run.

About

Implementation of a Research Paper on MOD-RRT* - A Sampling Based Algorithm for Robot Path Planning in Dynamic Environment

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages