• 沒有找到結果。

An analytically tractable potential field model of free space and its application in obstacle avoidance

N/A
N/A
Protected

Academic year: 2021

Share "An analytically tractable potential field model of free space and its application in obstacle avoidance"

Copied!
8
0
0

加載中.... (立即查看全文)

全文

(1)

An Analytically Tractable Potential Field Model of Free Space and Its Application in Obstacle Avoidance

Jen-Hui Chuang and Narendra Ahuja

Abstract—An analytically tractable potential field model of free space

is presented in this paper. The model assumes that the border of every two-dimensional (2-D) region is uniformly charged. It is shown that the potential and the resulting repulsion (force and torque) between polygonal regions can be calculated in closed form. By using the Newtonian potential function, collision avoidance between object and obstacle thus modeled is guaranteed in a path planning problem. A local planner is developed for finding object paths going through narrow areas of free space where the obstacle avoidance is most important. Simulation results show that not only does individual object configuration of a path obtained with the proposed approach avoid obstacles effectively, the configurations also connect smoothly into a path.

Index Terms— Artificial potential field, free-space representation,

ob-stacle avoidance, path planning.

I. INTRODUCTION

The objective of the path planning problem is to determine how to move an object from its original location and orientation (called the starting configuration) to the goal configuration while avoiding collisions with obstacles. The nature of the problem may change significantly with the characteristics of the objects and the obstacles. For example, the objects and obstacles may be rigid or deformable, they may be moving or stationary, and the motion of the objects may be constrained or unconstrained (see [1]). A potential-based free space model is proposed in this paper. It is shown that with analytically tractable potential field, collision avoidance can be achieved effectively and efficiently. Although this paper mainly considers path planning for a single rigid object among stationary and rigid obstacles in the two-dimensional (2-D) space, the discussion concerning collision avoidance can be extended easily to path planning problems of other nature with few modifications. A. Previous Work

Geometric algorithms which use spatial occupancy information to solve path planning problems usually consist of two parts. In the first part, relevant information about the free space structure is extracted, which is then used in the second part to find the path of a moving object. For more complex problems, algorithms which combine the two parts and simultaneously use the known obstacle and object shape information are required for successful path planning. A representation of the problem based on combined information can be obtained by moving the object while keeping in contact with the obstacles. A solution is guaranteed if there is one, i.e., the algorithm is complete. The configuration space approach [2] and the critical curve approach [3] are examples of this type of algorithms. Because these Manuscript received January 6, 1997; revised July 5, 1997. This work was supported in part by the R.O.C. National Science Council under Grant NSC-85-2213-E009-126, and by U.S. Defense Advanced Research Projects Agency under Grant N00014-93-1-1167 administered by the Office of Naval Research and the National Science Foundation under Grant IRI-93-19038.

J.-H. Chuang is with the Department of Computer and Information Science, National Chiao Tung University, Hsinchu, Taiwan 30010, R.O.C. (e-mail: jchuang@cis.nctu.edu.tw).

N. Ahuja is with the Beckman Institute and Coordinated Science Labora-tory, University of Illinois, Urbana, IL 61801 USA.

Publisher Item Identifier S 1083-4419(98)07309-9.

algorithms are more complicated, their original forms are mainly useful in solving hard path planning problems.

For less complex problems, i.e., if the free space is not extremely congested and the object is of simple shape, effective representation of the problem can be obtained in terms of the free space. Simple planning strategies can then be used to determine the object con-figuration along the path in the free space. Octree representation of the three-dimensional free space is used in [4]. Rectangular corridors and their junctions are used in [5] to represent the free space among rectangular obstacles. Convex areas are used in [6] for planning a path of a point object. Generalized cylinders and convex polygons are used in [7] to represent free space. In [8], the edges of the generalized Voronoi diagram are used to derive paths for rectangular objects. In [9], the effective dimension of the configuration space is reduced by planning the motion of each link of a manipulator successively. Because of the simplifications in the free space representation, these algorithms are faster than the complete algorithms, but their applications are limited to easy path planning problems where tightly maneuvering through narrow space is not necessary.

These two types of algorithms search for the orientation an object should assume at any point in space to avoid collision with nearby obstacles. The result of the search may simply be a collision-free object configuration. On the other hand, a more desirable result should correspond to the “safest” object configuration which is most unlikely to cause a collision. One way of exploiting the spatial occupying information of object and obstacle for this purpose is to define a measure of the likelihood of collision, and then determine the object trajectory and orientation using the measure.

