IEEE Robotics & Automation Magazine - December 2016 - 114

lower computational complexity, i.e., it explores less space
and, thus, returns a solution faster [32]. To ensure completeness and optimality, a heuristic must satisfy two properties:
1) consistency and 2) admissibility [32]. A heuristic that satisfies these two properties never overestimates the cost of
reaching the goal.
Method to Select a Search Algorithm Class
Given an approach to combine motion-planning algorithms,
the following design criteria, numbered S1-S3, form a method to select a suitable class of search algorithms. The method
is shown in Figure 3.
S1) Can a heuristic be defined to speed up the search? The use
of a heuristic to the goal can reduce the complexity of a search
[8]. An informed search is preferred over an uninformed search,
if a consistent and admissible heuristic [32] can be defined. In
particular, for a search in a high-dimensional solution space, a
heuristic can greatly reduce the complexity. A heuristic is then
typically informed with more than just the distance to the goal
by using a search in a lower dimension as a heuristic to inform a
search in the full dimension of the solution space [33], [34]. For
example, a planner that does a search in the state space S can be
informed with a heuristic that does a search in the configuration
space C. This heuristic search ignores robot constraints and
moving obstacles, but it can reduce the search space of S substantially, and, thus, it can return a solution faster. The reduction
in the space depends on whether the heuristic solution is expected to be close to the optimal solution.
The single-query planners introduced in the "Selecting a
Representation Class" section can also benefit from adding a
goal bias or other heuristic to the sampling algorithm. Examples of such approaches can be found in [35].
S2) Does the environment change significantly between consecutive searches? A plan can become infeasible during execution
because of appearing or moving obstacles. Therefore, a motion
planner can adopt a replanning strategy. Replanning can be performed by computing an entirely new plan. One could also use
incremental replanning using the results of previous searches to
generate a new plan faster [36]. The benefit of considering previous solutions depends on the environment. If there is no significant change, a replan can be acquired faster, but when the results
of previous solutions are less useful, it can even be disadvantageous to the task of arriving at a new solution [8].
S3) Is a solution required at anytime? It is desirable to
achieve a solution as fast as possible. However, this solution is
typically not optimal. An anytime search algorithm can return
a solution within a certain time constraint and with a certain
bound on its suboptimality [8]. As time allows, this bound is
tightened, and, given enough time, the optimal solution is returned [37]. An optimal search algorithm typically acquires
this solution faster, but an anytime algorithm allows a robot to
start executing an initial suboptimal solution and improve this
solution along the way; examples can also be found in [26].
This concludes this discussion of the motion-planning
method. An overview of the requirements and the corresponding design criteria is presented in Table 1. This overview
114

*

IEEE ROBOTICS & AUTOMATION MAGAZINE

*

DECEMBER 2016

Table 1. The design requirements and the
corresponding selection criteria of the method.
Requirement

Design Criterium

Environment
Known/unknown

A1, A6

Uncertainty in obstacle representation A2, A4, A6
Moving obstacles
A3, A4, A6, S2
Robot model
Correctness
Kinodynamic constraints

R1
A4, A5, A6, A7, R2

Application
Completeness

A2, A4, A5, R1, R3,
R4, R5

Optimality

A3, A4, A5, R3, R4, S3

Computational complexity

A3, A4, A5, A6, A7,
R4, R6, S1

shows that several design criteria involve multiple requirements. This clearly indicates the tradeoffs that are commonly
present when designing a navigation system, e.g., one could try
to design a system that returns optimal solutions in the presence of moving obstacles, but this would be computationally
extremely complex. More of these tradeoffs can be derived
from Table 1.
Method Verification
Three use cases from the literature involving the application of a
motion planner in practice are evaluated to verify the proposed
method: 1) the PR2 service robot that autonomously navigated
a marathon distance of 42.15 km in a real office environment
[13], 2) the autonomous vehicle Boss that won the U.S. Defense
Advanced Research Projects Agency Urban Challenge [38], and
3) a flexible automated guided vehicle (AGV) in partially structured warehouses [39].
Application of the Method to Use Case I
The PR2 service robot has an omnidirectional base platform with a top speed of 1 m/s. It navigates an office environment that is cluttered with a variety of arbitrarily
shaped obstacles [13].
Selecting an Approach to Combine Algorithm Classes
The office environment is only partly known, so the robot must
replan as it receives new information about the world (A1). The
depth accuracy of the sensors that are used for navigation is 1.5 cm.
Hence, the resulting uncertainty must be captured in a bounded uncertainty region (A2). The office environment is populated by people, so the environment contains moving obstacles
(A3). The trajectories of people are unpredictable (A4), and the
world space is only partially known. Therefore, the representation of the world space will change rapidly. As the robot is desired to navigate at a reasonable speed of about 0.5 m/s, a
reactive approach is the most suitable approach to avoid collision in real-time (A5 and A6). A reactive approach requires an



Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - December 2016

