Introduction to Mobile Robots Motion Planning - PowerPoint PPT Presentation

Loading...

PPT – Introduction to Mobile Robots Motion Planning PowerPoint presentation | free to download - id: 41db09-OTMxM



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

Introduction to Mobile Robots Motion Planning

Description:

Introduction to Mobile Robots Motion Planning Prof.: S. Shiry Pooyan Fazli M.Sc Computer Science Department of Computer Eng. and IT Amirkabir Univ. of Technology – PowerPoint PPT presentation

Number of Views:310
Avg rating:3.0/5.0
Slides: 104
Provided by: Pooyan
Learn more at: http://ceit.aut.ac.ir
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Introduction to Mobile Robots Motion Planning


1
Introduction to Mobile Robots Motion Planning
  • Prof. S. Shiry
  • Pooyan Fazli
  • M.Sc Computer Science
  • Department of Computer Eng. and IT
  • Amirkabir Univ. of Technology
  • (Tehran Polytechnic)

2
What is Motion Planning?
  • Determining where to go

3
The World consists of...
  • Obstacles
  • Already occupied spaces of the world
  • In other words, robots cant go there
  • Free Space
  • Unoccupied space within the world
  • Robots might be able to go here
  • To determine where a robot can go, we need to
    discuss what a Configuration Space is

4
Notion of Configuration Space
  • Main Idea Represent the robot as a point, called
    a configuration, in a parameter space, the
    configuration space (or C-space).
  • Importance Reduce the problem of planning the
    motion of a robot in Euclidean Space to planning
    the motion of a point in C-space.

5
C-space of Rigid Object
6
C-space of Rigid Object
7
C-space of Rigid Object
8
C-space of Rigid Object
  • Robot Configurations Can be
  • 1. Free configurations robot and obstacles do
    not overlap
  • 2. Contact configurations robot and obstacles
    touch
  • 3. Blocked configurations robot and obstacles
    overlap
  • Configuration Space partitioned into free
    (Cfree), contact, and blocked sets.

9
Obstacles in C-space
Cspace Cfree Cobstacle
10
Example of a World (and Robot)
11
The Configuration Space
  • How to create it
  • First abstract the robot as a point object.
    Then, enlarge the obstacles to account for the
    robots footprint and degrees of freedom
  • In our example, the robot was circular, so we
    simply enlarged our obstacles by the robots
    radius (note the curved vertices)

12
Configuration Space Accommodate Robot Size
13
Paths in C-Space
14
Motion Planning
  • General Goal compute motion commands to achieve
    a goal
  • arrangement of physical objects from an
    initial arrangement
  • Basic problem Collision-free path planning for
    one rigid or articulated object (the robot)
    among static obstacles.
  • Inputs
  • geometric descriptions of the obstacles and the
    robot
  • kinematic and dynamic properties of the robot
  • initial and goal positions (configurations) of
    the robot
  • Output
  • Continuous sequence of collision-free
    configurations connecting the initial and goal
    configurations

15
Motion Planning
  • Path planning
  • design of only geometric (kinematic)
    specifications of the positions and
  • orientations of robots
  • Trajectory Path assignment of time to points
    along the path
  • Trajectory planning
  • path planning design of linear and
    angular velocities
  • Motion Planning (MP), a general term, either
  • Path planning, or
  • Trajectory planning
  • Path planning lt Trajectory planning

16
Extensions to the Basic Problem
  • movable obstacles
  • moving obstacles
  • multiple robots
  • incomplete knowledge/uncertainty in geometry,
    sensing, etc.

17
Multiple Robots, Moving/Movable Obstacles
18
Classification of MP algorithms
  • Completeness
  • Exact
  • usually computationally expensive
  • Heuristic
  • aimed at generating a solution in a short time
  • may fail to find solution or find poor one at
    difficult problems
  • important in engineering applications
  • Probabilistically complete (probabilistic
    completeness ?1)

19
Classification of MP algorithms
  • Scope
  • Global
  • take into account all environment information
  • plan a motion from start to goal configuration
  • Local
  • avoid obstacles in the vicinity of the robot
  • use information about nearby obstacles only
  • used when start and goal are close together
  • used as component in global planner, or
  • used as safety feature to avoid unexpected
    obstacles not present in environment model, but
    sensed during motion

20
Classification of MP Algorithms
  • Point-to-point
  • Region filling