A potential function which is a cubic function of the distance between a point object and the obstacles is used in [10] for moving a point object in 2-D space. An artificial repulsive potential, which is a function of the shortest distance between the moving object and the obstacles, is used in [11] for local planning of linked line segments. Similar local planning is done in [12] using a superquadric and an artificial potential function whose value is determined by the Yukawa function [13] and whose isopotential contours are modifiedn-ellipses. Harmonic functions are used in [14] to find object trajectories in the configuration space. Boundary equations of polytopes are used in [15] to create an artificial potential function. An initial path is optimized by minimizing a cost function of the repulsive potential and parameters of the object motion. The path planning problem is also formulated as an optimal control problem in [16] using the distance function. In [17], a numerical potential field on a grid is used to represent the configuration space. The principal advantages of potential field-based approaches include the simplicity of the representation of free space, the guidance in the object motion provided by the negative gradient of the potential field in the form of repulsive force, and the readiness of its extension to spaces of higher dimensions.

B. Motivation and Approach

For a potential-based approach, ideal object configurations can be obtained by matching the shape of the object and the free space thus modeled. Either the potential function or its negative gradient, the repulsive force, can be used to achieve such a goal. The motivation of this paper is to develop an effective potential model so that the above repulsion can be calculated efficiently.

Ideally, a potential field should have the following attributes, which are similar to those mentioned in [12].

(2)

1) The magnitude of potential should be unbounded near the ob-stacle boundary and should decrease with range. (This property captures the basic requirement of collision avoidance.) 2) The potential should have spherical symmetry far away from

the obstacle.

3) The equipotential surface near an obstacle should have a shape similar to that of the obstacle surface.

4) The potential, its gradient and their effects on derived paths must be spatially continuous.

In this paper, the Newtonian potential, which is defined as

1 r

for two points of unit charge and a distancer apart, is used in the free space representation wherein each object/obstacle region border is assumed to be uniformly charged. It is not hard to see that such a free space model possesses the above attributes. Furthermore, it will be shown in this paper that the resulting potential field also possesses the following desirable properties.

5) The potential and its gradient due to obstacles having simple shapes, say polygonal obstacles, can be calculated in closed form.

6) The potential and repulsive force and torque between polygonal regions are analytically tractable.

Thus, optimal collision-free object configuration which is most un-likely to cause collision can be obtained with efficient search methods for each location along a path.

The rest of the paper is organized as follows. The detailed deriva-tions of the closed-form expressions are given in the next section wherein the numerical stability of the computer implementation is also investigated. An application of the proposed model to the path planning problem is discussed in Section III. The analytical results derived for the proposed potential-based model are used by a local planner to achieve collision avoidance for object path going through a narrow area. Some concluding remarks are given in Section IV.

II. ANALYTICALLYTRACTABLE POTENTIALFIELD

In the proposed approach, collision avoidance in path planning is achieved using repulsion between object and obstacle resulting from the Newtonian potential-based model. It is shown in this section that by assuming uniform charge distribution on boundaries of polygonal regions, the repulsive force and torque can be derived in closed form. Therefore, computationally expensive numerical evaluation of the repulsion, which requires discretization of the region boundaries, can be avoided. The search of optimal object configurations which requires minimization of the repulsive force and torque can thus be performed with an efficient, gradient-based search.

In this section, the repulsive potential due to uniform charge distribution on boundaries of polygonal regions is first discussed. Closed-form expressions for the repulsive force and torque between two line segments are then derived. The repulsion between the polyg-onal regions can then be calculated according to the superposition principle. The derivation of the potential at a point due to uniform charge distribution on boundaries of polygonal regions (but not the repulsive force and torque between polygonal regions) can also be found in [18].

A. The Potential Function

Consider a pointA located at (0; y0) and a finite line charge on thex-axis with a unit charge density uniformly distributed between

x = x1andx = x2, as shown in Fig. 1. The Newtonian potential at

Fig. 1. A finite line charge and its effect on pointA.

pointA due to a point (x; 0) of the line charge is

1 r = 1 x2+ y2 0 ; x1 x  x2 (1)

wherer is the distance between these two points. The total potential at pointA due to the whole line segment can then be calculated as (see also [19]) A= x x dx r = x x dx x2+ y2 0 = log jx2+ x22+ y20j jx1+ x21+ y20j : (2)

If there is more than one line segment, the total potential is simply the sum of the potential values due to each individual line segment according to the superposition principle.

Ify0= 0, i.e., point A and the line charge are collinear, then

A= x x dx p x2 = log jx 2=x1j if x1> 0 log jx1=x2j if x2> 0 (3) which is the limiting case of (2) whenx11x2> 0. When x11x2 0, it can be shown from (2) that

lim

y !0A= 1: (4)

