Deadlock-Free and Collision-Free Coordination for Two Robot Manipulators Patrick A. O’Donnell and Tomas Lozano-Perez MIT Artificial Intelligence Lab (1989) Presented by: Robbie Paolini
Planning for a robotic manipulator How about 2 robotic manipulators? – Collision – Deadlock Coordinating Manipulators
Previous Approaches Global: Construct complete trajectories for all robots, with swept volumes in space-time – Depend on carefully controlled trajectories – Computationally intense Local: Make decisions at each time step – May reach deadlock – Issues when paths are tightly constrained
Assumptions and Approach Known environment Robot’s paths can be planned in advance Trajectories are less predictable Generate a plan for each robot Path segments within a box in joint space Rough execution time estimate Trajectory Coordination => Scheduling Problem
Goal Task-Completion Diagram Start First Robot’s Steps Second Robot’s Steps Can solve this with a local greedy approach
Dealing with Deadlock SW Closure
“Local” Greedy Scheduler Decentralized version – Rows or columns of SW-closure regions become “locks” Global Scheduler – Optimize a cost Execution time Constructing a Schedule
Reducing Execution Time We ignored time for each segment Want to increase Parallelism – Mostly diagonal paths Modify some segments of the path if: 1.Region is shaded because of collision 2.Initial and final positions are collision free 3.Region causes significant increase in total time
Increasing Parallelism
Variable Segment Times What happens if we encounter a significant delay? Replan the rest of the path Precompute a decision tree?
Collision Checking Compute conservative swept volume Check collision of bounding box approximations – Reduce planning time
Summary Create TC-diagram – Trajectory planning -> Scheduling problem Greedy and global approaches to planning Increase parallelism by modifying troublesome segments Fast collision checking via approximations
Limitations and Future Work Computing entire execution paths of both arms may be unnecessary Modifying paths may still create suboptimal plans Not real time – If delays occur, may be suboptimal Uncertainty in paths? – WAM Arm