GLOBAL NAVIGATION GLOBAL NAVIGATION Examples - - PowerPoint PPT Presentation

global navigation global navigation
SMART_READER_LITE
LIVE PREVIEW

GLOBAL NAVIGATION GLOBAL NAVIGATION Examples - - PowerPoint PPT Presentation

GLOBAL NAVIGATION GLOBAL NAVIGATION Examples http://www.youtube.com/watch?v=ABJjdpxeMtE&n oredirect=1 http://www.youtube.com/watch?v=tro-fjsBs9g University of North Carolina at Chapel Hill 2 ENVIRONMENT REPRESENTATION


slide-1
SLIDE 1

GLOBAL NAVIGATION

slide-2
SLIDE 2

GLOBAL NAVIGATION

2

  • Examples
  • http://www.youtube.com/watch?v=ABJjdpxeMtE&n
  • redirect=1
  • http://www.youtube.com/watch?v=tro-fjsBs9g

University of North Carolina at Chapel Hill

slide-3
SLIDE 3

ENVIRONMENT REPRESENTATION

3 University of North Carolina at Chapel Hill

slide-4
SLIDE 4

GLOBAL NAVIGATION

4

  • Navigation in an environment where local navigation

techniques are insufficient

  • “Local”
  • Walk straight to goal
  • Always turn such that direction is most toward

goal as possible

  • Local Minima
  • Local techniques can lead to globally

inefficient choices

University of North Carolina at Chapel Hill

slide-5
SLIDE 5

ENVIRONMENT REPRESENTATION

5

  • Visual representation more detailed than necessary
  • Very common for dynamics simulation
  • Typically true for navigation as well
  • The more complex the representation, the more

expensive

University of North Carolina at Chapel Hill

slide-6
SLIDE 6

ENVIRONMENT REPRESENTATION

6

  • Full 3D polygonal

representation

  • Quite expensive
  • Details smaller than

~0.2 m probably don’t matter.

  • Floor plan matters more

than vertical space

  • (vertical clearance)

University of North Carolina at Chapel Hill

slide-7
SLIDE 7

ENVIRONMENT REPRESENTATION

7

  • 2D footprint
  • Saving an entire dimension
  • How much detail?
  • Coarse bounding volumes
  • Visually clear regions are no longer clear

University of North Carolina at Chapel Hill

slide-8
SLIDE 8

ENVIRONMENT REPRESENTATION

8

  • Keep polygons or rasterize to grid?
  • Grid offers simple “is colliding” query
  • (Compatible with potential field methods)

University of North Carolina at Chapel Hill

slide-9
SLIDE 9

GLOBAL NAVIGATION

9

  • Solving requires two things
  • Represent the navigable space and its

relationships

  • Search the navigable space for optimal paths

University of North Carolina at Chapel Hill

slide-10
SLIDE 10

NAVIGATION GRID

10

  • Various names
  • Guidance field
  • Potential field

University of North Carolina at Chapel Hill

slide-11
SLIDE 11

NAVIGATION GRID - DEFINITION

11

  • Discretization of space
  • Cells don’t have to be uniform or square
  • Rectangle, hex, etc.
  • Cells are either marked as free or occupied
  • Non-boolean values possible

University of North Carolina at Chapel Hill

slide-12
SLIDE 12

NAVIGATION GRID - USAGE

12

  • Select a goal point
  • Each cell contains the direction of travel along the

shortest path from that cell to the goal point

  • Compute:
  • Compute shortest path distance to goal from each

