Acessibilidade / Reportar erro

Trajectory Planning Amidst Moving Obstacles: Path-Velocity Decomposition Revisited

Abstract

This paper addresses trajectory planning in dynamic workspaces, for a robot subject to dynamic constraints and moving in a dynamic workspace. The case of a car-like robot A with bounded velocity and acceleration, moving in a dynamic two-dimensional workspace is considered. The solution proposed is an extension of the path-velocity decomposition that addresses motion planning in two complementary stages: (a) planning a geometric path and (b) planning the velocity along this path. Path-velocity decomposition is a practical way to address trajectory planning in dynamic workspaces since it decomposes the original problem into two more simple sub-problems. However, it presents a serious drawback: it cannot find a solution if a moving obstacle stops right on the computed path. A possible answers to this problem were to consider a set of candidate paths. The answer proposed in this paper makes use of the novel concept of adjacent paths. (like adjacent lanes of the roadway). A set of adjacent paths, one of which leads A to its goal, are computed. Then, assuming that A is able to freely shift from one path to an adjacent one, the motion of A along and between these paths is determined so as to avoid the moving obstacles while respecting 's dynamic constraints. The fact that it is possible to switch several times between two adjacent paths makes this approach more flexible and more powerful than one considering candidate paths.

Mobile robots; motion planning; non-holonomic constraints; dynamic constraints; moving obstacles


Trajectory Planning Amidst Moving Obstacles:

Path-Velocity Decomposition Revisited

Th. Fraichard

Inria Rhône-Alpes

Zirst. 655 av. de l'Europe, 38330 Montbonnot

Saint Martin, France

thierry.fraichard@inria.fr

AbstractThis paper addresses trajectory planning in dynamic workspaces, for a robot subject to dynamic constraints and moving in a dynamic workspace. The case of a car-like robot A with bounded velocity and acceleration, moving in a dynamic two-dimensional workspace is considered. The solution proposed is an extension of the path-velocity decomposition that addresses motion planning in two complementary stages: (a) planning a geometric path and (b) planning the velocity along this path. Path-velocity decomposition is a practical way to address trajectory planning in dynamic workspaces since it decomposes the original problem into two more simple sub-problems. However, it presents a serious drawback: it cannot find a solution if a moving obstacle stops right on the computed path. A possible answers to this problem were to consider a set of candidate paths. The answer proposed in this paper makes use of the novel concept of adjacent paths. (like adjacent lanes of the roadway). A set of adjacent paths, one of which leads A to its goal, are computed. Then, assuming that A is able to freely shift from one path to an adjacent one, the motion of A along and between these paths is determined so as to avoid the moving obstacles while respecting 's dynamic constraints. The fact that it is possible to switch several times between two adjacent paths makes this approach more flexible and more powerful than one considering candidate paths.

Keywords: Mobile robots, motion planning, non-holonomic constraints, dynamic constraints, moving obstacles.

1 Introduction

1.1 Trajectory Planning in Dynamic Workspaces

Ever since Nilsson's work in 1969 [18], motion planning has been extensively studied (the reader is referred to [16] for a recent survey of this topic). Previous work can be classified according to the type of motions which are planned. Thus it is possible to differentiate between path planning which is characterized by the search of a continuous sequence of configurations1 1 The configuration of a robot is a set of independent parametres that uniquely defines the position and orientation of every point of the robot. , and trajectory planning which is concerned with the time history of such a sequence.

Path planning is restricted to the geometric aspects of motion planning. The only constraints that can be taken into account are time-independent constraints such as stationary obstacles and kinematic constraints, i.e., constraints involving the configuration parameters of the robot and their derivatives. Depending on whether it is integrable, a kinematic constraint either reduces the set of allowed configurations (like an obstacle) or restricts the geometric shape of feasible paths. On the other hand, trajectory planning with its time dimension permits to take into account time-dependent constraints such as moving obstacles and the dynamic constraints of the robot, i.e., the constraints imposed by the dynamics of the robot and the capabilities of its actuators.

