Thinking about space - PowerPoint PPT Presentation

About This Presentation
Title:

Thinking about space

Description:

Can't go from here to your car without thinking about the space and obstacles in ... Can search graph in time O(N2) on the number of verticies. To Be continued ... – PowerPoint PPT presentation

Number of Views:24
Avg rating:3.0/5.0
Slides: 33
Provided by: webhost
Category:
Tags: space | thinking

less

Transcript and Presenter's Notes

Title: Thinking about space


1
Thinking about space
  • Robotics
  • Bridgewater State College
  • Spring 2005

2
Thinking about space
  • Brooks once claimed unnecessary
  • But for complex tasks found necessary.
  • Can't go from here to your car without thinking
    about the space and obstacles in between.
  • No planning done without thinking about space

3
Representing Space
  • Easiest way of internal representation
  • Use a map.
  • Needed for
  • Knowing where to go/navigation
  • free space
  • Recognize regions or locations in environment
  • Recognize objects in environment

4
How does robot represent environment?
  • Let environment represent itself.
  • All planning and manipulation of environment take
    place on real environment at given time.
  • Plans only based on instantaneous immediate
    sensor input.
  • If internal representation
  • What are the primitives?
  • Objects? Features? Symbolic entities? Spacial
    occupancy? etc?

5
Decomposing space.
  • Simple method
  • Divide the space into equal sized squares
  • Decide for every square, is this square free or
    filled.
  • Could implement with 2d array.
  • bitmap/occupancy grid
  • Space considerations (how much?)
  • Plus side- General
  • Can also add other information like confidence,
    terrain info etc.

6
Occupancy grid storage
  • Cells that are all the same still represented
    separately
  • Wastes lots of space
  • Can't similar pixels be compressed?

7
Quad Tree
  • Recursive data structure.
  • Represents square 2-D region
  • Hierarchical
  • May reduce storage
  • Large spaces of occupied or unoccupied space
  • Scattered spaces storage no better than
    occupancy grid.
  • Worst case worse than occupancy since extra
    overhead.
  • Base-2 nice for decisions.

8
BSP-tree
  • Binary Space Partitioning trees.
  • Usually in computer graphics.
  • Useful for 2d spaces
  • Free space divided into regions by lines parallel
    to outside edge.
  • Each boundary divide cell into two but not
    necessarily evenly.
  • Arbitrary division point
  • No unique BSP-tree for a given space.

9
Exact division
  • Subdivide space into several non-overlapping
    regions.
  • Union of parts is exactly the whole space.
  • Non-overlapping not necessary, but convenient
  • End spatial decomposition methods.

10
Geometric modelling
  • Spatial decomposition can use a lot of memory
  • Geometric maps one answer
  • Describe world in terms of simple geometric
    shapes, points, line, polygons and circles.
  • Will assume 2d representation since we don't have
    manipulators
  • Key components
  • Set of primitives for describing objects
  • Set of composition and deformation operators to
    manipulate objects

11
Shortcomings
  • Lack of stability
  • Representation changes a lot from small input
    change.
  • Lack of expressive power
  • Different environments map to same representation
  • Difficult (impossible) to represent salient
    features in modelling system.

12
Lack of uniqueness
  • Models may approximate input
  • Express single set of observations more than one
    way.
  • Minimal descriptive length
  • Associate cost with each model and attempt to
    find single model that minimizes cost.

13
Stabilizer
  • Minimize problems by adding stabilizer
  • Discard outlying data points
  • Prefer longer line segments.
  • And parallel to other directions.
  • Prefer models that are more compact possible for
    set of data points.
  • Prefer models with uniform curvature.

14
Topological Representations
  • Noisy data -gt hard to make good geometry
  • Humans seem to use more topological approach,
  • So how about for robots
  • Cognitive science approach
  • Key to topological
  • Some explicit representation of connectivity
    between two places
  • May have no metric data at all.

15
Topological Reps II
  • Abstract the environment
  • Descrete spaces connected by edges
  • Represent as graph
  • G (V, E)
  • V Set of nodes E set of edges that connect
    them.
  • Book example of ceiling mounted landmarks
  • Airplane travel.

16
Part IIRepresenting the robot in space
  • Up to now,
  • just concerned with representing the world
  • But need to represent the robot in the world.
  • Now let's represent the robot.