IEEE Robotics & Automation Magazine - December 2016 - Cover1
IEEE Robotics & Automation Magazine - December 2016 - Cover2
IEEE Robotics & Automation Magazine - December 2016 - 1
IEEE Robotics & Automation Magazine - December 2016 - 2
IEEE Robotics & Automation Magazine - December 2016 - 3
IEEE Robotics & Automation Magazine - December 2016 - 4
IEEE Robotics & Automation Magazine - December 2016 - 5
IEEE Robotics & Automation Magazine - December 2016 - 6
IEEE Robotics & Automation Magazine - December 2016 - 7
IEEE Robotics & Automation Magazine - December 2016 - 8
IEEE Robotics & Automation Magazine - December 2016 - 9
IEEE Robotics & Automation Magazine - December 2016 - 10
IEEE Robotics & Automation Magazine - December 2016 - 11
IEEE Robotics & Automation Magazine - December 2016 - 12
IEEE Robotics & Automation Magazine - December 2016 - 13
IEEE Robotics & Automation Magazine - December 2016 - 14
IEEE Robotics & Automation Magazine - December 2016 - 15
IEEE Robotics & Automation Magazine - December 2016 - 16
IEEE Robotics & Automation Magazine - December 2016 - 17
IEEE Robotics & Automation Magazine - December 2016 - 18
IEEE Robotics & Automation Magazine - December 2016 - 19
IEEE Robotics & Automation Magazine - December 2016 - 20
IEEE Robotics & Automation Magazine - December 2016 - 21
IEEE Robotics & Automation Magazine - December 2016 - 22
IEEE Robotics & Automation Magazine - December 2016 - 23
IEEE Robotics & Automation Magazine - December 2016 - 24
IEEE Robotics & Automation Magazine - December 2016 - 25
IEEE Robotics & Automation Magazine - December 2016 - 26
IEEE Robotics & Automation Magazine - December 2016 - 27
IEEE Robotics & Automation Magazine - December 2016 - 28
IEEE Robotics & Automation Magazine - December 2016 - 29
IEEE Robotics & Automation Magazine - December 2016 - 30
IEEE Robotics & Automation Magazine - December 2016 - 31
IEEE Robotics & Automation Magazine - December 2016 - 32
IEEE Robotics & Automation Magazine - December 2016 - 33
IEEE Robotics & Automation Magazine - December 2016 - 34
IEEE Robotics & Automation Magazine - December 2016 - 35
IEEE Robotics & Automation Magazine - December 2016 - 36
IEEE Robotics & Automation Magazine - December 2016 - 37
IEEE Robotics & Automation Magazine - December 2016 - 38
IEEE Robotics & Automation Magazine - December 2016 - 39
IEEE Robotics & Automation Magazine - December 2016 - 40
IEEE Robotics & Automation Magazine - December 2016 - 41
IEEE Robotics & Automation Magazine - December 2016 - 42
IEEE Robotics & Automation Magazine - December 2016 - 43
IEEE Robotics & Automation Magazine - December 2016 - 44
IEEE Robotics & Automation Magazine - December 2016 - 45
IEEE Robotics & Automation Magazine - December 2016 - 46
IEEE Robotics & Automation Magazine - December 2016 - 47
IEEE Robotics & Automation Magazine - December 2016 - 48
IEEE Robotics & Automation Magazine - December 2016 - 49
IEEE Robotics & Automation Magazine - December 2016 - 50
IEEE Robotics & Automation Magazine - December 2016 - 51
IEEE Robotics & Automation Magazine - December 2016 - 52
IEEE Robotics & Automation Magazine - December 2016 - 53
IEEE Robotics & Automation Magazine - December 2016 - 54
IEEE Robotics & Automation Magazine - December 2016 - 55
IEEE Robotics & Automation Magazine - December 2016 - 56
IEEE Robotics & Automation Magazine - December 2016 - 57
IEEE Robotics & Automation Magazine - December 2016 - 58
IEEE Robotics & Automation Magazine - December 2016 - 59
IEEE Robotics & Automation Magazine - December 2016 - 60
IEEE Robotics & Automation Magazine - December 2016 - 61
IEEE Robotics & Automation Magazine - December 2016 - 62
IEEE Robotics & Automation Magazine - December 2016 - 63
IEEE Robotics & Automation Magazine - December 2016 - 64
IEEE Robotics & Automation Magazine - December 2016 - 65
IEEE Robotics & Automation Magazine - December 2016 - 66
IEEE Robotics & Automation Magazine - December 2016 - 67
IEEE Robotics & Automation Magazine - December 2016 - 68
IEEE Robotics & Automation Magazine - December 2016 - 69
IEEE Robotics & Automation Magazine - December 2016 - 70
IEEE Robotics & Automation Magazine - December 2016 - 71
IEEE Robotics & Automation Magazine - December 2016 - 72
IEEE Robotics & Automation Magazine - December 2016 - 73
IEEE Robotics & Automation Magazine - December 2016 - 74
IEEE Robotics & Automation Magazine - December 2016 - 75
IEEE Robotics & Automation Magazine - December 2016 - 76
IEEE Robotics & Automation Magazine - December 2016 - 77
IEEE Robotics & Automation Magazine - December 2016 - 78
IEEE Robotics & Automation Magazine - December 2016 - 79
IEEE Robotics & Automation Magazine - December 2016 - 80
IEEE Robotics & Automation Magazine - December 2016 - 81
IEEE Robotics & Automation Magazine - December 2016 - 82
IEEE Robotics & Automation Magazine - December 2016 - 83
IEEE Robotics & Automation Magazine - December 2016 - 84
IEEE Robotics & Automation Magazine - December 2016 - 85
IEEE Robotics & Automation Magazine - December 2016 - 86
IEEE Robotics & Automation Magazine - December 2016 - 87
IEEE Robotics & Automation Magazine - December 2016 - 88
IEEE Robotics & Automation Magazine - December 2016 - 89
IEEE Robotics & Automation Magazine - December 2016 - 90
IEEE Robotics & Automation Magazine - December 2016 - 91
IEEE Robotics & Automation Magazine - December 2016 - 92
IEEE Robotics & Automation Magazine - December 2016 - 93
IEEE Robotics & Automation Magazine - December 2016 - 94
IEEE Robotics & Automation Magazine - December 2016 - 95
IEEE Robotics & Automation Magazine - December 2016 - 96
IEEE Robotics & Automation Magazine - December 2016 - 97
IEEE Robotics & Automation Magazine - December 2016 - 98
IEEE Robotics & Automation Magazine - December 2016 - 99
IEEE Robotics & Automation Magazine - December 2016 - 100
IEEE Robotics & Automation Magazine - December 2016 - 101
IEEE Robotics & Automation Magazine - December 2016 - 102
IEEE Robotics & Automation Magazine - December 2016 - 103
IEEE Robotics & Automation Magazine - December 2016 - 104
IEEE Robotics & Automation Magazine - December 2016 - 105
IEEE Robotics & Automation Magazine - December 2016 - 106
IEEE Robotics & Automation Magazine - December 2016 - 107
IEEE Robotics & Automation Magazine - December 2016 - 108
IEEE Robotics & Automation Magazine - December 2016 - 109
IEEE Robotics & Automation Magazine - December 2016 - 110
IEEE Robotics & Automation Magazine - December 2016 - 111
IEEE Robotics & Automation Magazine - December 2016 - 112
IEEE Robotics & Automation Magazine - December 2016 - 113
IEEE Robotics & Automation Magazine - December 2016 - 114
IEEE Robotics & Automation Magazine - December 2016 - 115
IEEE Robotics & Automation Magazine - December 2016 - 116
IEEE Robotics & Automation Magazine - December 2016 - 117
IEEE Robotics & Automation Magazine - December 2016 - 118
IEEE Robotics & Automation Magazine - December 2016 - 119
IEEE Robotics & Automation Magazine - December 2016 - 120
IEEE Robotics & Automation Magazine - December 2016 - 121
IEEE Robotics & Automation Magazine - December 2016 - 122
IEEE Robotics & Automation Magazine - December 2016 - 123
IEEE Robotics & Automation Magazine - December 2016 - 124
IEEE Robotics & Automation Magazine - December 2016 - 125
IEEE Robotics & Automation Magazine - December 2016 - 126
IEEE Robotics & Automation Magazine - December 2016 - 127
IEEE Robotics & Automation Magazine - December 2016 - 128
IEEE Robotics & Automation Magazine - December 2016 - 129
IEEE Robotics & Automation Magazine - December 2016 - 130
IEEE Robotics & Automation Magazine - December 2016 - 131
IEEE Robotics & Automation Magazine - December 2016 - 132
IEEE Robotics & Automation Magazine - December 2016 - 133
IEEE Robotics & Automation Magazine - December 2016 - 134
IEEE Robotics & Automation Magazine - December 2016 - 135
IEEE Robotics & Automation Magazine - December 2016 - 136
IEEE Robotics & Automation Magazine - December 2016 - 137
IEEE Robotics & Automation Magazine - December 2016 - 138
IEEE Robotics & Automation Magazine - December 2016 - 139
IEEE Robotics & Automation Magazine - December 2016 - 140
IEEE Robotics & Automation Magazine - December 2016 - 141
IEEE Robotics & Automation Magazine - December 2016 - 142
IEEE Robotics & Automation Magazine - December 2016 - 143
IEEE Robotics & Automation Magazine - December 2016 - 144
IEEE Robotics & Automation Magazine - December 2016 - 145
IEEE Robotics & Automation Magazine - December 2016 - 146
IEEE Robotics & Automation Magazine - December 2016 - 147
IEEE Robotics & Automation Magazine - December 2016 - 148
IEEE Robotics & Automation Magazine - December 2016 - 149
IEEE Robotics & Automation Magazine - December 2016 - 150
IEEE Robotics & Automation Magazine - December 2016 - 151
IEEE Robotics & Automation Magazine - December 2016 - 152
IEEE Robotics & Automation Magazine - December 2016 - 153
IEEE Robotics & Automation Magazine - December 2016 - 154
IEEE Robotics & Automation Magazine - December 2016 - 155
IEEE Robotics & Automation Magazine - December 2016 - 156
IEEE Robotics & Automation Magazine - December 2016 - 157
IEEE Robotics & Automation Magazine - December 2016 - 158
IEEE Robotics & Automation Magazine - December 2016 - 159
IEEE Robotics & Automation Magazine - December 2016 - 160
IEEE Robotics & Automation Magazine - December 2016 - 161
IEEE Robotics & Automation Magazine - December 2016 - 162
IEEE Robotics & Automation Magazine - December 2016 - 163
IEEE Robotics & Automation Magazine - December 2016 - 164
IEEE Robotics & Automation Magazine - December 2016 - 165
IEEE Robotics & Automation Magazine - December 2016 - 166
IEEE Robotics & Automation Magazine - December 2016 - 167
IEEE Robotics & Automation Magazine - December 2016 - 168
IEEE Robotics & Automation Magazine - December 2016 - 169
IEEE Robotics & Automation Magazine - December 2016 - 170
IEEE Robotics & Automation Magazine - December 2016 - 171
IEEE Robotics & Automation Magazine - December 2016 - 172
IEEE Robotics & Automation Magazine - December 2016 - 173
IEEE Robotics & Automation Magazine - December 2016 - 174
IEEE Robotics & Automation Magazine - December 2016 - 175
IEEE Robotics & Automation Magazine - December 2016 - 176
IEEE Robotics & Automation Magazine - December 2016 - 177
IEEE Robotics & Automation Magazine - December 2016 - 178
IEEE Robotics & Automation Magazine - December 2016 - 179
IEEE Robotics & Automation Magazine - December 2016 - 180
IEEE Robotics & Automation Magazine - December 2016 - 181
IEEE Robotics & Automation Magazine - December 2016 - 182
IEEE Robotics & Automation Magazine - December 2016 - 183
IEEE Robotics & Automation Magazine - December 2016 - 184
IEEE Robotics & Automation Magazine - December 2016 - 185
IEEE Robotics & Automation Magazine - December 2016 - 186
IEEE Robotics & Automation Magazine - December 2016 - 187
IEEE Robotics & Automation Magazine - December 2016 - 188
IEEE Robotics & Automation Magazine - December 2016 - 189
IEEE Robotics & Automation Magazine - December 2016 - 190
IEEE Robotics & Automation Magazine - December 2016 - 191
IEEE Robotics & Automation Magazine - December 2016 - 192
IEEE Robotics & Automation Magazine - December 2016 - 193
IEEE Robotics & Automation Magazine - December 2016 - 194
IEEE Robotics & Automation Magazine - December 2016 - 195
IEEE Robotics & Automation Magazine - December 2016 - 196
IEEE Robotics & Automation Magazine - December 2016 - 197
IEEE Robotics & Automation Magazine - December 2016 - 198
IEEE Robotics & Automation Magazine - December 2016 - 199
IEEE Robotics & Automation Magazine - December 2016 - 200
IEEE Robotics & Automation Magazine - December 2016 - 201
IEEE Robotics & Automation Magazine - December 2016 - 202
IEEE Robotics & Automation Magazine - December 2016 - 203
IEEE Robotics & Automation Magazine - December 2016 - 204
IEEE Robotics & Automation Magazine - December 2016 - Cover3
IEEE Robotics & Automation Magazine - December 2016 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com