Finding Optimal Solutions to Cooperative Pathfinding Problems

Post on 21-Jan-2016

54 views 0 download

Tags:

description

Finding Optimal Solutions to Cooperative Pathfinding Problems. Trevor Standley Computer Science Department University of California, Los Angeles http://cs.ucla.edu/~tstand/. Introduction. Pathfinding Problems A single agent must find a path from a start state to a goal state - PowerPoint PPT Presentation

Transcript of Finding Optimal Solutions to Cooperative Pathfinding Problems

Finding Optimal Solutions to Cooperative Pathfinding ProblemsTrevor Standley

Computer Science Department

University of California, Los Angeles

http://cs.ucla.edu/~tstand/

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

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

The Standard Algorithm The standard algorithm is A*

Centralized algorithm

There is a standard heuristic

State representation – A position for each agent

State space – Exponential in the number of agents

An operator – Complete assignment of moves to agents- One of {N; NE; E; SE; S; SW; W; NW; and wait} for each agent

- Exponential in the number of agents

Obviously this algorithm is not taken seriously

My algorithm Optimal Complete Two main contributions

Operator decomposition

Independence detection

Operator Decomposition Intuition

Also a centralized algorithm

Still use A*

Change how operators are defined: only one agent moves at a time

Simple idea, tricky to get details right

Operator Decomposition Each operator assigns a move to a single agent Assignments are made in a fixed order Move assignments stored as part of the state

representation

Operator Decomposition Example

Operator Decomposition

The Savings of Operator Decomposition

Consequences of Operator Decomposition Branching factor becomes polynomial However, state space still exponential

Simple Independence Detection

Simple Independence Detection

1. Create a group for each agent

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

Simple Independence Detection

Simple Independence Detection Problem Are these agents independent?

Simple Independence Detection Problem Are these agents independent?

Better Independence Detection When a conflict is detected between two groups, try

to find an alternate path for one of the groups If that fails try to find an alternate path for the other

group Only combine groups if no alternate path could be

found

Independence Detection Which alternate paths are the best? Only search for optimal paths Paths can be found using operator decomposition Find paths that will lead to fewest number of future

conflicts Operator decomposition can be modified to find

optimal paths with few future conflicts

My Algorithm Uses decoupled planning where possible Only uses centralized planning for non-independent

subproblems Calls operator decomposition as a subroutine to do

the centralized planning

Results 10000 randomly generated problems with 2-60 agents

Conclusions Researchers have developed centralized and

decoupled approaches for solving cooperative pathfinding problems

Operator decomposition is an improved centralized approach

Independence detection is a hybrid approach Only uses centralized planning when necessary

Acknowledgments My advisor, Rich Korf. Dawn Chen for editing, advice, and artwork