Decidability in Robot Manipulation Planning

Consider the problem of planning collision-free motion of $n$ objects in the plane movable through contact with a robot that can autonomously translate in the plane and that can move a maximum of $m \leq n$ objects simultaneously. This represents the abstract formulation of a manipulation planning problem that is proven to be decidable in this paper. The tools used for proving decidability of this simplified manipulation planning problem are, in fact, general enough to handle the decidability problem for the wider class of systems characterized by a stratified configuration space. These include, for example, problems of legged and multi-contact locomotion, bi-manual manipulation. In addition, the described approach does not restrict the dynamics of the manipulation system to be considered.


I. INTRODUCTION
The problem of planning collision free motion for a freeflying single-body robot in environments populated by static obstacles has been widely studied in the past decades and can be considered today well understood. In this paper we consider a generalization of this basic problem by allowing the presence of movable obstacles, i.e., objects in the environment that the robot can move by "grasping" them, while avoiding collisions with all the obstacles and objects.
The problem of motion planning in the presence of movable obstacles was first introduced in [1], the corresponding journal version appearing in [2], where the decidability is proven for the case of discrete grasps. This problem was further generalized in [3] to the so-called manipulation planning problem where the movable obstacles are considered as objects to be moved to reach a goal position. In that paper the authors present an algorithm for the case of discrete placements and grasps. This is the formulation briefly described in Chapter 11 of Latombe's book [4]. Decidability of the problem in the case of continuous grasps and placements was shown in [5] considering one movable object.
While [6] provides an efficient probabilistically complete algorithm in the case of several movable obstacles, the decidability problem, i.e., the existence of an exact algorithm that decides wether a solution exists in finite time, remained open even in the case of two movable objects as also mentioned in [7].
In this paper we first prove that the manipulation planning problem is decidable for a robot that can freely translate in the plane and manipulate n objects that can move only if they are in contact with the robot. The proof is based on a cell decomposition of the collision-free contact configuration space and on a reduction property. This property establishes the equivalence of two types of paths: namely, paths continuously satisfying the contact constraint and manipulation paths, along which the objects either translate rigidly with the robot as a single object (transfer paths) or remain in a fixed position while the robot moves freely (transit path).
To prove that the reduction property holds for the considered manipulation model we make use of the controllability result in [8].
The decidability procedure for this simplified case of manipulation planning problem uses methodological tools which are, in fact, abstract enough to allow handling a more general class of manipulation and planning problems.
The result, presented here, lays the basis for answering important questions such as under which conditions motion in contact can be reduced to a manipulation path, how to efficiently construct manipulation graphs related to many different problems (climbing, walking, multi-contact planning), and how to determine the rate of convergence of probabilistic planners for the manipulation of multiple objects. This paper is an extension of our previous work (first presented at [9], then published [10]) in which initially we had only proved the decidability for 3 disks. The approach was based on a three-stage paradigm: decomposition of the collision-free composite configuration space of robot and objects, retraction of the decomposition on the boundary of the collision-free grasping space, construction of the manipulation graph using the small space stratified controllability concept to define nodes and arcs of the graph. A very similar approach has then been applied in [11] to prove the decidability of the prehensile task and motion planning classes of problems.
As a matter of facts, the approach introduced in [9] was general enough to include a wide class of planning problems. In the present paper we show how the same approach can be further generalized to consider an arbitrary number of movable objects with arbitrary shape and discuss the general characteristics of the approach which permits dealing with other classes of planning problems.
The paper is organized as follows. The next section formalizes the problem after defining the configuration space and its connectivity through manipulation paths. Section III establishes the conditions under which motion in contact can be reduced to a manipulation path. Section IV illustrates the main steps for the construction of the manipulation graph. Section V opens perspective about the generalization of the results to other manipulation planning problems and finally, Sect. VI concludes the paper.

