motion planning, control and obstacle avoidance d. calisi

19
Motion planning, control and Motion planning, control and obstacle avoidance obstacle avoidance D. Calisi

Upload: eustace-fletcher

Post on 18-Dec-2015

225 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and Motion planning, control and obstacle avoidanceobstacle avoidance

D. Calisi

Page 2: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 2

IntroductionIntroduction

Robot mobility is a key feature for any mobile robot

Robot motion is “eminently necessary since, by definition, a robot accomplishes tasks by moving in the real world” (J.C. Latombe)

Page 3: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 3

Problem formalization: configuration spaceProblem formalization: configuration space

1

2

4

3

2

1

c1

c2

Cfree

Cobst

Challenges Configuration space is difficult to compute Complexity, uncertainty, dynamic environments Kinematic and dynamic constraints Time constraints

Page 4: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 4

Problem decompositionsProblem decompositions The problem is hard to solve, mainly because of the time

constraint The problem is decomposed in two or more “levels”,

relaxing some constraints or reducing the search space Examples

First compute the geometric curve, then add a time-law on it Relax some constraints or perform a dimensionality reduction of

the search space, then use a complete planner with local information

Relax some constraints or perform a dimensionality reduction of the search space, then use a reactive method with local information

Latombe’s decomposition Global path-planner Local obstacle avoidance algorithm (or a local planner)

Page 5: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 5

Component-based subdivision and OpenRDK modulesComponent-based subdivision and OpenRDK modules

Robot motionalgorithm

Environment representationRobot modelRobot current configurationSensor readingsTarget poses

Motion commands

Global planner

Local planner orreactive method

Global mapper

Local obstacledetector

Robot sensors Actuators

Global pathLocal trajectoryLocal target

Motion commands

Page 6: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 6

Connecting the global planner and the obstacle avoidanceConnecting the global planner and the obstacle avoidance

The global plannercan provide differentkind of informationto the obstacle avoidancealgorithm

A “local target” is themost general and can beused straightforwardlyby most of the well-knownobstacle avoidancealgorithms

Page 7: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 7

Path-planner as a “service”Path-planner as a “service”

Path-plannerExplorer

Obstacle avoidance

Path requests

Path answers

Target pose

Motion commands

Local target

Page 8: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 8

World models for path-planningWorld models for path-planning

The same environment can be represented in very different ways

Grid-maps High memory requirements Easy to build and maintain

Line-maps Line extraction and tracking

Topological maps Robus to noise Difficult to build

Page 9: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 9

A*-based path-plannersA*-based path-planners Grid-based environment

representation High resolution required

Geometric representation “Roadmap” based A* path search on a graph

Page 10: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 10

Topological “path” plannersTopological “path” planners Topological

representations are compact models

They use features of the environment, rather than dense metric information

From one hand they are more robust to sensor noise and localization errors

On the other hand, it can be difficult to build and maintain a topological representation

Page 11: Motion planning, control and obstacle avoidance D. Calisi

Reactive methods: vector basedReactive methods: vector based

Potential field methods [Borenstein, 1989]

Vector field histogram [Borenstein, 1991, 1998, 2000]

Nearness diagram [Minguez & Montano, 2000]

In OpenRDK a vector based method has been implemented (YARN)

Page 12: Motion planning, control and obstacle avoidance D. Calisi

Limits of vector-based methodsLimits of vector-based methods

Nonholonomy and dynamic constraints are difficult to be taken into account

Oscillations (discontinuity in control functions)

Page 13: Motion planning, control and obstacle avoidance D. Calisi

Reactive methods: curve-basedReactive methods: curve-based

Curvature-Velocity [Simmons, 1996]

Dynamic Window Approach [Fox, Burgard, Thrun,

1997]

Page 14: Motion planning, control and obstacle avoidance D. Calisi

A local reactive algorithm (1)A local reactive algorithm (1) Local obstacle map

Current laser points are integrated with previous ones

Laser points are translated to segments (recursive line fitting)

A set of trajectories is computed Curves (e.g., clothoids) Dynamic constraints Obstacles

An objective function is used to choose the best trajectory to follow Straightness Target nearness/heading Duration/length Obstacle distance

Clothoid curve:

• In car-like vehicles, control is on steering wheel (highways are designed using clothoids)• In differential driven mobile robots, each wheel acceleration is bounded

Page 15: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 15

A local reactive algorithm (2)A local reactive algorithm (2)

Page 16: Motion planning, control and obstacle avoidance D. Calisi

Limits of curve-based methodsLimits of curve-based methods Parameters in objective function are critical

Limited or no planning

[Stachniss, 2002]

Page 17: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 19

MoVeME frameworkMoVeME framework

Simulated experiments From papers about

motion algorithms From papers about

comparisons Enriched with other

environments/situations[Borenstein '91]

[Minguez '00][Fernandez '04]

[Stachniss '02]

Page 18: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 20

Comparisons of different world modelsComparisons of different world models

Grid-based map, A* path-planner, Dynamic Window ApproachTopological map, DWATopological map, Vector Field Histogram

Page 19: Motion planning, control and obstacle avoidance D. Calisi

Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 22

Thank you for your attentionThank you for your attention

Questions?