Title: Deadlock-Free and Collision-Free Coordination of Two Robot Manipulators
1Deadlock-Free and Collision-Free Coordination of
Two Robot Manipulators
- Patrick A. ODonnell and Tomas Lozano-Perez 89
- Presented by Vishal Srivastava
- Slides by Huy Nguyen with additions and
modifications by Vishal Srivastava
2Introduction
- Goals
- Coordinate the trajectories of two robot
manipulators so as to avoid collisions and
deadlock. - Minimize total execution time
- Definitions
- path Curve in C-space
- trajectory Time history of positions along a
path
3Assumptions
- Environment is known by both robots
- Individual paths are planned off-line prior to
coordination - Paths are predictable trajectories are less
predictable
4The Approach
- Decouple path specification step from trajectory
specification step. - Each individually-planned path is composed of a
sequence of path segments. - We estimate the time required to execute each
segment. - Trajectory coordination problem becomes a
scheduling problem where space is the shared
resource. -
5Task-Completion (TC) Diagram
Task-Completion Diagram
Paths in C-Space
gB
gB
B
gA
sA
sB
sA
gA
A
sB
6Task-Completion (TC) Diagram
gB
B
sB
sA
gA
A
7Task-Completion (TC) Diagram
- Axes represent robot path segments.
gB
B
sB
sA
gA
A
8Task-Completion (TC) Diagram
- Axes represent robot path segments.
- Rectangle Rij is shaded if the swept volume of
the ith path segment of A intersects with the
swept volume of the jth path segment of B.
gB
B
sB
sA
gA
A
9Task-Completion (TC) Diagram
- Axes represent robot path segments.
- Rectangle Rij is shaded if the swept volume of
the ith path segment of A intersects with the
swept volume of the jth path segment of B. - A schedule is a non-decreasing curve that
connects the lower-left corner of diagram to the
top-right corner.
gB
B
sB
sA
gA
A
10Task-Completion (TC) Diagram
- Axes represent robot path segments.
- Rectangle Rij is shaded if the swept volume of
the ith path segment of A intersects with the
swept volume of the jth path segment of B. - A schedule is a non-decreasing curve that
connects the lower-left corner of diagram to the
top-right corner. - A safe schedule is a schedule that never
penetrates the interior of the union of collision
rectangles.
gB
B
sB
sA
gA
A
11Task-Completion (TC) Diagram
- Axes represent robot path segments.
- Rectangle Rij is shaded if the swept volume of
the ith path segment of A intersects with the
swept volume of the jth path segment of B. - A schedule is a non-decreasing curve that
connects the lower-left corner of diagram to the
top-right corner. - A safe schedule is a path that never penetrates
the interior of a collision rectangle. - Boundaries of collision rectangles are safe!
gA
A
sA
sB
gB
B
12Greedy Scheduler
procedure Greedy Scheduler begin i0
j0 while i lt m or j lt n do
begin if Ri,j is collision free
then begin if i lt m
then begin Execute Ai
ii1 end if j lt n then
begin Execute Bj jj1 end
end else if i lt m and
Ri,j-1 is collision free then
begin Execute Ai ii1 end else
if j lt n and Ri-1,j is collision
free then begin Execute Bj
jj1 end Wait for any completion
signals end end
gB
B
sB
sA
gA
A
13Greedy Scheduler
procedure Greedy Scheduler begin i0
j0 while i lt m or j lt n do
begin if Ri,j is collision free
then begin if i lt m
then begin Execute Ai
ii1 end if j lt n then
begin Execute Bj jj1 end
end else if i lt m and
Ri,j-1 is collision free then
begin Execute Ai ii1 end else
if j lt n and Ri-1,j is collision
free then begin Execute Bj
jj1 end Wait for any completion
signals end end
gB
B
sB
sA
gA
A
14Greedy Scheduler
procedure Greedy Scheduler begin i0
j0 while i lt m or j lt n do
begin if Ri,j is collision free
then begin if i lt m
then begin Execute Ai
ii1 end if j lt n then
begin Execute Bj jj1 end
end else if i lt m and
Ri,j-1 is collision free then
begin Execute Ai ii1 end else
if j lt n and Ri-1,j is collision
free then begin Execute Bj
jj1 end Wait for any completion
signals end end
gB
B
sB
sA
gA
A
15Deadlock
- Greedy Scheduler can become Deadlocked.
gB
B
sB
sA
gA
A
16SW-closure
- Avoid deadlock by computing SW-closure of union
of collision regions to fills in non-convexities. - After taking the SW-closure
- A schedule exists if and only if both the origin
and goal remain clear. -
.
gB
B
sB
sA
gA
A
17Increasing Parallelism
- Parallelism is the degree of concurrency with
which the paths can be executed - Assume segment lengths now corresponds to
expected execution time - Best-planned paths have high parallelism
- Strive for a path close to the diagonal
B
A
18Increasing Parallelism
- TC Diagram may have collision regions near
diagonal because of original choice of paths.
B
A
19Increasing Parallelism
- For a problematic collision region, replan the
path of A treating the volume swept by B as an
obstacle.
B
B
A
A
Replanned path of A will typically be longer.
20Conclusions
- Main Ideas
- Decoupling of path and trajectory planning.
- Formulation of coordination as a scheduling
problem, use of Task-Completion diagram, etc. - Replans path to increase parallelism only in
problem regions using space-time planning. - Concerns
- How will it work for robots with multiple moving
joints? - Many approximations along the way. Too
conservative? No precise coordination. - No experimental data. Any implementations?
21Robots A, B, C, ?
- Could this be extended for gt2 robots?
- N-dimensional TC-Diagrams
- Number of manipulators colliding in a region
varies. - Can make use of the degree of collision when
deciding on which path segments to replan? - More ideas?
22Backtracking?
???
- Glaring omission ability to go backwards along
the path - Paths would be unchanged, but velocity of
trajectory could be negative - Search for safe schedule becomes more difficult
- SW-Closure would eliminate solutions
- Only worthwhile if such an interaction is
anticipated
B
A