a parametric approach to solving bicriterion shortest path problems

12
European Journal of Operational Research 53 (1991) 81-92 81 North-Holland Theory and Methodology A parametric approach to solving bicriterion shortest path problems John Mote Department of Management Science and Information Systems, University of Texas, Austin, TX, USA Ishwar Murthy Department of Quantitative Business Analysis, Louisiana State University, Baton Rouge, LA, USA David L. Olson Department of Business Analysis, Texas A &M University, College Station, TX, USA Received March 1989; revised September 1989 Abstract: In this paper a new algorithm is developed to solve bicriterion shortest path problems (BSP). This algorithm first relaxes the integrality conditions and solves a simple bicriterion network problem. The bicriterion network problem is solved parametrically, exploiting properties associated with adjacent basis trees. Those Pareto-optimal paths not obtained by solving the LP relaxation are obtained using a label correcting procedure. Computational results comparing the parametric approach to the label setting approach and the K-th shortest path approach are also presented. They indicate that the parametric approach is orders of magnitude faster than the K-th shortest path approach for most problems tested. For problems with a positive correlation between the two cost coefficients, the parametric approach is seen to be significantly faster than the label setting approach. Keywords: Multiple objective, networks, shortest path I. Introduction The bicriterion shortest path problem (BSP) can be described over a directed network, G(N, A), consisting of a finite set N of n nodes and a finite set A of m directed arcs. Each arc is defined in terms of an ordered pair, (i, j), where i denotes the starting node and j denotes the en- ding node. In BSP two 'cost' or 'distance' parame- 1 and c2j, are associated with each arc (i, j). ters cis The problem (BSP) may be stated as: (BSP) Minimize = E (i, j')EA F2(x) E 2 Ci/X~) (i, j)GA 0377-2217/91/$03.50 © 1991 - Elsevier Science Publishers B.V. (North-Holland)

Upload: john-mote

Post on 21-Jun-2016

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A parametric approach to solving bicriterion shortest path problems

European Journal of Operational Research 53 (1991) 81-92 81 North-Holland

Theory and Methodology

A parametric approach to solving bicriterion shortest path problems

J o h n M o t e

Department of Management Science and Information Systems, University of Texas, Austin, TX, USA

I s h w a r M u r t h y

Department of Quantitative Business Analysis, Louisiana State University, Baton Rouge, LA, USA

D a v i d L. O l s o n

Department of Business Analysis, Texas A &M University, College Station, TX, USA

Received March 1989; revised September 1989

Abstract: In this paper a new algorithm is developed to solve bicriterion shortest path problems (BSP). This algorithm first relaxes the integrality conditions and solves a simple bicriterion network problem. The bicriterion network problem is solved parametrically, exploiting properties associated with adjacent basis trees. Those Pareto-optimal paths not obtained by solving the LP relaxation are obtained using a label correcting procedure. Computational results comparing the parametric approach to the label setting approach and the K-th shortest path approach are also presented. They indicate that the parametric approach is orders of magnitude faster than the K-th shortest path approach for most problems tested. For problems with a positive correlation between the two cost coefficients, the parametric approach is seen to be significantly faster than the label setting approach.

Keywords: Multiple objective, networks, shortest path

I. Introduction

The bicriterion shortest path problem (BSP) can be described over a directed network, G(N, A), consisting of a finite set N of n nodes and a finite set A of m directed arcs. Each arc is defined in terms of an ordered pair, (i, j ) , where i denotes the starting node and j denotes the en- ding node. In BSP two 'cost' or 'distance' parame-

1 and c2j, are associated with each arc (i, j ) . ters cis The problem (BSP) may be stated as: (BSP)

Minimize

= E (i, j ' )EA

F 2 ( x ) E 2 Ci/X~) (i, j ) G A

0377-2217/91/$03.50 © 1991 - Elsevier Science Publishers B.V. (North-Holland)

Page 2: A parametric approach to solving bicriterion shortest path problems

82 J. Mote et al. / Solving bicriterion shortest path problems

subject to:

1 if i = s , xis- ~ xs,= 0 i f i 4 : s , t,

( i , j ) ~ A ( j , i ) ~ A - - 1 if i = t ,

x~s=Oorl for a l l ( i , j ) ~ A ,

where s is the designated source node and t the designated terminal node. The problem in (BSP) is to determine all Pareto-optimal paths from s to t. A path P in (BSP) is Pareto-optimal if and only if there exists no other path p1 ~ p, which has an improved value in Fl(x) or F2(x) without a worse value in the other.

1.1. Practical applications

Most practical applications that require the use of the shortest path model can be extended natu- rally to become potential applications of (BSP). In fact, in some such cases, (BSP) is argueably a more realistic model to use. Given the vast num- ber of application areas for the simple shortest path problem [5,11], the application areas of (BSP) can also be considered to be numerous.

Perhaps the most significant application of (BSP) occurs in the routing of hazardous materials [2]. One of the models proposed by Robbins [19] for this application is a bicriterion shortest path model. In this model, one objective is to minimize the distance travelled for shipping hazardous material from a source to a destination. The other objective is to minimize the number of people brought into contact with the hazardous material, along a route. The directed network for this prob- lem can be appropriately obtained by considering population centers, highway junctions or simply highway intersections to be nodes. Each bidirec- tional roadway link, connecting node i to node j, can be represented by two arcs, (i, j ) and ( j , i).

1 Each arc, (i, j ) , is associated with a distance, cij, and a number of people brought into contact upon traversing that arc, cZs. Since most people are located at nodes (describing population centres) as opposed to arcs, the population at each node j can be included into the parameter, c~j, for all arcs ending at node j. Also, depending on the nature of the hazardous material, there exists a threshold distance within which people may be considered as being affected by the hazardous material.

Recently, Batta and Chiu [2] proposed a closely related constrained shortest path model that ex- plicitly incorporates the probability of accidental spillage or leakage of the hazardous material, at various points along each arc and at nodes. Their model determines the optimal obnoxious path, subject to a distance constraint, which is a sub-case of (BSP).

Applications for (BSP) also occur in those transportation networks where minimizing dis- tance and minimizing time are both equally im- portant, but not commensurate objectives. Similar applications are found in communication net- works, where minimizing distance, which directly affects the operating costs, is one objective, The other objective is to minimize response time, or the time taken for a message to reach its destina- tion. ,Thus each communication link is associated with a "length parameter and a ' t ime' parameter, which is directly related to the existing traffic along that link [14]. Another interesting applica- tion of (BSP) can be found in Balakrishnan and Venkataramanan [1]. They consider a bicriterion dynamic facility location problem where one phase of the solution procedure requires solving (BSP) on an acyclic directed network.

1.2. Survey of literature

While the shortest path problem has a poly- nomial complexity bound, (BSP) does not. Based on a worst case computational analysis, (BSP) is classified as NP-complete [9]. That is, there exist problem instances where the computational effort required to solve (BSP) increases exponentially with the size of the problem.

Two major approaches to solve (BSP) have been presented. One approach is the labeling methods of Vincke [20] and Hansen [12]. Vincke's approach can be viewed as a generalization of the label.correcting algorithm for simple shortest patli problems [3,8,16]. Hansen's approach is a gener- alization of the label setting algorithm to solve the shortest path problem due to Dijkstra [7]. Both algorithms have a pseudo-polynomial time com- plexity, assuming integer arc lengths.

The other approach is the K-th-shortest path approach for solving (BSP) of Climaco and Martins [4]. In this method, a sequence' of K-th shortest paths is generated with respect to the first objective, until the path with the minimal value

Page 3: A parametric approach to solving bicriterion shortest path problems

J. Mote et al. / Solving bicriterion shortest path problems 83

with respect to the second objective is obtained. The dominated paths are excluded from the set to obtain the set of Pareto-optimal paths. In the worst case, this procedure has the danger of enu- merating all possible paths from a source to a destination. Thus a terminal value of K equal to ( n - -1 ) ! could occur, resulting in an exponential increase in the computational effort. Computa- tional results have been presented by Climaco and Martins for their approach. No other significant computational studies are known.

1.3 Motivation and direction of investigation

Current literature on this problem indicates a lack of empirical evidence of existing approaches to solve large scale problems, with the exception of the K-th shortest-path approach. There is cer- tainly no information available as to the relative efficiency of existing algorithms on various prob- lem topologies. This is probably because (BSP) is considered 'hard ' to solve, causing researchers to devise efficient approximation procedures to deal with it. Some of these procedures can be found in works of Hansen [12], Henig [13] and Warburton [21]. However, recent investigations by Mote et al. [17] indicate that on certain well known problem topologies (BSP) is significantly easier to solve than indicated by the worst case analysis. The investigations show that the average number of Pareto-optimal paths obtained to a node is rela- tively small, thus indicating that labeling methods may well be more efficient than the K-th shortest path approach if the majority of the K paths generated are dominated.

In Section 2 of this paper, a new parametric approach for solving (BSP) is presented. This method is designed to minimize use of the compu- tationally intensive dominance check of the label- ing methods. In Section 3, this paper presents computational experience on large test problems with the parametric approach, the label setting approach and the K-th shortest-path approach.

2. The parametric approach

The solution procedure developed here solves the expanded problem of determining all Pareto- optimal paths from s to all other nodes in the network. The expanded problem, referred to as

BP, is different from BSP only in the constraint set. The constraint set for BP is defined as:

x , , - ~ xj i = { I N l - 1 i f i = s ,

(,, t)~-A (j, i)~A --1 if i:~s,

x,/ is integer for all (i , j ) ~ A .

The parametric approach solves (BP) in two stages. In the first stage, this method solves (BP); which is defined as (BP) with the integrality condi- tions on x,j relaxed. (BP) is a bicriterion network problem. The strength of this procedure is based on efficiently solving (BP), using a reoptimization procedure that exploits properties associated with a bicriterion linear program. Upon solving (BP) some Pareto-optimal paths from s to all other nodes are obtained. In the second stage of the algorithm, a label correcting procedure is used to obtain the remainder of the Pareto-optimal paths, thus solving (BSP). To make the subsequent ex- position clear, Pareto-optimal paths obtained by solving (BP) will be referred to as Pareto-optimal 'extreme' paths.

2.1. Solving (BP)

Due to the unimodularity property of the con- straint set of (BP), it is well known that every basic feasible solution (BFS) of (BP) is integer valued, and therefore feasible in (BP). Since (BP) is a relaxation of (BP) the following immediately holds true:

Property 1. Every Pareto-optimal BFS in (B-P) is also Pareto-optimal in (BP). (Since no feasible solution in (BP) dominates a Pareto-optimal BFS, no integer valued solution dominates it either.)

It needs to be pointed out, however, that not all Pareto-optimal solutions to (BP) are necessarily Pareto-optimal in (BP). This is so because (BP) is a convex program, while (BP) is not.

To determine all Pareto-optimal BFSs in (B-P), we draw upon important results of Pareto-optimal BFSs of a multicriteria linear program presented in depth by Yu and Zeleny [24,25]. Kiziltan and Yucaoglu [15] specialized these results for the bi- criterion linear program. A familiarity with these results is especially useful for understanding the ideas we summarize in this section.

Page 4: A parametric approach to solving bicriterion shortest path problems

84 J. Mole et al. / Solving bicriterion shortest parh problems

For (I@), it is possible to rank the Pareto-opti- mal BFSs in increasing value of F’(x), so that:

F,‘<F;< ... <F,‘< ..’ <F;_,<Fh,

F,= > F,’ > ’ . . > F,’ > . . . > F;_, > F= (2.1)

M’

Fi and F,’ in (2.1) denote the first and second objective function values of the k-th BFS. The

BFS of any objective vector Fk in (2.1) is adjacent to the BFSs of vectors Fk_* and Fksl_ This is due

to the property that Pareto-optimal BFSs form a

‘connected’ set. Adjacent BFSs are different in

just one basic variable. Thus, from a Pareto-opti-

mal BFS, adjacent Pareto-optimal BFSs can be

determined by looking for effective constraints [25].

Let RC(k) denote the reduced cost matrix associ-

ated with Fk in (2.1). An effective constraint in a

multicriteria linear program refers to a nonbasic

column in RC(k), which when entered into the basis yields an adjacent Pareto-optimal BFS. A

column vector RC,, of dimension 2 in RC(k), associated with a nonbasic arc (i, j), is an effec-

tive constraint if RC,, # 0 and there exists a vector of weights X > 0, of the same dimension, such that

ARC(k) > 0 and XRC,, = 0. It is well known that any basis of (BP) can be

represented as a rooted spanning tree with n - 1 basic arcs, as is shown in Figure 1. For each arc

(i, j) E A, RC,?, and RC,‘, are defined as follows:

(i) RC,!, = d’(i) -d’(j) + c:,,

(ii) RCfj= d=(i) - d2(j) + cf,,

where d’(i) and d2(i) are the node potentials, or dual variables, associated with a node i for the

first and second objectives respectively. They rep- resent distances from root s to node i on the basis tree. Thus for a Pareto-optimal BFS, the node

potentials are Pareto-optimal extreme path lengths to each node in the network. The vector RC,,

represents the amount of change occurring in the node potentials of a subset of nodes when the

basis tree is modified by bringing an arc (i, j) into the basis.

As indicated in (2.1) moving from the BFS of

h 4 2

3 5

Figure 1

Fk to that of Fk+, results in an increase in the first objective function value and a decrease in the

second objective function value. Therefore, to ob- tain the basis tree associated with Fk + , from that

of Fk, the arc to enter the basis is one of those

arcs with RC,!, > 0 and RC;? < 0. In fact, the

appropriate arc to enter the basis is that arc which

results in the minimum increase in the first objec-

tive for a unit decrease in the second objective.

This is because the reduced cost column associ- ated with such an arc satisfies conditions for it to

be an effective constraint. To facilitate the de-

termination of such an arc, a function a,, is

defined for each arc (i, j) as follows:

a =

(

I RC:,/‘RC,’ I if RC,!, > 0 and RC,=, < 0, ‘J

cc otherwise.

To obtain each successive Pareto-optimal BFS, the appropriate non-basic arc (i *, j * ) corre-

sponds to an a,, value a *, defined as:

a* = min{ a,, I(i, j) EA}.

To initiate the algorithm, a Pareto-optimal BFS

corresponding to the objective vector F, in (2.1)

can be obtained by solving a shortest path prob-

lem (BP*), and using the weighted objective func-

tion (1 - E)F’(x) + EF~(x), subject to constraints as defined in (BP), with 0.0 < E << 1.0. To obtain

successive Pareto-optimal BFS, the reoptimization

procedure involves merely searching for the non-

basic arc (i *, j*) that corresponds to the mini-

mum ratio a *. The finite sequence of weighting

factors h’, . . . , AM used to generate Pareto-optimal BFSs in Geoffrion’s approach [lo] can also be

determined as X = a:/(1 + a:), where a: is the

ratio used to obtain the ith BFS.

For (i*, j*) to be pivoted into the basis tree, a

currently basic arc (i’, j * ) has to leave the basis. Deleting (i’, j*) breaks the basis tree into two

disjoint subtrees, T, and TL, where T, contains i’, while T, contains j*. Clearly, T, also contains i *. For instance, if (4, 2) is the eligible arc in Figure 1, then (1, 2) is the leaving arc, and the two subtrees obtained are illustrated in Figure 2. Only the node potentials of nodes in TL change. The node potential d(i) of each node i in TL is

updated as:

d’(i):=d’(i)+RC,‘,j,,

d=(i) := d=(i) + RCf*,. .

Page 5: A parametric approach to solving bicriterion shortest path problems

J. Mote et al. / Soh,ing bicriterion shortest path problems

T U T L

Figure 2

As a result of entering ( i*, j * ) into the basis tree, new Pareto-optimal extreme paths are obtained to each node in T L.

2.2. Solving (BSP)

Solving the LP relaxation (BP) fails to obtain those Pareto-optimal paths in (BP) which are dominated in (BP). This is illustrated in Figure 3. The points d 1, d 2, d 3 and d 4 represent all Pareto-optimal extreme path lengths to node j in the objective space. Let Sj, associated with node j , denote the set of all vectors in the two dimen- sional objective space that are not dominated by any of the Pareto-optimal extreme path lengths. This set is indicated by the shaded region in Figure 3. Clearly if a path length, d, that belongs to $/' is not dominated by any other path length to node j in Sj, then it is a Pareto-optimal path length. But d is associated with a BFS which is dominated by a non-integer solution to (BP). Thus solving (BP) fails to obtain d. In order to obtain all those Pareto-optimal paths whose path lengths belong to Sj, the following properties will be used.

85

Property 2. A path Pj from s to an), node j is Pareto-optimal only if every sub-path from s to an intermediate node is also Pareto-optimal.

Proof. This can be proved by contradiction as follows. Assume P~ to be a Pareto-optimal path from s to j with a path length vector d ( j ) . Also assume an intermediate node i on path P/, distinct from s and j, such that the sub-path P , from s to i on Pj, is not Pareto-optimal. Let d(i) denote the path length vector of path P, and let d i ( j ) denote the path length vector of the sub-path from node i to node j on Pj. That is, d ( j ) = d ( i ) + d i ( j ) . Since P, is not Pareto-optimal, there exists another path P,' whose path length d ' ( i ) 4 d ( i ) . By re- placing sub-path Pi by P', on Pj, we can construct another path, P/, from s to j , whose path length d ' ( j ) = d ' ( i ) + d , ( j ) . Since d ' ( j ) < ~ d ( j ) , P '

. I

dominates Pj, contradicting the assumption that is Pareto-optimal. Hence the proof.

Property 2 represents a generalization of Bell- man's principle of optimafty used for shortest path problems [3]. The following property is stronger than the first.

Property 3. A path Pj from s to any node j is a Pareto-optimal extreme path only if every sub-path from s to an intermediate node is also a Pareto-opti- real extreme path.

d2(j) ~

dl(j)

Figure 3. Pareto-optimal extreme paths to node i (Sf labels lying in the shaded region)

Page 6: A parametric approach to solving bicriterion shortest path problems

86 d. Mote et al. / Solving bicriterion shortest path problems

Proof. Assume P/ to be a Pareto-optimal extreme path from node s to node j. Also assume an intermediate node i on P/, distinct from s and j , such that the sub-path Pi, from s to i on Pj, is not a Pareto-optimal extreme path. Thus there exists no 0 < c ~ < l such that Pi is the shortest path using any objective function, as

(1 - a ) F t ( x ) + otF2(x) .

It then follows directly from Bellman's principle of optimality, that there exists no 0 < a < 1 such that P/ is the shortest path using the objective,

(1 - a ) F ' ( x ) + a r 2 ( x ) .

But the last statement contradicts the earlier as- sumption that Pj is a Pareto-optimal extreme path. Hence the proof.

The following observation can be made about a Pareto-optimal path whose path length belongs to the set S/"

Property 4. A Pareto-optimal path Pj from s to j whose path length belongs to the set S/' contains a sub-path to an intermediate node i k, which is a Pareto-optimal extreme path.

The algorithm proposed here solves (BSP) in two stages. In the first stage all Pareto-optimal extreme paths from node s to all other nodes are obtained. Also, certain paths whose path lengths belong to S/ for all nodes j ~ N are obtained. These paths are such that the path lengths to all nodes along the path, except the last node j are extreme path lengths. That is dk(j) = d,,(i) + ci/, where dk(j) is the k-th path length vector to node j belonging to Sj obtained from din(i), the m-th Pareto-optimal extreme path length vector to node i. Path length dk(j) is a candidate to be Pareto- optimal. In the second stage of the solution al- gorithm, all Pareto-optimal path lengths to all nodes belonging to Sj are obtained using a label correcting procedure. A statement of the al- gorithm to solve (BSP) is given below:

Algorithm (BSP)

Stage 1 (1) Initialize L(i), T(i), PL(i) and PT(i) as empty lists.

(2) Solve (BP*); Add all node potentials ob- tained to list L(i) and predecessor functions p(i) to PL(i); Determine aii for all (i, j ) ~ A. (3) Determine eligible nonbasic arc (i*, j* ); If a* = oo go to Stage 2. (4) Pivot (i*, j* ) into basis; Determine lower subtree TL; Update node potentials for all nodes in TL; Add all updated node potentials to list L(i) and associated predecessor functions to list PL(i ). (5) Update ai/ values and generate labels dk(Y ) that belong to Sj; Do a dominance check on each such label obtained; If not dominated, add such labels to list T(i) and associated predecessor functions to PT(i); Oo to Step 2.

Stage 2 (1) If all labels in T(i) for all i ~ N are scanned go to Step 3; Else select an unscanned label d( i ) ~ T(i) to be scanned. (2) (i) Compute vector d(y) = d(i) +ci/ for

(/, j )EA. (ii) For each vector d ( j ) obtained in (i), do the dominance check; if it is not dominated, then add it to the list T(j). (iii) Go to Step 1.

(3) Report all Pareto-optimal paths from s to t found in L ( t) and T(t).

In Step 1 of Stage 1, list L(i) is created to store Pareto-optimal extreme path lengths to each node, while T(i) is created to store path lengths which are currently not dominated by existing labels (path lengths) to node i. Lists PL(i) and PT(i) are created to store pointers to recompose paths asso- ciated with distance labels in L(i) and T(i), re- spectively. In Step 5, each newly created label d k ( j ) is compared with existing labels in T( j ) . All dominated labels are deleted, dk(j) is also com- pared with labels in L(j ) . If dk(j) is not dominated, it is added to T( j ) and its predecessor label pointer is added to PT( j ) .

Stage 2 can be viewed as a generalization of a label correcting algorithm. Each label in T(i) is scanned to generate new labels. Each newly created distance label is compared with labels in T(j ) and L ( j ) for dominance. Dominated labels in T(j ) are deleted. If the newly created distance label is not dominated, then it is added to T(j) and its predecessor pointer added to PT( j ) .

All Pareto-optimal extreme paths to all nodes are determined in Stage 1. As stated in Property 4,

Page 7: A parametric approach to solving bicriterion shortest path problems

J. Mote et al. / Soh,ing bicriterion shortest path problems 87

all Pareto-optimai paths to any node j whose path lengths belong to the set S¢, emanate from Pareto-optimal extreme paths to in/termediate nodes. All such paths to node j , such that the sub-path to the node just preceding j is a Pareto- optimal extreme path, is obtained in step 4 of Stage 1. Due to Property 2, a dominance check is done whenever new labels are created to retain only those labels that are currently not dominated. This ensures that labels that are known to be dominated are not scanned.

2.3. Implementation details

Some special procedures are used which signifi- cantly improve the efficiency of Stage 1. Pre- liminary empirical investigations on the class of problems used indicate that the number of nodes in the lower subtree constitute a very small frac- tion o f ]N] . The procedures detailed here take advantage of this observation.