cell center

  • Solve using front propagation algorithms
  • (e.g. https://www.ceremade.dauphine.fr/~peyre/teaching/manifold/tp2.html)
  • Compute gradient of the field – gradient is the

direction of the shortest path

University of North Carolina at Chapel Hill

slide-13
SLIDE 13

NAVIGATION GRID - ANALYSIS

13

  • Pros
  • O(1) preferred direction computation
  • (even with bi-linear interpolation of the grid)
  • Cons
  • Expensive creation
  • Pre-computation or created by hand
  • Suffers from discretization errors
  • One field per goal
  • Requires planar topology – can’t walk over and under

a bridge

University of North Carolina at Chapel Hill

slide-14
SLIDE 14

ROAD MAP - DEFINITION

14

  • A discrete sampling of free space
  • Each sample is guaranteed to be collision free
  • Links between samples is guaranteed to be a

collision free trajectory

University of North Carolina at Chapel Hill

slide-15
SLIDE 15

ROAD MAP - USE

15

  • Given start (s) and goal (g) positions
  • Link to roadmap
  • Find path on roadmap

University of North Carolina at Chapel Hill

s g

slide-16
SLIDE 16

ROAD MAP - USE

16

  • Path
  • P = [p1, p2, p3, …, pn, g]
  • Ordered list of waypoints
  • Preferred direction is direction toward “next”

waypoint – the target waypoint

  • When do you change which waypoint is the target

waypoint?

  • What if the target waypoint is lost?

University of North Carolina at Chapel Hill

slide-17
SLIDE 17

ROAD MAP - USE

17

  • When do you advance the target waypoint?
  • Simply measure distance (d) – d < D  reached
  • D – threshold
  • Big enough to be robust
  • Small enough that the next waypoint is

reachable

  • What if the crowd keeps me from reaching the

waypoint?

  • What if the crowd sweeps me PAST the waypoint

along my path, but I don’t get close?

University of North Carolina at Chapel Hill

slide-18
SLIDE 18

ROAD MAP - USE

18

  • When do you advance the target waypoint?
  • Visibility tests
  • Set the target waypoint to be the most

advanced waypoint that is visible

  • This keeps the waypoint as far in “front” as

possible

  • Also detects if the agent is pushed from the

path

University of North Carolina at Chapel Hill

slide-19
SLIDE 19

ROAD MAP - USE

19

  • What if you lose sight of the target waypoint (pushed
  • ff the path)?
  • Replan
  • Create a new path
  • Rewind
  • Try testing previous waypoints (or successive)
  • Replan if all else fails
  • Remember
  • Remember where you were when you last

could see it and work toward that

University of North Carolina at Chapel Hill

slide-20
SLIDE 20

ROAD MAP - ANALYSIS

20

  • Paths are dependent on sampling and connectivity
  • Path is only “optimal” w.r.t. the graph – not the

environment

  • “Smoothing” the path helps
  • Earlier visibility query implicitly smooths the path
  • All but the last visible nodes are culled

University of North Carolina at Chapel Hill

slide-21
SLIDE 21

ROAD MAP - ANALYSIS

21

  • That form of smoothness depends on the roadmap

University of North Carolina at Chapel Hill

slide-22
SLIDE 22

ROAD MAP - ANALYSIS

22

  • Paths are dependent on sampling and connectivity
  • How close it is to optimal depends on how close

the roadmap samples come to the optimal path

  • No link  no path

University of North Carolina at Chapel Hill

slide-23
SLIDE 23

ROAD MAP - ANALYSIS

23

  • Clearance
  • Roadmaps are computed with one clearance in

mind

  • What if there are entities of varying size?
  • Big agents will attempt to travel links with

insufficient clearance on a small-agent map

  • Small agents will skip valid paths when using

big-agent maps

  • Encode each link with maximum clearance

University of North Carolina at Chapel Hill

slide-24
SLIDE 24

ROAD MAP - ANALYSIS

24

  • More choices  more complexity
  • The only way to give agents more paths to reach

their goal is to increase the complexity of the map

  • Search algorithms are worse than linear in the

length of the optimal path (length = # of links)

  • Double the # of links, more than double the

computation time

  • Also increase memory footprint

University of North Carolina at Chapel Hill

slide-25
SLIDE 25

ROAD MAP - ANALYSIS

25

  • Pros
  • Easy to create
  • Graph search straight-forward and generally effective
  • Pre-computed
  • Allows for non-planar topologies
  • Cons
  • Hard to create a good roadmap
  • Paths non-optimal and non-smooth
  • Requires acceleration structure and visibility query to

link to the graph

University of North Carolina at Chapel Hill

slide-26
SLIDE 26

NAVIGATION MESH - DEFINITION

26

  • Discretization of free region into a mesh of convex

polygons

University of North Carolina at Chapel Hill

slide-27
SLIDE 27

NAVIGATION MESH - USE

27

  • Discretization of free region into a mesh of convex

polygons

  • Graph search the mesh for an envelope
  • Compute path in the envelope

University of North Carolina at Chapel Hill

slide-28
SLIDE 28
  • Envelope Path
  • Centroid path
  • Edge center path
  • “Optimal” path

NAVIGATION MESH - USE

28 University of North Carolina at Chapel Hill

slide-29
SLIDE 29
  • Funnel algorithm (approximate)
  • How we select the “optimal” path

NAVIGATION MESH - USE

29 University of North Carolina at Chapel Hill

slide-30
SLIDE 30
  • Define an origin: o
  • Define the cone of visibility

spanning the first portal

  • For each successive portal
  • Contract the funnel
  • If funnel collapses, create a

waypoint on that portal vertex

  • Reset the origin to that

waypoint

NAVIGATION MESH - USE

30 University of North Carolina at Chapel Hill

http://cs.brown.edu/courses/cs195u/lectures/06.pdf

slide-31
SLIDE 31
  • Implicit connectivity

NAVIGATION MESH - ANALYSIS

31 University of North Carolina at Chapel Hill

slide-32
SLIDE 32
  • Clearance for range of sizes
  • In the graph – make edge weight depend on

clearance

NAVIGATION MESH - ANALYSIS

32 University of North Carolina at Chapel Hill

slide-33
SLIDE 33
  • Convexity is good
  • Any two points inside a convex polygon are

“linkable”

  • Progress easy to track
  • Given target portal, as long as I’m in the

polygon, I can move to a point on the portal

NAVIGATION MESH - ANALYSIS

33 University of North Carolina at Chapel Hill

slide-34
SLIDE 34

NAVIGATION MESH - ANALYSIS

34

  • If the edges are wide enough, is the mesh clear?
  • Not necessarily
  • Further classification needs to be done
  • Clearance can depend on which way one travels

University of North Carolina at Chapel Hill

“A Generalized Exact Arbitrary Clearance Technique for Navigation Meshes.” R. Oliva, N. Pelechano ACM SIGGRAPH conference on Motion in Games (MIG'2013). November 7-9. Dublin (Ireland). 2013.

slide-35
SLIDE 35

NAVIGATION MESH - ANALYSIS

35

  • What is the path distance between two polygons for

graph search?

  • Moving from red to blue
  • Correcting this brings back graph density

University of North Carolina at Chapel Hill

slide-36
SLIDE 36

NAVIGATION MESH - ANALYSIS

36

  • Pros
  • Generally more compact than equivalent graphs
  • Envelopes of trajectories encoded
  • Cons
  • VERY difficult to produce
  • Properly handling clearance is tricky

University of North Carolina at Chapel Hill

slide-37
SLIDE 37

WAYPORTALS

37

  • Narrow passages

University of North Carolina at Chapel Hill

slide-38
SLIDE 38
  • Wide passages

WAYPORTALS

38 University of North Carolina at Chapel Hill

slide-39
SLIDE 39
  • Wide passages

WAYPORTALS

39 University of North Carolina at Chapel Hill

slide-40
SLIDE 40

WAYPORTALS

  • Global Planning

– Understands full domain – For agent and goal:

  • Find “optimal” path to goal
  • Only consider static obstacles
  • Nearby agents have similar paths

40 University of North Carolina at Chapel Hill

slide-41
SLIDE 41

WAYPORTALS

  • Local Planning

– Limited domain knowledge

  • Waypoint

– Move towards waypoint

41 University of North Carolina at Chapel Hill

slide-42
SLIDE 42

WAYPORTALS

  • Local Planning

– Limited domain knowledge

  • Waypoint

– Move towards waypoint – Avoid collisions

42 University of North Carolina at Chapel Hill

slide-43
SLIDE 43

WAYPORTALS

  • Local Planning

– Limited domain knowledge

  • Waypoint

– Move towards waypoint – Avoid collisions

43 University of North Carolina at Chapel Hill

slide-44
SLIDE 44

WAYPORTALS

  • Local Planning

– Only knows waypoint – Unable to exploit additional space – Solution: – Small change to global planner to communicate more semantics – Extend local planner to use new information

44 University of North Carolina at Chapel Hill

slide-45
SLIDE 45

WAYPORTALS

  • Previous work in Global Planning
  • Roadmaps

[Latombe, 1991], [LaValle, 2006]

  • Navigation Mesh

[Hertel and Mehlhorn, 1985], [Tozour, 2003], [Mononen, 2009], [Snook, 2000], [Kallmann, 2010], [Van Toll et al., 2011]

  • Potential field

[Khatib, 1986]

  • Dynamic adaptation

[Jaillet and Simeon 2004; Kallman and Mataric 2004; Ferguson et al. 2006, Zucker et al. 2007], [Sud et al. 2007; Yang and Brock 2007], [Kretz et al, 2012]

45 University of North Carolina at Chapel Hill

slide-46
SLIDE 46
  • Limited knowledge leads to limited response
  • Promote 1D waypoint to 2D wayportal
  • Preferred velocity becomes an arc of velocities

WAYPORTALS

46 University of North Carolina at Chapel Hill

vi vi

slide-47
SLIDE 47

WAYPORTALS

47

  • Using Wayportals

University of North Carolina at Chapel Hill

slide-48
SLIDE 48

WAYPORTALS

48

  • Improved space utilization and flow

University of North Carolina at Chapel Hill

slide-49
SLIDE 49

WAYPORTALS

49

  • Improved space utilization and flow

University of North Carolina at Chapel Hill

Waypoints Wayportals

slide-50
SLIDE 50

WAYPORTALS

50

  • Improved space utilization and flow

University of North Carolina at Chapel Hill

slide-51
SLIDE 51

WAYPORTALS

51

  • Summary
  • Formulation for improving space utilization and

flow consistent with human behavior

  • Efficiency: minimal increase
  • 10% more expensive over waypoint for 700

agents (from 2.0 μs to 2.2 μs per agent)

  • Correctness: space utilization more consistent

with observed human behavior

University of North Carolina at Chapel Hill

slide-52
SLIDE 52

WAYPORTALS

52

  • Limitations
  • Optimization function is non-convex;

approximation constrains the full space of responses

University of North Carolina at Chapel Hill

slide-53
SLIDE 53

QUESTIONS?

53 University of North Carolina at Chapel Hill