Locational optimization problems solved through Voronoi diagrams

Locational optimization problems solved through Voronoi diagrams

• EUROPEAN JOURNAL OF OPERATIONAL RESEARCH ;~e ELSEVIER European Journal of Operational Research 98 (1997) 445-456 Invited Review Locational opt...

986KB Sizes 52 Downloads 120 Views



EUROPEAN JOURNAL OF OPERATIONAL RESEARCH

;~e

ELSEVIER

European Journal of Operational Research 98 (1997) 445-456

Invited Review

Locational optimization problems solved through Voronoi diagrams A t s u y u k i O k a b e a'*, A t s u o S u z u k i h a Department of Urban Engineering, University of Tokyo, 7-3-1 Hongo, Bunkyo-ku, Tokyo 113, Japan b Department of Information Systems and Quantitative Sciences, Nanzan University, 18 Yamazato-cho, Showa-ku, Nagoya 466, Japan Received November 1996

Abstract

This paper reviews a class of continuous locational optimization problems (where an optimal location or an optimal configuration of facilities is found in a continuum on a plane or a network) that can be solved through the Voronoi diagram. Eight types of continuous locational optimization problems are formulated, and these problems are solved through the ordinary Voronoi diagram, the farthest-point Voronoi diagram, the weighted Voronoi diagram, the network Voronoi diagram, the Voronoi diagram with a convex distance function, the line Voronoi diagram, and the area Voronoi diagram. (~) 1997 Elsevier Science B.V.

1. I n t r o d u c t i o n

The study of Iocational optimization has a long history. It dates back to 1909 when Weber (1909) studied the locational optimization of a firm in a region, called the Weberian problem (a review is provided by Wesolowsky, 1993). Since then, various kinds of locational optimization problems have been studied in OR, geography and spatial economics, and have been reviewed from many viewpoints (Hansen et al., 1987; Gosh and Rushton, 1987; Love, Morris and Wesolowsky, 1988; Mirchandani and Francis, 1990; Drezner, 1995). In this paper, we review a class of locational optimization problems that can be solved through a common geometrical diagram, called the Voronoi diagram (Voronoi, 1908).

* Corresponding author. Tel.: +81 3 3812 2111, fax: +81 3 3818 5946, e-mail: [email protected]

The Voronoi diagram is a very simple diagram. Given a set of two or more, but a finite number of distinct points in the Euclidean plane, we associate all locations in that space with the closest member(s) of the point set with respect to the Euclidean distance. The result is a tessellation of the plane into a set of the regions associated with the members of the point set (the continuous lines in Fig. 1). We call this tessellation the ordinary Voronoi diagram generated by the point set, and the regions constituting the Voronoi diagram, ordinary Voronoi polygons ( Okabe, Boots and Sugihara, 1992, p. 66). Conceptually, the generalization of the ordinary Voronoi diagram is straightforward. Let S be a space (e.g., the Euclidean space (denoted by R 2) as in the ordinary Voronoi diagram); si be a subset of S, i = 1. . . . . n, satisfying si N sj = 0, i ~ j, called a generator (e.g., a point, a line, an area, etc.); p be an arbitrary point in S; and d(p, si) be the distance between p and si (e.g., the Euclidean distance, the

0377-2217/97/$17.00 (~) 1997 Elsevier Science B.V. All fights reserved. PII S 0 3 7 7 - 2 2 1 7 ( 9 6 ) 0 0 3 7 2 - 4

446

A. Okabe, A. Suzuki~European Journal of Operational Research 98 (1997) 445--456

a computational method but also for obtaining good behavioral implications. /?\~. / iI

iI I

//

k

/ /

!

,~.

2. Locational optimization problems solved through V(--/points/--)

\\

\\ \\ ~\\ \

1

//

i

I/

\

I / k

l

ii /

~

I iI

Fig. 1. A Voronoidiagram (continuouslines), its Delaunaytriangulation (dashed lines) and the largest empty circle. Manhattan distance, etc.). In these terms, a set V/of points is defined by

d(p, si) <<,d(p, sj);

..... .}.

First let us fix a general setting. We consider n facilities placed in a region, S. Facilities are classified into three types according to their relative size in comparison with the area of region S. If a facility is relatively very small (say, a first food store in a city), the facility is called a point-like facility; if a facility is long and very narrow (say, a railway), the facility is called a line-like facility; and if the area occupied by a facility is not negligible (say, the Central Park in the Island of Manhattan), the facility is called an area-like facility. A facility is represented by a geometrical object, si, which may be a point, a line segment (or a chain of line segments), or a polygon according to a point-like facility, a line-like facility or an area-like facility, respectively. Over region S, users are continuously distributed according to a density function, f ( p ) , satisfying

i=1

f(p) >0, If the resulting set $; = {Vl . . . . . Vn} is a tessellation of S \ Uin=lsi, then V is called the generalized Voronoi diagram (Okabe, Boots and Sugihara, 1992, Chapter 3). The generalized Voronoi diagram includes many specific diagrams, which are obtained by specifying S, si and d(p, si). For this specification, we use the notation );(space/generators/distance)

=

V( S/ si / d ).

For example, the ordinary Voronoi diagram is indicated by V(•2/points/Euclidean distance). The generalized Voronoi diagram is useful for solving many kinds of locational optimization problems. The objective of this paper is to review these problems. We should make one remark on the efficiency of computational methods. In the subsequent sections, we use computational methods that include the Voronoi diagram. These methods, however, may not always be the most efficient ones. Yet we employ them, because the Voronoi diagram is useful not only for constructing

pES\Usi, iEI

where I = { 1. . . . . n}. Under this setting, we first consider the following problem: P1 (largest empty region problem): Find the location of a user from which the distance to the nearest facility is the longest in a bounded space, S, i.e.,