The value of 1 is desirable for contact detection and collision avoidance sincey0= 0 when x11 x2 0 corresponds to a collision between point A and the line charge.

The negative gradient of the potential function is the repulsive force experienced by a point charge of unit strength. Moving away from that point along the force direction corresponds to a maximal rate of reduction of the potential. The repulsive force on pointA in Fig. 1 due to a point(x; 0) on the x-axis is

0r 1r = 1r2^r = x2+ y1 2

0(cos ^x + sin ^y)

where  is the angle between the position vector and the x-axis, measured in the counterclockwise direction. Therefore, the resulting force from the line segment onA can be calculated from

Fx= x x cos  dx r2(x) = x x 0x dx (x2+ y2 0)3=2 = 1 x2+ y2 0 x x (5) and Fy= x x sin  dx r2(x) = x x y0dx (x2+ y2 0)3=2 = x y0 x2+ y20 x x (6)

(3)

Fig. 2. Two line segments and a reference point for the calculation of the repulsive force and torque due to the Newtonian potential.

whereFx is the force component along thex-axis and Fy is along the y-axis.

B. Repulsion Between Line Segments

For the discussion in this subsection, the force exerted on a point of a line segment, as a function of its location on the line segment, from points of another line segment is first derived. The result is then used to derive the repulsive force and torque between line segments. The force and torque are useful in adjusting object location and orientation, respectively, along a path for obstacle avoidance. The torque is calculated with respect to a reference point, i.e., the rotation center for the orientation adjustment.

1) Force Exerted on a Point of a Line Segment from Another Line Segment: Consider two line segments,ab and cd shown in Fig. 2. The coordinates of the end points a; b; c, and d are assumed to be (a1; a2), (b1; b2), (0, 0), and (d1  0; 0), respectively (after a coordinate transformation). The repulsive force on point (x; 0) due to line chargeab can be expressed as

F(x) = Fab(x)^nab+ Fab+(x)^n+ab (7) where^nab 1= (n1; n2) is the unit vector along the b 0 a direction,

^n+

ab= (0n1 2; n1) is a unit vector perpendicular to ab, and, from (5) and (6) Fab(x) =p 1 x2+ bx + c 0 1 x2+ ex + f (8) and F+ ab(x) =gx + h1 px2ix + j+ bx + c 0 x2kx + l+ ex + f (9) whereb; c; e; f; g; h; i; j; k; ; and l are constants since x1,x2, and

y0 in (5) and (6) are now linear functions ofx.

2) Repulsive Torque Between Two Line Segments: Consider re-pulsion involving only two line segments, as shown in Fig. 2. Letab be the stationary obstacle,cd be the moving object and e = (e1; e2) be a reference point. The torque with respect to pointe due to the repulsive force fromab, on point x = (x; 0) of cd is equal to

T(x) = F(x) 2 (x 0 e) (10)

which is perpendicular to the plane containingab, cd, and point e, or thex-y plane. Let z-axis be defined such that the unit vectors satisfy

^z = ^x 2 ^y. From (7)–(10), we have Tz(x) =p gx + a x2+ bx + c 0 gx + a x2+ ex + f + (ix + d)(ix + j) (gx + h)px2+ bx + c 0 (kx + d)(kx + l) (gx + h) x2+ ex + f (11)

wherea and d are constants. The total torque due to repulsion between

ab and cd is then

Tz= d

0 Tz(x) dx:

(12) Ifab and cd are not parallel, the tangent of the angle between them is nonzero (g 6= 0), and (12) can be simplified as

Tz= 1g d 0 xdx p x2+ bx + c 0 d 0 xdx x2+ ex + f + 1 g2 d 0 ag2+ (di + ji)g 0 hi2 p x2+ bx + c dx 0 d 0 ag2+ (di + li)g 0 hi2 x2+ ex + f dx + dg 0 hig3 d +h h (jg 0 hi) dx xpx2+ b0x + c0 0 d +h h (lg 0 hi) dx x x2+ e0x + f0 (13)

whereh0 = h=g, b0, c0, e0, and f0 are constants. Ifab and cd are parallel but not collinear, i.e.,g = 0 and h 6= 0, (12) becomes

Tz= 1h d 0 p x2+ bx + c dx 0 d 0 x 2+ ex + f dx + d 0 (di + ji 0 b)x + (dj + ah 0 c)p x2+ bx + c dx 0 d 0 (di + li 0 e)x + (dl + ah 0 f) x2+ ex + f dx : (14) Finally, ifab and cd are collinear (g = h = 0) and Fab+ = 0, (12) becomes Tz = a d 0 dx p x2+ bx + c 0 d 0 dx x2+ ex + f : (15) 3) Repulsive Force Between Two Line Segments: For the two mu-tually repelling line segments shown in Fig. 2, the force on point

