This project focuses on implementing sampling-based motion planning algorithms in 3D and 2D envinronments.
For the 3D environments, Rapidly-exploring Random Tree (RRT) and Bi-directional Rapidly-exploring Random Tree (BiRRT) algorithms are applied to a simplified 3-DOF UR5 robot arm manipulator. The goal is for the end link of the arm to go from its initial position to the target position, without colliding with obstacles in the environment. This was simulated in pybullet.
For the 2D environments, Rapidly-exploring Random Tree (RRT) and Rapidly-exploring Random Tree star (RRT*) algorithms are applied to three different robot systems: 2D point-mass, circular rigid body, and a rectangular rigid body. Each robot system needs to reach the target location, without colliding with the obstacles in the environment.
BiRRT w/smoothing will always generate a solution (path) if one exists and is much faster and smoother than the traditional RRT.
RRT finds a path, but does not return the most optimal one
RRT* is slower than RRT, but it is guaranteed to return the shortest path