IEEE Robotics & Automation Magazine - March 2015 - 68
Perception
Mission
Goals
Task Allocation
Reference
Path
Motion Planning
T, S
Spatial
Constraints
Coordination
Collision Prediction
T, S
Obstacle
Poses and
Bounding
Boxes
Temporal
Constraints
T, S
T, S
Spatial and
Temporal
Constraints
Spatial and
Temporal
Constraints
Spatial and
Temporal
Constraints
Control
Control
T, S Actions
Temporal
Constraints
Sensor
Readings
Constraint-Based Representation (Trajectory Envelopes f)
Figure 3. The SAUNA functional schema. The dashed arrows indicate information extracted by each module from the constraint-based
representation, which can be either temporal envelopes (T ) or spatial envelopes (S). The continuous arrows indicate the refinements
that modules post to the overall problem, i.e., temporal and/or spatial constraints that modify the envelopes. The dotted arrows indicate the
inputs and signals exchanged between modules.
particular set of constraints. In SAUNA, we have divided this
collection of reasoning capabilities into six functional modules, as shown in Figure 3.
● Perception is responsible for constructing collections of
spatial constraints, which subsume vehicles' paths, given
the perceived drivable area. In addition, perception is
responsible for localization and fixed/mobile obstacle
tracking. Note that perception dynamically posts spatial
constraints, as obstacles may become known gradually
over time.
● Task allocation addresses mission goals and computes startto-destination pairs of regions that vehicles should visit
(given the perceived drivable area). It also posts temporal
constraints stating the desired deadlines or release times
(i.e., when vehicles should be in the designated areas).
● Motion planning uses the perceived drivable area to compute sets of spatial constraints, sequenced by temporal constraints, which identify how vehicles should displace themselves across the drivable area to achieve the constraints
posted by task allocation. These sequences are trajectory
envelopes containing paths that are guaranteed to be kinematically feasible.
● Coordination is responsible for further refining the trajectory envelopes with constraints that exclude deadlocks and
collisions between controlled vehicles. The input, calculated by motion planning, is a sequence of overlapping
convex polyhedra for each robot. The output consists of
temporal constraints that exclude trajectories leading to
vehicles being in overlapping areas during overlapping
temporal intervals as well as temporal profiles that exceed
the known speed limits for vehicles.
● Collision prediction imposes constraints that exclude collisions with vehicles that are not autonomously guided and
other dynamic obstacles in the environment. It enriches the
trajectory envelopes with spatial and temporal constraints,
which guarantee the absence of collisions, given current
68
*
IEEE ROBOTICS & AUTOMATION MAGAZINE
*
march 2015
perception, known trajectory envelopes for controlled vehicles, and the predicted behavior of dynamic obstacles.
● Control modules on board the vehicles are responsible for
computing control actions for vehicles in such a way that all
spatial and temporal constraints (which have been refined
by the previous modules) are enforced. In addition, controllers measure the performance they achieve in following a
reference trajectory. This allows them to dynamically impose further constraints that restrict the trajectories of all
vehicles in the fleet to maximize the collective performance.
As shown in Figure 3, all modules reason upon the current
collection of spatial and temporal constraints (S and T,
respectively) in the common constraint-based representation.
They post specific constraints-spatial, temporal, or both-to
the common constraint-based representation to refine the trajectory envelopes because of their particular inference procedures. The modules refine the representation continuously and
are triggered by their inputs. Perception may refine the spatial
envelopes when sensors detect changes in the environment;
task planning is activated when mission goals appear or
change, or when the temporal or spatial envelopes of existing
trajectories are modified; motion planning recomputes polyhedra sequencing when new goals appear and/or when spatial
constraints change; coordination is triggered when trajectory
envelopes overlap both spatially and temporally, a condition
that can exist when envelopes are first computed or when temporal constraints are added by collision prediction; the temporal and spatial envelopes, as well as newly perceived moving
objects, trigger collision prediction; and control modules on
board the vehicles adapt control actions in the face of new trajectories to follow. The overall result is a constraint network
that represents a feasible set of trajectory envelopes for all vehicles in the fleet.
In the remainder of this article, we provide a brief overview of each module and present an instance of the entire system. The description also focuses on which of the
Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - March 2015
IEEE Robotics & Automation Magazine - March 2015 - Cover1
IEEE Robotics & Automation Magazine - March 2015 - Cover2
IEEE Robotics & Automation Magazine - March 2015 - 1
IEEE Robotics & Automation Magazine - March 2015 - 2
IEEE Robotics & Automation Magazine - March 2015 - 3
IEEE Robotics & Automation Magazine - March 2015 - 4
IEEE Robotics & Automation Magazine - March 2015 - 5
IEEE Robotics & Automation Magazine - March 2015 - 6
IEEE Robotics & Automation Magazine - March 2015 - 7
IEEE Robotics & Automation Magazine - March 2015 - 8
IEEE Robotics & Automation Magazine - March 2015 - 9
IEEE Robotics & Automation Magazine - March 2015 - 10
IEEE Robotics & Automation Magazine - March 2015 - 11
IEEE Robotics & Automation Magazine - March 2015 - 12
IEEE Robotics & Automation Magazine - March 2015 - 13
IEEE Robotics & Automation Magazine - March 2015 - 14
IEEE Robotics & Automation Magazine - March 2015 - 15
IEEE Robotics & Automation Magazine - March 2015 - 16
IEEE Robotics & Automation Magazine - March 2015 - 17
IEEE Robotics & Automation Magazine - March 2015 - 18
IEEE Robotics & Automation Magazine - March 2015 - 19
IEEE Robotics & Automation Magazine - March 2015 - 20
IEEE Robotics & Automation Magazine - March 2015 - 21
IEEE Robotics & Automation Magazine - March 2015 - 22
IEEE Robotics & Automation Magazine - March 2015 - 23
IEEE Robotics & Automation Magazine - March 2015 - 24
IEEE Robotics & Automation Magazine - March 2015 - 25
IEEE Robotics & Automation Magazine - March 2015 - 26
IEEE Robotics & Automation Magazine - March 2015 - 27
IEEE Robotics & Automation Magazine - March 2015 - 28
IEEE Robotics & Automation Magazine - March 2015 - 29
IEEE Robotics & Automation Magazine - March 2015 - 30
IEEE Robotics & Automation Magazine - March 2015 - 31
IEEE Robotics & Automation Magazine - March 2015 - 32
IEEE Robotics & Automation Magazine - March 2015 - 33
IEEE Robotics & Automation Magazine - March 2015 - 34
IEEE Robotics & Automation Magazine - March 2015 - 35
IEEE Robotics & Automation Magazine - March 2015 - 36
IEEE Robotics & Automation Magazine - March 2015 - 37
IEEE Robotics & Automation Magazine - March 2015 - 38
IEEE Robotics & Automation Magazine - March 2015 - 39
IEEE Robotics & Automation Magazine - March 2015 - 40
IEEE Robotics & Automation Magazine - March 2015 - 41
IEEE Robotics & Automation Magazine - March 2015 - 42
IEEE Robotics & Automation Magazine - March 2015 - 43
IEEE Robotics & Automation Magazine - March 2015 - 44
IEEE Robotics & Automation Magazine - March 2015 - 45
IEEE Robotics & Automation Magazine - March 2015 - 46
IEEE Robotics & Automation Magazine - March 2015 - 47
IEEE Robotics & Automation Magazine - March 2015 - 48
IEEE Robotics & Automation Magazine - March 2015 - 49
IEEE Robotics & Automation Magazine - March 2015 - 50
IEEE Robotics & Automation Magazine - March 2015 - 51
IEEE Robotics & Automation Magazine - March 2015 - 52
IEEE Robotics & Automation Magazine - March 2015 - 53
IEEE Robotics & Automation Magazine - March 2015 - 54
IEEE Robotics & Automation Magazine - March 2015 - 55
IEEE Robotics & Automation Magazine - March 2015 - 56
IEEE Robotics & Automation Magazine - March 2015 - 57
IEEE Robotics & Automation Magazine - March 2015 - 58
IEEE Robotics & Automation Magazine - March 2015 - 59
IEEE Robotics & Automation Magazine - March 2015 - 60
IEEE Robotics & Automation Magazine - March 2015 - 61
IEEE Robotics & Automation Magazine - March 2015 - 62
IEEE Robotics & Automation Magazine - March 2015 - 63
IEEE Robotics & Automation Magazine - March 2015 - 64
IEEE Robotics & Automation Magazine - March 2015 - 65
IEEE Robotics & Automation Magazine - March 2015 - 66
IEEE Robotics & Automation Magazine - March 2015 - 67
IEEE Robotics & Automation Magazine - March 2015 - 68
IEEE Robotics & Automation Magazine - March 2015 - 69
IEEE Robotics & Automation Magazine - March 2015 - 70
IEEE Robotics & Automation Magazine - March 2015 - 71
IEEE Robotics & Automation Magazine - March 2015 - 72
IEEE Robotics & Automation Magazine - March 2015 - 73
IEEE Robotics & Automation Magazine - March 2015 - 74
IEEE Robotics & Automation Magazine - March 2015 - 75
IEEE Robotics & Automation Magazine - March 2015 - 76
IEEE Robotics & Automation Magazine - March 2015 - 77
IEEE Robotics & Automation Magazine - March 2015 - 78
IEEE Robotics & Automation Magazine - March 2015 - 79
IEEE Robotics & Automation Magazine - March 2015 - 80
IEEE Robotics & Automation Magazine - March 2015 - 81
IEEE Robotics & Automation Magazine - March 2015 - 82
IEEE Robotics & Automation Magazine - March 2015 - 83
IEEE Robotics & Automation Magazine - March 2015 - 84
IEEE Robotics & Automation Magazine - March 2015 - 85
IEEE Robotics & Automation Magazine - March 2015 - 86
IEEE Robotics & Automation Magazine - March 2015 - 87
IEEE Robotics & Automation Magazine - March 2015 - 88
IEEE Robotics & Automation Magazine - March 2015 - 89
IEEE Robotics & Automation Magazine - March 2015 - 90
IEEE Robotics & Automation Magazine - March 2015 - 91
IEEE Robotics & Automation Magazine - March 2015 - 92
IEEE Robotics & Automation Magazine - March 2015 - 93
IEEE Robotics & Automation Magazine - March 2015 - 94
IEEE Robotics & Automation Magazine - March 2015 - 95
IEEE Robotics & Automation Magazine - March 2015 - 96
IEEE Robotics & Automation Magazine - March 2015 - 97
IEEE Robotics & Automation Magazine - March 2015 - 98
IEEE Robotics & Automation Magazine - March 2015 - 99
IEEE Robotics & Automation Magazine - March 2015 - 100
IEEE Robotics & Automation Magazine - March 2015 - 101
IEEE Robotics & Automation Magazine - March 2015 - 102
IEEE Robotics & Automation Magazine - March 2015 - 103
IEEE Robotics & Automation Magazine - March 2015 - 104
IEEE Robotics & Automation Magazine - March 2015 - 105
IEEE Robotics & Automation Magazine - March 2015 - 106
IEEE Robotics & Automation Magazine - March 2015 - 107
IEEE Robotics & Automation Magazine - March 2015 - 108
IEEE Robotics & Automation Magazine - March 2015 - 109
IEEE Robotics & Automation Magazine - March 2015 - 110
IEEE Robotics & Automation Magazine - March 2015 - 111
IEEE Robotics & Automation Magazine - March 2015 - 112
IEEE Robotics & Automation Magazine - March 2015 - 113
IEEE Robotics & Automation Magazine - March 2015 - 114
IEEE Robotics & Automation Magazine - March 2015 - 115
IEEE Robotics & Automation Magazine - March 2015 - 116
IEEE Robotics & Automation Magazine - March 2015 - 117
IEEE Robotics & Automation Magazine - March 2015 - 118
IEEE Robotics & Automation Magazine - March 2015 - 119
IEEE Robotics & Automation Magazine - March 2015 - 120
IEEE Robotics & Automation Magazine - March 2015 - 121
IEEE Robotics & Automation Magazine - March 2015 - 122
IEEE Robotics & Automation Magazine - March 2015 - 123
IEEE Robotics & Automation Magazine - March 2015 - 124
IEEE Robotics & Automation Magazine - March 2015 - 125
IEEE Robotics & Automation Magazine - March 2015 - 126
IEEE Robotics & Automation Magazine - March 2015 - 127
IEEE Robotics & Automation Magazine - March 2015 - 128
IEEE Robotics & Automation Magazine - March 2015 - 129
IEEE Robotics & Automation Magazine - March 2015 - 130
IEEE Robotics & Automation Magazine - March 2015 - 131
IEEE Robotics & Automation Magazine - March 2015 - 132
IEEE Robotics & Automation Magazine - March 2015 - 133
IEEE Robotics & Automation Magazine - March 2015 - 134
IEEE Robotics & Automation Magazine - March 2015 - 135
IEEE Robotics & Automation Magazine - March 2015 - 136
IEEE Robotics & Automation Magazine - March 2015 - 137
IEEE Robotics & Automation Magazine - March 2015 - 138
IEEE Robotics & Automation Magazine - March 2015 - 139
IEEE Robotics & Automation Magazine - March 2015 - 140
IEEE Robotics & Automation Magazine - March 2015 - 141
IEEE Robotics & Automation Magazine - March 2015 - 142
IEEE Robotics & Automation Magazine - March 2015 - 143
IEEE Robotics & Automation Magazine - March 2015 - 144
IEEE Robotics & Automation Magazine - March 2015 - 145
IEEE Robotics & Automation Magazine - March 2015 - 146
IEEE Robotics & Automation Magazine - March 2015 - 147
IEEE Robotics & Automation Magazine - March 2015 - 148
IEEE Robotics & Automation Magazine - March 2015 - 149
IEEE Robotics & Automation Magazine - March 2015 - 150
IEEE Robotics & Automation Magazine - March 2015 - 151
IEEE Robotics & Automation Magazine - March 2015 - 152
IEEE Robotics & Automation Magazine - March 2015 - Cover3
IEEE Robotics & Automation Magazine - March 2015 - 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