(x; 0) of ab along an arbitrary direction e = (e1; e2) is the inner product of the force ande, or

Fe(x) = F(x) 1 e: (16)

Following procedures similar to those used previously for the deriva-tion of the total torque, the total repulsive force alonge for the cases a) g 6= 0, b) g = 0, h 6= 0, and c) g = h = 0, respectively, can be expressed as Fe= d 0 aig d 0 dx p x2+ bx + c 0 d 0 dx x2+ ex + f 0 ag2 d +h h (jg 0 hi) dx xpx2+ b0x + c0 0 d +h h (lg 0 hi) dx x x2+ e0x + f0 (17) Fe= d 0 ajh d 0 dx p x2+ bx + c 0 d 0 alh d 0 dx x2+ ex + f 0 aih d 0 xdx p x2+ bx + c 0 d 0 xdx x2+ ex + f (18)

(4)

Fig. 3. Object/obstacle configurations used for the calculation of repulsive torque between two line segments.ab is fixed at its midpoint and is placed at 100 equally spaced angular locations.

and Fe= d d 0 dx p x2+ bx + c 0 d 0 dx x2+ ex + f : (19) The major advantage of the proposed potential-based model, as mentioned earlier, is that the resulting repulsive torque and force between polygonal regions can both be evaluated analytically. This is owing to the fact that the integrals in (13)–(15) and (17)–(19) are all integrable in closed form (see [20]).

C. Numerical Stability of the Computation of Force and Torque Due to the finite precision of the computer implementation, com-putation of the total repulsive torque and force between two line segments using (13)–(15) and (17)–(19) directly may yield erroneous results. Consider two line segmentsab and cd shown in Fig. 3 where

ab, fixed at its midpoint, is placed at 100 equally spaced angular

locations. The torque values obtained with direct computation using the above equations are shown in Fig. 4.1 It is readily observable

that glitches in the calculation occur when the two line segments are nearly parallel. Calculations with higher precision will only reduce the effect but not eliminate it [because of the products of (1=g) in (13)]. Since the torque (and force) due to Newtonian repulsion are smooth functions of the orientations of the repelling line segments and are well-behaved when two line segments are almost parallel but not in contact, interpolation methods can be used in the computer simulation to calculate the torque for very smallg values. The torque and force are obtained with linear interpolation when0:000 001 < g < 0:2, and two line segments are treated as parallel ifg < 0:000 001.

Special care is also needed in calculating the repulsion between two line segments having other geometric relationships. For example, it can be shown that whenab is collinear with points c or d, h0should be replaced by 0 or 0d1, respectively, in (13) and (17). This is summarized in the following equation:

ab collinear with pointc

pointd 

h0= 0

h0= 0d

1 : (20)

Similarly, it can be shown that pointa

pointb collinear withcd  f 0= 0

c0= 0 : (21)

1Note that in Fig. 4 if rotation angle corresponds to a pair of parallel line

segments and 0  has a problem,  +  may or may not have an identical problem. This is because the problem is resulted from the formulation, and the implementation, for the torque calculation instead of from the physics of repulsion.

Fig. 4. The repulsive torque with respect to (0, 0) experienced by cd in Fig. 3 as a function of the rotation angle ofab.

Consequently, some integrals in (13) and (17) will have to be evalu-ated with the corresponding, simpler integrands. The last parenthesis of (13) [and (17)] will contain a(101) term which should evaluate to zero if there is no contact betweenab and cd. Therefore, any +1 and accompanying01 terms thus produced should be removed in the calculation. Similar arguments apply when the line containing points a and b intersects cd at a point between points c and d, which corresponds to 0d1< h0 < 0.

III. APPLICATION—A POTENTIAL-BASEDLOCALPLANNER In this section, a simple local planner is used to demonstrate the effectiveness of the proposed free-space model in achieving collision avoidance of object motion around the bottleneck regions. Central to any solution to the path planning problem is the identification of the set of bottlenecks in the free space which the object may need to traverse in order to reach the destination. These regions are closely surrounded by obstacles and the object has to tightly maneuver through the obstacles to avoid any collision. The local planning of object motion around a bottleneck, which is the focus of this section, requires spatial reasoning without performing detailed computation of paths. Between the bottleneck regions, object motion is much more free (the corresponding motion planning is not considered in this paper for brevity).

