Robot needs both sensors and effectors.
Motion Planning Problem – How do you program the robot arm to pick up an object?
Constraint: Don’t hit anything;
Goal: Sequence the joint angles required to pick up object subject to constraint.
In a 2D Configuration Space, robot position given by x & y-coords. In 3d, robot postion given by (x, y, theta). Robot now has 3 Degrees Of Freedom(DOF).
Helicopter has (x-pos, y-pos, z-pos, roll, pitch, yawl), so 6-DOF — 6 Reals.
“Workspace” refers to physical space.
“Configuration Space” refers to an abstract mathematical object.
Configuration Space can be partitioned into 2 subsets:
- Free Space
- Obstacle Space
Can test Configuration Space with a bool.
How do you find a path from C1 to C2 without running into obstacles with a robot with radius r?
Assumptions(2):
- Robot can move anywhere in freespace portion of Configuration Space
- Obstacles are known in advance and do not move
“Nonholonomic” — e.g. a car cannot move directly sideways.
How do you formulate the search space?
Construct a discrete graph.
Is the graph complete?
Search the graph, i.e. BFS, DFS…
What about computational complexity, i.e. what if you had to find shortest path?
Grid is tough choice due to exponential blowup.
Alternatives include(2):
- Roadmap (skeletonization) methods.
- You can construct “landmarks” and “roads” between them.
Visibility Graph, assumes objects in CS are polygonal. Derive discrete graph by connecting vertices of objects that comprise entirely of freespace — yields diagonals that you can use Dijkstra’s alogrithm on!!! Complete and optimal in 2D, but not 3D.
What is the problem with this type of approach? It tends to find paths along the edge of obstacles.
Another alternative: Randomized Path Planning Algorithm
- Leverages “landmarks” and “roads”.
- Probabalistic guarantees based upon the number of landmarks
Filed under: Uncategorized | Leave a Comment »