II. PROBLEM FORMULATION
Consider the scene in Fig. 1: the "robot" R can translate autonomously in a polygonal (or semi-algebraic) environment populated by fixed obstacles and objects n objects O 1 , O 2 , . . . , O n that R can move by establishing a contact with them. More specifically, the objects O 1 , O 2 , . . . , O n translate rigidly with the robot when in contact with it; otherwise, they are considered as fixed obstacles.

A. Configuration space
The configuration spaces of the robot and the objects are defined as: The combined configuration space is obtained as C = C R × C O1 × C O2 × · · · × C On = R 2n . A configuration q ∈ C is given by the n-tuple q = (q R , q O1 , q O2 , . . . , q On ), where q R ∈ C R , q Oi ∈ C Oi , i ∈ 1, . . . , n.
The collision-free configuration space C free is obtained by removing from C the set of inadmissible configurations: • q R such that the robot is in contact with static obstacles or overlaps with either static or movable obstacles; • q Oi , i ∈ 1, . . . , n such that O i overlaps with the static obstacles, the robot or with O j , j = i. Note that contact between objects and obstacles is allowed.

B. Configuration space paths and manipulation paths
Configuration space paths may or may not include contacts.
To move the objects, however, the robot must be in contact with the objects. Paths of interest in C can be categorized according to the two motion modalities: • robot free motion: this is a path in C characterized by the absence of contact between the robot and the objects; • contact motion: this is a path in C constrained by the condition that the robot is in contact with at least one object; along the path the robot position and the positions of the objects relative to the robot can change. grasps both the objects and moves rigidly with them; along these paths the relative configurations between robot and objects in contact do not change; -transit paths along which the robot moves alone.
A sequence of transit and transfer paths is called a manipulation path.

Configuration space connectivity through manipulation paths
In this section we illustrate the complete structure of C in terms of the submanifolds defined by the contact constraints and their interconnection through transit and transfer paths. Figure 2 shows the representative configurations in each manifold.
The embedding configuration space C has dimension 6 and foliates with the position of the movable objects. In particular, leaves of dimension 2 correspond to fixed positions of the two objects. Transit paths belong to one of these leaves. Manipulation paths across the leaves (the objects change position) require leaving the manifold. A representative configuration in this manifold is shown at the top of Fig. 2.
Configurations on the second row (from top) of Fig. 2 represent the singlecontact manifold which has dimension 5, foliates with the absolute position of one object and the relative position of the other with respect to the robot. The The above described paths might or might not be feasible for a manipulation system depending on its characteristics. In the following developments we consider only manipulation by rigid grasp. Therefore, not all the configuration space paths are feasible in our setting. Feasible motions correspond to paths of two types: • transfer paths along which the robot grasps at least one object and moves rigidly with it (the objects not grasped remain in a fixed position); along these paths the relative configurations between robot and objects in contact do not change. • transit paths along which the robot moves alone and the objects remain in fixed positions. A sequence of transit and transfer paths is called a manipulation path.

C. Configuration space connectivity through manipulation paths
The number m of objects that the robot can manipulate at the same time is in general limited and it affects the structure of C induced by the contact constraints. In this section we illustrate the structure of C in terms of the submanifolds defined by the contact constraints and their interconnection through transit and transfer paths. Figure 2 shows representative configurations in each submanifold for the cases n = 2 and m = 2 or m = 1, respectively illustrated in Fig. 2a and Fig 2b. The embedding configuration space C has dimension 6 and foliates with the position of the movable objects. In particular, leaves of dimension 2 correspond to fixed positions of the two objects. Transit paths belong to one of these leaves. A representative configuration in this manifold is shown at the top of Finally, the triple-contact submanifold has dimension 3, it foliates with the position of the contact points and the leaves have dimension 2. Manipulation paths across the leaves require leaving the submanifold.
This last submanifold is not present in the structure of C when m = 1 as illustrated in Fig. 2b. However, our solution requires considering also this submanifold of C to prove decidability, as will be illustrated in what follows.
In general, the structure of C depends both on the number n of movable objects and on m, the maximum number of objects that the robot can move at the same time.
As will be illustrated in section III-C, the "manipulability" properties associated with the above described submanifolds are actually transversal to this geometric structure and depend on the controllability of the underlying manipulation system (see Sect. III-B).