For the 2-D problems, free space bottlenecks can be defined by the minimal distance links (MDL’s) among polygonal obstacles, and object shape can be represented by its skeleton. Both of these rep-resentations can be computed easily (see [7] and [21], for example). Given a bottleneck, the topology of the local path is described to the proposed local planner using the skeletal representation of the moving object. The description is of a very concise form which only specifies the sequence in which the given skeletal points should cross the bottleneck. If such a description corresponds to a feasible object path, the local planner will generate a sequence of object configurations along the path, each of minimum potential; otherwise, a failure will be reported. In the latter case, the failure may also result from a violation of a predetermined safe margin.

(5)

Letsi; 1  i  N, denote the sequence of N selected skeleton points to cross the MDL whileL denotes the line containing the MDL. The local path begins when s1 reaches the MDL and ends whensN leaves the MDL. The following algorithm developed for the local planner performs path planning by sequentially ensuring that as each skeleton point moves onto the MDL, it stays onL while the location and orientation of the object is adjusted to minimize the Newtonian potential using repulsive torque (T) and force (F) calculated with (13)–(15) and (17)–(19), respectively. Additional skeleton points may be added (see algorithm) to reduce the step size along the path, allowing for finer adjustments in the object configuration to avoid collision. The total number of skeleton points used directly determines the number of optimal object configurations computed along the path and, thus, the computation time; therefore, it is desirable to use as few skeleton points as possible. To restrict the total amount of computation, a limit is put on the minimum spacing

sminbetween adjacent skeleton points used in the simulation, which effectively serves as a feasibility test of the local plan. (Alternatively, the minimum distance between object and obstacles can be used directly to serve the same purpose.)

ALGORITHM LOCAL PLAN:

Step 0: (Begin with the first skeleton point) Initializei = 1.

Step 1: (For this skeleton point, find the minimal potential object configuration)

Shift the object parallel toL and rotate it with respect to

siuntilT and the component of F along L are both zero. Step 2: (End when done with the last skeleton point)

Ifi = N, the local planning is completed.

Step 3: (Translate the next skeleton point onto MDL if possible) Translate the object such thatsi+ 1 is shifted to its pro-jection onL. If there is no collision during the translation, then leti i + 1, and go to Step 1.

Step 4: (Translate an intermediate skeleton point onto the MDL) Find the smallestn  1 such that s0i= si+(si+10si)=2n can be shifted to its projection on L without collision between the object and obstacles. Ifjs0i0sij > smin, then let si s0i, and go to Step 1.

Step 5: (End abnormally)

Exit with failure due to the need for less than allowed spacing of skeleton points.

An object configuration obtained in Step 1 is not only collision-free but also the safest with respect to the Newtonian potential under the constraint that the corresponding skeleton point stays onL. Such a minimal potential configuration always exists forsilocated on the MDL which connects two obstacles. (Situations involving multiple local minima will be discussed in the next subsection.) For the implementation of Step 1, the minimal potential configuration is identified efficiently by performing two binary searches: one for the object location usingF and the other for the object orientation using

T. The accuracies required for specifying the final object location and

orientation determine the number of iterations needed for solving the corresponding constrained optimization problems. For the simulation results presented, the minimal potential configurations are specified to within 1% of the length of the MDL in location, and within one degree in orientation. In Steps 3 and 4, the swept volume of the object due to the translation is checked for possible intersection with all obstacle regions to detect a collision.

Consider the L-shaped object shown in Fig. 5(a). The sequence of its skeleton points to cross the MDL is shown with the first skeleton point located on the MDL. The path obtained with LOCAL_PLAN is safe and smooth, as shown in Fig. 5(b). This is because the potential

(a)

(b)

Fig. 5. Local path planning results obtained by shifting the object skeleton points to the MDL and finding the minimal Newtonian potential object configuration for each point constrained to lie on the MDL: (a) initial conditions and (b) result.

function is spatially smooth, and maximal freedom is allowed in the adjustment of the object configuration to achieve minimal potential. Fig. 6 shows another local planning example. For both problems,

sminis chosen to be 1% of the size of the corresponding MDL and no additional skeleton points are needed in solving them; therefore, Steps 4 and 5 of LOCAL_PLAN are not executed. The simulation time for the path planning takes less than half of a second for both of the problems on a Sun SPARCstation 20. In Figs. 7 and 8, the skeletons in Figs. 5 and 6 are represented with the least samples using the end points of the connected line segments of the skeletons, which correspond toN = 3 and N = 4, respectively. Additional skeleton samples are added in generating the solution shown in Fig. 7(b) due to collisions during the translation associated with Step 3.

