calisi motion
TRANSCRIPT
-
8/3/2019 Calisi Motion
1/22
Motion planning, control andMotion planning, control and
obstacle avoidanceobstacle avoidance
D. Calisi
-
8/3/2019 Calisi Motion
2/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 2
IntroductionIntroduction
Robot mobility is a keyfeature for any mobile robot
Robot motion is eminently
necessary since, bydefinition, a robot
accomplishes tasks by
moving in the real world
(J.C. Latombe)
-
8/3/2019 Calisi Motion
3/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 3
Problem formalization: configuration spaceProblem formalization: configuration space
U1
U2
U4
U3
U2
U1
c1
c2
Cfree
Cobst
Challenges Configuration space is difficult to compute
Complexity, uncertainty, dynamic environments
Kinematic and dynamic constraints
Time constraints
-
8/3/2019 Calisi Motion
4/22
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 ofthe search space, then use a complete planner with localinformation
Relax some constraints or perform a dimensionality reduction ofthe search space, then use a reactive method with localinformation
Latombes decomposition Global path-planner
Local obstacle avoidance algorithm (or a local planner)
-
8/3/2019 Calisi Motion
5/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 5
ComponentComponent--based subdivision and OpenRDK modulesbased subdivision and OpenRDK modules
Robot motion
algorithm
Environment representation
Robot model
Robot current configuration
Sensor readings
Target poses
Motion commands
Global planner
Local planner or
reactive method
Global mapper
Local obstacle
detector
Robot sensors Actuators
Global path
Local trajectory
Local target
Motion commands
-
8/3/2019 Calisi Motion
6/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009
Connecting the global planner and the obstacle avoidanceConnecting the global planner and the obstacle avoidance
The global planner
can provide different
kind of information
to the obstacle avoidance
algorithm
A local target is the
most general and can be
used straightforwardly
by most of the well-known
obstacle avoidancealgorithms
-
8/3/2019 Calisi Motion
7/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 7
PathPath--planner as a serviceplanner as a service
Path-plannerExplorer
Obstacle avoidance
Path requests
Path answers
Target pose
Motion commands
Local target
-
8/3/2019 Calisi Motion
8/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 8
World models for pathWorld models for path--planningplanning
The same environment can be
represented in very differentways
Grid-maps High memory requirements
Easy to build and maintain
Line-maps Line extraction and tracking
Topological maps Robus to noise
Difficult to build
-
8/3/2019 Calisi Motion
9/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 9
A*A*--based pathbased path--plannersplanners
Grid-based environment
representation
High resolution required
Geometric representation
Roadmap based
A* path search on a graph
-
8/3/2019 Calisi Motion
10/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 10
Topological path plannersTopological path planners
Topological
representations arecompact models
They use features of theenvironment, rather thandense metric information
From one hand they aremore robust to sensornoise and localizationerrors
On the other hand, it can
be difficult to build andmaintain a topologicalrepresentation
-
8/3/2019 Calisi Motion
11/22
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)
-
8/3/2019 Calisi Motion
12/22
Limits of vectorLimits of vector--based methodsbased methods
Nonholonomy and
dynamic constraints
are difficult to be
taken into account
Oscillations
(discontinuity in
control functions)
-
8/3/2019 Calisi Motion
13/22
Reactive methods: curveReactive methods: curve--basedbased
Curvature-Velocity [Simmons, 1996]
Dynamic Window Approach [Fox, Burgard, Thrun,
1997]
-
8/3/2019 Calisi Motion
14/22
A local reactive algorithm (1)A local reactive algorithm (1) Local obstacle map
Current laser points are integratedwith previous ones
Laser points are translated tosegments (recursive line fitting)
A set of trajectories is computed
Curves (e.g., clothoids)
Dynamic constraints Obstacles
An objective function is used tochoose the best trajectory tofollow
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
-
8/3/2019 Calisi Motion
15/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 15
A local reactive algorithm (2)A local reactive algorithm (2)
-
8/3/2019 Calisi Motion
16/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 16
Segway experimentSegway experiment
The user defines a path
The curve-based navigator follows the path
-
8/3/2019 Calisi Motion
17/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 17
Segway experimentSegway experiment
The user defines a path
The curve-based navigator follows the path
-
8/3/2019 Calisi Motion
18/22
Limits of curveLimits of curve--based methodsbased methods
Parameters in objective function are critical
Limited or no planning
[Stachniss, 2002]
-
8/3/2019 Calisi Motion
19/22
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 otherenvironments/situations
[Borenstein '91]
[Minguez '00][Fernandez '04]
[Stachniss '02]
-
8/3/2019 Calisi Motion
20/22
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
-
8/3/2019 Calisi Motion
21/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 21
Thank you for your attentionThank you for your attention
Questions?
-
8/3/2019 Calisi Motion
22/22
Motion planning, control and obstacle avoidance - OpenRDK Workshop - March 2009 22
Thank you for your attentionThank you for your attention
Questions?