21
Point-to-point Path Planning
  • Point-to-point path planning looks for the best
    route to move an entity
  • from point A to point B while avoiding known
    obstacles in its path, not
  • leaving the map boundaries, and not
    violating the entity's mobility
  • constraints.
  • This type of path planning is used in a large
    number of
  • robotics and gaming applications such as
    finding routes for
  • autonomous robots, planning the
    manipulator's movement of a
  • stationary robot, or for moving entities to
    different locations in a map
  • to accomplish certain goals in a gaming
    application.

22
Region Filling Path Planning
  • Tasks such as vacuuming a room, plowing a field,
    or mowing a lawn
  • require region filling path planning
    operations that are defined as
  • follows
  • 1) The mobile robot must move through an entire
    area, i.e., the overall travel must
  • cover a whole region.
  • 2) Continuous and sequential operation without
    any repetition of paths is
  • required of the robot.
  • 3) The robot must avoid all obstacles in a
    region.
  • 4) An "optimal" path is desired under the
    available conditions.

23
Motion Planning Statement
  • The Problem
  • Given an initial position and orientation POinit
  • Given a goal position and orientation POgoal
  • Generate continuous path t from POinit to
    POgoal
  • t is a continuous sequence of Pos

24
The Wavefront Planner
  • A common algorithm used to determine the shortest
    paths between two points
  • In essence, a breadth first search of a graph
  • For simplification, well present the world as a
    two-dimensional grid
  • Setup
  • Label free space with 0
  • Label C-Obstacle as 1
  • Label the destination as 2

25
Representations A Grid
  • Distance is reduced to discrete steps
  • For simplicity, well assume distance is uniform
  • Direction is now limited from one adjacent cell
    to another

26
Representations Connectivity
  • 4-Point Connectivity
  • 8-Point Connectivity

27
The Wavefront Planner Setup
28
The Wavefront in Action (Part 1)
  • Starting with the goal, set all adjacent cells
    with 0 to the current cell 1
  • 4-Point Connectivity or 8-Point Connectivity?
  • Your Choice. Well use 8-Point Connectivity in
    our example

29
The Wavefront in Action (Part 2)
  • Now repeat with the modified cells
  • This will be repeated until no 0s are adjacent
    to cells with values gt 2
  • 0s will only remain when regions are unreachable

30
The Wavefront in Action (Part 3)
  • Repeat again...

31
The Wavefront in Action (Part 4)
  • And again...

32
The Wavefront in Action (Part 5)
  • And again until...

33
The Wavefront in Action (Done)
  • Youre done
  • Remember, 0s should only remain if unreachable
    regions exist

34
The Wavefront, Now What?
  • To find the shortest path, according to your
    metric, simply always move toward a cell with a
    lower number
  • The numbers generated by the Wavefront planner
    are roughly proportional to their distance from
    the goal

Two possible shortest paths shown
35
Map-Based Approaches Roadmap Theory
  • Idea capture the connectivity of Cfree with a
    roadmap (graph or network) of one-dimensional
    curves

36
Roadmap Methods
37
Roadmap Methods
  • Properties of a roadmap
  • Accessibility there exists a collision-free path
    from the start to the road map
  • Departability there exists a collision-free path
    from the roadmap to the goal.
  • Connectivity there exists a collision-free path
    from the start to the goal (on the roadmap).
  • Examples of Roadmaps
  • Visibility Graph
  • Generalized Voronoi Graph (GVG)

38
Roadmap Visibility Graph
39
Visibility Graph of C-Space
40
The Visibility Graph in Action (Part 1)
  • First, draw lines of sight from the start and
    goal to all visible vertices and corners of the
    world.

goal
start
41
The Visibility Graph in Action (Part 2)
  • Second, draw lines of sight from every vertex of
    every obstacle like before. Remember lines along
    edges are also lines of sight.

goal
start
42
The Visibility Graph in Action (Part 3)
  • Second, draw lines of sight from every vertex of
    every obstacle like before. Remember lines along
    edges are also lines of sight.

goal
start
43
The Visibility Graph in Action (Part 4)
  • Second, draw lines of sight from every vertex of
    every obstacle like before. Remember lines along
    edges are also lines of sight.

goal
start
44
The Visibility Graph (Done)
  • Repeat until youre done.