D. The manipulation planning problem
Given the definitions and analysis in the previous sections, we can formulate the following problem. Manipulation Planning Problem. Assigned an initial configuration q s ∈ C free and a goal configuration q g ∈ C free , find a sequence of transit and transfer paths joining q s to q g , if it exists.
To prove that this problem is decidable we adopt the same approach as [5]. First we study the problem of reducing configuration space paths belonging to the contact submanifolds represented in Fig. 2 to manipulation paths. Then, we determine a cell decomposition of the contact space. Finally, we construct the manipulation graph whose connected components characterize the existence of solutions to the manipulation problem defined above. In case m < n we remove some nodes and the corresponding arcs from the manipulation graph.
The first part of our approach consists, in fact, in answering the following question: is it possible to reduce any collision-free configuration space path describing motion of the robot in contact with at least one object to a (finite) sequence of transit and transfer paths? Answering this question requires studying the local controllability of the dynamic system that is possible to associate with the manipulation model. The analysis is described in the following section and makes use of the result by Goodwine and Burdick [8] providing sufficient conditions for controllability of kinematic control systems on stratified configuration spaces.

III. CONTROLLABILITY OF THE MANIPULATION SYSTEM
To answer the first part of the manipulation planning problem, we define here the simple kinematics describing the manipulation system underlying the planning problem under consideration. This system has a stratified configuration space and we use the result in [8] to establish its local controllability.

A. Controllability definitions
This section recalls the controllability definitions of interest to prove decidability of the manipulation problems of interest. Given an open set V ⊆ M , let R V (x 0 , T ) be the set of states x f such that there exists u : [0, T ] → U that steers the control system from x(0) = x 0 to x(T ) = x f and satisfies x(t) ∈ V for 0 ≤ t ≤ T , where U is the set of admissible control inputs. Define the set of states reachable up to time T as (1) A more "natural" notion of controllability for proving decidability is the so-called local-local controllability (LLC) notion introduced in [12].
(2) LLC requires that the trajectory to reach points in the neighborhood of a given state x 0 is local. The time, however, is not specified (or bounded) in advance. For systems with bounded inputs STLC and LLC are equivalent properties.