A. The Connection of Object Configurations Along a Local Path In LOCAL_PLAN, translations are used in Steps 3 and 4 to avoid the connection problem (see Fig. 9) for optimal object configurations obtained with Step 1. After an optimal configuration is found, the proper connection is established by translating the object while avoiding any collision with obstacles. The configuration of translated object is then used as the initial guess in the search for the next optimal object configuration. For the above examples, the allowed

(6)

(a)

(b)

Fig. 6. Another local planning example: (a) initial conditions and (b) result.

(a)

(b)

Fig. 7. A path planning example similar to Fig. 5 which uses only points required to describe the piecewise linear object skeleton: (a) initial conditions and (b) result.

(a)

(b)

Fig. 8. A path planning example similar to Fig. 6 which uses only the feature points of the object skeleton: (a) initial conditions and (b) result.

Fig. 9. The connection problem for optimal object configurations obtained independently for each skeleton point with Step 1, without executing Steps 3 and 4, of LOCAL_PLAN. It is not hard to verify that the two configurations cannot be connected into a meaningful path.

rotation angle of an object right after a translation is always limited within certain range of angular positions that the potential minimum, so is the optimal configuration, is unique. In general, there may exist several potential minima in the search space. For example, as the distance between the obstacles in the above examples increases, there will be no more constraint on the object rotation and the potential function will have more than one local minima in the search space. However, such a situation corresponds to a much easier problem which may be resolved by some simpler findpath methods, and is not the object of study in this paper.

On the other hand, there are situations when the existence of multiple local minima in the potential function has to be taken into account explicitly. For example consider the path planning problem shown in Fig. 10. It is not hard to see that after the object is moved halfway across the first MDL, there are at least two local minima in the search space for the optimal object configuration. This is because either one of the two passages may be chosen for the continuation of the object path near the end of the local path associated with the

(7)

Fig. 10. An example showing the existence of two local minima in the search space (one for each branch of the passages) for Step 1 of LOCAL_PLAN. Only one of the two passages is feasible for the object to move through.

first MDL. Additional global information has to be provided to the local planner before an object path can be obtained correctly. (For example, it is readily observable that only one of the two passages is feasible for the object to move through.)

In general, global information required in generating and con-necting local paths into a global path may include the following descriptions of the latter.

i) The sequence of MDL’s for which the local paths need to be generated.

ii) The sequence of skeleton points to cross each of the MDL’s. While i) gives the global direction in which different free space bottlenecks should be traversed by the object, ii) specifies the rough orientation for the object to enter and to leave each of the bottleneck. The latter is important if tight maneuvering around a bottleneck is required for the associated local path. For example, the local planner will fail to generate a solution for the problem shown in Fig. 7 if the sequence of skeleton points to cross the MDL is given in the reverse order. For cases when the object skeleton has multiple branch points, ii) will need to be obtained by considering only a subset of the object skeleton. (For example, the medial axis skeletal representation of the object shown in Fig. 7, in fact, has three branch points.)

Deriving both i) and ii) is an important issue which must be addressed implicitly or explicitly in ordinary path planning ap-proaches. In the following subsection, an example of generating and connecting a sequence of local paths into a global one is presented to demonstrate other possibilities of utilizing the proposed potential model to generate a smooth and collision-free object path. For brevity, the above descriptions i) and ii) of the global path are assumed to be given a priori.

B. Generating and Connecting a Sequence of Local Paths

Consider the path planning problem shown in Fig. 11(a). An L-shaped object is located at the lower left corner of the work space and its skeleton is represented with three skeleton pointsS1; S2, andS3. The goal is to move the object through MDL’sL1; L2, andL3, and then letS1reachL4before other skeleton points. The four MDL’s are designated as dashed line segments. The sequence of skeleton points to crossL1 are given asS1, S2, andS3while the sequence of points in the reverse order are used forL2and L3.

(a)

(b)

Fig. 11. A path planning example of generating a global path by connecting local paths generated by LOCAL_PLAN: (a) initial conditions and (b) result.

For each MDL, the initial object configuration of the local path is obtained by pulling the leading skeleton point (LSP) of the specified sequence of points toward the MDL while ensuring a) the LSP reaches the MDL before other skeleton points in the sequence, and b) the repulsive potential between object and obstacles is minimized. The pulling effect is achieved by reducing the perimeter of the triangle determined by the two ends of the MDL and the LSP while ensuring a collision-free object translation. For each fixed perimeter value, the location of the LSP is constrained to lie on an ellipse whose foci are located at the two ends of the MDL while the Newtonian potential is minimized by letting the object reorient and relocate. If there are other skeleton points which are located closer to the MDL than the LSP, e.g., if they are located inside the above triangle, the object is pulled with a small distance to allow the object to reorient itself so that the LSP will be the closest to the MDL. (Alternatively, without taking into account the repulsive potential, a rotation can be carried out to change the orientation of the object to achieve the same goal if the free space is wide enough.)

