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

25
David M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant, Brad Larsen, NSF grant IIS-0812141 and the DARPA CSSG program 1 David Bond (UNH) Real Time Search in Dynamic Worlds

Upload: others

Post on 09-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 2: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 3: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 4: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 5: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 6: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 7: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

LSS-LRTA* Video

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

Page 8: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 9: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

D* Lite Video

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

Page 10: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 11: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 12: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 13: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

Real Time D* Lite Video

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

Page 14: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 15: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 16: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 17: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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

Page 18: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

Initially Unknown, Static World Pathfinding

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

Page 19: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

Initially Unknown, Static World Pathfinding Video

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

Page 20: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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*

Page 21: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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*

Page 22: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

Fully Observable, Dynamic World Pathfinding

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

Page 23: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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*

Page 24: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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*

Page 25: David M. Bond Niels A. Widger Xiaoxun Sun Wheeler …ruml/papers/rtds-socs10-talk.pdfDavid M. Bond Niels A. Widger Wheeler Ruml Xiaoxun Sun Special thanks to Sven Koenig, Nathan Sturtevant,

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