B. Controllability on stratified configuration spaces
The definition of STLC above is generalized in [8] to include the case of stratified systems. We briefly recall here the main definitions and properties of stratified configuration spaces and the stratified controllability property that we prove to hold in our case. Stratified configuration manifold (Definition 2.2 in [8]): Let M be a manifold (possibly with boundary), and n functions Φ i : M → R, i = 1, . . . , n be such that the level sets S i = Φ −1 i (0) ⊂ M are regular submanifolds of M , for each i, and the intersection of any number of the level sets, is also a regular submanifold of M . Then M and the functions Φ i , define a stratified configuration space.
The driftless systems defined on stratified configuration manifolds are described on each stratum, or on strata intersections, by equations of motion characterized by smooth vector fields and the only discontinuities present in the equations of motion are due to transitions on and off the strata or their intersections. Stratified controllability (Definition 3.2 in [8] where the subscript is the codimension of the submanifold, such that the associated involutive distributions satisfy and each − ∆S j has constant rank for some neighborhood V j ⊂ S j , of x 0 , then the system is stratified controllable from x 0 in M .
Stated differently, if the involutive closures of the distributions associated to each submanifold in the nested sequence intersect transversely then the system can flow in any direction in M . Intuitively, this controllability concept allows to prove that any path in contact in the composite configuration space of the robot and the movable objects can be approximated by a sequence of transit and transfer paths, i.e., a path in the stratified configuration space of the manipulation system.

C. Stratified controllability of the manipulation system
To use the stratified controllability concept for proving that a contact path can be transformed into a manipulation path, we consider ambient manifolds and stratifications defined by the contact submanifolds. In particular, there exist n p = n p , p = {1, . . . , m}, ambient submanifolds M np given by the combined configuration space of the robot and the p objects in contact. The dimension of each ambient submanifold is equal to dim(M np ) = 2 + 2p and it contains p p − i submanifolds of codimension p−i, i = {0, . . . , p−1} defined by all the possible contact combinations of the p objects with the robot. Note that these submanifolds are leaves of the combined configuration space C of the robot and all the n obstacles.
The stratified controllability property is easily verified to hold on each of these ambient manifolds, while it is not verified on submanifolds of C of dimension greater than 2 + 2p. Hence, the considered manipulation system is stratified controllable on all the leaves of C defined by the submanifolds M np . How to build the nested sequence of submanifolds providing stratified controllability is the subject of what follows.
Denote by x = (x R , y R , x Oc 1 , y Oc 1 , . . . , x Oc p , y Oc p ) T , a configuration of the manipulation system formed by the robot and p movable objects. Set the maximum number of objects that the robot can move at the same time equal to p. The equations of motion on each stratum are determined by considering that R can only translate in the plane and the objects can be moved when in contact with R with a stable grasp. The control system underlying this manipulation model can be written in the forṁ where u 1 , u 2 are the robot cartesian velocities considered as the system inputs and g Si 1 , g Si 2 are the input vector fields that have a different expression on each substratum. In particular, in S 0 = C we have where the first two components of the vector fields determine the motion of the robot and are invariant on all the strata. In S 0 they describe the free motion of the robot alone on a leaf of C that depends on the position of the objects. The remaining components have been grouped in vectors of zeros of dimension p − 2.
On the single-contact manifolds C 1 the input vector fields have the same first two components, the (i + 2)-th entry of g C1 1 and the (i + 3)-th entry of g C1 2 , i ∈ 1, . . . , p, equal to 1, the remaining components equal to zero. Flowing along these vector fields amounts to moving the object in contact while staying on a leaf that depends on the position of the objects that are not touched by the robot. Since all the single-contact manifolds have codimension 1, S 1 will be equal to either one of them in the sequence of nested submanifolds. This control will however implicitly assume that the position of the other objects will remain constant, i.e., the system is flowing on a leaf of the single contact manifold. Hence, if the system is stratified controllable, it will be only possible to prove that any path in contact on a leaf of S 1 can be approximated by a manipulation path. In fact, we need this local controllability to guarantee that a collision free path in continuous contact can be approximated by a manipulation path that is contained in a neighborhood of the original contact path. Complete decidability study requires the analysis of the manipulation graph connectivity.
The vector fields describing the motion on the subsequent strata can be defined iteratively by setting the components corresponding to the coordinates of the objects in contact equal to 1 and all the remaining components equal to zero. As noted above, the first two components of each vector field do not change across the strata and only one stratum for each codimension will be considered in the sequence of nested submanifolds. Analogously to the single contact case, this implies that the reduction property, or the possibility to approximate a collision-free path with a manipulation path, is only valid on a leaf of each substratum S j , j ∈ 1, . . . , m. Note that, in our setting, a substratum S j collects all the contact submanifolds of codimension j defined by the contact of the robot and j of the n movable obstacles.
It is easy to verify that the stratified controllability proposition holds by choosing as involutive distributions where g S1 1 and g S1 2 can have either one of the expressions provided above. Figure 3 illustrates the stratification of the configuration space induced by the contact constraints in the case n = m = 2. By virtue of the controllability property described above, any continuous path in contact with the robot in S 2 can be approximated by a manipulation path.
Considering then as ambient manifold one of the two submanifolds M np with n = 2 and p = 1 defined by the object in contact with the robot. The preceding construction can be adapted to prove stratified controllability on each of these submanifolds that are leaves of the complete configuration space defined by the robot and the two movable objects. Hence, a path in contact in each leaf of S 1 can be approximated by a manipulation path that possibly goes through strata of lower codimension.
Until here we are not considering obstacles, hence the existence of a manipulation path depends locally on the controllability property. We take the hypothesis that the free configuration space of the robot without considering the objects is an open (same as the hypothesis H in [5]). Then, any collision-free path in contact can be approximated by a collision-free manipulation path. Intuitively, if the system is controllable, the "maneuvers" involved in the manipulation path can be made as small as desired so as the manipulation path remains in the neighbourhood of the contact path.
It is very easy to prove that in the general case of n movable objects and m maximum number of objects that the robot can manipulate at the same time, the reduction property is valid in each leaf of the manifolds of codimentions from m to 1. This property will be used to prove decidability by showing that if a solution exists it will either lie on a leaf of the free configuration space defined by a fixed position of the objects, i.e., the solution does not imply manipulation of the objects, or it passes through the submanifolds defined by the contact constraints between the robot and the obstacles. On each leaf of these submanifolds the reduction property holds, then a manipulation path exists if start and goal configurations can be connected through collision-free transit paths and paths in contact.
Note that the codimension of the lowest stratum is given by the number of movable objects and has an impact on the complexity of the considered motion planning problem. Figure 3 illustrates the stratification of the configuration space induced by the contact constraints. By virtue of the controllability property described above, any continuous path in contact between the robot and one or both objects in each stratum can be approximated by a manipulation path. This is referred to as reduction property. Having established that any path in the configuration space satisfying the contact constraint between the robot and the objects can be reduced to a manipulation path, we describe in the next section the construction of the manipulation graph.

Building the manipulation graph
The reduction property established in the previous section leads to the conclusion that any collision-free path in contact contained in a connected component of a same contact manifold is equivalent to a manipulation path. The key issue that remains is to build a geometric data structure that accounts for the decidability of the manipulation problem.
We propose here an extension of the manipulation graph as it has been introduced in [5] for the case of a single disk to move. In that case a single class ti tf tf IV. BUILDING THE MANIPULATION GRAPH The reduction property established in the previous section leads to the conclusion that any collision-free path in contact contained in any leaf of C defined by the ambient manifolds M np and in any leaf of the submanifolds defining the nested sequence supporting the controllability property is equivalent to a manipulation path. The remaining key issue involves building a geometric data structure that accounts for the obstacles presence and ultimately for the decidability of the manipulation problem.
We propose here an extension of the manipulation graph as it has been introduced in [5] for the case of a single movable object, i.e., n = m = 1. In that case the admissible (i.e., not in collision with static obstacles nor overlapping the object to move) contact configurations between the robot and the object were represented by the class GRASP . The nodes of the manipulation graph were then given by the connected components of GRASP where the controllability, and hence reduction, property is easily shown to hold. The adjacency relation was given by the existence of transit paths between two nodes.
In the case of n movable objects and a maximum of m ≤ n objects movable at the same time by the robot, it is necessary to introduce n p classes GRASP Φn p , p = {1, . . . , m}, and to build the manipulation graph over the connected components of these classes.
Each class GRASP Φn p represents the configurations in C free such that the robot is in contact with the p objects corresponding to one of the n p combinations also defining the ambient manifolds in Sect. III-C within which the stratified controllability holds. We define, hence, Φ np as the string of length p consisting in one of the n p combinations of p from the n objects. The position of the objects not included in Φ np can change within the class. To distinguish the different n p combinations we introduce the notation Φ np,i , i = {1, . . . , n p }. When only the length of the string Φ np is relevant the index i is not specified and we do not make a distinction between the n p combinations.
The reduction property shown in the previous section does not apply on the whole connected components of GRASP Φn p but inside each leaf of the foliation of GRASP Φn p that keeps constant the position of the obstacles that are not in contact with the robot: any path inside these leaves can be approximated by a sequence of transit and transfer paths. These are, for example, leaves of dimension 3 in the single contact manifolds schematically represented in Fig. 2a for the case n = m = 2.
The key questions are then: (i) how to determine the connected components of each GRASP Φn p , and (ii) how to build a manipulation graph on which it is possible to decide for the existence of a manipulation path.
To answer the first question consider that each GRASP Φn p is by definition a contact submanifold of C free of dimension 2(1 + n) − p, p = {1, . . . , m}. If there exists a cell decomposition of the 2(1 + n)-dimensional space C free , then this cell decomposition induces, by retraction on its boundary, a cell decomposition of the (2(1 + n) − p)dimensional contact submanifolds (up to some potential singularities we do not consider in this paper). Then, such a cell decomposition leads to a straightforward characterization of the connected components of each GRASP Φn p . The first question is then reduced to the existence of an algorithm that provides a cell decomposition of C free . A cylindrical decomposition can be used to this aim, as proposed in [13].
Building the manipulation graph is the second issue to be addressed. In particular, we need a suitable adjacency relationship between the cells of the classes GRASP Φn p .
Note, in fact, that each cell in the GRASP Φn p includes configurations that can be joined by elementary collisionfree paths. This elementary paths, however, consist in the coordinated motion of robot and objects, including those which are not in contact. In fact, as usual, the configuration space is unconstrained, that is, it has been constructed without considering that to change the position of an object it is necessary to move in contact with the robot. Hence, only the elementary paths that remain in the same leaf of a connected component of GRASP Φn p are guaranteed to be reducible to collision-free manipulation paths by retracting the cell decomposition of C free on its boundaries.
Then, we need to refine the cell decompositions of the connected components of each GRASP Φn p by considering their projections along the directions of the foliations generated by: (i) transit paths (the robot moves alone), (ii) transfer paths of type n p (the n p objects are moved by the robot while the remaining n − n p do not move).
Note first that the projection of a given cell C 1 onto a cell C 2 induces a decomposition of C 2 into several cells. The projection of a GRASP Φn p,i cell decomposition along the direction of its foliations onto a GRASP Φn p+1 gives rise to a decomposition of this last class into multiple cells. This decomposition is further refined by projecting the cell decomposition of each GRASP Φn p,j such that the length of the string Φ np,i ∪ Φ np,j is equal to p + 1 onto GRASP Φn p+1 . The initial cell decomposition of GRASP Φn p,i and GRASP Φn p,j can then be refined by "lifting" all cells in GRASP Φn p+1 along the foliations of GRASP Φn p,i and GRASP Φn p,j , respectively. GRASP Φn p+1 is then decomposed in elementary cells of which some are at the basis of two cylinders containing respectively cells of GRASP Φn p,i and GRASP Φn p,j .
The cell decomposition of GRASP Φn p+1 may however need to be further refined. The complete cell refinement is obtained by incrementally projecting cells of GRASP Φn p on cells of GRASP Φn p+1 , p = 1, . . . , m−1, along the foliations induced by transfer paths of type n p . Then each cell of GRASP Φn m−i is lifted to GRASP Φn m−i−1 , i = 0, . . . , m− 2. The cells generated by this refinement procedure and belonging to at least one cylinder constitute the nodes of the manipulation graph.
We then introduce the following adjacency relation: two cells in a class GRASP Φn p are adjacent by transfer paths if and only if they have a common frontier and they belong to at least one same cylinder.
If GRASP Φn p belongs to a contact manifold of minimum dimension, i.e., p = m, and it is n = m then adjacency is given by the existence of a common frontier between two cells. In fact, in this submanifold, any path in contact is equivalent to a manipulation path due to the stratified controllability property that, in this case, holds on C.
We can then introduce the following recursive definition of adjacency by transfer paths: Two cells belonging to two different classes GRASP Φn i and GRASP Φn j are adjacent by transfer paths if and only if their projections on GRASP Φn i ∪Φn j along the respective foliations, induced by transfer paths, intersect cells of the class GRASP Φn i ∪Φn j which are adjacent by transfer paths. Note that the recursion terminates if m = n because in the GRASP Φn class the adjacency is given by the existence of a common frontier between cells. To prove decidability the graph is always constructed by considering m = n. In case m < n, the nodes corresponding to classes GRASP Φn p , p > m, are removed from the graph together with all adjacency relations between cells that are based on the adjacency of GRASP Φn p cells. This will, of course, change the manipulation graph connectivity and problems requiring the simultaneous manipulation of all the movable objects will be correctly reported to be not solvable 1 .
Finally, consider the adjacency by transit paths, i.e., paths along which the robot is not in contact with any object. The main idea is the same as before. It is simpler because we have to consider only the foliation induced by transit paths. The leaves of the foliation are 2-dimensional. We consider the cell decomposition of each GRASP Φn p after the previously described cell refinement. We add an edge between two cells c 1 and c 2 belonging respectively to GRASP Φn i and GRASP Φn j if and only if the projection of either one of the two cells onto the other along the foliation by transit paths is not empty 2 . We have then the following Theorem: There exists a manipulation path between two configurations in the free space if and only if these configurations retract on two cells belonging to the same connected component of the manipulation graph.
The proof follows the same principle as the proof in [5] and [14].
Wrapping up, the manipulation graph nodes are cells of the S m strata refined through the projection and lifting process described before; adjacency in the contact space is provided by transfer paths between the refined cells; adjacency in the robot free space is provided by transit paths between the refined cells.
A. Example: n = m = 3 Consider the case of n = 3 movable objects and a robot that can move up to m = 3 objects together to achieve the planning task. The scenario is scketched in Fig. 4 (left).
In this case we have the following classes: GRASP i , i = {a, b, c}, GRASP ab , GRASP ac , GRASP bc , GRASP abc , where the index denotes the object in contact with the robot.
The retraction of the cylindrical decomposition of the 8dimensional configuration space on its boundary induces a cell decomposition of the (8-p)-dimensional (p = 1, . . . , 3) contact submanifolds and this decomposition characterizes the connected components of each of the above listed classes GRASP Φn p , Φ np = {a, b, c, ab, ac, bc, abc}. To refine the cell decomposition of each GRASP Φn p proceed as follows: R a b c Fig. 4: Example of a manipulation problem: the robot R can move up to the three objects a, b, and c (left) at the same time to achieve a manipulation task. The collision free path connecting two configurations of GRASPa and including the autonomous motion of b (right) is an admissible path within GRASPa but not necessarily a manipulation path. Since c is not moving, this path belongs to a leaf of GRASPa. To connect an initial and a desired configuration of GRASPa it is first necessary to establish a contact with b (left), take b to a convenient collision free configuration, i.e., move within GRASP ab , and then reach the goal. Along this paths motion in contact is allowed. 1) merge the projections of GRASP a cell decomposition along the direction of its foliations (corresponding to constant positions of the objects b and c) onto GRASP ab ; this gives rise to a decomposition of this last class into many cells; these cells can be reached by collision free paths in contact with a that belong to the leaves of GRASP a ; it is not guaranteed however that all the configurations in these cells can be reached by collision free paths in contact with b; this is guaranteed by a cell refinement illustrated in the next step; 2) repeat the analogous projection for GRASP b onto GRASP ab ; this further refines the decomposition of this last class after the projection of the first step; the cells in GRASP ab that appear to be at the basis of two cylinders containing cells of GRASP a and GRASP b can be reached by collision free paths respectively in contact with a and b; any path within these cells belonging to a same leaf (i.e., the object c remains in a same position) can be approximated by a collision free manipulation path; Fig. 5 illustrates through an example the adjacency by transfer path in class GRASP a ; to guarantee that any path within a cell in this class is collision free it is however necessary to refine the decomposition as illustrated below; 3) execute the steps analogous to 1. and 2. to refine the decomposition of GRASP ac and GRASP bc ; 4) merge in sequence the projections of GRASP ab , GRASP ac and GRASP bc along their respective foliations onto GRASP abc ; this generates a decomposition of this last class into many elementary cells; 5) lift each elementary cell in GRASP abc to GRASP ab , GRASP ac and GRASP bc along their respective foliations; each elementary cell in GRASP abc is at the basis of two cylinders containing cells of either GRASP ab and GRASP ac respectively or GRASP ab and GRASP bc or GRASP ac and GRASP bc ; these cells are nodes of the manipulation graph; 6) lift each elementary cell in GRASP ab , GRASP ac and GRASP bc , obtained through the refinement in the previous step, to GRASP a , GRASP b and GRASP c along their respective foliations; the cells in GRASP a , GRASP b and GRASP c resulting from this refinement and belonging to at least one cylinder are nodes of the manipulation graph; the cell refinement is then completed.

