Finding Optimal Solutions to Cooperative Pathfinding Problems

Preview:

DESCRIPTION

Finding Optimal Solutions to Cooperative Pathfinding Problems. Trevor Standley and Rich Korf Computer Science Department University of California, Los Angeles. Introduction. Pathfinding Problems A single agent must find a path from a start state to a goal state - PowerPoint PPT Presentation

Citation preview

Finding Optimal Solutions to Cooperative Pathfinding ProblemsTrevor Standley and Rich Korf

Computer Science Department

University of California, Los Angeles

Introduction Pathfinding Problems

A single agent must find a path from a start state to a goal state

Cooperative Pathfinding Problems Multiple agents interact

Want to minimize the total cost

Motivation

Motivation

My Formulation Gridworld pathfinding

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Related Work Centralized Approaches

Strengths: Typically complete, can be optimal

Weaknesses: Takes forever!

Decoupled Approaches Strengths: Fast

Weaknesses: Incomplete and suboptimal

Our Prior Work (Standley AAAI-10) Independence Detection

Empowers centralized algorithms.

Combines the strength of centralized and decentralized approaches.

Maintains optimality and completeness.

Simple Independence DetectionFrom (Standley AAAI-10)

Simple Independence Detection

1. Put each agent into its own group.

2. Plan paths for each group independently

3. Check for conflicts in new paths

4. Combine groups with conflicting paths

5. Repeat 2-4 until no conflicts

From (Standley AAAI-10)

Simple Independence DetectionFrom (Standley AAAI-10)

Simple Independence Detection Problem Are these agents independent?

From (Standley AAAI-10)

Simple Independence Detection Problem Are these agents independent?

From (Standley AAAI-10)

Better Independence Detection

When a conflict is detected between two groups, try to find an alternative path for one of the groups

If that fails try to find an alternate path for the other group

Only as a last resort do we combine the groups

From (Standley AAAI-10)

Best Independence Detection How can we make agent 2 take this path initially?

From (Standley AAAI-10)

Best Independence Detection Try to avoid future conflicts

avoid the current paths of other agents.

From (Standley AAAI-10)

Reservation Tables Illegal move table

Contains all the ways alternative paths could result in a conflict with the currently conflicting group.

Consider such moves illegal.

Conflict avoidance table Contains all the ways alternative paths could result in a conflict with any

other group

Keep track of conflict avoidance table violations and

Reservation Tables

Illegal move table.

From (Standley AAAI-10)

Reservation Tables

Illegal move table.

From (Standley AAAI-10)

Reservation Tables

Illegal move table.

From (Standley AAAI-10)

Reservation Tables Illegal move table

Contains all the ways alternative paths could result in a conflict with the currently conflicting group.

Consider such moves illegal.

Conflict avoidance table Contains all the ways alternative paths could result in a conflict with any

other group

Keep track of conflict avoidance table violations

Reservation Tables

Conflict avoidance table.

From (Standley AAAI-10)

Reservation Tables

Conflict avoidance table.

From (Standley AAAI-10)

Reservation Tables

Conflict avoidance table.

From (Standley AAAI-10)

Complete Approximation Algorithms Our previous work maintained optimality by:

Only accepting alternate paths if they have the same cost as original paths.

Coupling independence detection with an optimal centralized algorithm.

We recognize in our current work that we can drop these two constraints.

Complete Approximation Algorithms Modifications to the centralized algorithm

Expand nodes with fewest violations first

Use cost to break ties

When to drop these constraints Always

Leads to a fast and complete algorithm

When doing so avoids the creation of groups containing more than x agents Leads to a slower but still fast algorithm

Produces higher quality paths

Parameterized Approximation Maximum group size parameter x

Drop constraints to avoid creating groups larger than x.

x =1 : always drop the constraints.

x = ∞ : never drop the constraints (optimal)

The algorithm is complete for any choice of x

Simple Optimal Anytime Algorithm Run the parameterized approximation with x = 1. Then run the parameterized approximation with x = 2. … When we run out of time, we return the best solution

found by any run.

Simple Optimal Anytime Algorithm Problem The simple anytime algorithm suffers the cost of

unused and incomplete iterations.

Optimal Anytime Algorithm Problem Keep paths and groupings from previous iterations

when possible. Keep track of groups that might not have optimal paths.

Fix these paths one at a time starting with the easiest.

Optimal Anytime Algorithm Keep a lower bound for each group. When merging a group, add lower bounds

Optimal Anytime Algorithm Update best path many times within an iteration.

Whenever the solution is conflict free we update the best solution found.

When lower bound equals cost, we’re done

Results Our coarsest approximation is complete, has

competitive running time, and produces superior solutions.

As an optimal algorithm, our anytime algorithm is competitive with our previous state-of-the-art.

If our anytime algorithm is terminated early, it often returns an optimal path.

Recommended