Interactive Navigation in Complex Environments Using Path Planning
This presentation is the property of its rightful owner.
Sponsored Links
1 / 20

Presented by Mohammed Irfan Rafiq Using Slides from Xiaoshan Pan(2003) PowerPoint PPT Presentation


  • 53 Views
  • Uploaded on
  • Presentation posted in: General

Interactive Navigation in Complex Environments Using Path Planning Salomon et al.(2003) University of North Carolina. Presented by Mohammed Irfan Rafiq Using Slides from Xiaoshan Pan(2003). Motivations.

Download Presentation

Presented by Mohammed Irfan Rafiq Using Slides from Xiaoshan Pan(2003)

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Presented by mohammed irfan rafiq using slides from xiaoshan pan 2003

Interactive Navigation in Complex Environments Using Path PlanningSalomon et al.(2003) University of North Carolina

Presented by Mohammed Irfan Rafiq

Using Slides from Xiaoshan Pan(2003)


Motivations

Motivations

  • The design and evaluation of complex engineering products requires interactive navigation using appropriate interaction modes.

  • Navigating in a driving mode with an unconstrained free-flying camera gives confusing views of geometry.

  • Earlier work on navigation with constrained camera motion are limited to be local navigation modes or in small environments.


Problem approach

Problem & Approach

  • How to automatically plan a motion path to assist 3D interactive navigation with a constrained camera in a complex environment?

  • The approach is to combine robot motion planning techniques and driving interaction methods.

  • Good application for a multi-query and visibility based roadmap

  • Inputs

    • model geometry and dimensions of the avatar


Constraints

Constraints

  • Constrained avatar motion

    • Translation along a surface

    • Rotation about an axis orthogonal to the surface

    • Motion must lie on a walkable surface such as a floor or stairway

    • Can not walk up or down unreasonably steep slopes


Content

Content

  • 2 modes of navigation:

  • Global

    • Pre-compute a global roadmap

    • Graph search (inigoal) in real-time

    • Display motion

  • Local

    • User-steered exploration


Basic idea

Runtime algorithm

Basic Idea

Preprocessing phase


Guards connectors c space

Rc

  • Connectors

  • - Rc > Rg

Guards & Connectors (C-space)

  • Reachability

  • -neighborhood around

  • a config that can be

  • reached using a local planner

  • Guards

  • - guards can’t see each other

Rg


Algorithm build roadmap

1. Pick a random config. c

2. Can c be a Connector? See any Guards in Rc?

- Yes  then connect, goto while (else goto 3)

3. Can c be a Guard? See any Guards in Rg?

- no! c becomes a Guard, connect to connectors (if any), goto while

- yes  reject c, goto while

c

c

c

Algorithm (build_roadmap)

While (map_coverage < P_cover), do// map_coverage = guards_reachable/entire_space

Return roadmap

Be a Connector

Be a Guard

Be rejected

Connector

Connector

Connector

Guard

Guard

Guard

Guard

Guard

Guard


Roadmap connecting nodes

Roadmap – Connecting Nodes

  • Is c1 in Reach(c2,r)?

    • check if distance between the two locations is less than or equal to r

    • use the local planner to test if c1 is reachable from c2


Roadmap pruning connectors

Roadmap – Pruning Connectors

  • To remove redundant connectors and keep connectors with highest number of linked guards

  • If an existing reachable connecter join the same

    set of guards as the new connector, then discard

    the new connector

  • If an existing reachable connector only joins a

    subset of guards that is reachable from the new

    connector, then add the new connector and

    remove the existing connector


Search for a path init goal

ini

goal

Search for a path: init  goal

  • Initial position (Rc radius)

  • Goal position

  • Graph search…


Display motion smooth path

Display Motion: Smooth Path

  • Walk along the path

  • Smoothing path (cutting redundant corners while walking)

ini

goal


Roadmap sampling

  • Shooting rays

Random Rays

Gravity

Roadmap - Sampling


Roadmap sampling1

Gravity

Roadmap - Sampling

  • Shooting rays

  • Walkable surface

  • Construct roadmap

ө

ө


Roadmap analysis

Roadmap - Analysis

  • Roadmap size

    • Number of guards is limited by mutual unreachability,

      number of connectors is minimized by connector

      pruning

    • In Practice, less than one connector for every guard

  • Estimated coverage

    • Maintain a tally of the number of samples that are

      reachable from at least one guard

    • The ratio of reachable samples to total samples is a

      lower bound on the ratio Nreachable/N

    • As N grows large, Nreachable/N converges to Areachable/A


User steered exploration local walk

User-steered exploration (local walk)

  • User has control

    • A directional vector

  • Robot do not penetrate objects

  • Robot always stays on a walkable surface

    • In free space

    • Surface within a tolerance angle

    • Steps ok, cliffs NO!!


Local walk algorithm

Local Walk Algorithm

  • Follow the directional vector, if

  • - Goal is reached, stop

  • - Collision, project along obstacle edge

  • - New surface, step up/down (not a cliff!)

  • - Edge, step up/down or project along the edge


Local walk

Local Walk

  • collisions below a certain height with non -walkable surfaces are permitted so that the avatar is able to step over low obstacles

  • when redirected the avatar is not allowed to move in a direction that makes an angle

    > 90 with the original direction


Results

Results


Limitations

Limitations

  • the avatar follows the path in linear segments, hence the paths may look unnatural

  • the avatar cannot bend to look under objects

  • does not address the narrow passage problem

  • the precomputation process is time consuming

  • would require recomputing the graph for a dynamic environment


  • Login