On bicriterion minimal spanning trees: An approximation

On bicriterion minimal spanning trees: An approximation

Computers Ops Res. Vol. 23, No. 12, pp. 1171-1182, 1996 Pergamon S030..~0548(96)00026--3 Copyright © 1996 Elsevier Science IAd Printed in Great Bri...

849KB Sizes 16 Downloads 107 Views

Computers Ops Res. Vol. 23, No. 12, pp. 1171-1182, 1996

Pergamon

S030..~0548(96)00026--3

Copyright © 1996 Elsevier Science IAd Printed in Great Britain. All rights reserved 0305-0545/96 $15.00+0.00

ON BICRITERION MINIMAL SPANNING TREES: AN APPROXIMATION Kim Allan Andersen)~ Kurt J6msten2§ and Mikael L i n d ~ l ~Department of Operations Research, University of Aarhus, Building 530, Ny Munkegade, DK-8000, Arhus C, Denmark 2Institute of Finance and Management Science, Norwegian School of Economics and Business Administration, Helleveien 30, N-5035 Sandviken-Bergen, Norway

(Received October 1995; in revisedform April 1996) Scope and Purpose---Consider a network by which a group of users all have to be connected. Assume that each link between two users carries a single cost. Then, the minimal cost spanning tree, which connects all the users at minimum cost, can be found in polynomial time using one of the well-known greedy algorithms. Next, assume that each link is assigned two attributes. Then, the problem of finding the set of spanning trees whose costs are non-dominated by the costs of any other spanning trees, i.e. the set of efficient spanning trees, is df~-complete. In this paper we state some results about the structure of efficient spanning trees and discuss two heuristics, namely, neighboorhood search (which is a well-known method) and adjacent search, a new method. Both search methods approximate the set of efficient spanning trees. Adjacent search finds almost the same approximation sets as neighbourhood search even though it examines much fewer spanning trees. Based on computational results it is concluded that adjacent search is a reasonable alternative to neighbourhood search, in particular for large problems. Ahatract--In this paper we focus on the problem of computing the set of efficient spanning trees for a given network where each arc carries two attributes. This problem is df~-complete. We discuss two heuristics, namely, neighbourhood search (which is a well-known method) and adjacent search, a new method. They both approximate the set of efficient spanning trees. The difference lies in which kind of spanning trees are generated in each iteration. For neighbourhood search, all spanning trees which are adjacent to at least one spanning tree in the current approximation set are considered. Adjacent search is similar to neighhourhood search except that only spanning trees which are adjacent to at least two spanning trees in the current approximation set are considered. Based on computational results it is concluded that adjacent search is a reasonable alternative to neighbourhood search, especially for large problems. Copyright © 1996 Elsevier Science Ltd 1. I N T R O D U C T I O N

A spanning tree is defined, with respect to an underlying connected graph G, as a connected subgraph on G without any cycles. Spanning trees are typically used in different sorts of distribution systems and also emerge as solutions to subproblems of a number of problems in combinatorial optimization. In our setting, every edge is assumed to carry two attributes. These may represent costs such as that of building and maintaining the connection, respectively, a measure of the damage to the environment, or the expected number of flow through the edge. Finding spanning trees with low costs in the two criteria is important when, say, planning distribution systems. Furthermore, such spanning trees may be used to solve various kinds of subproblems in combinatorial optimization. Unfortunately, the problem of finding the set of all efficient spanning trees quickly remains unsolved for even relatively small networks. It has been shown in Hamacher and Ruhe [9] that all spanning trees in an arbitrary graph can be efficient and incompatible. It follows that in the worst cases the number of efficient spanning trees is exponential in the number of nodes, n, since a complete graph has nn- 2 spanning trees. Moreover, Aggarwal, Aneja and Nair [1] have shown that the knapsack problem is polynomially transformable to the minimal spanning tree problem with a side constraint. Since the 0--1 knapsack lowert To whom all correspondence should be adressed (email:[email protected]). :~ Kim Allan Andex~n is Associate Professor at the Department of Operations Research, University of Aarhus, Denmark. He received his master's degree in mathematics and economics from the University of Aarhus and his Ph.D. in Operations Research from the University of Aashus. His research interests lie in the application of mathematical programming to logical problems, as well as in other areas of operations research. § Kurt J0rnsten is Professor at the Institute of Finance and Management Science, Norwegian School of Economics and Business Administration, Norway. He received his Ph.D. in Operations Research from Link0ping Institute of Technology, Sweden. His research interests involve almost any subject within operations research. cl Mikaei Lind is a Ph.D. student at the Department of Operations Research, University of Aarhus, Denmark. He holds his master's degree in mathematics and economics from the University of Aarhus. His research interests lie in multiple criteria decision making and cooperative game theory. 1171

1172

Kim Allan Andersen et al.

