Title: Optimizing Schedules for Prioritized Path Planning of MultiRobot Systems
1Optimizing Schedules for Prioritized Path
Planning of Multi-Robot Systems
- Maren Bennewitz
- Wolfram Burgard
- Sebastian Thrun
2The Problem
- Given
- Map of the environment / configuration space
- Start and goal configurations for a team of
robots - Task
- Compute shortest collision-free paths for all
robots - Complexity
- Exponential in the number of robots / dimension
of the configuration space
3Centralized Methods
- Features
- Planning in the composite configuration space
- Compute the optimal solution
- In praxis Heuristic approaches to deal with the
enormeous complexity of the configuration space - Approaches (completeness and optimality not
guaranteed) - Potential field techniques Barraquand et. al.,
89, Tournassoud, 86 - Roadmap methods Sveska Overmars, 95
4The Decoupled Approach (incomplete)
- Compute optimal paths for the individual robots
independently. - Assign priorities (not necessarily).
- Try to resolve possible conflicts between the
paths. - Approaches
- Path coordination ODonnell Lozano-Perez, 89,
Leroy et. al., 99 - Planning in the configuration time-space
- V-Graph algorithm Erdmann Lozano-Perez, 87
- Potential fields Warren, 90
- A Azarm Schmidt, 96
5Path Coordination
ODonnell Lozano-Perez, 89, Leroy et. al.,
99
- Key idea
- Keep the robots on their individual optimal
paths. - Allow them to stop, to move forward or even to
move backward on their trajectories in order to
avoid collisions. - Complexity
- NP-hard (Job Shop Scheduling Problem)
- In practice
- Prioritized variant required
- Complexity O(n mlogm)
6Application of A to Single-robot Path Planning
(Given a Grid Map)
Computes the optimal solution!
7Application of A to Multi-robot Path Planning
- Assignment of priorities to the individual
robots - Application of A in the configuration
time-spaces - Advantage
- Optimal solution given the previously computed
paths! - Complexity O(n mlogm)
8Example Situation (4 Robots)
9Real Robot ExperimentA-based Planning in the
Configuration Time-space
15 m
19 m
- If Albert has highest priority A finds a
solution. - The path coordination method cannot solve this
problem at all.
10Flexible Priority Schemes
- Current techniques leave open how to assign
priorities or use a fixed scheme. - Our approach
- Interleave path planning and priority assignment
using randomized techniques.
11Influence of Priority Schemes
No solution can be found if robot 3 has higher
priority than robot 1!
12Finding Solvable Priority Schemes
- FOR tries 1 TO maxTries BEGIN
- select random order P
- FOR flips 1 TO maxFlips BEGIN
- choose random i, j with i lt j
- P swap(i, j, P)
- IF solvable(P)
- return P
- END FOR
- END FOR
13Speed-up the Search
- The plain randomized search technique produces
good results, but - often a lot of iterations are necessary to come
up with a solution. - Focus the search.
14Extracting Constraints
The task specification yields the constraints
and
15Exploiting Constraints to Find Solvable Priority
Schemes
- Target position of robot j is too close to the
initially optimal path of robot i - introduce the constraint
- When initially assigning priorities try to
satisfy as many constraints as possible. - During the search only change the priorities of
the robots which could not be sorted
topologically.
16Example Initial Situation
Priority scheme 3, 6, 7, 2, 4, 9 ... 0, 1, 5, 8
17Example Resulting Paths
18Experimental Evaluation
- Application of our algorithm to
- A in the configuration time-space and
- the path coordination method
- Using 2 different environments (noncyclic/cyclic)
- Randomly generated start/goal points
- Goal Demonstration that our technique
significantly increases the number of solved
planning problems.
19Strategies to Find Solvable Priority Schemes
- A randomly chosen order for the robots.
- A single order we obtain by applying a greedy
approach to satisfy as many constraints as
possible. - Randomized search starting with a random order
and without considering the constraints. - Constrained randomized search starting with an
order computed in the way as strategy 2.
20Reducing the Number Of Failures (Noncyclic
Corridor Environment)
A in the configuration time-space
Path coordination method
21Reducing the Number Of Failures (Cyclic Corridor
Environment)
22Number of Robots Lying on a Cycle in the
Constraint Graph
23Influence of Priority Schemes on the Path Length
24Optimizing Priority Schemes
- FOR tries 1 TO maxTries BEGIN
- select random order P
- IF (tries 1)
- P P
- FOR flips 1 TO maxFlips BEGIN
- choose random i, j with i lt j
- P swap(i, j, P)
- IF moveCosts(P) lt moveCosts(P)
- P P
- END FOR
- IF moveCosts(P) lt moveCosts(P)
- P P
- END FOR
- RETURN P
25Example Situation (30 Robots)
26Summed Move Costs Over Time
27Reducing the Path Length
28Conclusions (1)
- Randomized optimization technique for priority
schemes - Applied to two decoupled and prioritized
path planning techniques
29Conclusions (2)
- Flexible priority schemes
- seriously decrease the number of failures
inwhich no solution can be found for a
givenplanning problem and - lead to a significant reduction of the
overallpath length.
30Future Work
- Different velocities of the robots
- Reactive/on-line techniques
- Detection of dead-locks/opportunities