The network graph is internally represented using the forward star form [6,11]. With this form, all arcs emanating from a node are stored in consecutive memory locations. Using a simple pointer for each node, all arcs emanating from a node can be readily accessed. For (BSP), this storage form requires one node length list and three arc length lists. In our implementation, the forward star form is augmented by three ad- ditional lists which also represent the network in reverse star form. Using this representation, the set of arcs ending at a node can be readily accessed. Such a representation is useful when updating a,/ values in Step 5. It is observed that the only a,j values that need to be updated are those such that i ~ T L and j E T v or i ~ T u and j ~ T L.The a,j values of the rest of the arcs remain the same. It is also observed that labels that belong to the set Sj of the objective space can be captured by scanning such arcs. The arcs whose a,j values need to be updated can be accessed by simply examining the forward and reverse stars of nodes in Tt. Since the size of T L is small relative to [N I, such a proce- dure is much more efficient than examining all network arcs each iteration.

The basis tree is represented using predecessor node (p) , depth (dh), thread (t) and reverse thread (rt) list functions [6,11].

In Step 4 of Algorithm (BSP) the node poten- tials of nodes in T~. need to be updated. Each

Lis t index 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

L,sT 4-219,o,2 3 I, 2 6 7 1 2 , 8 8j Block index 1 2 3 4

B-,NOEX 1 4 8 9 I 13 o , o

Figure 4

node in T L is readily accessed using the thread and depth functions. After entering ( i*, j * ) into the basis tree, it is rehung using the thread, reverse thread and depth functions.

Obtaining ( i*, j * ) involves determining a* , the minimum of all a,1 values. This step, which must be performed repeatedly, is implemented using a block search in order to exploit the fact that only a small fraction of the a, j values change from iteration to iteration. In a block search, the list of a,j values is partitioned into a series of blocks of approximately equal size. A small block list, of size equal to the number of blocks, con- tains the minimum element for each block. The lists used in a block search are illustrated in Fig- ure 4.

In Figure 4, LIST indicates the list of m a i j values. B-LIST is the block list as defined above. B-INDEX contains the position in LIST where each value in B-LIST can be found. B-FLAG contains a flag for each block that indicates if a new B-LIST value needs to be determined. The block size and the number of blocks are de- termined as follows:

block size B = [~/m + 1],

number of blocks K = [ m / B + 11.

Initially, each value in B-LIST is determined using a linear search. This initial step requires O(m) comparisons, though advantages accrue in subsequent iterations in terms of reduced compu- tational effort. When the ~-th element in LIST decreases in value, it needs to be compared to B-LIST(w), the current minimum of the block to which element v belongs: That block number can be determined as

w = [ ( t : - 1 ) / B l + 1.

If LIST(v) < B-LIST(w), then B-LIST(w) is set to LIST(v) and B-INDEX(w) is set to t:. When

Page 8: A parametric approach to solving bicriterion shortest path problems

88 .I. Mote et al. / Solving bicriterion shortest path problems

Table 1

Problem specifications of random networks

Problem Type t N I t A [ 9 Arc Length Range

1 Cyclic 1000 3000 0.0 1-200 2 Cyclic 1000 5000 0.0 1-200 3 Cyclic 1000 10 000 0.0 1 - 200 4 Cyclic 1000 3000 0.5 1-200 5 Cyclic 1000 5000 0.5 1-200 6 Cyclic 1000 10000 0,5 1-200 7 Cyclic 1000 3000 0.8 1-200 8 Cyclic 1000 5000 0.8 1-200 9 Cyclic 1000 10000 0.8 1-200

10 Acyclic 1000 3000 0.0 1-200 11 Acyclic 1000 5000 0.0 1-200 12 Acyclic 1000 10000 0.0 1-200 13 Acyclic 1000 3000 0,5 1-200 14 Acyclic 1000 5000 0.5 1-200 15 Acyclic 1000 10000 0.5 1-200 16 Acyclic 1000 3000 0.8 1-200 17 Acyclic 1000 5000 0.8 1 - 200 18 Acyclic 1000 10000 0.8 1-200

LIST(v) increases in value, it needs to be checked if it is the current minimum of the block to which it belongs. If B-INDEX(w) is equal to v, then B-FLAG(w) is set to 1. Once all the changes are accounted for, a linear search is performed over those blocks whose B-FLAG value is 1. The B- LIST and B-INDEX values of those blocks are updated and their B-FLAG values set to zero. A linear search is then conducted over B-LIST to determine the minimum value in the table.

For iterations subsequent to the first one, the computational effort required in a block search is k~fm where l < k < v / m -. To determine a* the block search procedure turns out to be efficient for two reasons. One, the number of aig values that change from one iteration to the next is a very small fraction of the total number of arcs. Second, since most of the changes occur over arcs belonging to either the forward or reverse stars of nodes in T L, the changes tend to occur close together in the arc list. This causes many changes

Table 2

Computat ional comparison of algorithms that solve (BSP) for random networks

Problem L-SET Algori thm(BSP) K-PATH

(secs) Stage 1 Stage 2 (secs)

(secs) (secs)

K-th c P.O.P d

1 5.77 1.89 1.87 232.5 29 (4) 4 (2) 2 13.69 4.68 4.63 500.4 a 47 (4) 5 (0) 3 32.51 10.30 10,10 500.1 a 55 (2) 9 (4) 4 3.43 1.21 0.47 40.85 5 (3) 3 (0) 5 7.13 2.63 1.20 25.40 4 (3) 3 (0) 6 12.18 4.59 1.84 9.70 2 (2) 2 (0) 7 2.51 0.79 0.08 40.70 5 (3) 3 (0) 8 4.31 1.44 0.19 56.30 7 (3) 3 (0) 9 8.08 2.77 0.52 10.30 2 (2) 2 (0)

10 3.17 1.00 0.25 181.5 24 (3) 3 (1) 11 5.11 1.92 0.67 417.5 b 60 (4) 9 (5) 12 11.63 4.78 1.83 500.9 a 51 (4) 5 (1) 13 2.63 0.76 0.17 0.49 1 (1) 1 (0) 14 3.90 1.32 0.30 6.17 2 (2) 2 (0) 15 7.58 3.16 0.70 500.5 a 55 (3) 4 (1) 16 2.24 0.56 0.04 0.50 1 (1) 1 (0) 17 3.11 0.89 0.09 6.20 2 (2) 2 (0) 18 5.36 1.98 0.17 24.90 4 (3) 3 (1)

a terminated after 500 seconds, b terminated after terminal value of K exceeded 60,

figure between brackets indicates the number of Pareto-optimal paths determined by K-PATH upon termination, 0 figure between bracket indicates the number of Pareto-optimal paths which are not extreme paths.

Page 9: A parametric approach to solving bicriterion shortest path problems

J. Mote et al. / Soloing bicriterion shortest path problems 89

to occur in the same block, thus greatly reducing the number of blocks whose minimum value needs to be updated. The net effect is that k << ~/~. Our empirical investigation showed the block search procedure to be more efficient than a heap search.

3. Computational results

Three algorithms were evaluated in this study. They are the label setting approach, the K-th shortest path approach and the parametric ap- proach. The code for the label setting approach called L-SET was implemented as suggested by Hansen [12]. The ' temporary' label with minimum value with respect to the first objective for each node was stored in a heap. Thus the step involving the determination of that label with minimum value among all temporary labels was performed by obtaining the label from the top of the heap. The code for the K-th shortest path approach called K-PATH was implemented using Yen's procedure [23] to determine the K-th shortest path. The new parametric approach called Algo- rithm (BSP) was implemented as described in Sec- tion 2.3. All codes were written in FORTRAN and the computational testing was performed on an IBM 4361 computer.

A total of 36 problems were used for testing. Specifications of the network problems are listed in Tables 1 and 3. The set of problems listed in Table 1 belong to a topological group of networks called random networks, while the set of problems listed in Table 3 belong to the topological group called grid networks. Random and grid networks are both very well known classes of networks, which have been used extensively by researchers to test algorithms that solve single criteria shortest path tree problems [5,6,11]. A complete descrip- tion of how to generate these problems is provided in Mote et al. [17].

Bicriterion shortest path problems have two arc lengths, c1/ and c2~, associated with each arc. The arc lengths generated are integer in the range from 1 to 200 for random networks and 1 to 100 for grid networks. A positive association between the arc lengths using a multiplier, 0 ~< O ~< 1, is an additional factor induced in the problems. The first arc length, clj, is randomly generated using a uniform distribution in the range specified. The second arc length is generated in the same range a s

I + ( l _ o ) . c2. C2j= P * Cil it "

.2. is randomly generated using a uniform where c,/ distribution in the same range.

T a b l e 3

P r o b l e m spec i f i ca t ions for gr id n e t w o r k s

P r o b l e m T y p e j N I I A I G r i d type 0 A r c l eng th

r a n g e

19 Cycl ic 400 1520 20 x 20 0.0 1 - 1 0 0

20 Cycl ic 400 1500 10 x 40 0.0 1 100

21 Cyc l ic 400 1430 5 x 80 0.0 1 - 100

22 Cyc l ic 400 1520 20 x 20 0.5 1 - 100

23 Cycl ic 400 1500 10 x 40 0.5 1 100

24 Cycl ic 400 1430 5 x 80 0.5 1 - 100

25 Cycl ic 400 1520 20 x 20 0.8 1 100

26 Cyc l ic 400 1500 10 x 40 0.8 1 - 100

27 Cycl ic 400 1430 5 x 80 0.8 1 - 1 0 0

28 Acycl ic 400 1520 20 x 20 0.0 1 - 100

29 Acycl ic 400 1500 10 x 40 0.0 1 - 100

30 Acycl ic 400 1430 5 x 80 0.0 1 - 100

31 Acyc l i c 400 1520 20 x 20 0.5 1 - 100

32 Acycl ic 400 1500 1 0 x 4 0 0.5 1 100

33 Acycl ic 400 1430 5 x 80 0.5 1 - 1 0 0

34 Acycl ic 400 1520 20 x 20 0.8 l 100

35 Acyc l i c 400 1500 10 × 40 0.8 1 - 100

36 Acyc l i c 400 1430 5 x 80 0.8 1 - 1 0 0

Page 10: A parametric approach to solving bicriterion shortest path problems

90 J. Mote et al. / Solving bicriterion shortest path problems

In spite of the test problems being extremely well considered by researchers, as pointed out by one of the referees, they are randomly generated. Thus, any extrapolation of the empirical results beyond the classes of problems considered here, for real world problems, is speculation at best. This is recognized as a major limitation of such empirical studies.

The computational results for random networks are provided in Table 2. For grid problems the results are presented in Table 4. For some prob- lems the code K-PATH was terminated before it solved the problem to completion for three rea- sons: excessive solution time, large values of K, or memory overflow. The cause of the premature termination is denoted in the tables by the foot- notes a and b. In Tables 2 and 4, P.O.P lists the number of Pareto-optimal paths. Also in the same column, the numbers within parenthesis indicate the number of Pareto-optimal paths that are not Pareto-optimal extreme paths. The tables also list the terminal value of K obtained for the K-th shortest path approach as well as the number of Pareto-optimal paths obtained by K-PATH. This information is useful for those problems where

K-PATH was terminated prematurely. Time taken upon termination can be extrapolated to estimate the approximate time it would have taken if the algorithm were allowed to run till all Pareto-opti- mal paths are determined.

It is clear from the results presented in Tables 2 and 4 that the label, setting approach and the parametric approach are orders of magnitude fas- ter than the K-th shortest path approach for most problems tested. This is especially true of random and grid problems with p values of 0.0 and 0.5. For such problems, a majority of the K-th shortest paths generated seem to be dominated. Based on the results obtained the K-th shortest path ap- proach is not a viable method to solve large bi- criterion shortest path problems.

Except for problem 21, Algorithm (BSP) out- performed L-SET on all problems tested. Al- gorithm (BSP) is significantly faster than L-SET for all those problems with O values of 0.5 and 0.8. The speedup factor of Algorithm (BSP) over L- SET for such problems range from about 2 to 10. The speedup factor seems to increase with increas- ing positive correlation between the two cost parameters associated with each arc. For random

Table 4

Computational comparison of algorithms that solve (BSP) for grid networks

Problem L-SET Algorithm(BSP) K-PATH K-th c

(secs) Stage 1 Stage 2 (secs)

(secs) (secs)

P.O.P d

19 21.92 1.43 16.17 407.2 b 59 (3) 16 (9) 20 25.34 1.50 21.78 230.6 b 32 (2) 20 (14) 21 84.42 2.57 100.95 501.9 b 16 (3) 79 (65) 22 7.77 0.70 2.81 600.0 a 91 (5) 8 (3) 23 9.54 0.72 4.28 277.0 b 40 (2) 4 (1) 24 16.43 1.32 10.11 116.0 b 16 (3) 18 (9) 25 4.05 0.35 0.11 12.5 3 (2) 2 (0) 26 5.57 0.45 0.83 153.6 22 (3) 3 (0) 27 6.72 0.59 1.66 600.0 a 68 (4) 8 (4) 28 55.04 3.47 37.13 248.5 ~ 46 (4) 51 (39) 29 86.79 4.89 67.06 159.4 b 36 (4) 83 (71) 30 214.42 9.40 195.49 98.5 b 2l (5) 156 (133) 31 16.39 1.04 6.98 233.5 b 46 (3) 7 (l) 32 19.51 1.46 8.85 160.4 b 37 (3) 18 (10) 33 20.53 1.36 10.33 79.0 b 21 (1) 22 (12) 34 9.53 0.53 0.82 604.3 a 109 (3) 4 (0) 35 6.50 0.41 0.21 36.10 7 (3) 3 (0) 36 7.04 0.40 1.56 27.90 6 (2) 2 (0)

a terminated after 600 seconds, b terminated due to overflow of memory,

figure between brackets indicates the number of Pareto-optimal paths determined by K-PATH upon termination, d figure between brackets indicates the number of Pareto-optimal paths which are not extreme paths.

Page 11: A parametric approach to solving bicriterion shortest path problems

J. Mote et al. / Solving bicriterion shortest path problems 91

network problems the speedup factor seems to increase with increasing ratio of number of nodes to number of arcs. Also, for grid networks the speedup factor seems to decrease as the shape of the grid gets more rectangular.

These three observations can be explained by the fact that the relative efficiency of Algorithm (BSP) over L-SET depends on the percentage of all Pareto-optimal paths that can be obtained in Stage 1 of Algorithm (BSP). The most intensive computational step in L-SET is that of comparing each newly created label with existing labels of the same node for dominance. Such a step is avoided in Stage 1 of Algorithm (BSP) while determining Pareto-optimal extreme paths, although a similar step is executed in Stage 2 of Algorithm (BSP). An extensive computational study by Mote et al. [18] indicates that for both random and grid networks with P values of 0.5 and 0.8, Pareto-optimal ex- treme paths constitute a majority of all Pareto-op- ritual paths. This explains the significant efficiency of ALgorithm (BSP) over L-SET for such prob- lems.

4. Conclusion

In this paper we developed a new algorithm for solving large scale bicriterion shortest path prob- lems. The algorithm determines all Pareto-optimal paths from a single source node to every other node in the network. The algorithm first obtains all Pareto-optimal extreme paths by parametri- cally solving a relaxed bicriterion network flow problem. Those Pareto-optimal paths which are not extreme paths, in the relaxed LP sense, are then obtained using a label correcting method.

Efficient implementations of the parametric ap- proach, the label setting approach and the K-th shortest path approach were tested on a set of 36 network problems. The parametric approach was found to be significantly faster than the K-th shortest path approach on most of the problems tested. The results indicate that the K-th shortest path approach is not a viable approach for solving large network problems due to its tendency to use up tremendous amount of memory as the terminal value of K becomes large. The parametric ap- proach also outperformed the label setting ap- proach on all but one of the problems tested. The parametric approach offers a major advantage over

the label setting approach on those problems where the majority of the Pareto-optimal paths are Pareto-optimal extreme paths. This is especially true for networks with positive correlations be- tween the two cost parameters and for sparse random networks. For such test problems the parametric approach was found to be 2 to 10 times faster than the label setting approach.

References

[I1 Balakrishnan, J., and Venkataramanan, M.A., "A bi- criteria network dynamic facility location model", Work- ing Paper, Indiana University, 1989.

[2] Batta, R.. and Chiu, S.S., "Optimal obnoxious paths on a network: Transportation of hazardous materials". Oper- ations Research 36 (1988) 84-92.

[3] Bellman, R., "'On a routing problem," Quarterly Applied Mathematics 16 (1958) 87-90.

[4] Climaco, J.C.N., and Martins, E.Q.V., "'A bicriterion shortest path algorithm", European Journal of Op,,~ational research 11 (1982) 399--404,

[51 Deo, N., and Pang, C.Y., "'Shortest path problems: Taxonomy and annotation", Networks 14 (1984) 275-323.

[6] Dial, R., Glover, F., Karney, D., and Klingman, D., "'A computational analysis of alternative algorithms and labeling techniques for finding shortest path trees". Net- ~torks 9 (1979) 215 -248.

[7] Dijkstra. E.. "A note on two problems in connection with graphs", Numerical Mathematics I (1959) 269 271.

[8] Ford, L. Jr., Network Flow Theot T, The Rand Corpora- tion, 1956, 923.

[9] Garey. M., and Johnson, D.S., Computers and lntraetabil- iO': cl guide to the theory of NP-completeness, Freeman, San Francisco. CA, 1979.

[10] Geoffrion, A.M.. "Solving bicriterion mathematical pro- grams", Operations Research 15 (1967) 39 54.

[11] Gilsinn, J., and Witzgall, C, "'A performance comparison of labeling Algorithms for calculating shortest path trees," Technical Note 772, (1973), Na0onal Bureau of Stan- dards, Washington, DC.

[12] Hansen, P., "Bicriterion path problems"~ in: G. Fandel and T. Gal, (eds.t, Multtple criteria decision making." theory and applications, Springer, Heidelberg, 1980, 109-127.

[13] Henig, M.I., "The shortest path problem with tow objec- tives", European Journal of Operational Research 25 (1985) 281-291.

[14] Katzan, H., Jr., Distributed lnJormanon Systems. Petro- celli, New York, t979.

[15] Kiziltan, G., and E. Yucaoglu, "An algorithm for bicite- rion linear programming", European Journal of Oper- ational Research 10 (1982) 406-411.

[16] Moore, E., "The Shortest Path Problem", Proceedings of the International Symposium on the Theory of Switching. Part 11, 1957, The Annals of the Computation Laboratory of Harvard University, 30, Harvard University Press, Cambridge, MA 1959.

Page 12: A parametric approach to solving bicriterion shortest path problems

92 J. Mote et al. / Soloing bicriterion shortest path problems

[17] Mote, J., Murthy, I., and Olson, D., "An empirical investi- gation of the number of Pareto-optimal paths obtained for bicriterion shortest path problems", Working paper, Lousiana State University, 1987.

[18] Mote, J., Murthy I., and Olson, D., "Empirical results on the percentage of all Pareto-optimal paths that can be obtained by varying the weights on the two objectives for bicriterion shortest path problems", Working paper, Louisiana State University, 1987.

[19] Robbins, J.C,, "Routing hazardous materials shipments", Ph.D Dissertation, Department of Geography, Indiana University, Bloomington, IN, 1983.

[20] Vincke, Ph., "Probl~mes multicrit6res," Cahiers du Centre d'Etudes de Recherche Operationnelle 16 (1974) 425-439.

[21] Warburton, A., "Approximation of Pareto-optima in mul-

tiple-objective, shortest-path problems", Operations Re- search 35/1 (1987) 70-79.

[22] White, D.J., "The set of efficient solutions for multiple obj$:ctive shortest path problems", Computers and Oper- ations Research 9 (1982) 101-107.

[23] Yen, J.Y., "Finding the K shortest Ioopless paths in a network," Management Science 17 (1971) 712-716.

[24] Yu, P.L., and M., Zeleny, "The set of all nondominated solutions in linear cases and a multicriteria simplex method", Journal of Mathematical Analysis and Applica- tions 49 (1975) 430 468.

[25] Yu, P.L. and M. Zeleny, "Linear multiparametric pro- gramming by multicriteria simplex method", Management Science 23 (1976) 159-170.