(8)

In contrast to LOCAL_PLAN where successive skeleton points are constrained to lie on the MDL, here the LSP is constrained to lie on ellipses with identical loci. At the end, as the LSP reaches the MDL, the ellipse degenerates to a line segment, the MDL, and the initial object configuration for the associated local path is obtained. Fig. 11(b) shows the path planning results obtained by generating and connecting the local paths generated by LOCAL_PLAN. Special case can be found in the connection of the two local paths aroundL2 andL3whereinS3reachesL3beforeS1leavesL2. In this case, the planning of the local path aroundL3is initiated while the planning of the local path forL2is ended prematurely.

C. Discussion

Despite the success in applying the proposed potential model in path planning discussed thus far, there are several related issues which have not been addressed. For example, as at the left side of the MDL shown in Fig. 10, there could be corridors in the free space for the object to move through. Roughly speaking, there could be i) a corridor connecting two open regions which is relatively short compared with the length of the object, ii) a long corridor which is longer than the length and wider than the width of the bounding box of the object, and iii) a junction of two or more corridors. For i), the middle cross section of the corridor can be regarded as the MDL of such a narrow region, e.g.,L1in Fig. 11, and used in the LOCAL_PLAN. For ii), the motion of the object in the corridor for each collision-free object orientation is essentially limited to a pure translation. (If the corridor is so wide that the object can rotate freely inside, then the motion planning is also trivial.) Proper constraints for the object motion, nonetheless, may be crucial in generating a reasonable object path near iii), which is not straightforward in general and is currently under investigation.

Commonly, potential-based approaches use not only the repulsive but also the attractive potential in planning an object path. While the former is used to ensure obstacle avoidance, the latter, usually resulting from a point charge at the goal, is used to move the object toward its destination. Such an approach is well-suited for planning object path in the configuration space where an object configuration corresponds to a point, or for planning the path of an object of simple shape. The proposed approach, on the other hand, is based on the potential-based modeling of the interaction between object and obstacles in the workspace where tightly maneuvering an object of complex shape around a congested region of the free space is necessary. Although it is not hard to associate an attractive potential with the goal configuration of the object shown in Fig. 11, it is not clear how the required global constraints specified by i) and ii) discussed in Section III-B can be accommodated automatically. Further study of the possibilities of adopting such a potential model is needed.

IV. CONCLUSION

An potential-based free space model is presented in this paper wherein each region border is assumed to be uniformly charged. The major advantage of the proposed approach is that the poten-tial, and the resulting force and torque, between polygonal regions thus modeled are analytically tractable. The effectiveness of such a model for ensuring collision avoidance in path planning problems is demonstrated by considering the local path going through a free space bottleneck in which careful maneuvering of the object is required. A local planner is developed to identify the optimal object configuration which is most unlikely to cause a collision for each location along the object path around a free space bottleneck. Because the repulsion between the object and obstacles is available in closed form, these

optimal configurations can be obtained with efficient search methods. Subsequently, an effective way of connecting these local paths into a global path is also presented. According to the simulation results, not only can an object configuration obtained with proposed approach avoid obstacles with satisfactory margins, but the configurations obtained along the path can be connected smoothly to generate a reasonable path.

REFERENCES

[1] Y. K. Hwang and N. Ahuja, “Gross motion planning—A survey,” ACM Comput. Surv., vol. 24, no. 3, pp. 219–291, 1992.

[2] R. A. Brooks and T. Lozano-Perez, “A subdivision algorithm in con-figuration space for findpath with rotation,” in Proc. Int. Joint Conf. Artificial Intelligence, Karlsruhe, Germany, 1983.

[3] J. T. Schwartz and M. Sharir, “On the piano movers’ problem: I. the case of a two-dimensional rigid polygonal body moving amidst polygonal barriers,” Commun. Pure Appl. Math., vol. 36, pp. 345–398, 1983. [4] M. Herman, “Fast, three-dimensional, collision-free motion planning,”

in Proc. IEEE Int. Conf. Robotics Automation, San Francisco, CA, Apr. 1986.

[5] S. R. Maddila, “Decomposition algorithm for moving a ladder among rectangular obstacles,” in Proc. IEEE Int. Conf. Robotics Automation, San Francisco, CA, Apr. 1986.

[6] S. Singh and M. D. Wagh, “Robot path planning using intersecting convex shapes,” in Proc. IEEE Int. Conf. Robotics Automation, San Francisco, CA, Apr. 1986.