max

~n{d(p, si)}.

(2)

,"~-¢',U',L, s, This problem means finding the worst location in a region to access the nearest facility. Note that the region centered at the worst location with the radius given by expression (2) is the largest region in which there are no facilities inside. We may hence call such a region the largest empty region (the shape of the region varies according to the type of facilities and the distance function). Also note that P1 should be distinguished from the discrete problem in which users are placed on a finite number of locations in S.

A. Okabe, A. Suzuki~European Journal of Operational Research 98 (1997) 445-456

Suppose that users tend to go to their nearest facilities. Then, the service area of facility si, i.e., the area in which users use facility si (i E I) is given by the Voronoi region V/ o f ] ) ( S / s i / d ) generated by sl . . . . . s,,. By definition, ifa user is at pointp in Vi, the nearest facility is facility si. Hence the farthest point in V/from facility si is found on the boundary of V~. A computational method for solving P1 varies according to specification of S, si and d(p, si). To refer to a specific problem of P1, we use the notation P1 (space/facility type/distance), where the distance means the behavioral distance of a user (which may be different from the distance used in 1)). First we specify PI as:

/

447

/

Fig. 2. A Voronoi diagram with an elliptic distance function (dashed elliptic lines) and the largest empty ellipse.

In the computational geometry literature, PI with this specification is called the largest empty circle problem (Shamos and Hoey, 1975). An empty circle means a circle which does not contain any facilities inside. Obviously the center of the largest empty circle is the most inconvenient location in a region (see the circle in Fig. 1, where/I~ 2 is given by the convex hull of the given points). The method for solving PI (~2/points/de) is simple. From the definition of V/, the farthest point, q*, in Vi from Pi exists on one of the vertices, qij,j = 1. . . . . n,i, of V/. Hence, expression (2) is alternatively written as

1)(R2/points/dE) was proved to be n logn in the worst case (Shamos and Hoey, 1975; Preparata and Shamos, 1985, p. 206), and n on average when the generators are fairly uniformly distributed (Ohya, Iri and Murota, 1984). Recently a robust algorithm against errors was developed by Sugihara and Iri (1994). P1 (~2 /points/ de) can be extended in several directions. The first direction may be an extension with respect to distance. Since allowable distances in P1 are numerous, it is almost impossible to refer to P1 with all these distances. Here we only refer to PI with a general class of distances, called the convex distance. To be explicit, let C be a bounded convex set including the origin of the Cartesian space, C. Let p and q be two points on C whose coordinates (location vectors) are xp and Xq, respectively. Let Ca be a set of points ,~x satisfying A/> 0 and x E C, i.e., Ca is similar to C with the similarity center at the origin (by definition, Cl = C). In these terms, the convex distance is defined by

ma_x rnEitn{ d E ( p, pi ) }

dc(p,q)

