quality motion planning in a dynamic environment

23
QUALITY MOTION PLANNING IN A DYNAMIC ENVIRONMENT August 2011

Upload: zubin

Post on 25-Feb-2016

30 views

Category:

Documents


1 download

DESCRIPTION

Quality Motion Planning In a Dynamic Environment. August 2011. Project Goal . Generate a path for a Robot in a 2D Environment containing both Static & Dynamic obstacles. Few assumptions: The Robot has a maximum velocity and a Time limitation to reach destination. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Quality Motion Planning In a Dynamic Environment

QUALITY MOTION PLANNING IN A DYNAMIC ENVIRONMENTAugust 2011

Page 2: Quality Motion Planning In a Dynamic Environment

PROJECT GOAL  Generate a path for a Robot in a 2D

Environment containing both Static & Dynamic obstacles.

Few assumptions: The Robot has a maximum velocity and a Time

limitation to reach destination. The dynamic obstacles movement is known and

cyclic. The static Obstacles are simple

polygons .

Page 3: Quality Motion Planning In a Dynamic Environment

IMPLEMENTATION & DEVELOPMENT ENVIRONMENT The project was written in C++ using Visual

Studio 2008, with support of the following software packages: MFC - we used this package to create our GUI. CGAL - for basic implementations & functions we

used in our algorithms.

Page 4: Quality Motion Planning In a Dynamic Environment

ALGORITHM OVERVIEW Based on

PRM Zucker-Kant Algorithm

Amending the Zucker-Kant Algorithms to achieve higher probability of solving problems

Page 5: Quality Motion Planning In a Dynamic Environment

ALGORITHM – THE ASSEMBLY LINE The solution at each stage is represented by

a directed graph The final path is a list of edges on graph The graph is passed to each of the stages of

the algorithm Each stage modifies the graph and brings it

closer to solution

Page 6: Quality Motion Planning In a Dynamic Environment

ALGORITHM CHART

MaBakerView

User Output

User Input

RunAlgorithm

Stage 1

Stage 2

Stage 5

A s s e m b l y L i n e

Algorithm Support

Page 7: Quality Motion Planning In a Dynamic Environment

BEGINNING

Page 8: Quality Motion Planning In a Dynamic Environment

STAGE 1 Sample points on completely free

configurations (vertices on the graph) Use input to determine sample strategy Use CGAL to determine free configuration

Page 9: Quality Motion Planning In a Dynamic Environment
Page 10: Quality Motion Planning In a Dynamic Environment

STAGE 2 Connect close points (edges on the graph) Make sure each edge is in almost free

configuration Use CGAL to determine free configuration

Page 11: Quality Motion Planning In a Dynamic Environment
Page 12: Quality Motion Planning In a Dynamic Environment

STAGE 3 Transform each edge found in stage 2 into a

distance – time graph, considering moving obstacles

Solve using the VGraph method If unsolvable – give edge an infinite weight If solvable – give weight indicating the time it

takes to pass the edge If no moving obstacles on edge, just time

when moving in max velocity

Page 13: Quality Motion Planning In a Dynamic Environment

Edges with heavy weights

Edges with light weights

Page 14: Quality Motion Planning In a Dynamic Environment

THE ZUCKER KANT PLANE Let’s look at one segment of movement

intersecting with one dynamic obstacle:

R

RO

O

O

BlockStart

BlockEnd

Page 15: Quality Motion Planning In a Dynamic Environment

THE ZUCKER KANT PLANE In Time to distance on path plane, we get:

Time

DistanceBlock

StartBlockEnd

R

RO

OO

Page 16: Quality Motion Planning In a Dynamic Environment

THE ZUCKER KANT PLANE After setting a goal time, we can solve with

vGraph:Time

DistanceBlock

StartBlockEnd

DestTime R

RO

OO

Page 17: Quality Motion Planning In a Dynamic Environment

STAGE 4 Run Dijkstra on the graph and find the final

path This is the path the robot is going to use, we

still don’t know the velocity function However – it is guaranteed that this path is

passable

Page 18: Quality Motion Planning In a Dynamic Environment
Page 19: Quality Motion Planning In a Dynamic Environment

STAGE 5 Transform the path found in stage 4 into a

distance – time graph, considering moving obstacles

Calculate velocity function, which determine the progress velocities on the path we found in stage 4.

This promises the shortest arrival time to destination.

Page 20: Quality Motion Planning In a Dynamic Environment

EXAMPLES

Page 21: Quality Motion Planning In a Dynamic Environment

WHAT DID WE LEARN? New algorithms for path planning Working with complicated libraries – MFC,

CGAL Analytical geometry when applied in a

program Working on a big project

Page 22: Quality Motion Planning In a Dynamic Environment

POSSIBLE IMPROVEMENTS Improved sampling strategies Incremental algorithm Fix the case we fail (allow sampling almost

free places) 3D?

Page 23: Quality Motion Planning In a Dynamic Environment

ADDITIONAL READING K. Kant and S. Zucker. Toward efficient

planning: the path-velocity decomposition. International Journal of Robotics Research, 5(3):72–89, 1986

Path Planning in Dynamic Environments, Jur Pieter van den Berg, May 1981