Path planning has been extensively studied in the past twenty years. Whereas less attention has been paid to trajectory planning. And yet, when planning the motion of an actual robot, it is important to take into account the various constraints that restrict its motion capabilities and especially dynamic constraints. It is also important to deal with moving obstacles since an actual workspace will often be dynamic, i.e., with moving obstacles. These two points, i.e., moving obstacles and dynamic constraints, have been addressed in the past, but seldom simultaneously (cf. sectim 2), and it is the purpose of this paper to do so. Accordingly, this paper addresses trajectory planning in dynamic workspaces, i.e., motion planning for a robot subject to dynamic constraints and moving in a dynamic workspace.

1.2 Contribution of the Paper

The problem of planning the two-dimensional motion of a car-like robot A with bounded velocity and acceleration, and moving in a dynamic workspace W, is considered in this paper.

The solution proposed is derived from the 'path-velocity decomposition' introduced in [15], which addresses motion planning in two complementary stages: (a) planning a geometric path that avoids the stationary obstacles and (b) planning the velocity along this path so as to avoid the moving obstacles. This approach is of a practical interest because it decomposes the original problem into two more simple sub-problems (cf. sectim 2 for the complexity issues). As a matter of fact, this type of approach has been largely used before (cf.sectim 2). However path-velocity decomposition presents a serious drawback: it cannot find a solution if a moving obstacle stops right on the computed path. A possible answer to this problem is to consider a set of candidate paths [20]. The answer proposed in this paper is the novel concept of adjacent paths, formally defined in sectim 4.1.2. Meanwhile, an informal illustration of what adjacent paths are can be found in the roadway: roads are usually divided into several adjacent lanes and every driver knows what passing from one lane to an adjacent one means. The fact that it is possible to switch several times between two adjacent paths makes this approach more flexible and more powerful than one considering candidate paths.