bound feasibility problem is known to be ~@-complete, and the bicriterion minimal spanning tree lower-bound feasibility problem in the ~ @ , it follows that the problem is N@-complete. Hence, following Serafini [15], we classify the bicriterion minimal spanning tree problem as X@-complete. However, if it is possible to attach a weight to every criterion then the spanning tree which minimizes the weighted sum of the attributes can be found in polynomial time. This can be done using a greedy algorithm approach such as the ones given in Kruskal [11] and Prim [14]. Since it is possible by parametric analysis to find the weight vectors, it follows that the set of non-dominated solutions on the border of the convex hull of the feasible solutions in criterion space can be found relatively easily, i.e. the set of supported efficient spanning trees is readily found. However, due to the discrete structure of the problem, there may also be non-dominated solutions in the interior, i.e. there may exist non-supported efficient spanning trees. When multiple criteria programs are used to solve real problems, it is usually important to be able to generate a rather large set of good solutions. This enables the decision makers to examine the trade-offs between the different criteria. Whether the solutions generated can be guaranteed to be efficient or not is of minor importance. Hence, what is needed are methods which find good solutions in the interior of the convex hull of the feasible solutions in criterion space. In this paper, we perform a computational study of two heuristics, both of which find an approximation set to the set of all efficient spanning trees. The two heuristics are neighbourhood search (a well-known method) and adjacent search (a new method). The adjacent search only examines a fraction of the spanning trees examined by neighbourhood search, but it turns out that the approximation set found by the adjacent search is very similar to the approximation set found by neighbourhood search. However, the construction of the spanning trees to be examined in adjacent search requires more work than the technique used in neighbourhood search. It is concluded that adjacent search is a reasonable altemative to neighbourhood search, especially for large problems. The paper is organized as follows. In Section 2 define a neighbourhood structure for spanning trees and given some results on the structure of supported and non-supported efficient spanning trees. We also present an algorithm to determine a representative set of supported efficient spanning trees. The spanning trees found by a slightly modified version of this algorithm are used to initialize the two heuristics, both of which are presented in Section 3. The computational results are presented in Section 4. We finish the paper with some concluding remarks. 2. EFFICIENT SPANNING TREES I.*t G=(V, E) be an undirected connected graph, where V denotes the node set and EC_V× V denotes the edge set. Let V={I ..... n} and E={e~ ..... era}. Each edge e ~ E is associated with a weight vector we=(w],w~) ~ R 2. Let ~ denote the set of spanning trees on G. A spanning tree T E ~ is a connected and spanning subgraph on G with node set V. Denote the edge set of T by E r. We define the weight of the spanning tree T as

