david m. bond niels a. widger xiaoxun sun wheeler …ruml/papers/rtds-socs10-talk.pdfdavid m. bond...

Post on 09-Jul-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

David M. BondNiels A. WidgerWheeler Ruml

Xiaoxun Sun

Special thanks to Sven Koenig, Nathan Sturtevant, Brad Larsen,

NSF grant IIS-0812141 and the DARPA CSSG program

1David Bond (UNH)Real Time Search in Dynamic Worlds

Real Time Search in Dynamic Worlds

• Real Time Search

– Search that interleaves planning and execution of the plan

– Hard constraint on the amount of planning that can be done each time step

• Dynamic Worlds

– Worlds in which changes occur

– Increases or decreases in edge cost(s)

David Bond (UNH) 2Real Time Search in Dynamic Worlds

Real Time Search in Dynamic Worlds

• Video Games

• Robotics

• Agents must returnan action within abounded time

• Doors, Bridges, Walls

Real Time Search in Dynamic Worlds

David Bond (UNH) 3

Problem

• Solutions to Dynamism in Real Time Search

– Run a real time search algorithm repetitively

• No real time algorithm designed to work in dynamic worlds

• Do not account for edge cost decreases

4David Bond (UNH)Real Time Search in Dynamic Worlds

Outline

• Problem

• Previous Work

– LSS-LRTA* – real time search

• agent centered search

– D* Lite – non-real time, dynamic search

• Solution - Real Time D* Lite (RTD*)

• Empirical Evaluation

5David Bond (UNH)Real Time Search in Dynamic Worlds

Previous Work: LSS-LRTA*

• Repetitive agent centered search

• Uses A* lookahead for agent centered search

• Moves towards most promising node on the fringe of the agent centered search

• Updates cached h values of all states in local search space with Dijkstra’s algorithm

• Avoids local minima through these cached values

6David Bond (UNH)Real Time Search in Dynamic Worlds

LSS-LRTA* Video

7David Bond (UNH)Real Time Search in Dynamic Worlds

Previous Work: D* Lite

• Dynamic non-real time search algorithm

• Search backwards from goal to agent

• When edge cost(s) change reuses previous search

8David Bond (UNH)Real Time Search in Dynamic Worlds

D* Lite Video

9David Bond (UNH)Real Time Search in Dynamic Worlds

Solution: Real Time D* Lite

• Real Time• Dynamic• Do D* Lite

– Stop before computation limit reached– Do some agent centered search– Resume

• Bidirectional Search– Use D* Lite to search from goal to agent

• Global search

– Use LSS-LRTA* to search from agent to goal• Agent centered search

10David Bond (UNH)Real Time Search in Dynamic Worlds

Global Search

Solution: Real Time D* Lite

• Combine a real time search algorithm with a dynamic search algorithm

11David Bond (UNH)

Agent Centered Search

Goal

Agent

Real Time Search in Dynamic Worlds

Solution: Real Time D* Lite

• Persist global search through planning phase

• Move based on agent centered search when the global search does not have a complete path

• Move based on global search once complete path from goal to agent is found

• Computation limit divided between global and local search based on ratio parameter

12David Bond (UNH)Real Time Search in Dynamic Worlds

Real Time D* Lite Video

13David Bond (UNH)Real Time Search in Dynamic Worlds

Properties of Real Time D* Lite

• Complete

• Time complexity

– Single step constant time

• Space complexity

– Inherits from underlying algorithms

14David Bond (UNH)Real Time Search in Dynamic Worlds

Empirical Evaluation

• Measure to evaluate a solution?– Time steps taken to reach goal

– Equivalent to trajectory/path length for LSS-LRTA*, RTD*

• What algorithms used for comparison?

• LSS-LRTA*– Not designed to handle edge cost decreases

– Still functions in worlds with decreases

– May not notice new paths

15David Bond (UNH)Real Time Search in Dynamic Worlds

Empirical Evaluation

• Quality Bounds?• Two variants of D* Lite

– Non-Real Time D* Lite• Gives us the trajectory length of RTD* as the

computation limit approaches infinity

– Naïve real time version, RTD* NoOp• Agent returns do not move action after each planning

phase• Cost of solution increases by one each time if just

waiting there• We need to do better than this, otherwise just run D*

Lite without the real time constraint

16David Bond (UNH)Real Time Search in Dynamic Worlds

Empirical Evaluation

• Two domains

– Initially unknown, static world pathfinding

• Warcraft maps

– Fully observable, dynamic world pathfinding

• Rooms generated with doors opening and closing

• Path to goal always guaranteed

17David Bond (UNH)Real Time Search in Dynamic Worlds

Initially Unknown, Static World Pathfinding

18David Bond (UNH)Real Time Search in Dynamic Worlds

Initially Unknown, Static World Pathfinding Video

19David Bond (UNH)Real Time Search in Dynamic Worlds

Initially Unknown, Static World Pathfinding

20David Bond (UNH)Real Time Search in Dynamic Worlds

1

1.5

2

2.5

3

1 10 100

Tim

e S

tep

s (

re

lati

ve

to

A*)

Expansion Limit

NoOp RTD*

Non-RTD*

Initially Unknown, Static World Pathfinding

21David Bond (UNH)Real Time Search in Dynamic Worlds

1

1.5

2

2.5

3

1 10 100

Tim

e S

tep

s (

re

lati

ve

to

A*)

Expansion Limit

NoOp RTD*

RTD*

LSS-LRTA*

Non-RTD*

Fully Observable, Dynamic World Pathfinding

22David Bond (UNH)Real Time Search in Dynamic Worlds

Fully Observable, Dynamic World Pathfinding

23David Bond (UNH)Real Time Search in Dynamic Worlds

1

2

4

0 100 200 300 400 500

Tim

e S

tep

s (

re

lati

ve

to

A*)

Expansion Limit

Non-RTD*

Fully Observable, Dynamic World Pathfinding

24David Bond (UNH)Real Time Search in Dynamic Worlds

1

2

4

0 100 200 300 400 500

Tim

e S

tep

s (

re

lati

ve

to

A*)

Expansion Limit

LSS-LRTA*

RTD*

Non-RTD*

Conclusion

• The first algorithm designed for dynamic real time worlds

• Modular and expandable

• Visit http://mokon.net/mai.aspx for source code and detailed results

Real Time Search in Dynamic Worlds

David Bond (UNH) 25

top related