V. GENERALITY OF THE APPROACH
To avoid formal complications, we have illustrated the decision process by making reference to a specific manipulation system. The approach, however, is general enough to be applied to any dynamics of the manipulation system, any shape and any number of robots and objects. To support this generality claim, consider first the following synthetic description of the decision procedure. 1) Verify stratified controllability of the manipulation system. 2) If the system is stratified controllable, build the manipulation graph as described in Sect. IV: a) based on a cylindrical decomposition of C free , determine the connected components of each GRASP Φn p , p = {1, . . . , m}, m = n; b) refine the cell decomposition of each GRASP Φn p through appropriate projections and lifting operations; c) connect cells within each class GRASP Φn p and between classes GRASP Φn i and GRASP Φn j which are adjacent by transfer paths; d) connect cells which are adjacent by transit paths; e) if m < n, remove the nodes corresponding to classes GRASP Φn p , p > m, together with all arcs corresponding to adjacency relations between cells that are based on the adjacency of GRASP Φn p cells.
3) Search the manipulation graph for a solution; return failure if it does not exists. Note first that the use of a cylindrical decomposition as proposed in [13] to determine the connected components of the composite free configuration space allows robot, obstacles, objects and environment of any shape, provided that they posses a semi-algebraic geometry. The chosen decomposition also allows to decompose the free configurations for multiple robots and objects. On the other hand, the stratified controllability test in [8] can be repeatedly applied to multiple nested sequences of strata. If the top stratum in each sequence is different (as would be the case of multiple robots), then the test determines controllability for the union of the top strata. In addition, the test can be used with robots of any kinematic architecture. In principle, also the nature of the contact could be included in testing the controllability. In this case, however, we need to define other kind of adjacencies in addition to adjacency by transfer and transit paths characterising the dynamics of a rigid grasp. Hence, we argue that it is possible to build the manipulation graph for obstacles of any shape, in 2D and 3D workspaces, with multiple robots, possibly multi-articulated.
In fact, at the core of the decidability procedure is the controllability of the system. If the manipulation system is not controllable in the sense specified in Sect. III, we are not able to conclude about decidability.

VI. CONCLUSION
We have proposed in this paper a decision procedure for the problem of planning the motion of systems with stratified configuration space. Manipulation, climbing, walking, legged or multi-contact locomotion planning fall in the class of motion planning problems that can be handled with the presented approach.
The decision process relies on the cylindrical decomposition of the composite (i.e., robot and movable objects) free configuration space and the construction of a manipulation graph whose nodes are cells in the composite free configuration space. Cell refinement and adjacency is determined by the stratified controllability property of the system on leaves of the contact configuration space. Within each cell in these submanifolds, paths in contact can be (reduced) to manipulation paths remaining in the free configuration space.
Although illustrated for a particular manipulation planning problem, the tools and approach adopted are general enough to include a much wider class of problems as discussed in Sect. V.