w(T)=(eE~T X w~, X ~)=(w'(T)J(T)) e~Er A spanning tree T is said to be efficientif and only if

37"E T:w(~<--w(T) and w(T)#w(T) Let eft ~" denote the set of effcient spanning trees.A solution w(T) is called non-dominated if T is an effcient spanning tree. Now, consider the set of spanning trees whose weights lie on the border of the convex hull of {w(T)IT~ ~" }. Such spanning trees are called supported spanning trees. Furthermore, we denote the subset of supported spanning trees which are efficientby sup eft ~'. Sup eft if can be found using the well-known weighted-sum method. To demonstrate this,consider the following multiple-objectivelinear integer programming formulation. ec~E

lain X w2,x, eeE

On bicriterion minimal spanning trees

s.t. ~ x e = n - 1

1173 (1)

e~E

E xe<--ISI- 1VSC V , S ~ O

(2)

eeEs

xe-----0and interger, for all e EE

(3)

where E,= {e E E le =(i j ) where i d E S}. Constraint (1) ensures that exactly n - 1 edges are used and (2) makes sure that there are no cycles. Thus, a feasible solution to (1)-(3) is the incidence-vector for a spanning tree. If Xe= 1 in a feasible solution, edge e is included in the spanning tree. Otherwise, it is excluded. Let ~ denote the linear programming relaxation of (1)-(3), i.e. ~={x~01 Y~ x e = n - 1, ~ x e ~ l S I - 1VSC V, S ~ O } e~E

(3)

e~Es

We have the following theroem which follows from Edmonds [6]. It shows that ~ is an integral polytope. Theorem 1: x is an extreme point of ~ if and only i f x is the incidence-vector for a spanning tree. Now, let (A~,A2)>0 and consider the weighted-sum linear program:

min E (a,w~ + a2W2e)X~ eEE

s.t.

x E ~'.

(4)

Let x ° be an optimal extreme point solution to (4). According to Theorem 1, x* is the incidence-vector for a spanning tree which is obvious supported. Moreover, x* represents an efficient spanning tree by a basic result in multiple-objective linear programming, Steuer ([ 17], Theorem 9.6). Below, we review a polynomially bounded algorithm in which the weighted-sum method is applied to determine a subset of sup eft 3-. Versions of the algorithm have been used by Aggarwal et al. [1], Aneja and Nair [3], Hamacher et al. [9] and Murthy and Olson [12] in the process of solving various combinatorial optimization problems. Here the algorithm is presented for the bicriterion case, but it can be generalized to cover multiple criteria cases as well. Furthermore, the algorithm can be modified to determine sup eft 3- which is used as a starting basis in the two heuristics (neighbourhood search and adjacent search) presented in Section 3. We need the concept of lexicographic minimal to state the algorithm. Recall, that a vector x E R 2 is said to be lexicographically less than or equal to a vector ye R 2 if x~
Step I. Sort O:={T= ...... T~} such that wl(Ti)
1174

Kim Allan Andersen et al.

can be found in O(m+n logn), Ahuja, Magnanti and Orlin [2], and this is done 2 r - 1 times by the algorithm for r<2. Moreover, it follows from Chandrasekaran [4] that r~m 2 so Algorithm 1 has, in general, a time complexity of O(m3+m2n logn). As noticed above, Algorithm 1 can be modified to determine the set sup eft 3.. This can be done either by a modification of the greedy algorithm used in Step 3, such that all alternative solutions are found during that step, or by an application of the method described in Gabow [8]. In the latter case the successive minimal spanning tree, T, with respect to ~, is found and recorded in Step 3 until the objective function value of the first minimal spanning tree found in the iteration is strictly less than ~(~). It should be noticed that another way to determine sup eft 3. would be to perform a parametric analysis of the objective function of program (4). However, program (4) has 2" - 1 constraints, so a parametric analysis could be difficult to perform. The relationship between the spanning trees in sup eft 3- follows from multiple-objective linear programming. We need the following two concepts, which define the neighbourhood structure, to state the theorem.

Definition 1: Two trees are said to be adjacent if and only if one can be obtained from the other by an interchange of one edge.

Definition 2: A set q~_ 3 is said to be connected if and only if for every pair (Ti,Tj)C • there exists a sequence Ti,T,.÷I...... Tj such that TI is adjacent to Tl÷Lfor l=i ..... j - - 1 and TI~ qbfor I = i ..... j.

Theorem 2: The set sup eft 3. is connected. Proof." Since spanning trees in sup eft 3. are optimal solutions to weighted-sum programs where each basis corresponds to a spanning tree, the proof follows from the fact that the efficient bases are connected. This is a well-known theorem in multiple-objective linea programming, Steuer ([17] Theorem 9.19). Thus, it is relatively easy to find the set of supported efficient spanning trees. However, there may also exist efficient spanning trees whose weights lie in the interior of the convex hull of{w(T)lT~ 3. }. Such spanning trees are called non-supported efficient spanning trees. A non-supported efficient spanning tree may be connected to a supported efficient spanning tree within the set of efficient spanning trees. However, this is not true in general. Consider the network* given in Fig. 1. The network contains 480 spanning trees of which 7 are supported efficient spanning trees and 15 are non-supported efficient spanning trees. The type, weight and incidence-vector for each of the efficient spanning trees are stated in Table 1. For the incidence-vectors the edges are given in the order: (1,2), (1,3), (1,4), (1,5), (2,3), (2,5), (2,6), (3,5), (3,6), (4,5), (4,7), (5,6), (5,7). Note that the seventh spanning tree, Tnc, listed in Table 1, is a non-supported efficient spanning trees

(a,la) / I

Fig. 1. The example.

t Thisexampleis a modifiedversionof an examplefoundby MatthiasEhrgottand KathrinKlamroth,Universit~itKaiserslautern, Germany,whichwas based upon an examplefoundby Ehrgottand Lind.

On bicriterion minimal spanning trees

1175

Table 1. The efficient spanning trees on the network given in Figure 1. Type Supported Supported Non-Supp. Supported Non-Supp. Non-Supp. Non-Supp. Non-Supp. Non-Supp. Non-Supp. Non-Supp. Supported Supported Non-Supp. Non-Supp. Non-Supp. Non-Supp. Non-Supp. Supported Non-Supp. Non-Supp. Supported

Weight

Incidence-vector

(66,167) (68,158) (72,154) (74,146) (78,142) (89,133) (93,130) (94,121) (96,112) (98,109) (100,108) (102,100) (104,97) (106,96) (108,93) (117.87) (119.84) (123,75) (125.72) (138,69) (142.60) (144.57)

(1, I, 1,0,0, 0, 0, 0, 1, 1,0,0, 1) (1, 1,0, 1,0,0,0, 0, 1.1, 0, 0, I) (0. 1, 0, 1, 1, 0, 0, 0, 1, 1, 0. 0, 1) (1,0, 0. 1,0,0, 0. 1.1, 1.0. 0, 1) (0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1) (0. 1, 0. 1, 0, 1, 0, 0, I, 1, 0, 0, 1) (0, 0, I, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0) (l, 1, 1,0, 0,0, 1,0, 0, 1,0, 0, l) (1. 1,0. 1, 0, 0, 1.0.0, 1, 0.0, 1) (1.1,0, 1, 0, 0, 0, 0, 0, 1,0, 1, I) (0. I, 0. 1, 1, 0, 1.0. 0. 1.0.0. 1) (1,0, 0, 1, 0, 0, 1, 1,0, 1,0.0, 1) (1, 0, 0, 1, 0,0, 0, 1,0, 1,0. 1, 1) (0, 0, 0, 1, 1, 0, 1. I. 0. 1, 0, 0, 1) (0, 0, 0. 1, 1, 0, 0. 1, 0. 1, 0. I, 1) (0. 1.0. 1.0, 1. 1.0. 0. 1.0. 0, 1) (0. I. 0. 1.0. I. 0. 0. 0. 1.0. 1. 1) (0. 0, 0, 1.0, 1, 1. I. 0. 1.0. 0. 1) (0. 0.0. 1.0, 1.0. 1.0. 1.0. 1. 1) (0, 1,0, 1,0, 1.0. 0,0, 1, 1. 1,0) (0. 0. 0. 1.0. 1. 1. 1.0, 1. 1.0.0) (0. 0. 0. 1.0. 1.0. 1.0. I. 1. 1.0)

which is not adjacent to any of the other efficient spanning trees. Hence, we have the following theorem. Theorem 3: The set eft ~" is not necessarily connected. For further elaboration on this, see Ehrgott and Klamroth [7]. Now, consider a connected set of spanning trees which includes all supported efficient spanning trees and where the cost of no spanning tree in the set dominates the cost of another spanning tree in the set. Then, Theorem 3 implies that the set of non-supported efficient spanning trees cannot, in general, be found by just looking at the spanning trees which are adjacent to others in such a set. Nonetheless, examination of such spanning trees is exactly what we suggest as a heuristic approach to construct an approximation set for eff ~-. 3. H E U R I S T I C S

In this section we describe two heuristics called, respectively, neighbourhood search and adjacent search. As a starting point for both heruristics, the set sup eft B is found using a modified version of Algorithm 1. This choice implies that the heuristics generate an approximation of eft ~ on the whole range of weights for efficient spanning trees. Furthermore, when adjacent search is started with a connected set of efficient spanning trees it is usually possible to construct several more candidates to be included in the approximation set than if the starting set had not been connected. The difference between neighbourhood search and adjacent search lies in which kind of spanning trees are generated in each iteration. For neighbourhood search, all spanning trees which are adjacent to at least one spanning tree in the approximation set are considered. Adjacent search is similar to neighbourhood search except that the former considers only spanning trees which are adjacent to at least two spanning trees in the current approximation set. Adjacent search, in particular, generates only a subset of the spanning trees which are generated by neighbourhood search. However, when using adjacent search, more work is involved in order to construct the spanning trees. In Section 4 this is illustrated by computational results. In order to state the next theorem, which is used in the construction of the two heuristics, we need some notation. Let T= (V, Er)e ~', and let e ~ ET~ LetXe and lAXe denote the node sets of the two trees obtained by eliminating e from T. Furthermore, let {Xe,IAXe} denote the set of edges in E which connect X, with lAX,,. We will refer to{Xe, IAX,} as a cut. Notice that {Xe,'CXX,}\{e} may be empty. Finally, letfeEkE r and let C(T, f) denote the set of edges in the unique cycle generated by addingfto Ev Theorem 4: Let T=(V, Er) E ~'. Assume that Tis not dominated by any spanning trees which are adjacent to T. Then, we have the following: (1) Let eEEv Then there does not exist a n y f E {X,,IAX,}\{e} such that w~-w, and wfT~w,. (2) Letf~EkEv Then there does not exist any eEC(T~\{f} such that wrY-weand wfT~w,.

Kim Allan Andersen et al.

1176

Proof: Let e~Er and assume that there exists an edge f e {X,,IAXe}\{e} for which w ~ w e and w:~we. Note that the graph T=(V,(Er\e)UJ) is a spanning tree on G which is adjacent to T. Moreover, w(T)=Zh~eWh--W~+W~-Eh~e~Wh=W(T) and w(T)#w(T). Hence, we have a contradiction with T not being dominated by any spanning trees which are adjacent to T. Next, letf~EkEv Assume that there exists an edge e e C(T~\{f} for which w~-~w~and w:~we. Notice that the graph 7"=(V,(Er~e)O3') is a spanning tree on G which is adjacent to T. Moreover, w(T)<-w(T) and w(~#w(T). This contradicts T not being dominated by any of its neighbours. Theorem 4 is stated for a spanning tree which is not dominated by any of its neighbours. Hence the theorem is valid in particular for efficient spanning trees. The corresponding version can be found in Hamacher et al. [9]. Furthermore, if the single criterion minimal cost spanning tree problem is considered, Theorem 4 provides necessary and sufficient optimality conditions. Ahuja et al. [2]. The results stated in Theorem 4 are used in the two heuristics, given below, to test whether the weight of a spanning tree is dominated by the weight of a spanning tree used to constrct it.

3.1. Neighbourhood search 3.1.1. Initialization. Let L=K:=sup eff ~ and let M:= ~b. 3.1.2. Main step For all 7'~ K do For all e ~ Er do For allf~ {X,,V X~} {e} do If not (w~we and w:~w,) then Er:=Er {e} U {f} w(T): = w 0 3 -

we+w/

If T qtL and :IT EL :w( T) <-w( T),w( ~) ~ w( T) then L:=LU T M: =MU T For all ~'~L such w(T)<--w(~,w(T)~w(~) do

L: =L/~ If i"~L then skip to the next tree in K fi If M=O then stop else K: =M,M: = 0 repeat main step until a stopping criterion is satisfied.

3.2. Adjacent search 3.2.1. Initialization. Let L = K:= sup elf ~- ={Tl ..... Tlu},r:=lLI and M:=~b 3.2.2. Mainstep For all (~,T) ~ {(Tj,Tj) ~ L X Llij }M do M:=MU {(T,~} If (Iwl(7 ") -- Wlf~)l,lW2(7"~ -- w2(~P)I)--2( max w~ - min wet, max w~,- min w~) e~E

eeE

e~E

e~E

If IE~kErl--<2then repeat construct a spanning tree, T which is adjacent to both i" and ~"

If TqtL and ~lT"EL:w(~)<-w(T),w(~w(T) then r: = r+ 1 Tr:= T L:=LU T~ For all 7'~L such w(T)
On bicriterion minimal spanning trees

1177

In the central part of adjacent search a spanning tree, which is adjacent to two given spanning trees, is constructed. This construction depends upon whether the two given spanning trees are adjacent or not. First let T~,T2~T be two adjacent spanning trees. They have n - 2 edges in common, hence lEt kEr I= lEt kEr I= 1. Let e =Er,kEr: andf=Er2VEr,. A spanning tree which is adacent to both T~ and/'2 can be produced in two ways: let gEC(e,T2)\{e~ and set T3=(V,ErUfig)=(V, Er2Ue\g). Then T3 is a spanning tree on G which is adjacent to both Tl and /'2. Next, assume that {X/,VkX:}\{e,f}~O. Let he {X:,IAX:}X{e,f} and set T4=(V,Er,, Uh\e)=(V, Er, Uh~. Then T4 belongs to ~" and is adjacent to both T~ and T2. Notice that a cycle and a cut are used, respectively. Now, consider the network given in Fig. 1. Let T~ and T2 be given by the following edge sets: Er,= {(2,6),(3,6),(1,3),(4,7),(5,7),(1,4)} and Er:= {(2,6),(3,6),(1,3),(4,7),(5,7),(2,5)}. Thus T, and T2 are adjacent spanning trees, where e = Er, kEr: = (1,4) and f = Er~W.r,= (2,5). The above construction methods can both be accomplished using T~ and/'2. A unique cycle, CO:, Tj), is formed w h e n f i s added to Er,. Now, if an edge in C(f,T~)\{ef} is removed from Er, Uf, say g=(5,7), then a spanning tree, T3, which is adjacent to both Tj and/'2 is created. See Fig. 2 for a graphic elaboration of this. e

Fig. 2. (V,Er, U ~,h})

Moreover, two trees are obtained by deleting e from Er,. Then, by adding an edge in {Xe,V~Xe}\{edq, say h=(3, 5) to Erie again a spanning tree,/'4, which is adjacent to both Tt and T2 is found. Consider the elaboration of this in Fig. 2. Notice that {T~,T2,T3} is a set of pairwise adjacent spanning trees and that C(f, TI)= C(e,T~)= C(g,T3). Thus, the first part of the above constructions will generate the same set of spanning trees for the three pairs. Hence, since T3 has been obtained from the cycle defined by Tt and T2, it will not be necessary to regenerate the spanning trees obtained from the cycles defined by respectively {Tt,T3} and {T2,T3}. A similar argument can be accomplished for the set {T~,T2,T4}. Moreover, Theorem 4 can be used to test whether T3 and/or/'4 is dominated by either Tj or 7"2. Secondly, let T~,T2~ ~. Assume T~ and T2 are not adjacent and that there exists a spanning tree, T~ ~ , which is adjacent to both TI and T2. This is only possible if T~ and/'2 have n - 3 edges in common, hence IEr2kErl=lErkEr21=2. The edge set of T has to be of the form Er, NEr2U {el} where eeErkEr~ and fE Er2kEr. This produces four possibilities where Gr=(V, Er, f3 Er, U {e,f}) constitutes a spanning tree if Gr is connected. Notice that only two or three of these possibilities form a spanning tree at the same time. Once again consider Fig. 1. Now, let TI and T2 be two spanning trees given by the edge sets: Er,= {(4,7),(4,5),(1,3),(3,6),(3,5),(1,2)} and Er2 = {(4,7),(4,5),(1,3),(3,6),(1,4),(2,5)}. See Fig. 3 for the graph (V,Er, U Er~). The edges in Er,W,r,_={el,e2} are drawn by thin lines and the edges in Er kEr, = ~ ~} by dotted lines. Note that T~ and T2 are not adjacent, but IEr,kEr:=2 so that above construction method can be applied. Let E denote the intersection of Er, and Er2. Here, three different spanning trees are found. They are given by the edge sets: ~t.J {e2,f2}, E U {el~} and ~t_l {e2,fl}. Finally, observe that iff2=(2,5) eEr2 was replaced by (2,6) then the method would only produce two new spanning trees.

Kim Allan Andersen et al.

1178

Fig. 3.

(V,Er, UEr).

The heuristics stop either when there are no more spanning trees to examine or when a stopping criterion is satisfied. Remember, we want a rather large set of good spanning trees. One stopping criterion would be to stop when a given number of spanning trees has been found. Another, that we stop when an 6-distributed set has been found (which means that the maximal Euclidean distance between the weights of two consecutive spanning trees is less than or equal to a fixed number 6). Let LN and LA denote the approximation sets found by neighbourhood search and adjacent search, respectively. For the network given in Fig. 1, it can be shown that La=Ls=eff ff\T, cUT d, where Err={(1,2),(1,5),(3,5),(3,6),(4,5),(4,7)}. Moreover, w(Tnc) = (93, 130) and w(Td)=(93,131). ThUS, both LN and LA include a non-efficient spanning tree. 4. C O M P U T A T I O N A L R E S U L T S

To measure the quality of an approximation set we use the three parameters p, dl and d2 described below. Let N denote a reference set for which we have an approximation, M. Hence, assume that for each element in M there exists an element in N which is equal to or dominates it. The following measure p can be used to reflect the quality of M. p=

IMnM

,~.100

(5)

Thus, (5) measures the percentage of elements in the approximation which also belong to the reference set. However, as noted by Czy~ak and Jaszkiewicz [5], p does not reflect the worst case behaviour or the range covered by the approximation. So, only using (5) as a measure of the quality might lead to erroneous conclusions, especially if p is small. Therefore, also the following measures dl and d2 are considered. They reflect the worst case behaviour and the range covered by M, respectively.

dl= max rain B(x,y) xd~l

y~t¢

1 X min 8(x,y) where

i=1 \

z-i- Zi

(6)

and zj=max~vw'(x), zi=nunx~vw (x) for i= 1, 2. Notice that (6) is a weighted/.,z-metric which makes d~ and d, independent of the scale used by the objective functions. Slightly different versions of d~ and d2 were given in Czy~_ak et al. [5].The two heuristics have been implemented in Pascal and their performance --

'



i

On bicriterion minimal spanning trees

i179

Table 2. Comparison of the approximation sets. Non-biased n

Isup eft ~" I

IL#I

IL,d

p

dl

d:

10 20 30 40 50

8.2 21.5 40.5 70.8 88.8

15.5 95.5 206.8 499.7 704.3

15.5 94.9 204.3 498,2 698.3

100 99.4 98.3 98.8 98.5

0 0.011 0.16 0.096 0.11

0 0.0047 0.0054 0.0015 0.0015

10 20 30 40 50

10.1 27.6 57.7 104,1 167.7

73.5 433.8 1246,4 2924,0 5975,6

99.0 98.2 99.0 99.1 99.0

0.12 0.10 0.056 0.041 0.031

0.0046 0.0040 0.00050 0,00017 0.000079

Biased 72.3 428.6 1236.5 2907.8 5948.4

tested on 100 different problems. First, for n= 10,20 ..... 50, ten distinct graphs were generated uniformly from the set of connected graphs on n nodes; see Tinhofer [18] for a description of the method. Secondly, in order to investigate how the features of the edge weights affect the performance of the two heuristics, the edge weights were selected in two ways: non-biased, where each weight was drawn uniformly from {1..... 100}, and biased, where the first weight was drawn uniformly from respectively {1 ..... 33} and {67 ..... 100} with equal probability. If the first weight was drawn from {1 ..... 33} then the second came from {67 ..... 100} and vice versa. As advocated by Hooker [10], one can gain insight in the ability of an algorithm to solve typical problems by investigating how algorithmic performance depends on problem characteristics. In the biased instances, the edge weights have the form (low,high) and (high,low), whereas in the non-biased instances the forms (low, low) and (high,high) are possible too. Thus, the structure of the edge weights differs considerably for the two problem types. The runs were performed on a HP-9000 series 735. In Table 2 the average values of the measures p, d~ and dE with L:¢ as the reference set and LA as the approximation set, are stated as well as the average cardinal numbers of sup eft if, Lt¢and LA. Notice that the average values o f p in all cases are very high. This means that adjacent search finds almost the same approximation sets as neighbourhood search even though it examines much fewer spanning trees. Next, observe that the average values ofd~ lie between 0 and 0.16. d~ gives an upper bound for max max min i= 1.2

T~LA

~'~1,,l¢

Iw/(T) - w i ( L I

.100

Zi - - Zi

Hence, d~ provides an upper bound for the numerical difference in weights between the spanning trees in LA and those in LN under the constraints that the difference is minimized over L:¢ and measured in percentage of the range of the weights for efficient spanning trees. As noted above the average values of dl are rather small which again means that for each instance the weights of the spanning trees in LA are almost identical to weights of spanning trees in L~; even for those spanning trees in LA whose weights are dominated by a the weight of a spanning tree in L:¢. Finally, notice that the average of d: are less than 0.0054 in all cases, d2 provides the average value over L~¢ of the minimal Euclidean distance to the weights of the spanning trees in LA, all in the [0,100] × [0,100] scaled criterion space. Compare two approximation sets, M~ and ME, of the same reference set, where M~ is identical to the reference set and M2 only covers a part of the reference set. Clearly, d2 will give a higher value for M2 than for M t. Thus, since dE is very small for all cases, we conclude that LA covers approximately the same range as LN. This is, however, not surprising since both heuristics are started with sup eft ft. Moreover, observe that as the average values of IL~I increase the average values of d~ more or less decrease. This observation can be seen as further evidence for the claim that the weights of the spanning trees in Ls and LA almost coincide, since if this is true, d: will necessarily decrease as IL~I increases. We conclude that the approximation set obtained by adjacent search gives a good approximation of the set obtained by neighbourhood search. The average numbers of spanning trees in the approximation sets compared to the average numbers of supported efficient spanning trees is growing in the number of nodes, n. The growth is largest when the edge weights are biased. In particular this means that most of the spanning trees are non-supported. Also, it can be noted that as n increase still more spanning trees of the total number become dominated.

1180

Kim Allan Andersen et al. Table 3. Average number of spanning trees considered. Non-biased

Biased

n

N

A

NIA

N

A

NIA

10 20 30 40 50

1360.8 37627.6 224301.8 922465.5 2497750.6

647.4 9398.1 30093.0 114123.0 201165.9

2.10 4.00 7.45 8.08 12.42

5837.1 146629.4 1212227.8 5872467.4 21258719.8

4971.4 57883.3 276060.8 1013604.8 2863428.7

1.17 2.53 4.39 5.79 7.42

Next, notice that IL~-----ILAIon average. This observation can be explained in the following way. Let us say that a spanning tree, T, will be found by neighbourhood search but not by adjacent search. Then, in neighbourhood search the neighbourhood of T is checked, whereby other spanning trees with weights close to w(T) might be found. Since the neighbourhood of T is not necessarily checked in adjacent search, these trees might not be found. However, it is not generally true that neighbourhood search finds more spanning trees than adjacent search. Finally, it can be seen that the average values of Isup eft ~'1 IL~¢Iand ILal for the biased cases are greater than the corresponding values for the non-biased cases. Now, consider an arbitrary cut in G. Recall that the weights of the edges in the cut will be of the form: (low,high) and (high,low) in a biased instance, whereas they also can have the form: (low, low) and (high,high) in a non-biased instance. Thus, the number of edges whose weights will be dominated by another edge weight in the same cut will probably be higher in a non-biased instance than in a biased instance. This again means that fewer edges can be used to form non-dominated solutions (see Theorem 4), and hence probably less spanning trees are found. The average number of spanning trees which have been considered by, respectively, neighbourhood search (N) and adjacent search (A) are shown in Table 3. As already mentioned, adjacent search examines only a fraction of the spanning trees examined by neighbourhood search. Table 3 also shows that most of the considered spanning trees will not be included in the approximation set. For example, for n=50 with biased edge weights the average value of ILNIis 5975.6, whereas the average number of spanning trees considered is 21258719.8. This observation is true for both biased and non-biased instances. However, notice that the same spanning tree might be considered several times. Next, the average number of spanning trees which are tested for inclusion in the approximation set, after passing the test derived from Theorem 4, are shown in Table 4. It follows from Table 3 and Table 4 that as n increases, more and more spanning trees are considered and tested by neighbourhood search compared with adjacent search. It can also be seen that several more spanning trees are considered and tested in the biased instances than in the non-biased instances. This corresponds to the higher average cardinal numbers of LN and La in the biased instances, and to the difference in the structure of the edge weights. Furthermore, notice that the test derived from Theorem 4 does not fit the spanning trees constructed from a pair of non-adjacent spanning trees. Several of such trees are considered by adjacent search. Therefore, it also turns out that the ratio between the average number of considered and the average number of tested spanning trees is largest for neighbourhood search. It can also be seen that the ratio for each non-biased instance is larger than the ratio for the corresponding biased instance. Once again the explanation is the difference in the structure of edge weights. Finally, recall from Section 3 that in adjacent search the construction of spanning trees to be examined depends upon whether the given pair of spanning trees have n - 2 or n - 3 edges in common. If it is a pair of adjacent spanning trees a cycle and/or a cut is used to construct new spanning trees. Whereas, if it is a pair of spanning trees with n - 3 edges in common then 2 or 3 new spanning trees are constructed in a completely different way. The average number of times a pair of spanning trees with, respectively, n - 2 and n - 3 edges in common are found is shown in Table 5. Table 4. Average number of spanning trees tested for inclusion in the approximation set. Non-biased n

10 20 30 40 50

Biased

N

A

NIA

N

A

NIA

370.3 5753.9 21176. I 68726.2 121620.4

346.3 3388.3 7427.6 19340.3 25627.3

1.07 1.70 3.51 3.55 4.75

2387.3 36297.9 198773.9 653797.5 1869175.8

3253.2 27160.4 97109.0 248717.3 580235.6

0.73 1.34 2.05 2.63 3.22

On bicriterion minimal spanning trees

!181

Table5. Averagenumberof spanningtreeswithresp. n - 2 andn - 3 edgesin common. Non-biased Biased n n-2 n-3 n-2 n-3 10 52.8 101.2 277.8 890.9 20 330.0 916.5 1813.7 7194.4 30 693.0 1995.8 5691.7 24861.3 40 1542.0 4914.5 13722.7 63263.7 50 2111.4 6657.1 29998.8 147503.1 It can be seen that the average number of pairs is more or less increasing in the average number of ILAI. Furthermore, the average number of pairs is larger in the biased cases than in the non-biased cases, corresponding to the larger average cardinal numbers of LA for the biased instances. Finally, notice that the two heuristics satisfy a breadth-first strategy. New spanning trees in the approximation set are first considered after all the old spanning trees have been examined. It follows from the computational study that this seems to be a reasonable approach. The number of spanning trees which would have been considered by neighbourhood search, if the search had been started with LN, was at least 94.1 and 98.8% on average of the number of spanning trees which were actually considered. 5. CONCLUDING REMARKS In this paper we have described a new heuristic called adjacent search. It has been compared with the known approach of neighbourhood search by means of computational results. The computational results show that the approximation set obtained by adjacent search is rather close to the one obtained by neighbourhood search. Furthermore, it can be seen that the ratio between the average number of spanning trees, considered and tested by neighbourhood search and adjacent search, respectively, increases with the number of nodes. Moreover, as the cardinal number of the approximation set increases it will on average become more time consuming to test whether or not a given spanning tree should be included in the set. Hence, the difference between the time used, by neighbourhood search and by adjacent search, to test for inclusion increases with the number of nodes. Thus, from the computational study it follows that adjacent search is a reasonable alternative to neighbourhood search, especially for large problems. The methods discussed in this paper can be extended to cover three-or-more-criteria cases as well. However, this requires two major adjustments. First, Algorithm 1 has to be modified such that it is possible to keep track of which weights should be used in the weighted sum program, and in which order. See, for example, Preparata and Shamos [13] for a description for algorithms for computing the convex hull of a given set of points. Secondly, when a multiple criteria problem with more than two criteria are considered, it becomes important to use a proper data structure to keep track of the approximation. Here, self-adjusting binary search trees might be applied, Sleator and Tarjan [16]. Acknowledgements--We wouldlike to thankJan Paulli for several usefulcommentsregardingimplementationissues, and Matthias

Ehrgott for generationof the graphs used in the computationalstudy and his cooperationin connectionwith the example given in Fig. 1. Financial support from Nordic Academy for Advanced Study and the EU Human Capital and Mobility Programme is gratefully acknowledged. REFERENCES 1. V. Aggarwal, Y. E Aneja and K. E K. Nair, Minimal spanningtree subject to a side constraint, Computers and Operations Research, 9, 287-296 (1982). 2. R. K. Ahuja,T. L. Magnantiand J. B. Orlin, Network Flows. PrenticeHall EnglewoodCliffs, New Jersey 0993). 3. Y. E Aneja and K. E K. Nair, Bicriteriatransportationproblem, Management Science, 25, 73-78 (1979). 4. R. Chandrasekaran,Minimalratio spanningtrees, Networks 7, 335-342 (1977). 5. E Czygak and A. Jaszkiewicz, Pareto simulatedannealing.Presentation at The Twelfth International Conference on Multiple Criteria Desision Making, Hagen, Germany (1995). 6. J. Edmonds, Matroids and the greedy algorithm,Mathematical Programming 1, 127-136 (1971). 7. M. Ehrgott and K. Klamroth,Connectednessof efficientsolutionsin multiplecriteriacombinatorialoptimization.Preprint nr. 265, Universiti~t Kaiserslautern, Fachbereich Mathematick, Kaiserslautern, Germany 0995). To appear in European Journal of Operational Research.

8. H. N. Gabow, Two algorithms for generating weighted spanning trees in order, SIAM Journal on Computing 6, 139-150 (1977). 9. H. W. Hamacher and G. Ruhe, On spanning tree problems with multiple objectives,Annals of Operations Research 52, 209-230 (1994). I0. J. N. Hooker, Needed: an empiricalscienceof algorithms, Operations Research 42, 20I-212 (1994). 1I. J. B. KruskalJr, On the shortest spanningsubtreeof a graph and the travellingsalesmanproblems.Proceedings of the American Mathematical Society 7, 48-50 (1956).

1182

Kim Allan Andersen et al.

12. I. Murthy and D. L. Olson, An interactive procedure using dominations cones for bicriterion shortest path problems, European Journal of Operational Research 72, 417-431 (1994). 13. E E Preparata and I. M. Shamos, Computational Geometry: An Introduction. Springer-Verlag, New York 0985). 14. R. C. Prim, Shortest connection network and some generalizations, The Bell System TechnicalJournal 36, 1389-1401 0957). 15. E Serafini, Some considerations about computational complexity for multi-objective combinatorial problems. J. Jahn and W. Krabs (Eds.), Recent Advances and Historical Development of Vector Optimization. Lecture Notes in Economics and Mathematical Systems, 294, Springer-Vedag, Berlin, 222-232 (1986). 16. D. D. Sleator and R. E. Tarjan, Self-adjusting binary search trees, Journal of the Association of Computing Machinery 32, 652--686 (1985). 17. R. E. Steuer, Multiple Criteria Optimazation: Theory, Computationand Application. John Wiley and Sons, New York (1986). 18. G. Tinhofer, Zufallsgraphen. Hanser, Muenchen 0986). (In German).