[7] D. T. Kuan, J. C. Zamiska, and R. A. Brooks, “Natural decomposition of free space for path planning,” in Proc. IEEE Int. Conf. Robotics Automation, St. Louis, MO, Mar. 1985.

[8] O. Takahashi and R. J. Schilling, “Motion planning in a plane using generalized Voronoi diagrams,” IEEE Trans. Robot. Automat., vol. 5, no. 2, pp. 143–150, 1989.

[9] K. K. Gupta, “Fast collision avoidance for manipulator arms: A sequen-tial search strategy,” IEEE Trans. Robot. Automat., vol. 6, pp. 522–532, Oct. 1990.

[10] C. E. Thorpe, “Path planning for a mobile robot,” in Proc. AAAI Conf., Austin, TX, 1984.

[11] O. Khatib, “Real-time obstacle avoidance for manipulators and mobile robots,” in Proc. IEEE Int. Conf. Robotics Automation, St. Louis, MO, Mar. 1985.

[12] P. Khosla and R. Volpe, “Superquadric artificial potentials for obstacle avoidance and approach,” in Proc. IEEE Int. Conf. Robotics Automation, Philadelphia, PA, Apr. 1988.

[13] B. Cohen-Tannoudji, C. Diu, and F. Laloe, Quantum Mechanics. New York: Wiley, 1977, vol. 2.

[14] C. I. Connolly, J. B. Burns, and R. Weiss, “Path planning using Laplace’s equation,” in Proc. IEEE Int. Conf. Robotics Automation, Cincinnati, OH, May 1990.

[15] Y. K. Hwang and N. Ahuja, “Potential field approach to path planning,” IEEE Trans. Robot. Automat., vol. 8, no. 1, pp. 23–32, 1992. [16] E. G. Gilbert and D. W. Johnson, “Distance functions and their

applica-tion to robot path planning in the presence of obstacles,” IEEE J. Robot. Automat., vol. RA-1, pp. 21–30, Mar. 1985.

[17] J. Barranquand, B. Langlois, and J.-C. Latombe, “Numerical potential field techniques for robot path planning,” IEEE Trans. Syst., Man, Cybern., vol. 22, pp. 224–241, Mar./Apr. 1992.

[18] D. R. Wilton, S. M. Rao, A. W. Glisson, D. H. Schaubert, O. M. Al-Bundak, and C. M. Butler, “Potential integrals for uniform and linear source distributions on polygonal and polyhedral domains,” IEEE Trans. Antennas Propagat., vol. AP-32, no. 3, pp. 276–281, 1984.

[19] L. M. Magid, Electromagnetic Fields, Energy, and Waves. New York: Wiley, 1972.

[20] H. B. Dwight, Tables of Integrals and Other Mathematical Data. New York: Macmillan, 1961.

[21] D. G. Kirkpatrick, “Efficient computation of continuous skeletons,” in Proc. 20th Annu. IEEE Symp. Foundations Computer Science, Oct. 1979, pp. 18–27.

數據

Fig. 1. A finite line charge and its effect on point A.
Fig. 2. Two line segments and a reference point for the calculation of the repulsive force and torque due to the Newtonian potential.
Fig. 4. The repulsive torque with respect to (0, 0) experienced by cd in Fig. 3 as a function of the rotation angle of ab.
Fig. 5. Local path planning results obtained by shifting the object skeleton points to the MDL and finding the minimal Newtonian potential object configuration for each point constrained to lie on the MDL: (a) initial conditions and (b) result.
+3

參考文獻

相關文件

• Density is varying in the medium and the volume scattering properties at a point is the product of scattering properties at a point is the product of the density at that point

In JSDZ, a model process in the modeling phase is treated as an active entity that requires an operation on its data store to add a new instance to the collection of

A factorization method for reconstructing an impenetrable obstacle in a homogeneous medium (Helmholtz equation) using the spectral data of the far-field operator was developed

Finally, we want to point out that the global uniqueness of determining the Hartree po- tential (Theorem 2.5) and the determination of the nonlinear potential in the

Study the following statements. Put a “T” in the box if the statement is true and a “F” if the statement is false. Only alcohol is used to fill the bulb of a thermometer. An

In summary, the main contribution of this paper is to propose a new family of smoothing functions and correct a flaw in an algorithm studied in [13], which is used to guarantee

(a) The magnitude of the gravitational force exerted by the planet on an object of mass m at its surface is given by F = GmM / R 2 , where M is the mass of the planet and R is

FIGURE 23.22 CONTOUR LINES, CURVES OF CONSTANT ELEVATION.. for a uniform field, a point charge, and an