Thanks to this concept, a novel motion planning scheme that also operates in two complementary stages was designed. The first stage, paths-planning, takes into account all the time-independent features of the problem at hand (stationary obstacles and A's kinematic constraints) whereas the second stage, trajectory-planning, deals with the time-dependent ones (moving obstacles and A’s dynamic constraints). In the paths-planning stage, a set of adjacent paths, one of which leading A to its goal, are computed. These paths are collision-free with the stationary obstacles and respect A 's kinematic constraints. In the trajectory-planning stage, given that A is able to shift from one path to an adjacent one freely, the motion of A along and between these paths is determined so as to avoid any collision with the moving obstacles while respecting A 's dynamic constraints.

1.3 Outline of the Paper

Sectim 2 reviews the complexity issues and the work related to trajectory planning in dynamic workspaces. Then sectim 3 formally states the problem at hand. Afterwards sectim 4 describes an algorithm that solves this problem by using the path-velocity decomposition.

2 Complexity Issues and Related Work

There are results suggesting that trajectory planning in dynamic workspaces is generally intractable [31]. Even the two-dimensional case is computationally involved (cf. the NP-hard result established in [3] and the P-Space algorithm presented in [5]). On the other hand, the one-dimensional case seems less intricate (cf. the two polynomial algorithms presented in [22] and [19]) hence the interest of the path-velocity decomposition.

A general approach that deals with moving obstacles is the configuration-time space approach which consists in adding the time dimension to the robot's configuration space [7]. The robot maps in this configuration-time space to a point moving among stationary obstacles. Accordingly the different approaches developed in order to solve the path planning problem in the configuration space can be adapted in order to deal with the specificity of the time dimension and used (cf. [16] ). Among the existing works are those based upon extensions of the visibility [7, 15, 22] and those based upon cell decomposition [12, 25].

There are several results for time-optimal trajectory planning for Cartesian robots subject to bounds on their velocity and acceleration [5, 19]. Besides, optimal control theory provides some exact results in the case of robots with full dynamics and moving along a given path [2, 29]. Using these results, some authors have described methods that compute a local time-optimal trajectory [26,28]. The key idea of these works is to formulate the problem as a two-stage optimization process: optimal motion time along a given path is used as a cost function for a local path optimization (hence local time-optimality). However the difficulty of the general problem and the need for practical algorithms led some authors to develop approximate methods. Their basic principle is to define a grid which is searched in order to find a near-time-optimal solution. Such grids are defined either in the workspace [27], the configuration space [23], or the state space of the robot [4, 6].

Few research works take into account moving obstacles and dynamic constraints simultaneously, and they usually do so with far too simplifying assumptions, e.g.[12] and [19]. Reference. [10] introduced the concept of state-time space as a tool to deal with trajectory planning with moving obstacles and dynamic constraints. It was used to plan the one-dimensional motion of a mobile robot subject to velocity and acceleration bounds and moving amidst moving obstacles. Later, it was applied to the case of a car-like robot subject to dynamic constraints and moving along a given path [9], and on a planar surface [11]. More recently, [8] has presented a two-stage algorithm that computes a local time-optimal trajectory for a manipulator arm with full dynamics and moving in a dynamic workspace: the solution is computed by first generating a collision-free path using the concept of velocity obstacle, and then by optimizing it thanks to dynamic optimization.

3 Statement of the Problem

3.1 The Robot A

Let A be a car-like robot with two rear wheels and two directional front wheels. It is modelled as a polygon moving on the plane IR2. A configuration of A is completely defined by the 3-tuple (x, y, q) Î IR2 x [0,2p] where (x, y) are the coordinates of the rear axle midpoint R and q is the orientation of A (Figure 1).

Kinematic Constraints. A body moving on the plane has only one centre of rotation. Let G be the center of rotation of A. Assuming pure rolling condition, a wheel can only move in a direction which is normal to its axle. Therefore, when A is moving, the axles of its wheels intersect at G. The orientation of the rear wheels being fixed, G is located on the rear wheels axle (possibly at an infinite distance) and R moves in a direction which is normal to this axle. In other words, the following constraint holds:

Figure 1:
a car-like robot

tan q = /(1)

Besides, due to the fact that the front wheel, orientation is mechanically limited, the distance r between R and G, i.e. the curvature radius at point R, is lower bounded:

r ³ rmin (2)

Relations (1) and (2) are non-holonomic [1], they restrict the geometric shape of feasible paths for A.

Dynamic Constraints. Let be u the velocity of A measured along its main axis and let atan and arad be respectively the tangential and radial components of the acceleration applied to A. The following dynamic constraints should be satisfied:

0 £ n £ nmax (3)

-amax£ atan £ amax(4)

-gmax£ arad £ gmax(5)

The meaning of these constraints is quite straightforward. Inequality (3) is a speed limit and (4) is an upper bound on the rate of change of speed. The purpose of (5) is to ensure that the radial acceleration does not exceed the counteracting centrifugal acceleration which is supplied by friction between the wheels and the ground. Note that (3) implies that A is not allowed to back-up. It must always move forward which is the case in normal road-driving situations.

Although simple, these dynamics constraints are rich enough to demonstrate the interest of our approach. More accurate dynamics constraints could easily be dealt with (cf. [10, 12]).

3.2 The Workspace W

The workspace W is a subset of IR 2, it is cluttered up with stationary obstacles B, i Î {1, ..., s}, and with moving obstacles B, j Î {1, ..., m}. Both types of obstacles are modelled as convex polygonal regions of W.

3.3 The Problem

In this framework, a trajectory between an initial configuration qs and a final configuration qg is defined by a mapping G taking a time t Î [0, tf] to a configuration G (t) = (x (t), y (t), q (t)) and such that G (0) = qs and G (tf) = Pk. The duration of the trajectory G is tf. G must be collision-free, i.e. it must respect:

" t Î [0, tf], "i Î {1, ..., s}," j Î {1, ..., m},

A (t) Ç B = Æ and A (t) Ç B(f) = Æ

where X (t) designates the region of W occupied by the object X at time t. Besides, G must be feasible, i.e., it must respect the constraints (1)-(5) presented earlier. Finally we are interested in finding a time-optimal trajectory, i.e., a solution G such that tf should be minimal.

4 The Motion Planning Scheme

As mentioned earlier, our approach addresses the problem at hand in two complementary stages. The first stage — paths-planning — computes a set of adjacent paths, one of which leads A to its goal. These paths are collision-free with the stationary obstacles and respect the kinematic constraints of A. Given that A is able to shift from one path to an adjacent one, the second stage — trajectory-planning— determines the motion of A along and between these paths so as to avoid the moving obstacles while respecting the dynamic constraints of A.

4.1 Paths-Planning

Paths-planning is performed in three steps. To begin with, a nominal path is computed ( sectim 4.1.1). Afterwards a set of adjacent paths is automatically derived from this nominal path (sectim 4.1.2). As we will see further down, these adjacent paths are not necessarily collision-free with the stationary obstacles and do not necessarily respect the kinematic constraint (2). In order to solve these two problems, parts of the adjacent paths have to be invalidated ( sectim 4.1.3).

4.1.1 Planning a Nominal Path

A feasible path for A is a continuous sequence of configurations, i.e. a curve in the (xyq)-space that must respect the non-holonomic constraints (1) and (2). However (1) implies that the (xy)-curve followed by R, say P , completely defines a path for A.

As a consequence of (1) and (3), P must be of class C1 (a curve is of class Cn if it is differentiable n times and if its nth derivative is continuous). Besides (2) implies that the curvature of P (wherever it is defined) must be upper-bounded by 1/rmin

A path P which is of class C1 and whose curvature is upper-bounded by 1/rmin, is feasible but, it is important to note that A has to stop whenever a curvature discontinuity occurs (so as to change its front wheels' orientation). Our main concern being in planning `high' speed and forward motions only, P is furthermore defined as a planar curve of class C2. The C2 property insures that the path is manoeuvre-free and that A can follow it without having to stop (no curvature discontinuity).

Path planning for car-like robots such as A is an issue that has been largely addressed in the past ten years and several path planners have been proposed, e.g. [1, 13, 17, 30]. However, all these path planners generate paths made up of straight segments connected with tangential circular arcs of minimum radius (such paths are the shortest ones for car-like robots [6, 21]).

Unfortunately this type of path is not C2. Accordingly we developed the first C2 path planner for car-like robots. This planner has already been presented in [24] so we will not detail it here. Suffice it to say that it generates a nominal path PN that is feasible and collision-free.

4.1.2 Computing Adjacent Paths

Recall that a path for A is a (xy)-curve P of class C2 whose curvature is upper-bounded by 1/rmin. Assuming that P does not intersect itself, a point P' located at a distance from P smaller than rmin has a unique normal projection P on P. Let dP(P' ) be the signed distance2 2 If P' is on the left (resp. right) side of P, then d P( P' ) is positive (resp. negative). between P' and its projection P on P. The path adjacent to P on its left at a distance dL is defined as: Pl = {P' Î W | dP(P' ) = dL}(Figure 2). Similarly, the path adjacent to P on its right at a distance dL is defined as: Pr = {P' Î W | dP(P' ) = -dL}.


Figure 2: Pl, a path adjacent to P on its left.

Thanks to this definition, it is possible to recursively compute a set of paths adjacent to the nominal path PN on its left and on its right. Let P= {Pk, k Î {1, ..., n}}, be the whole set of adjacent paths, PN included. Let us denote by R (P) the set of points whose distance to P is smaller than dL / 2. The distance dL between any two adjacent paths is chosen so as to ensure that, "P Î P:

1. The region swept by A when it follows a path P is included in R(P).

2. The region swept by A on its left (resp. right) side when it leaves a path P by making a right (resp. left) turn of radius rmin is included in R(P) (Figure 3a).

3. The region swept by A on its left (resp. right) side when it reaches a path P by making a right (resp. left) turn of radius rmin is included, in R(P) (Figure 3b).

As we will see further on, these three properties permit to simplify collision checking both along (sectim 4.1.3) and between the paths ( sectim 4.2).

Figure 3:
regions swept by A on its left when leaving/reaching a path P by making a right turn.

5.1.3 Checking Adjacent Paths

The nominal path is collision-free with the stationary obstacles and it respects the kinematic constraints (1) and (2). Unfortunately these two properties do not necessarily hold for an adjacent path. It may happen that such a path is no longer collision-free with the stationary obstacles or does no longer respect the curvature constraint (2). Let P Î P P be a mapping [0, 1] ® IR 2. Collision and curvature checking lead us to compute a set of ‘forbidden’ intervals in the range [0, 1] corresponding to parts of P which violate either of these constraints. Let us denote by r(s) the curvature radius of the path at the point P(s). The set of forbidden intervals for P is formally defined as:

fP = {[a, b] Ì [0,1] | ("s Î [a, b], r(s) < rmin)

or ( $B | Proj (B, P ) = [a, b])}

where Proj (B, P) is the ‘projection’ of the stationary obstacle B on the path P, i.e. the part of P which entails a collision between A and B:

Proj (B, P) = [a, b] Ì [0, 1] | "s Î [a + lf , b - lr],

$P Î BÇ R (P) | P' = P (s)

where P' is the normal projection of P on P and where lf (resp. lr) denotes the distance between A's rear axle and it front-most (resp. rear-most) point. Figure 4 depicts an example of forbidden intervals for a path P. The interval [a1, b1] correspond to Proj (B, P) while [a2, b2] corresponds to a part of P which does not respect the curvature constraint (2).

Note that Proj (B, P ) is defined by using R( P ) instead of the exact region swept out by A when it moves along P. This choice is sound because the region swept out by A is included in R( P ) (cf. property 1 of sectim 5.1.2). Besides, it simplifies the computation of Proj (B, P ) because R( P ) has a more simple shape.

Figure 4:
the ‘forbidden’ intervals of P.

4.2 Trajectory-Planning

The output of paths-planning is a set P of adjacent paths and a set a of forbidden intervals associated with each path. The purpose of trajectory-planning is to determine A's motion along and between these paths so as to stay out of the forbidden intervals, avoid the moving obstacles and respect the dynamic constraints (3), (4) and (5).

Because of path-changing, i.e. the motion between adjacent paths, the problem at hand is two-dimensional. However it is possible to take advantage of the properties of the adjacent paths in order to reduce the problem to a one-dimensional trajectory planning problem. We have designed a trajectory planner which implements this idea. To begin with, we present a method which determines the trajectory of A along a given path and then we extend this method so as to incorporate path-changing.

4.2.1 Motion Along a Path

We designed a trajectory planner which is able to compute the trajectory of a given robot A along a given path P so as to avoid moving obstacles and respect dynamic constraints such as (3), (4) and (5). This planner is described in [9]. It reduces the original problem to a one-dimensional problem by parameterizing P with a single variable p representing the distance traveled along P. Afterwards the dynamic constraints of A are transformed into constraints on the velocity v and the acceleration a along P. The constraints on v are expressed by a velocity limit curve in the state space, i.e. the p x v plane. On the other hand, the constraints imposed by the moving obstacles can be represented by forbidden regions of the p x t space, where represents the time dimension [18]. In order to deal simultaneously with these two types of constraints, we introduced the novel concept of state-time space, i.e. the p x v x t space [10]. Let ST be this state-time space. A curve of ST represents a trajectory along P. Therefore it is possible to solve the problem at hand by searching a curve in ST. The algorithm we designed in order to find such a trajectory operates in the following way: it chooses a time-step t and assumes that the acceleration applied to A during a time-step t is either minimum, null or maximum. Accordingly, a state-time has three neighbours and all the state-times that A can reach from a given state-time lie on a regular grid embedded in ST (Figure 5). This grid is then searched in order to find a solution. Accordingly, trajectory planning is reduced to graph search.

Figure 5:
the grid embedded in ST.

4.2.2 Motion Between the Paths

Let us consider a path-changing motion as depicted in Figure 6a. At time t1, A shifts smoothly from its current path Pk to an adjacent path Pk+1. A follows a nominal trajectory W and reaches Pk+1 at a certain time t2.

Properties 2 and 3 of sectim 4.1.2 ensure that, when A moves along W, it always remains included in the domain R( Pk) È R( Pk+1). Consequently, evaluating whe- ther W is collision-free can be done very simply by checking out potential collision in both paths Pk and Pk+1 during the time interval [t!, t2]. Note that, in this case, the obstacles on Pk include both the forbidden intervals a( Pk) and the projections of the moving obstacles Proj (B (t), Pk) — such projections being time-dependent.

Accordingly it is possible to model path-changing as a simultaneous motion along Pk and Pk+1 during [t1, t2], or equally, as a three-step process: (a) at time t1, A instantaneously shifts from Pk to a fictitious intermediate path , (b) A moves along during [t1, t2] (the obstacles of both Pk and Pk+1 are assumed to be projected on and (c) at time t2, A instantaneously shifts from to (Figure 6b). Accordingly, this modelling reduces path-changing to a one-dimensional motion along a fictitious path.

Figure 6:
Path-changing.

In this framework a state-time of A is a 4-tuple (L, p, v, t) where L is the index of the current path of A. Let us choose a time-step t and assume that the acceleration applied to A is either minimum, null or maximum. Given a method which determines the path-changing trajectory W, it is possible to determine the state-time reached by A at the end of a path-changing. A given state-time has now five neighbours: three on the same path and two on each adjacent paths. All the state-times reachable from a given state-time still lie on a regular grid embedded in ST and it is still possible to search this grid in order to find a solution (Figure 7).

Figure 7:
The grid in the extended ST. at is the time necessary to perform the path-changing.

5 Experimental Results

The algorithm presented has been implemented in C on a Sun Sparc I. We have tested the algorithm with up to four adjacent paths. In these experiments, the moving obstacles are generated at random without caring whether they collide with each other. Two examples of trajectory planning involving two paths are depicted in Figures 8 and 9. In each case, a path is associated with two windows: a trace window showing the part of the grid which has been explored and a result window displaying the final trajectory. Such a window represents the‘ time x position’ space of the path (the position axis is horizontal while the time axis is vertical; the frame origin is at the upper-left corner). The thick black segments represent the trails left by the moving obstacles and the little dots are points of the underlying grid. Note that the vertical spacing of the dots corresponds to the time-step t.

Figure 8:
An example of trajectory planning with two paths: the solution has four path-changings.

In both examples, A starts from the first lane (lane #0), at position 0 (upper-left corner) and with a null velocity. It must reach the first path at position Pmax (right border) with a null velocity. A can overtake by using the second path (lane #1). In order to simulate the behaviour of a car on the roadway, we have chosen the following values for the various variables of the problem:

It is the choice of t that determines the size of the grid embedded in ST, and thus the average running time of the algorithm. For a value of t set to 5s., we have obtained running times ranging from less than a second to a few seconds.

Figure 9:
An example of trajectory planning with two paths: the solution trajectory has two path-changings.

6 Conclusion and Discussion

This paper addressed trajectory planning in dynamic workspaces, i.e. motion planning for a robot subject to dynamic constraints and moving in a dynamic workspace. The case of a car-like robot A with bounded velocity and acceleration, moving in a dynamic workspace W = IR 2, was considered. Path-velocity decomposition is a practical way to address trajectory planning in dynamic workspaces since it decomposes the original problem into two more simple sub-problems. However it presents a serious drawback: it cannot find a solution if a moving obstacle stops right on the computed path. A possible answer to this problem is to consider a set of candidate paths. The answer proposed in this paper is the novel concept of adjacent paths: this concept was introduced and used within a novel planning schema that operates in two complementary stages: (a) paths planning and (b) trajectory planning. In the paths planning stage, a set of adjacent paths (like adjacent lanes of the roadway), one of which leads A to its goal, are computed. These paths are collision-free with the stationary obstacles and respect A's kinematic constraints. In the trajectory planning stage, given that A is able to shift from one path to an adjacent one freely, the motion of A along and between these paths is determined so as to avoid the moving obstacles while respecting A's dynamic constraints. The fact that it is possible to switch several times between two adjacent paths makes this approach more flexible and more powerful than one considering candidate paths. Although the concept of adjacent paths is particularly well suited for motion planning in two-dimensional workspaces, it could be applied to three-dimensional workspaces too.

Acknowledgements: this work was partially supported by the European Eureka EU-153 project "Prometheus Pro-Art".

References

[1] J. Barraquand and J-C Latombe. On non-holonomic mobile robots and optimal maneuvering. Revue d'intelligence Artificielle, 3(2):77–103, 1989.

[2] J. Bobrow, S. Dubowsky, and J. Gibson. Time-optimal control of robotic manipulators along specified paths. Int. Journal. of Robotics Research, 4(3), 1985.

[3] J. Canny. The complexity of robot motion planning. MIT Press, Cambridge, MA (USA), 1988.

[4] J. Canny, B. Donald, J. Reif, and P. Xavier. On the complexity of kynodynamic planning. In Proc. of the IEEE Symp. on the Foundations of Computer Science, White Plains, NY (USA), November 1988.

[5] J. Canny, A. Rege, and J. Reif. An exact algorithm for kinodynamic planning in the plane. In Proc. of the ACM Symp. on Computational Geometry, pages 271– 280, Berkeley, CA (USA), 1990.

[6] L.E. Dubins. On curves of minimal length with a constraint on average curvature, and with prescribed initial and terminal positions and tangents. American Journal of Mathematics, 79:497–516, 1957.

[7] M. Erdmann and T. Lozano-Perez. On multiple moving objects. Algorithmica, 2:477–521, 1987.

[8] P. Fiorini and Z. Shiller. Time optimal trajectory planning in dynamic environments. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Minneapolis MN (US), April 1996.

[9] Th Fraichard. Dynamic trajectory planning with dynamic constraints: a "state-time space" approach. In Proc. of the IEEE-RSJ Int. Conf. on Intelligent Robots and Systems, 1394 – 1400, Yokohama (Japan), July 1993.

[10] Th. Fraichard and C. Laugier. Kinodynamic planning in a structured and time-varying workspace. In C. Laugier, editor, Geometric Reasoning for Perception and Action, Lecture Notes in Computer Science, 708 pages 19 – 37. Springer-Verlag, 1993.

[11] Th. Fraichard and A. Scheuer. Car-like robots and moving obstacles. In Proc. of the IEEE Int. Conf. on Robotics and Automation, volume 1, 64 – 69, San Diego CA (US), May 1994.

[12] K. Fujimura and H. Samet. A hierarchical strategy for path planning among moving obstacles. IEEE Trans. Robotics and Automation, 5(1):61–69, February 1989.

[13] P. Jacobs, J-P Laumond, and A. Rege. Non-holonomic motion planning for hilare-like mobile robots. In M. Vidyasagar and M. Trivedi, editors, Intelligent Robotics, 338 – 347. McGraw-Hill, Bangalore, Índia, January 1991.

[14] K. Kant and S. Zucker. Toward efficient trajectory planning: the path-velocity decomposition. Int. Journal of Robotics Research, 5(3):72 – 89, Fall 1986.

[15] J C. Latombe. Robot motion planning Kluwer Academic Press, 1990.

[16] J P. Laumond. Finding collision-free smooth trajectories for a non-holonomic mobile robot. In Proc. of the Int. Joint Conf. on Artificial Intelligence, 1120 – 1123, Milan, Italy, August 1987.

[17] N.J. Nilsson. A mobile automaton: an application of artificial intelligence techniques. In Proc. of the Int. Joint Conf. on Artificial Intelligence, 509– 520, Washington, DC, USA, 1969.

[18] C. Ó Dúnlaing. Motion planning with inertial constraints. Algorithmica, 2:431 – 475, 1987.

[19] T J. Pan and R.C. Luo. Motion planning for mobile robots in a dynamic environment with moving obstacles. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Cincinnati, OH, USA, May 1990.

[20] J.A. Reeds and L.A. Shepp. Optimal paths for a car that goes both forwards and backwards. Pacific Journal of Mathematics, 145(2):367– 393, 1990.

[21] J. Reif and M. Sharir. Motion planning in the presence of moving obstacles.In Proc. of the IEEE Symp. on the Foundations of Computer Science, 144 – 154, Portland, OR, USA. October 1985.

[22] G. Sahar and J. H. Hollerbach. Planning of minimum-time trajectories for robot arms. In Proc. of the IEEE Int. Conf. on Robotics and Automation, 751 - 758, St Louis, MI, USA, March 1985.

[23] A. Scheuer and Th. Fraichard. Continuous-curvature path planning for car-like vehicles. In Proc. of the IEEE-RSJ Int. Conf. on Intelligent Robots and Systems, Grenoble, France, September 1997.

[24] C.L. Shih, T.T. Lee, and W.A. Gruver. Motion planning with time-varying polyhedral obstacles based on graph search and mathematical programming. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Cincinnatti, OH, USA, May 1990.

[25] Z. Shiller and J.C. Chen. Optimal motion planning of autonomous vehicles in three-dimensional terrains. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Cincinnatti, OH, USA, May 1990.

[26] Z. Shiller and S. Dubowsky. Global time optimal motions of robotic manipulators in the presence of obstacles. In Proc. of the IEEE Int. Conf. on Robotics and Automation, pages 370 –375, Philadelphia, PA (USA), April 1988.

[27] Z.Shiller and S.Dubowsky. Robot path planning with obstacles, actuator, gripper and payload constraints. Int. Journal of Robotics Research, 8(6):3– 18, December 1989.

[28] Z. Shiller and H-H. Lu. Robust computation of path constrained time-optimal motion. In Proc. of the IEEE Int. Conf. on Robotics and Automation, pages 144– 149, Cincinnatti, OH (USA), May 1990.

[29] P. Tournassoud and O. Jehl. Motion planning for a mobile robot with a kinematic constraint. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Philadelphia, PA (USA), April 1988.

[30] P.G. Xavier. Provably-good approximation algorithms for optimal kinodynamic robot motion plans. PhD thesis, Cornell Univ., Ithaca, NY (USA), april 1992.

  • [2] J. Bobrow, S. Dubowsky, and J. Gibson. Time-optimal control of robotic manipulators along specified paths. Int. Journal. of Robotics Research, 4(3), 1985.
  • [3] J. Canny. The complexity of robot motion planning. MIT Press, Cambridge, MA (USA), 1988.
  • [4] J. Canny, B. Donald, J. Reif, and P. Xavier. On the complexity of kynodynamic planning. In Proc. of the IEEE Symp. on the Foundations of Computer Science, White Plains, NY (USA), November 1988.
  • [8] P. Fiorini and Z. Shiller. Time optimal trajectory planning in dynamic environments. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Minneapolis MN (US), April 1996.
  • [15] J C. Latombe. Robot motion planning Kluwer Academic Press, 1990.
  • [19] T J. Pan and R.C. Luo. Motion planning for mobile robots in a dynamic environment with moving obstacles. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Cincinnati, OH, USA, May 1990.
  • [22] G. Sahar and J. H. Hollerbach. Planning of minimum-time trajectories for robot arms. In Proc. of the IEEE Int. Conf. on Robotics and Automation, 751 - 758, St Louis, MI, USA, March 1985.
  • [23] A. Scheuer and Th. Fraichard. Continuous-curvature path planning for car-like vehicles. In Proc. of the IEEE-RSJ Int. Conf. on Intelligent Robots and Systems, Grenoble, France, September 1997.
  • [24] C.L. Shih, T.T. Lee, and W.A. Gruver. Motion planning with time-varying polyhedral obstacles based on graph search and mathematical programming. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Cincinnatti, OH, USA, May 1990.
  • [25] Z. Shiller and J.C. Chen. Optimal motion planning of autonomous vehicles in three-dimensional terrains. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Cincinnatti, OH, USA, May 1990.
  • [29] P. Tournassoud and O. Jehl. Motion planning for a mobile robot with a kinematic constraint. In Proc. of the IEEE Int. Conf. on Robotics and Automation, Philadelphia, PA (USA), April 1988.
  • [30] P.G. Xavier. Provably-good approximation algorithms for optimal kinodynamic robot motion plans. PhD thesis, Cornell Univ., Ithaca, NY (USA), april 1992.
  • 1
    The configuration of a robot is a set of independent parametres that uniquely defines the position and orientation of every point of the robot.
  • 2
    If
    P' is on the left (resp. right) side of P, then
    d
    P(
    P' ) is positive (resp. negative).
  • Publication Dates

    • Publication in this collection
      08 Oct 1998
    • Date of issue
      Apr 1998
    Sociedade Brasileira de Computação Sociedade Brasileira de Computação - UFRGS, Av. Bento Gonçalves 9500, B. Agronomia, Caixa Postal 15064, 91501-970 Porto Alegre, RS - Brazil, Tel. / Fax: (55 51) 316.6835 - Campinas - SP - Brazil
    E-mail: jbcs@icmc.sc.usp.br