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 University of North Carolina at Chapel Hill 3
GLOBAL NAVIGATION • 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 4
ENVIRONMENT REPRESENTATION • 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 5
ENVIRONMENT REPRESENTATION • 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 6
ENVIRONMENT REPRESENTATION • 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 7
ENVIRONMENT REPRESENTATION • Keep polygons or rasterize to grid? • Grid offers simple “is colliding” query • (Compatible with potential field methods) University of North Carolina at Chapel Hill 8
GLOBAL NAVIGATION • 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 9
NAVIGATION GRID • Various names • Guidance field • Potential field University of North Carolina at Chapel Hill 10
NAVIGATION GRID - DEFINITION • 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 11
NAVIGATION GRID - USAGE • 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 12
NAVIGATION GRID - ANALYSIS • 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 13
ROAD MAP - DEFINITION • 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 14
ROAD MAP - USE • Given start (s) and goal (g) positions • Link to roadmap • Find path on roadmap s g University of North Carolina at Chapel Hill 15
ROAD MAP - USE • Path • P = [p 1 , p 2 , p 3 , …, p n , 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 16
ROAD MAP - USE • 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 17
ROAD MAP - USE • 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 18
ROAD MAP - USE • What if you lose sight of the target waypoint (pushed off 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 19
ROAD MAP - ANALYSIS • 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 20
ROAD MAP - ANALYSIS • That form of smoothness depends on the roadmap University of North Carolina at Chapel Hill 21
ROAD MAP - ANALYSIS • 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 22
ROAD MAP - ANALYSIS • 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 23
ROAD MAP - ANALYSIS • 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 24
ROAD MAP - ANALYSIS • 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 25
NAVIGATION MESH - DEFINITION • Discretization of free region into a mesh of convex polygons University of North Carolina at Chapel Hill 26
NAVIGATION MESH - USE • 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 27
NAVIGATION MESH - USE • Envelope Path • Centroid path • Edge center path • “Optimal” path University of North Carolina at Chapel Hill 28
NAVIGATION MESH - USE • Funnel algorithm (approximate) • How we select the “optimal” path University of North Carolina at Chapel Hill 29
NAVIGATION MESH - USE • 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 http://cs.brown.edu/courses/cs195u/lectures/06.pdf University of North Carolina at Chapel Hill 30
NAVIGATION MESH - ANALYSIS • Implicit connectivity University of North Carolina at Chapel Hill 31
NAVIGATION MESH - ANALYSIS • Clearance for range of sizes • In the graph – make edge weight depend on clearance University of North Carolina at Chapel Hill 32
NAVIGATION MESH - ANALYSIS • 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 University of North Carolina at Chapel Hill 33
NAVIGATION MESH - ANALYSIS • 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 “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. University of North Carolina at Chapel Hill 34
NAVIGATION MESH - ANALYSIS • 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 35
NAVIGATION MESH - ANALYSIS • 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 36
WAYPORTALS • Narrow passages University of North Carolina at Chapel Hill 37
WAYPORTALS • Wide passages University of North Carolina at Chapel Hill 38
Recommend
More recommend