Pl(f{2/points/de) (largest empty circle problem): P1 in which S is a bounded two-dimensional Euclidean space (denoted by I~2); facility si is a point-like facility represented by point Pi; d(p, si) = dE(p, Pi ) is the Euclidean distance.

pES

= max{maxdE(p, pi)} = max{dE(qT,pi)}. iffl

pEV,

i~l

(3)

Thus, once the ordinary Voronoi diagram, "1)(~2/ points/dE), is obtained, the solution is readily obtained by finding the maximum value among

{dE(qij,Pi), i= 1 . . . . . n, j = 1 . . . . . n,,i}. Many computational methods for constructing F(~2/points/dE) have been developed in computational geometry (see the reviews by Preparata and Shamos, 1985, Chapter 5; Okabe, Boots and Sugihara, 1992, Chapter 4; O'Rourke, 1994, Chapter 5). The order of the computational time for constructing

= main{h : x q - x

t, E Ca}.

(4)

An example is shown in Fig. 2, where C is an ellipse and the ellipses indicated by the dashed lines show the lines equidistant from the open point circle. Note that if C is a circle, d c ( p , q ) = dE(p,q) and if C is not symmetrical with respect to the origin, dc (p, q) = dc(q, p) may not hold. With this distance, PI (~2/points/dE) is extended to:

Pl(C-Z/points/dc) (largest empty convex region problem): PI in which S is a bounded twodimensional Cartesian space (denoted by ~2 ); facility si is a point-like facility Pi; d(p, si) = dc (p, Pi).

448

A. Okabe,A. Suzuki~EuropeanJournalof OperationalResearch 98 (1997)445-456

/

7"""

/ \

competition of fast food stores in a central business district. In such a space, the Euclidean distance is significantly different from a route distance on a network, and so P1 for a network space should be considered, i.e.:

/

',

Fig. 3. A Voronoi diagram with a convex (triangle) distance function and the largest empty triangle. The method for solving this problem is essentially similar to the above method. Two examples are shown in Figs. 2 and 3. In Fig. 2, C is given by an ellipse; the continuous lines indicate the Voronoi diagram with the elliptic distance, 1)(C-2 ~points~de), and the bold continuous line indicates the largest empty ellipse in the convex hull of the given points (the dashed polygon). In Fig. 3, C is given by an asymmetric triangle. In this case, a slight modification is necessary. Instead of 1)( C-2/points/ dc ), 1)( d2 /points/ dc ,) is used, where C r is given by the reflection of the triangle C with respect to the origin ( the small triangle in Fig. 3) (Chew and Drysdale, 1985). The center of the largest empty triangle (the large triangle in Fig. 3) can be found at one of the vertices (the open point) of the Voronoi diagram ~;(C-2 ~points~de,). A second direction may be the extension of P1 with respect to a space. Since the allowable spaces in P1 are too many to mention, only two spaces are discussed here. If the facilities are distributed over the whole earth, the two-dimensional Euclidean space should be extended to the surface of the globe, i.e.:

Pl(8/points/dG): P1 in which S is a sphere (denoted by S ) ; si is a point-like facility Pi; d(p, pi) = de (p, Pi ) is the great circle distance. The method for solving this problem is almost the same as that for Pl(RZ/points/de) except for using the Voronoi diagram with S = S, d(p, Pi ) = de (p, Pi ) in Eq. (1), called the spherical Voronoi diagram, 1)(8/points/de). The diagram can be constructed in time of order n log n. Besides a spherical space, a network space is also important in practice when we deal with a locational problem in a fairly small district, for example, spatial

Pl(Al'/points/dN): P1 in which S is a finite network (denoted by .IV'); si is a point-like facility Pi; d(p, si) =dN (p, Pi) is the shortest-path distance. The method for solving this problem is almost similar to Pl(~2/points/de). Instead of the ordinary Voronoi diagram, we use the Voronoi diagram with S = .Af, d(p, si) = dN(p, pi) in Eq. (1), called the network Voronoi diagram, 1)(A//points/dN). A slightly different definition is given by Hakimi, Labb6 and Schmeichel (1992) (who refer to it as the network Voronoi partition). A method for constructing 1)(N/points/dN) is an application of the shortestdistance tree with the Dijkstra (1959) method. As is seen in the form of expression (2), P1 is subsumed under the max-min problem. An 'opposite' problem is the min-max problem, which arises when we try to find the best location for an emergency service center, such as a transfuse blood center servicing hospitals in a region. The problem is generally written as:

P2 (smallest enclosing region problem) : Find the location from which the distance to the farthest facility is the shortest, i.e.,

maxd(p, si).

min

(5)

' ,,

Note that the region centered at the optimal location of P2 with the radius given by expression (5) is the smallest region that includes all facilities. Thus, P1 may be called the smallest enclosing region (the shape of the region varies according to the type of facilities and the distance function). First, let us specify P2 as:

P2(R2 /points/ dE) (smallest enclosing circle problem): P2 in which S = R2; si is a point-like facility pi; d(p, pi) = dE(p, pi). This problem is known as the smallest enclosing circle problem (Sylvester, 1857; see a review by Plastria, 1995, Section I 1.4.3.1). An example is shown in Fig. 4 (the bold circle).

A. Okabe, A. Suzuki~European Journal of Operational Research 98 (1997) 445-456

449

P2(R2/lines/de): P2 in which S = IR2; si is a linelike facility (denoted by li); d(p, li) is the longest (not shortest) Euclidean distance between p and a point on the line li.

Fig. 4. A farthest-point Voronoi diagram (continuous lines), the circle (hair-line circle) with the diameterof a given set of points (dashed line segment) and the smallest enclosing circle (bold circle).

P2(~2/points/de) can be solved through the Voronoi diagram with S = R 2, d(p, Si) = - d e ( p , p i ) in Eq. ( 1 ), called the farthest-point Voronoi diagram, ~;(lt~2/points/-de) (Shamos and Hoey, 1975) (the continuous lines in Fig. 4). This diagram has the property that for every vertex qi of ~)(~2/points/--de), there exists a unique circle Ci centered at qi which passes through three or more point-like facilities, and in addition, which encloses all other point-like facilities (Okabe, Boots and Sugihara, 1992, Property FP4 on p. 162). This circle is called an enclosing circle. To solve P2(IR2/points/de), it should be noted that the center of the smallest enclosing circle may exist on the center of the diameter (the farthest pair) of pj . . . . . p~ (the dashed line segment in Fig. 4), or may be on a vertex of " f f ( ~ 2 / p o i n t s / - d e ) . Thus the procedure for solving this problem consists of two steps. The first step is to examine if the circle with the diameter ofpl . . . . . Pn encloses all pl . . . . . Pn (the circle in Fig. 4; note that this diameter may be obtained through "l)(1R2/points/-de) (Okabe, Boots and Sugihara, 1992, Property FP3 on p. 161) or may be obtained directly (Preparata and Shamos, 1985, Theorem 4.19 on p. 175)). If the circle encloses all the points, the center of the circle is the solution to P2(ll~2/points/dE). If not (as in Fig. 4), the center of the smallest circles among {Ci} is the solution to P2 (~2 / points / de) ( the heavy line circle centered at the square in Fig. 4). This procedure runs in order n log n. Alternative methods were proposed by Elzinga and Hearn (1972), Dasarathy and Lee (1980), Hearn and Vijay (1982), Megiddo (1983) and Dyer (1984). P2 may be formulated for a set of lines and a set of areas, as follows:

P2(]R2/areas/dE): P2 in which S = ~2; si is an arealike facility represented by a polygon; d(p, Si) is the longest (not shortest) Euclidean distance between p and a point in si. Although facilities are not point-like facilities, these problems can be solved through the farthest-point Voronoi diagram. To be explicit, let Pij, j = 1. . . . . ni, be end points or intermediate points of a chain of line segments representing line-like facility li. Since the farthest point on ll . . . . . In from a point p in ]R2 is found in {Pij, i = 1. . . . . n, j = 1. . . . . n i } , the method for solving P2(•2/points/de) can be applied to P2(R2/lines/de). Similarly, since the farthest point n in polygons st . . . . . sn from a point in R 2 \ (.Ji=l si is found on the boundary of polygon si, and the boundary of a polygon si consists of connected straight line segments, the method for solving P2(R2/points/de) can be applied to P2(lR2/areas/de). The robustness of the optimal solution is discussed by Ohsawa. and Imai (1997). P2 may be formulated on a sphere, i.e., P 2 ( S / points/de) and on a network, i.e., P2(.A/'/points/ dN). In theory, these problems can be solved through the spherical farthest-point Voronoi diagram ) ; ( S / p o i n t s / - d ~ ) and the network farthest-point Voronoi diagram 1 ; ( S / p o i n t s / - d N ) , respectively. However, only a few articles in the literature deal explicitly with these problems. Paralleling the largest empty convex figures in P1 (C-2/points/dc), the smallest enclosing convex figures may be obtained by the use of the farthest-point Voronoi diagram with convex distances. However, few papers deal with this problem in the literature. In conjunction with the max-min problem (P1) and the min-max problem (P2), it may be worth noting a min-min problem which arises when we try to find the minimum 'channel' or the most critical 'bottleneck', i.e., the minimum radius of a disk which can freely move in S \ [..Ji~=lsi. The problem is written as: P3 (bottleneck problem) : Find the minimum among the distances between s i and sj, i, j E 1, i.e.:

A. Okabe, A. Suzuki~European Journal of Operational Research 98 (1997) 445-456

450

min

iEI, j E I i ~-.j

min

pE&, qEsj

d(p, q).

(6)

P4(S/points/d6): P3 in which S is a sphere, S; S i is a point-like facility Pi; d(p, Si) -~ d6(p, pi) is the great circle distance.

This problem is easy to solve when the following applies:

P3(N2/points/dE): P3 in which S = ~2; like facility Pi; d(p, si) = de(p, pi).

Si

is apoint-

In this case, minpes,qEsj d(p, q) in expression (6) is simply given by dE(Pi,pj). Since the nearest generator point in Pl . . . . . Pn from Pi is found in the generator points whose Voronoi polygons share the common boundary with Vi in V(N2/points/de), P3(R2/points/de) is solved by finding the shortest line segment among the line segments joining generator points sharing the common boundary, which is called the Delaunay triangulation (the dashed lines in Fig. 1). Up to now, we discussed a class of locational problems in which the configuration of facilities is fixed. We now turn to a class of locational problems in which the configuration of facilities is to be optimized. P4 (continuous p-center problem): Optimize the configuration of n facilities, st . . . . . s,, by minimizing the maximum distance to the nearest facility, i.e., max ,,

min =

p~

',U,=,

" p{d(p,

si)}.

(7)

Note again that P4 should be distinguished from the discrete problem in which users are placed on a finite number of locations (nodes). First, let us specify P4 as

P4(NZ/points/de): P3 in which S = ~2; si is a pointlike facility Pi; d(p, si) = de(p, pi). The method for solving P2(N2/points/de) takes two steps. The first step is to solve PI (R2/points/de) (the method is shown in the above). The second step is to find a set ofpl . . . . . pn that minimizes the maximum value that has been obtained in Pl(N2/points/dE). This minimization is fairly intractable, because the locations of Pi and q~' that give the maximum distance de(q~,pi) drastically change as the configuration of pl . . . . . pn changes. A practical method is proposed by Suzuki and Drezner (1996). The above problem may be extended to a problem on the surface of the globe, i.e.,

This problem arises, for example, when an air force tries to optimize the configuration of air bases by minimizing the maximum flight distance to a point on the globe from the nearest air base. In principle, P3(S/points/d~) could be solved by a similar method employed in P3(~2/points/dE), but few papers deal with this problem, although some related papers are found, for example, T6h ( 1972, Appendix VI), Drezner and Wesolowsky (1983), Drezner (1985) and Xue (1994). P4 may be formulated on a network, i.e.:

P4(Af/points/dN): P4 in which S is a network, N'; si is a point-like facility pi; d(p, Si) = dN(p, pi) is the shortest-path distance (Pl . . . . . p, are placed on N'). One might think that P4(N'/points/dN) is the discrete p-center problem often refered to in OR. Note, however, that P4(N'/points/dN) is close to the discrete p-center problem, but not exactly the same. If users are distributed only on nodes of N', P4(H/points/dN) is exactly the discrete p-center problem. P4(N'/points/dN), however, assumes that users are continuously distributed over N'. Although methods for solving the discrete p-center problem have been extensively studied in OR since Hakimi (1964), few methods have been developed for

P4( N'/points/ dlv) . In conjunction with the p-center problem, one might recall the discrete p-median problem often discussed in locational optimization on a network. A corresponding problem is written as: P5 (continuous p-median problem) : Optimize the configuration of n facilities, sl . . . . . so, by minimizing the average distance to the nearest facility, i.e., n

min

~_~ f f(p)d(p, si) dp.

(8)

i=1 V,'

The method for solving P5 varies according to specification for S, si, and d(p, si). Let us first specify P5 as:

A. Okabe, A. Suzuki~European Journal of Operational Research 98 (1997) 445-456

PS(~Z/points/de): P5 in which S is a bounded region ~2; si is a point-like facility Pi; d(p, si) = dE(p, pi). In this case, the objective function inexpression (8) is a non-linear non-convex function. It is hence difficult to obtain the global optimum analytically except in very special cases. Alternatively, a local optimum can be obtained by a numerical method. A practical method is developed by Iri, Murota and Ohya (1984). In P5 (~2/points/de), facilities are assumed to be indifferent, such as public mail boxes, but this assumption may not be appropriate for some kinds of facilities. For example:

P5([~2/hierarchical

points/de): P5 in which facilities form an hierarchy, such as a system of post offices consisting of the main office and branch offices. The mathematical formulation of this problem becomes more complicated than expression (8), but the computational method for solving it is similar to that for solving P5(~2/points/de). Suzuki (1989) and Okabe, Okunuki and Suzuki (1997) have developed this method. P5 may be formulated on a network, i.e.:

P5(./k/'/points/du): P5 in which S is a network, .A/'; si is a point-like facility Pi; d(p, si) = dN(p, Pi) is the shortest-path distance. At first glance, P5(Af/points/dN) looks the discrete p-median problem often refered to in OR, but it is not exactly the same. If users are placed only on nodes, P5(./V'/points/du) is exactly the discrete pmedian problem. The discrete p-median problem has been extensively studied in OR, but few attempts have been made to solve P5(AC/points/dN) where f ( x ) is a continuous function on ./V'. Another modification of P5 is:

P5(~2/points/dw): P5 in which S is a bounded region R2; si is a point-like facility Pi; d(p, pi) = dw (p, Pi) = de(p, Pi) + wi is the weighted distance. In this case, the service region of facility Pi is given by V/of the Voronoi diagram with S = ~2 and d(p, pi) = dw(p, pi) in Eq. (1), called the weighted Voronoi diagram, ~(~2 /points/ dw). This diagram is often used in market area analysis. Suppose that the delivered price, Pi(P), at p from the i-th store is

451

given by tde(p, pi) + Pio where t is a unit transportation cost and Pio is the mill price at the i-th store. If consumers buy goods from the store that offers the lowest delivered price, then the market area of the i-th store is given by V/of V(~2/points/dw), where wi = Pio/t. The weighted Voronoi diagram also appears in the service areas of bus stops. In this context, Suzuki (1987) solves P5(~2/points/dw), The computational method is almost the same as Ohya, Iri and Murota (1984) except for using the weighted Voronoi diagram instead of the ordinary Voronoi diagram. In the real world, we can observe many phenomena showing spatial tessellations, such as the territories of mouth-breeder fish (Barlow, 1974). We are curious to know if an observed tessellation is similar to a Voronoi diagram. To examine this problem, we should solve the following problem:

P6(~,Z/points/de) ( Voronoifitting problem) : For a given spatial tessellation, find the best-fit Voronoi diagram. There are several methods for measuring the fitness (Okabe, Boots and Sugihara, 1992, Section 7.5). One method is to measure the fitness by the 'common' area between cells of a given tessellation and their corresponding Voronoi polygons (Suzuki and Iri, 1986). To be explicit, let T = {TI . . . . . 7", } be a given tessellation, V = {Vl . . . . . V~} be a corresponding ordinary Voronoi diagram, and f ( p ) be a weight at p (which is a constant here, but will be used as a variable later). Then P6(~2/points/de) is mathematically written as

max ~

/

f(p)dp.

(9)

i=l V,nT,

In the context of locational optimization, this mathematical problem arises in the locational optimization of schools under school district regulation (i.e., students are supposed to go to schools in their school districts). This restriction produces students who cannot go to their nearest schools. The problem is to minimize the number of such students. If f ( p ) in expression (9) is interpreted as the density function of students at p, this problem is exactly P6(~,2/points/de). A computational method for solving P6(~2/points/de) is presented by Suzuki and Iri (1986). In conjunction with the above fitting problem, it may be worth noting another fitting problem that arises

A. Okabe, A. Suzuki/European Journal of Operational Research 98 (1997) 445-456

452

"• .

Q

/

o

o O

.... 41F'~I l

- 4p~

I l

- 4: ~

o

I I

0 0

y

I

i

I

x

x+a

x+2a

Fig. 5. Fitting a grid lattice to a set of given points which are placed 'almost' on a grid lattice. in an industrial robot attaching a pin-grid-array LSI to a board.

P7(~2 / p o i n t s / d E ) (lattice fitting problem): For a given set, Q, of points placed 'almost' on a grid lattice (the open points in Fig. 5), fit a grid lattice, P, of points (the black points) to Q by moving P through translation and rotation in such a way that the maximum distance between a point in P and its corresponding point in Q is minimized. Let us first consider a special (simple) case of P7(~,2/points/de) in which P moves only through translation. Let p/j be points of P, i = 1 . . . . . nl, j -1. . . . . n2, and ( x + a ( i - 1 ) , y + a ( j - 1)), i = 1 . . . . . n l , j = 1. . . . . n2, be the locations of those points. The translation of P is indicated by variables x and y. Let q/j = ( u / j , O/j) be the fixed point in Q that corresponds to Pij in P. Then the problem is mathematically written as

min{d(p/j,qij), i = 1 . . . . . hi, j = 1. . . . . n2}. x,y

point ( x , y ) from which the distance to the farthest point in R is the shortest. This problem is exactly the same as P2(~2/points/de), and it can be solved by using the farthest-point Voronoi diagram. The problem of P7(~2/points/de) becomes harder in the general case where P is fitted to Q not only through translation but also rotation. In theory, however, a similar idea can be applied to this general case, and it can be solved through the 'dynamic' farthest-point Voronoi diagram (Imai, Sumino and Imai, 1989).

3. Locational optimization problems solved through 3)(--/lines/--) The Voronoi diagram generated by a set of line segments or a set of chains consisting of line segments is called a line Voronoi diagram (Okabe, Boots and Sugihara, 1992, Section 3.5). An example is shown in Fig, 6 (generators are open line segments with their end points). This diagram is also useful for solving many kinds of locational optimization problems, which are to be reviewed in this section. Paralleling to PI for point-like facilities in Section 2, we have P1 for line-like facilities, i.e.:

Pl(R2 / l i n e s / dt~) (largest empty circle problem for lines): Find the location from which the distance to the nearest line-like facility is the longest.

(10)

A clue to this problem is found if the distance between Pij and q/j is alternatively written as

d(p/j,q/j) = ( { ( x + a(i - 1)) - u/j} 2 + {(y+a(j= ({x-

(u/j - a ( i -

2\1/2

1)) - v / j } )

1))} 2

+ {y - (v 0 - a ( j - 1))}2) 1/2 .

(11)

This equation implies that d(p/j, q/j) may be regarded as the distance between (x, y) and ( u / j - a ( i - 1 ) , v i j a ( j - 1 ) ). Let r/j be the point ( u/j - a ( i - 1 ), vii - a ( j 1)) and R be a set of points {r/j, i = 1. . . . . hi, j = 1. . . . . n2}. Then the problem is re-stated as: Find the

Fig. 6. A line Voronoi diagram generated by open line segments with their end points.

A. Okabe, A. Suzuki~European Journal of Operational Research 98 (1997) 445-456

This problem is a generalization of the largest empty circle problem P1 (~2/points/de) in Section 2; stated a little more precisely, it may be called the problem of

the largest empty circle avoiding barrier lines. Unlike a Voronoi polygon of the ordinary Voronoi diagram V(~2/points/de), a Voronoi region ~ of the line Voronoi diagram V(]~2/lines/de) is not a polygon; the boundary of the region consists of straight line segments and parabolic arcs. However, the line Voronoi diagram has similar properties: if p C V/, then the nearest line-like facility from p is li; the farthest point from li in V/is found at one of the vertices of V/. Thus, once V(~2/lines/de) is obtained, it is straightforward to solve P1 (~2/lines/de). A computational method for constructing V(~2/line/de) was proposed by Yap (1987). It runs in order nlogn, where n is the number of line segments. Recently, Imai (1996) has developed an alternative method which runs in order n on average; his method is robust against numerical errors. PI (~2/line/de) in the above may be extended to a problem on a spherical space (say, cable lines on the globe), i.e., P1 (S/lines/dc), but few papers deal with such a problem. A problem corresponding to P2(ll~,2/points/de) is P2(R2/lines/de) (find the location from which the farthest line-like facility is the shortest). To solve it, however, as was shown in Section 2, we do not use the line Voronoi diagram but the farthest-point Voronoi diagram. Like P3 for point-like facilities in Section 2, P3 may be formulated for line-like facilities, i.e., P3(~2/ lines/de) (find the minimum among the distances between lines). The method for solving this problem is

453

almost similar to that for P3(~,2/points/de) except for using the line Voronoi diagram instead of the ordinary Voronoi diagram. Similarly, P4 may be formulated for line-like facilities (i.e., optimize the configuration of line-like facilities by minimizing the maximum distance to the nearest line-like facility), but no attempts have been made to solve this problem. A few attempts have been made to solve P5 for linelike facilities. This problem arises, for instance, when we optimize the configuration of gas pipe-lines in a region. Generally P5 for line-like facilities is stated as:

PS(~z /iines/ dE) (continuous p-median problem for line-like facilities): Optimize the configuration of line-like facilities by minimizing the average distance to the nearest line-like facility. Note that this problem should be distinguished from the discrete problem in which users are located on a finite number of locations (studied by Megiddo and Tamir, 1982; Morris and Norback, 1983; Lee and Wu, 1986; and Imai, Lee and Yang, 1992). The method for solving P5(~2/lines/de) consists of two steps. The first step is to compute the average distance to the nearest line-like facility. Since the average distance can be explicitly written in terms of an algebraic function of the coordinates of points representing line-like facilities (Okabe et al., 1988), this computation can be done exactly. The second step is to optimize the configuration of facilities, but this task is hard because the objective function is non-linear and non-convex. Applying a descent method, however, Takeda (1985) showed a practical method for obtaining a local optimal configuration. In Section 2, we refered to the fitting problems, P6(~2/points/de) and P7(~2/points/de). We now show another fitting problem which arises when we want to put a name label of a region within its region on a map (see Fig. 7).

PS(R2 /areas/ de) (label fitting problem): Place a convex polygon P in the interior of a given polygon Q in such a way that the distance between a point, s, on the boundary of P (denoted by cgP) and a point, t, on the boundary of Q (0Q) is maximized. Mathematically, Fig. 7. Placing a rectangular label at the 'best' location in a region.

max min-{de(s, t), s E OP, t E OQ}, P

s,t

(12)

A. Okabe,A. Suzuki~EuropeanJournalof OperationalResearch98 (1997)445-456

454

where maxp implies that the objective function is to be maximized by moving P through translation and rotation. Let us first consider a special (simple) case in which P moves only through translation. To indicate the location of P, let r be a representative point of P (r C P ) . When r (or P ) moves to a point q through translation, the location of P is indicated by P(q). Suppose that there exists at least one point q in Q satisfying P(q) c Q, and let F(P, Q) be the set of points q satisfying P(q) C Q (the dashed line segments in Fig. 7). The construction of F(P,Q) can be done in order mnlog(nm) (Fortune, 1985), where n and m are the numbers of vertices of P and Q, respectively. The resulting polygon F(P, Q) has the nice property that rain{de(s, t), s E OP, t E OQ} S,t

=min{de(s,q), s ~ OF(P,Q)}. s,t

(13)

(Observe the two arrow line segments in Fig. 7; see Aonuma et al. (1990).) From this property, it is noticed that P8(R2/areas/de) is equivalent to the largest empty circle problem refered to in P1, i.e., Pl(~2/lines/de). The method for solving this problem is almost the same as that for solving Pl(~Z/points/de) shown in Section 2 except that the former problem is solved through the ordinary Voronoi diagram, whereas the latter problem is solved through the line Voronoi diagram. The optimal point is found at one of the vertices of Voronoi regions generated by the lines given by the edges (excluding the end points) and vertices of F(P, Q) (the continuous lines in Fig. 7). The problem P8(~2/areas/dE) becomes harder if P not only moves through translation but also through rotation. Aonuma et al. (1990) show that the problem can be solved through the 'dynamic' Voronoi diagram in a similar way, although the procedure becomes complicated.

Voronoi diagram (Okabe, Boots and Sugihara, 1992, Section 3.6). An example is shown in Fig. 8. Like the ordinary and line Voronoi diagrams shown in Sections 2 and 3, the area Voronoi diagram is also useful for solving many kinds of locational optimization problems. A problem corresponding to P1 in Sections 2 and 3 is written as: Pl(~2/areas/dE) (largest empty circle problem for areas) : Find the location from which the distance to the nearest area-like facility is the longest. This problem is a generalization of the problem of the largest empty circle avoiding barrier lines in Section 3, which may be called theproblem of the largest empty circle avoiding obstacles (Toussaint, 1983). P1 (hE/areas/dE) can be solved almost in the same manner as Pl(~Z/lines/de) shown in Section 3 except for using the area Voronoi diagram instead of the line Voronoi diagram. Similarly, P3 for an area-like facility, i.e., P3(R2/ areas/dE) (find the minimum among the distances between areas si and sj), can be solved almost in a similar way as P3(•2/lines/de). This problem is particularly useful for considering robot movement in a region with obstacles, and it has been studied since 1979 (Lozano-P6rez and Wesley, 1979). A recent progress can be found in McAllister, Kirkpatrick and Snoeyink (1996).

4. Locational optimization problems solved through V(--/areas/--) When si is a non-empty area, a generalized Voronoi diagram generated by {Sl . . . . . sn} is called an area

Fig. 8. An area Voronoidiagram.

A, Okabe, A. Suzuki~European Journal of Operational Research 98 (1997) 445-456

P2 for area-like facilities, i.e., P 2 ( N 2 / a r e a s / d e ) (find the location from which the distance to the farthest facility is the shortest) can be solved, as was shown in Section 3, by the farthest-point Voronoi diagram. Papers dealing with P4 for area-like facilities (i.e., optimize the configuration o f area-like facilities by minimizing the maximum distance to the nearest arealike facility) are rarely found in the literature, but there is a paper closely related to P5 for area-like facilities, i.e.: P 5 ( ~ 2 / a r e a s / d e , ) ( continuous p - m e d i a n p r o b l e m f o r area-like f a c i l i t i e s ) : Optimize the configuration of area-like facilities by minimizing the average distance to the nearest area-like facility, Shiode (1995) solved a special case o f this problem in which there is only one area-like facility (a polygon) whose area and perimeter are fixed (the location and the shape are variables). Few papers, however, deal with the above problem in a general way.

5. Concluding remarks As we reviewed in the preceding sections, generalized Voronoi diagrams are quite useful for solving many kinds o f locational optimization problems. We realize, however, that there are a lot o f unexplored problems that can be solved through generalized Voronoi diagrams. In particular, the locational optimization problems o f line-like and area-like facilities are less developed, and worth challenging. We hope that this review motivates readers to explore these interesting problems.

Acknowledgements We thank F. Plastria, K. Imai and H. Imai for indicating related literature to us. We acknowledge the use o f VORONOI2 (Sugihara and Iri, 1993; reviewed by Okabe, 1994) and PLVOR (Imai, 1996) which are F O R T R A N programs for constructing the ordinary Voronoi diagram and the area Voronoi diagram, respectively. These programs are open to the public.

455

References Aonuma. H., lmai, H., lmai, K,, and Tokuyama, T. (1990), "Maximin location of convex objects in a polygon and related dynamic Voronoi diagrams", in; Proceedings of the AMS Symposium on Computational Geometry, Berkeley, CA, 225234. Barlow, G.W. (1974), "'Hexagonal territories", Animal Behavior 22, 876-878. Chew, L.P., and Drysdale, R.L. (1985), "Voronoi diagrams based upon convex distance functions", in: Proceedings of the ACM Symposium on Computational Geometry., 235-244. Dasarathy, B.. and Lee, J.W. (1980), "A maximin location problem", Operations Research 28, 1385-1401. Dijkstra, E. (1959), "A note on two problems in conjunction with graphs", Numerische Mathematik 1, 269-271. Drezner, Z. (1985), "A solution to the Weber location problem on the sphere", Journal of the Operational Research Society 36, 333-334. Drezner, Z. (ed.) (1995), Facility Location, Springer-Verlag,New York. Drezner, Z., and Wesolowsky, G.O. (1983), "'Minimize and maxmin facility location on a sphere". Naval Research Logistics Quarterly 30, 305-312. Dyer, M.E. (1984), "Linear time algorithms for two- and threevariable linear programs", SlAM Journal on Computing 13, 31-45. Elzinga, D.J., and Heam, D.W. (1972), "'Geometrical solutions for some minimax location problems", Transportation Science 6, 379-394. Fortune, S. (1985), "Fast algorithms for polygon containment", in: Proceedings of the 12th ICALP, Lecture Notes in Computer Science 194, Springer-Verlag, Berlin, 189-194. Ghosh, A., and Rushton, G. (eds.) (1987), Spatial Analysis and lz~cation-Allocation Models, Van Nostrand Reinhold, New York. Hakimi, S.L. (1964), "'Optimal locations of switching centers and absolute centers and medians of a graph", Operations Research 12, 450-475. Hakimi. S.L., Labbr, M., and Schmeichel, E. (1992), "The Voronoi partition of a network and its implications in location theory", ORSA Journal on Computing 4, 412-417. Hansen, P., Labbr, M., Peeters, D., Thisse, J.-F., and Henderson, J.V. (1987), Systems of Cities and Facility Location, Harwood Academic Publishers, Chur. Hearn, W.H., and Vijay, J. (1982), "'Efficient algorithms for the (weighted) minimum circle problem", Operations Research 30, 777-795. lmai, H., Lee, D.T., and Yang, C.D. (1992), "l-Segment center problems", ORSA Journal on Computing 4, 426-434. Imai, K., Sumino, S., and lmai, H. (1989), "'Minimax geometric fitting of two corresponding sets of points", in: Proceedings of the 5th Annual ACM Symposium on Computational Geometry,

266-275. lmai, T. (1996), "A topology-oriented algorithm for the Voronoi diagram of polygons", in: Proceedings of the Eighth Canadian Conference on Computational Geometry, 107- I 12.

456

A. Okabe, A. Suzuki~European Journal of Operational Research 98 (1997) 445-456

Iri, M., Murota, K., and Ohya, T. (1984), "A fast Voronoi diagram algorithm with applications to geographical optimization problems", in: E Thoft-Christensen (ed.), System Modelling and Optimization, (Proceedings of the l lth IF1P Conference, Copenhagen), Lecture Notes in Control and Information Sciences 59, Springer-Vedag, Berlin, 273-288. Lee, D.T., and Wn, Y.E (1986), "Geometric complexity of some location problems", Algorithmica 1, 193-211. Love, R.F., Morris, J.G., and Wesolowsky, G.O. (1988), Facility Location. Models & Methods, North-Holland, New York. Lozano-Prrez, T., and Wesley, M.A. (1979), "An algorithm for planning collsion-free paths among polyhedral obstacles", Communications of the ACM 22, 560-570. McAllister, M., Kirkpatrick, D., and Snoeyink, J. (1996), "A compact piecewise-linear Voronoi diagram for convex sites in the plane", Discrete and Computational Geometry 15, 73-105. Megiddo, N. (1983), "Linear-time algorithms for linear programming in R3 and related problems", SIAM Journal on Computing 12, 759-776. Megiddo, N., and Tamih A. (1982), "On the complexity of locating linear facilities in the plane", Operations Research Letters 1, 194-197. Mirehandani, P.B., and Francis, R.L. (eds.) (1990), Discrete Location Theory, Wiley, New York. Morris, J.G., and Norback, J.P. (1983), "Linear facility location - Solving extensions of the basic problem", European Journal of Operational Research 12, 90-94. Ohsawa, Y., and Imai, A. (1997), "Degree of locational freedom in a single facility Euclidean minimax location model", Location Science 4, 69-82. Okabe, A. (1994), "Software review of VORONOI2", Geographical Systems 1, 347-349. Okabe, A., Boots, B., and Sugihara, K. (1992), Spatial Tessellations: Concepts and Applications of Voronoi Diagrams, Wiley, Chichester, UK. Okabe, A., Okunuki, K., and Suzuki, T. (1997), "A computational method for optimizing the hierarchy and spatial configuration of successively inclusive facilities on a plane", Location Science, to appear. Okabe, A., Yoshikawa, T., Fujii, A., and Oikawa, K. (1988), "The statistical analysis of a distribution of activity points in relation to surface-like elements", Environment and Planning A 20, 609-620. O'Rourke, J. (1994), Computational Geometry in C, Cambrige University Press, Cambridge. Plastria, E (1995), "Continuous location problems", in: Z. Drezner (ed.), Facility Location, Springer-Verlag, New York, 225-262. Preparata, EP., and Shamos, M.I. (1985), Computational Geometry, An Introduction, Springer-Verlag, New York. Shamos, M.I., and Hoey, D. (1975), "Closest point problem", in:

Proceedings of the 16th Annual Symposium on Foundations of Computer Science, 151-162. Shiode, N. (1995), "A study on optimization of the shape of spatial facilities", unpublished graduation Thesis, Department of Urban Engineering, University of Tokyo (in Japanese). Sugihara, K., and Iri, M. (1993), "VORONOI2 Reference Manual: Topology-oriented version of incremental method for constructing Voronoi diagrams", 2nd ed., Research Memorandum RMI 89-04, Department of Mathematical Engineering and Information Physics, University of Tokyo. Sugihara, K., and lri, M. (1994), "A robust topology-oriented incremental algorithm for Voronoi diagrams", International Journal of Computational Geometry and Applications 4, 179228. Suzuki, A., and Drezner, Z. (1996) "On the p-center problem in an area", Location Science, to appear. Suzuki, A., and Iri, M. (1986) "Approximation of a tessellation of the plane by a Voronoi diagram", Journal of the Operations Research Society of Japan 29, 69-96. Suzuki, T. (1987) "Optimum locational pattern of bus-stops for many-to-one travel demand" (in Japanese), Papers of the Annual Conference of the City Planning Institute of Japan 22, 247-252. Suzuki, T. (1989) "Study on locational optimization of facilities on a plane with socially optimal criteria", unpublished Master's Thesis, Department of Urban Engineering, University of Tokyo. Takeda, S. (1985) "On geographical optimization and dynamic facility location problem", unpublished Master's Thesis, Department of Mathematical Engineering and Information Physics, University of Tokyo (in Japanese). T6h, L.E (1972), Lagerungen in der Ebene auf der Kugel und im Raum, Springer-Verlag, Heidelberg. Toussaint, G. (1983), "Computing largest empty circles with location constraints", International Journal of Computing and Information Sciences 12, 347-358. Voronoi, G. (1908), "Nouvelles applications des paratrrs continus la throrie des formes quadratiques. Deuxi~me memoie, recherches sur les paraUello~dres primitifs", Journal ffir die Reine und Angewandte Mathematik 134, 198-287. Weber, A. (1909), Uber den Standort der lndustrien, Tiibingen. English translation: Fiedeich, C.J. (1957), Theory of the Location of Industries, Chicago University Press, Chicago, IL. Wesolowsky, G.O. (1993), "The Weber problem: History and Perspective", Location Science 1, 5-23. Xue, G.L. (1994), "A globally convergent algorithm for facility location on a sphere", Computers and Mathematics with Applications 27, 37-50. Yap, C.K. (1987), "An O(nlogn) algorithm for the Voronoi diagram of a set of simple curve segments", Discrete and Computational Geometry 2, 365-393.