17
Configuration Space
  • Configuration space formalism
  • Specification for physical state of robot
    relating to fixed environmental frame
  • For simple rigid robot that can move and turn on
    flat surface but has no limbs
  • Configuration qx,y,??
  • What does this remind you of from mobility?

18
C-Space constraints
  • Contraints prohibit robot from entering some
    areas
  • Circular robot with radius r can't go closer to
    any object than distance r
  • Written as G(q)0 where q is the pose
  • Holonomic constraint
  • Any constraint that does not involve velocity
  • For any real world obstical can expand to set
    of points and solve to keep the robot's pose
    correct.

19
Non-holinomic Contraints
  • Non-holinomic Contraints
  • Contraints on what velocities are allowed
  • Much more difficult to calculate.
  • Getting from point A to point B without complete
    pose control
  • Parallel parking
  • Backing a tractor trailor truck.
  • Free flying robots (conservation of angular
    momentum.
  • C-space Search path can get large.

20
Simplification
  • Point-robot assumption
  • Assume robot is a point capable of
    omni-directional movement
  • Physics jokes?
  • But robotics so have to make up for this
  • Do so with object dilation
  • Show on board.

21
Path Planning
  • Now we've covered
  • representing space
  • Representing robot in space
  • Now plan motion
  • Big field entire book written just on path
    planning for robots
  • Skim surface.

22
Path Planning Summary
  • Want to get from point A to point B
  • Often want minimum length path.
  • Sometimes minimum cost path
  • Not always the same
  • Rochester NY example.
  • Path curvature
  • Obsicles
  • Anytime algorithms
  • safe paths

23
Standard Path Planning
  • standard planning basic assumptions
  • Rigid robot A
  • Static, known environment W
  • Robot domain is euclidean (we'll use 2-d space)
  • Known set of obsticles in W B1 B2 ... Bq
  • Robot travels in straight line segments perfectly

24
Evaluating Planning Techniques
  • Environment and robot
  • Different techniques are needed for different
    robot capabilities
  • Soundness is the planned path guaranteed to be
    collision free?
  • Complete if a path exists is is guaranteed to be
    found?
  • Optomality cost of path found vs. best path
  • Space and time complexity.

25
Graph Search
  • Basic graph search learned in most CS classes
  • If you have a topological graph
  • Start from initial node, expand that node
  • Add adjacent nodes to OPEN list
  • Found goal? If not, choose one of the nodes on
    OPEN and put start node on CLOSED list.
  • Depth-first / Breadth-first / A search

26
Optimizing Search
  • Evaluation function f(n)
  • n is a node on the graph
  • Smaller values of f(n) means n more likely to be
    on optimal path.
  • Choose node with smallest value of f(n)
  • Assume no 0 or negative values for f(n) (every
    move costs something)
  • F(n) g(n)h(n)
  • G(n) is estimated cost from start to n
  • H(n) is estimated cost from n to goal

27
GraphSearch Procedure
  • Procedure GraphSearch(s, goal)
  • OPEN s.
  • CLOSED .
  • Found false.
  • While (OPEN ? Ø) and (not found) do
  • OPEN OPEN n.
  • CLOSED CLOSED ? n
  • If n ? goal then
  • found true
  • else
  • OPEN OPEN ? M. (where M is set of all nodes
    directly accessible from n)

28
A search
  • Use G(n) as upper bound on cost thus far
  • maximize g(n)
  • Use h(n) as lower bound on cost of time to go
  • Underestimate cost remaining
  • Will find optimal path to goal.

29
Dynamic Programming
  • Solution must adhere to Bellman's principle
  • Given points A, B, C
  • Optimal path from A to B through C found by
    optimal path from A to C and optimal path from C
    to B
  • Create cost table for moving from place to
    place till have a good solution to end point.
  • Use heuristics to not create entire cost table.

30
Visibility Graph planning.
  • V-Graph
  • Technique produces minimum length path
  • Through graph traversal.
  • Defined
  • G(V, E) such that V is made up of union of all
    verticies of polygonal obsticles as well as start
    and end points of path.
  • Edges of graph connect all vertices that are
    visible to one another.

31
V-Graph planning II
  • Once V-Graph setup
  • Have graph whose edges can be traversed w/out
    hitting anything
  • Start and goal nodes are included in verticies
  • So can travel from start to goal w/out hitting
    anything
  • Can search graph in time O(N2) on the number of
    verticies.

32
To Be continued
  • More Navigation next time.
Write a Comment
User Comments (0)
About PowerShow.com