persurface embedded in 5D space. Applying a con-
strained version of the descending gradient on the hy-
persurface, it is possible to find out all the admissible,
equivalent and shortest (for a given metric of the dis-
cretized space) trajectories connecting two positions
for each robot C-Space-Time.
2 PROBLEM STATEMENTS
A wide variety of world models can be used to de-
scribe the interaction between an autonomous agent
and its environment. One of the most important is the
Configuration Space (Latombe, 1991; Lozano-P
´
erez,
1983). The C-Space C of a rigid body is the set of all
its configurations q (i.e. poses). If the robot can freely
translate and rotate on a 2D surface, the C-Space is a
3D manifold R
2
× SO(2). It can be modelled using
a 3D Bitmap GC (C-Space Binary Bitmap), a regular
decomposition in cells of the C-Space, represented by
the application GC : C → {0, 1}, where 0s represent
non admissible configurations. The C-Potential is a
function U(q) defined over the C-Space that ”drives”
the robot through the sequence of configuration points
to reach the goal pose (Barraquand et al., 1992). Let
us introduce some other assumptions: 1) space topol-
ogy is finite and planar; 2) the robot has a lower bound
on the steering radius (non-holonomic vehicle). The
latter assumption introduces important restrictions on
the types of trajectories to be found.
Cellular Automata are automata distributed on the
cells of a Cellular Space Z
n
(a regular lattice) with
transition functions invariant under translation (Goles
and Martinez, 1990): f
c
(·) = f (·), ∀c ∈ Z
n
, f (·) :
Q
|A
0
|
→ Q, where c is the coordinate vector identi-
fying a cell, Q is the set of states of an automaton and
A
0
is the set of arcs outgoing from a cell to the neigh-
bors. The mapping between the Robot Path-Planning
Figure 1: MultiLayers Architecture.
Problem and CA is quite simple: every cell of the
C-Space Bitmap GC is an automaton of a CA. The
state of every cell contributes to build the C-Potential
U(q) through a diffusion mechanism between neigh-
bors. The trajectories are found following the mini-
mum valley of the surface U(q). In this work, we use
a simple extension of the CA model: we associate a
vector of attributes (state vector) to every cell. Each
state vector depends on the state vectors of the cells
in the neighborhood. There is a second interpretation:
this is a Multilayered Cellular Automaton (Bandini
and Mauri, 1999), where each layer corresponds to
a subset of the state vector components. Each sub-
set is evaluated in a single layer and depends on the
same attribute of the neighbor cells in the same layer
and depends also on the states of the corresponding
cell and its neighbors in other layers. In the follow-
ing sections, we describe each layer and the transition
function implemented in its cells.
3 MULTILAYERED
ARCHITECTURE
In Fig. 1 is shown the layers structure and their de-
pendencies. There are two main layers: Obstacles
Layer and the Attraction Layer. Each layer is sub-
divided in more sublayers: the Obstacles L. has 3 di-
mensions (2 for the workspace (X, Y ) and 1 more for
the time), while the Attraction L. has up to 5 dimen-
sions (1 for the robots, 2 for the robots workspaces +
1 for their orientations (X, Y, Θ) and 1 for the time).
In the following subsections, we will briefly describe
each layer and their roles. The Obstacles L. concep-
tually depends on the outside environment. Its sub-
layers have to react to the ”external” changes: the
changes of the environment, i.e. the movements of
the obstacles in a dynamical world. Through a sen-
sorial system (not described here), these changes are
detected and the information is stored in Obstacles L.
permitting the planner to replan as needed.
3.1 The Obstacles Layer
The main role of the Obstacles Layer is to create a re-
pulsive force in the obstacles to keep the robots away
from them. In the present work, only static obstacles
are considered (e.g. walls). For the single robot, the
other robots are seen as moving obstacles, with un-
known and unpredictable trajectories. We are consid-
ering a centralized planner/coordinator, that can de-
cide (and, of course, it knows) the trajectories of all
the supervised robots. Thanks to this knowledge, the
planner considers the silhouette of the robot as an ob-
stacle for the other robots. In this work, we introduce
a discretized version of the C-Space-Time as in (War-
ren, 1990). With the introduction of the Time axis,
MULTIPLE MOBILE ROBOTS MOTION-PLANNING: AN APPROACH WITH SPACE-TIME MCA
399