Motion Planning
Motion Planning
Search of a path from start to goal through obstacles.
Mobile Robot: direct application in task space
Robot Arms: articulated movement in task space is turned into path through C-space.
for mobile robots, the problem space is 2D. So, it's simpler. but for robot arms, the prbolem space can be high-dimensional. So, translating obstacle outlines from task space to C-space is hard.
practical planning for arms: sampling-based algorithms
2.1. based on "random" exploration of C-space
2.2. only requires the ability to check points in C-space.
Configuration Space
From task space to joint space
Sample Based Motion Planning
When you don't know the shape of the obstacles beforehand, use the power of randomness and trees.
only requires the ability to quickly check if a point in C-space is legal or not.
many versions are probabilistically complete: "if a path exists, it will be found in finite time."
...but makes no guarantees. "in worst case, time to solution can be very long"
in practice, these algorithms tend to be very effective in high-dimensional spaces.
examples: RRT & PRM (probabilistic roadmaps)
RRT (Rapidly exploring Random Trees) to go from Start S to Goal G
Basic Idea: build a tree by creating random new points and connect the new point to the closest point in the tree (but the length is only of some fixed length in the direction of new point). If there is an obstacle, extend the line only till it almost reaches obstacle. Continue until a connection to the goal G is found.
Step 2: Eliminate Zig Zags. After the tree connects start S and goal G, connect points that can be connected from S to G to get a straighter path.
PRM (probabilistic RoadMaps)
Similar to RRT. But, instead of closest point, the new random point is connected fully by lines to all points in the graph (roadmap) if there are not obstacles between. Continue for a certain number of points are added to roadmap.
After the roadmap is made, connect the start S to closest point in roadmap
Connect the goal G to closest point in roadmap.
Use the roadmap to get from S to G.
DEMO (Baxter from ReThink Robotics)
Get MoveIt to simulate motion planning robot arms in ROS.
Final Project: Implement Rapidly-exploring Random Trees (RRT)
Last updated