Navigation Strategies for Exploring Indoor Environments - PowerPoint PPT Presentation

About This Presentation
Title:

Navigation Strategies for Exploring Indoor Environments

Description:

Select NBV maximizing visibility gain vs. path length. NBV algorithm overview ... L(q) is the length of the path generated by the planner ... – PowerPoint PPT presentation

Number of Views:63
Avg rating:3.0/5.0
Slides: 25
Provided by: MILE151
Category:

less

Transcript and Presenter's Notes

Title: Navigation Strategies for Exploring Indoor Environments


1
CS 326A Motion Planning
Navigation Strategies for Exploring Indoor
Environments Hector H. González-Baños Jean-Claude
Latombe
Presented by Miler Lee, 6 May 2002
2
Automatic model building
Task Build a representation of an unknown
environment relying only on robotic
sensors Next-best-view problem What path should
the robot take to optimize sensing operations
3
Challenges to next-best view
  • Avoid obstacle collision, given that the robot
    is moving through an unknown environment and the
    sensors are on the robot
  • Localize to the map-so-far, robustness despite
    odometry errors (require minimum overlap between
    senses)

Thrun 2001
4
NBV algorithm overview
  • Given sensor information at the current position
    and the map-so-far,
  • Compute the local safe region
  • Align with the map-so-far
  • Generate a list of candidate NBVs
  • Sample points near the edge of the safe region
  • Remove candidates not adequately visible from
    the boundaries of the safe region
  • Remove candidates without a collision-free path
  • Select NBV maximizing visibility gain vs. path
    length

5
NBV algorithm overview
  • Given sensor information at the current position
    and the map-so-far,
  • Compute the local safe region
  • Align with the map-so-far
  • Generate a list of candidate NBVs
  • Sample points near the edge of the safe region
  • Remove candidates not adequately visible from
    the boundaries of the safe region
  • Remove candidates without a collision-free path
  • Select NBV maximizing visibility gain vs. path
    length

6
Safe region
  • Largest region the robot can safely occupy, given
    map-so-far
  • Compute visibility region
  • Extrapolate safe region

7
Visibility
  • W ? ?2 is the actual workspace
  • ?W is the boundary of W
  • w ? ?W is visible from q ? W if the following
    constraints are satisfied

8
Visibility
  • W ? ?2 is the actual workspace
  • ?W is the boundary of W
  • w ? ?W is visible from q ? W if the following
    constraints are satisfied
  • 1. Line-of-sight constraint the open line
    segment S(w, q) does not intersect ?W

?W
w
?W
w
q
q
9
Visibility
  • W ? ?2 is the actual workspace
  • ?W is the boundary of W
  • w ? ?W is visible from q ? W if the following
    constraints are satisfied
  • 2. Range constraint Euclidean distance d(q, w)
    ? rmax for some rmax gt 0

w
?W
q
10
Visibility
  • W ? ?2 is the actual workspace
  • ?W is the boundary of W
  • w ? ?W is visible from q ? W if the following
    constraints are satisfied
  • 3. Incidence constraint ?(n,v) ? ? for some ? ?
    0, ?/2, for n ? ?W at w and v the vector from w
    to q

w
w
?W
?W
n
?
n
?
q
q
11
Solid curves
  • Visible contour described in polar coordinates
    as piecewise continuous function r(? ) with
    respect to robot origin
  • r(? ) can be decomposed into non-overlapping,
    continuously visible solid curves, defined by r(?
    a,b ) over (a,b), where a and b are critical
    values of ?

?W
a
b
?
q
  • Let ? contain all solid curves in the boundary

12
Free curves
  • Each pair of succeeding solid curves lt r1(?
    a1,b1 ), r2(? a2,b2 )gt is connected with a
    free curve f(? b1,a2 ), s.t.

f
  • Any ray from the robot origin in the polar
    region b1 lt ? lt a2 will intersect the curve
    before any obstacle
  • The area defined by f is as large as possible

Gonzalez-Banos / Latombe 2002
13
Solid curve approximation
  • Finite resolution rather than visible curves,
    sensor returns a list of visible points
  • Solution
  • group points into clusters
  • fit a conservative (minimal number of vertices)
    polyline to each cluster, such that every point
    lies within ? of a line segment

14
NBV algorithm overview
  • Given sensor information at the current position
    and the map-so-far,
  • Compute the local safe region
  • Align with the map-so-far
  • Generate a list of candidate NBVs
  • Sample points near the edge of the safe region
  • Remove candidates not adequately visible from
    the boundaries of the safe region
  • Remove candidates without a collision-free path
  • Select NBV maximizing visibility gain vs. path
    length

15
Model alignment / merging
  • Define the partial global model at qk-1 to be
    Mg(qk-1 ) lt ? g(qk-1 ), Sg(qk-1 )gt
  • ? g(qk-1 ) is the union of the solid curves in
    ?W up to stage k-1 (subject to transform)
  • Sg(qk-1 ) is the safe region defined by ?
    g(qk-1 ) and the connecting free curves
  • Let the local model be ml (qk ) lt ? l (qk
    ), sl(qk )gt

16
Model alignment / merging
Given Mg(qk-1 ) lt ? g(qk-1 ), Sg(qk-1 )gt and
ml (qk ) lt ? l (qk ), sl(qk )gt Calculate the
transform T by matching the line segments in ?
g(qk-1 ) and ? l (qk ) with an alignment
algorithm Create the new safe region Sg(qk
) T(Sg(qk-1 )) ? sl(qk )
17
Model alignment / merging
  • Example ALIGN algorithm
  • Randomly select pairs of segments from ? l
  • For each pair (u1, u2) in ? l , find (v1, v2) in
    ? g with the same relative angle
  • Look for the best fit transform that results
  • Not perfectcan use some odometric / distance
    information as well

18
NBV algorithm overview
  • Given sensor information at the current position
    and the map-so-far,
  • Compute the local safe region
  • Align with the map-so-far
  • Generate a list of candidate NBVs
  • Sample points near the edge of the safe region
  • Remove candidates not adequately visible from
    the boundaries of the safe region
  • Remove candidates without a collision-free path
  • Select NBV maximizing visibility gain vs. path
    length

19
Feasible set of NBV candidates
1. Randomly pick points within the visibility
range of the free curves bounding Sg(qk-1 ) 2.
Rule out points that are too far away from the
visible solid curves of ? g(qk-1 ), to allow for
accurate model alignment 3. Rule out points for
which a path planner does not generate a
collision-free path
20
Scoring NBV candidates
Score is defined for an NBV candidate q by g(q)
A(q) exp -?L(q)
  • A(q ) measures visibility gain of new position
  • L(q) is the length of the path generated by the
    planner
  • ? weights path cost against information gain
    small ? if motion is cheap

21
Visibility gain metric A
  • Example A(q) calculation
  • Cast a set of equally-spaced rays from q
  • For each ray
  • if the segment between 0 and rmax distance from
    q hits a solid edge, ignore the portion of the
    ray beyond the intersection
  • compute the length len of the remaining segment
    that falls outside of Sg(qk )
  • set A(q) ? len

22
NBV computation
23
Remarks
  • Experimentally, showed moderately low number of
    motions / sense operations required to build map
  • Ability to tweak parameters to implement
    cautious detailed mapper or high-exploration
    rough mapper
  • Can be extended to multiple robots, efficient if
    they could work relative to each other

24
Limitations
  • 2D model only
  • Lack of error-recovery or retroactive adjustment
  • Feature-poor environments
  • Future work integrate NBV algorithm with other
    simultaneous localization and mapping (SLAM)
    techniques
Write a Comment
User Comments (0)
About PowerShow.com