goal
start
45
Reduced Visibility Graphs
  • Idea we don't really need all the edges in the
    visibility graph (even if we want shortest paths)
  • Definition Let L be the line passing through an
    edge (x,y) in the visibility graph G. The segment
    (x,y) is a tangent segment iff L is tangent to CB
    at both x and y.

46
Reduced Visibility Graphs
47
Roadmaps the Retraction Approach
48
Roadmaps the Retraction Approach
49
Retraction Example Generalized Voronoi Diagrams
  • A GVG is formed by paths equidistant from the two
    closest objects
  • This generates a very safe roadmap which avoids
    obstacles as much as possible

50
Retraction Example Generalized Voronoi Diagrams
51
Retraction Example Generalized Voronoi Diagrams
52
Generalized Voronoi Diagrams
53
Generalized Voronoi Diagrams
54
Generalized Voronoi Diagrams
55
Generalized Voronoi Diagrams
56
Cell Decomposition Methods
57
Cell Decomposition Methods
58
Exact Cell Decomposition Method
59
Exact Cell Decomposition Method
60
Path Planning with a Convex Polygonal
Decomposition
61
Exact Cell Decompositions Trapezoidal
Decomposition
  • A way to divide the world into smaller regions
  • Assume a polygonal world

62
Exact Cell Decompositions Trapezoidal
Decomposition
63
Applications Coverage
  • By reducing the world to cells, weve essentially
    abstracted the world to a graph.

64
Find a path
  • By reducing the world to cells, weve essentially
    abstracted the world to a graph.

65
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
66
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
67
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
68
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
69
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
70
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
71
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
72
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
73
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
74
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
75
Find a path
  • With an adjacency graph, a path from start to
    goal can be found by simple traversal

start
goal
76
Approximate Cell Decomposition
  • Idea construct a collection K of non-overlapping
    cells such that the union of all the cells
    approximately covers the free C-space

77
Approximate Decomposition into Rectangloids
  • A rectangloid decomposition K of C is a finite
    collection of interior disjoint rectangloids
    (cells) such that
  • Cells and are adjacent if they share a
    boundry

78
Approximate Decomposition into Rectangloids
79
Channels and Paths in Rectangloid Decomposition
80
Path Planning with a Rectangloid Decomposition
81
Hierarchical Path Planning
82
Potential Field Method
83
Potential Field Methods
84
Potential Field
85
The Field of Artificial Forces
86
The Attractive Potential
87
The Attractive Potential
88
The Attractive Potential
89
The Attractive Potential
90
The Repulsive Potential
91
The Repulsive Potential
92
The Repulsive Potential
93
Local Minimum Problem with the Charge Analogy
94
Escaping Local Minima - Random Motions
95
Gradient Descent Planning
96
RRT
  • Rapidly Exploring Random Tree (LaValle 1998)
  • Explores continuous spaces efficiently
  • Can form the basis for a probabilistically
    complete path planner
  • Basic RRT Algorithm
  • (1) Initially, start with the initial
    configuration as root of tree
  • (2) Pick a random state in the configuration
    space
  • (3) Find the closest node in the tree
  • (4) Extend that node toward the state if
    possible
  • (5) Goto (2)

97
Basic RRT Example
98
RRT Demo
99
CMDragon Small Size Team
100
ERRT RRT Waypoint Cache
  • Plain RRT planner has little bias toward plan
    quality, and replanning is
  • naive (all previous information is thrown
    out before replanning).
  • Waypoints
  • Previously successful plans can guide new
    search
  • Biases can be encoded by modifying the
    target point distribution
  • Waypoint Cache
  • When a plan is found, store nodes into a
    bin with random replacement
  • During target point selection, choose a
    random item from waypoint
  • cache with probability q

101
RRT-GoalBias Algorithm
  • (1) Initially, start with the initial
    configuration as root of tree
  • (2) Pick a target state
  • - goal configuration with probability p
  • - random state from waypoint cache with
    probability q
  • - random configuration with probability 1 - p
    - q
  • (3) Find the closest node in the tree
  • (4) Extend that node toward the state if
    possible
  • (5) Goto (2)

102
Demos
  • Movie 1
  • Movie 2
  • Movie 3

103
References
  • Seth Hutchinson at the University of Illinois at
    Urbana-Champaign
  • Leo Joskowicz at Hebrew University,
  • Jean-Claude Latombe at Stanford University,
  • Nancy Amato at Texas AM University.
About PowerShow.com