Yugoslav Journal of Oerations Research (00), umber, 5- A BICRITERIO STEIER TREE PROBLEM O GRAPH Mirko VUJO[EVI], Milan STAOJEVI] Laboratory for Oerational Research, Faculty of Organizational Sciences University of Belgrade, Belgrade, Serbia and Montenegro Abstract: This aer resents a formulation of bicriterion Steiner tree roblem which is stated as a task of finding a Steiner tree with maximal caacity and minimal length. It is considered as a lexicograhic multicriteria roblem. This means that the bottleneck Steiner tree roblem is solved first. After that, the next otimization roblem is stated as a classical minisum Steiner tree roblem under the constraint on caacity of the tree. The aer also resents some comutational exeriments with the multicriteria roblem. Keywords: Steiner tree, bicriterion otimization, bottleneck roblem, lexicograhic method.. ITRODUCTIO The Steiner tree roblem (STP) is one of the most researched roblems of combinatorial otimization [7, ]. The roblem is to find the Steiner tree with minimal length in the given weighted grah. This aer also considers the bottleneck Steiner tree roblem (BSTP) that is to find the Steiner tree with maximal caacity in the weighted grah. Although the BSTP aears to be a relatively simle roblem, it is rarely treated in the literature and one of the first reorts concerning it is given in [9]. Scientific interest for alication of multicriteria otimization to combinatorial roblems has been increased in the last few years []. Some alications of multicriteria otimization to the shortest ath roblem [], the shortest sanning tree [5], traveling salesman roblem (TSP) [0], and some other roblems [] are reorted in the literature. A secific multicriteria Steiner tree roblem is formulated in the aer. A weighted grah in which two values, caacity and length, are assigned to each edge is considered. The objective is twofold: (i) to maximize the caacity and (ii) to minimize the length. The roblem is to find a Steiner tree with both maximal caacity and minimal length. The aer is organized into four sections. After the introduction, both classical Steiner tree roblem and bottleneck Steiner tree roblem are described in the next
6 M. Vujo{evi}, M. Stanojevi} / A Bicriterion Steiner Tree Problem on Grah section. In section the formulation of the multicriteria Steiner tree roblem and an algorithm for its solving are resented. In section some exerimental results are given...classical Steiner tree roblem. STEIER TREE PROBLEM Let G = (, L, C ) be an undirected weighted simle grah where is a finite set of vertices, L is an edge set and C is a maing function C: L R which assigns a ositive number c ij to each edge of the grah. The value c ij is called the length of the edge {, i j}, Steiner tree is a subgrah G' = ( S, L') of G such that S contains all vertices in T, L' L and {, i j} L. Given a subset T of the vertices in G called terminal vertices. G' is a tree. Length of Steiner tree is the sum of lengths of all edges of which it consists. Steiner tree roblem is to find a Steiner tree with minimal length. It belongs to the class of so called minisum otimization roblems. The main difference between Steiner tree and sanning tree is that, unlike the sanning tree, Steiner tree doesn't need to contain all vertices of the initial grah. It must contain all terminal vertices and an arbitrary number of other vertices which are needed to connect the terminal vertices into a tree. Also, unlike the shortest sanning tree which is an easy roblem, STP is P-hard roblem. STP is one of the most researched P-comlete roblems. Very well known exact algorithms for combinatorial otimization like branch and bound, branch and cut, etc. [] have been used for its solving. There are also a great number of heuristics which are adated for the roblem such as: simulated annealing, tabu search, genetic algorithms, etc. [6]. A simle but effective heuristic for solving the classical Steiner tree roblem is the following. Heuristic (H). Find the shortest aths between all airs of terminal vertices. Only vertices and edges which belong to those aths will be considered in the following stes.. Find the shortest sanning tree on the remaining grah.. "Cut the tails" from the tree, i.e. iteratively remove all vertices (and incident edges) whose degree is equal, unless it is a terminal vertex... Bottleneck Steiner tree roblem Let G = (, L, Q ) be an undirected weighted simle grah where is a finite set of vertices, L is an edge set and Q is a maing function Q: L R which assigns a ositive number q to each edge of the grah. The value q is called the caacity of ij the edge {, i j},{, i j} L. The caacity of a Steiner tree is defined as to be the minimal caacity of edges it consists of. Bottleneck or maximin Steiner tree roblem is to find a Steiner tree with maximal caacity. ij + +
M. Vujo{evi}, M. Stanojevi} / A Bicriterion Steiner Tree Problem on Grah 7 For solving the bottleneck STP we suggest an original exact algorithm which is based on the same idea as the Prime algorithm. The algorithm is simle, olynomial and guaranties the otimal solution. It uses the concet of vertices labeling and iterative adding of edges to the current tree. The choice of the edge which is to be added is based on its caacity and the condition that the edge connects one of the labeled vertices to another one which is not labeled. The algorithm is the following: Algorithm (A). Set all vertices unlabeled.. Select one of the vertices from T and label it.. In the set of unlabeled vertices find a vertex that is connected to some labeled vertex by the edge of maximum caacity and label it.. If all vertices from T are labeled, go to 5; otherwise, go back to. 5. From the set of all labeled vertices obtained in the revious stes, eliminate all vertices which don't belong to T and have vertex degree equal. Algorithm correctness roof: Let us denote by ST L = ( ( ST), ( ST) ) a Steiner tree obtained by algorithm (A) and by M the caacity of the tree i.e. M= min{ q { i, j} L }. Let us suose that there ij ( ST) is another Steiner tree ST = ( ( ST), L( ST) ) with caacity M= min{ qij { i, j} L ( ST) }. What we need to rove is that M M. Two cases can occur:. ST ST. It is obvious that M M.. ST ST. Consequently, there exists a vertex i which belongs to both ST and ST and edges { i, j} which belongs to ST (and not to ST ) and { ik, } which belongs to ST (and not to ST) (see Figure ). According to Ste of algorithm (A), q ij, for each { i, j L (otherwise, the vertex k should q ik } ( ST ) be labeled in Ste ). Consequently, M qik M. i ST ST j k Figure. Efficiency of this algorithm remains the same as Prime's, i.e. On ( ) []. Examle : Given an instance of rectilinear grah where vertices, 5 and 9 are terminal and caacity assigned to each edge (Figure (a)).
8 M. Vujo{evi}, M. Stanojevi} / A Bicriterion Steiner Tree Problem on Grah 5 6 7 8 9 5 6 7 8 9 5 6 7 8 9 (a) (b) (c) Figure : Illustration of the algorithm (A) At the beginning, we label only vertex. Then, following edges are added iteratively according to algorithm A: (,), (,), (,5), (,7), (5, 8), (8,9). ow all terminal vertices are in the tree (Figure (b)). We can freely remove vertices 7 and from the Steiner tree because they don't influence the solution. The caacity of the Steiner tree is (Figure (c)).. MULTICRITERIA STEIER TREE PROBLEM Given an undirected weighted simle grah G = (, L, C, Q ) where, L, C and Q are described in the revious section, we define the bicriterion Steiner tree roblem as a task of finding a Steiner tree with maximal caacity and minimal length. In many cases the rocess of finding Steiner tree with maximal caacity may give multile solutions. Under the circumstances it seems aroriate to use the lexicograhic method which rovides finding the minimal length while keeing the otimal caacity of the tree. The logic inflicts an idea for more recise formulation of the bicriterion Steiner tree roblem as a lexicograhic otimization roblem. It means that the bottleneck Steiner tree roblem should be solved first. The otimal solution will determine the maximal caacity of the tree. After that, the next otimization roblem to be solved will be classical minisum Steiner tree roblem but under the constraint on the caacity of the tree. Based on the revious considerations the following algorithm for solving the bicriterion Steiner tree roblem is roosed: Algorithm (A). Solve the bottleneck Steiner tree roblem with the algorithm (A) and find out the maximal caacity M of the tree.. Remove from the initial grah all edges with caacity less than M.. "Cut the tails" from the grah as mentioned in ste of the heuristic (H) and ste 5 of the algorithm (A). (Those edges certainly will not influence the solution and this will simlify the next ste.). Solve the classical Steiner tree roblem on the remaining grah using any suitable algorithm or heuristic.
M. Vujo{evi}, M. Stanojevi} / A Bicriterion Steiner Tree Problem on Grah 9 The comlexity of Algorithm A deends on ste, i.e. if we chose a heuristic, the algorithm may remain olynomial, but if an exact algorithm is chosen, the whole Algorithm A becomes exonential. However, even in case we chose an exact algorithm, the reduction of edges erformed in stes and decreases the grah dimension and consequently may significantly decrease the comlexity of the whole algorithm. Examle : For the same instance as in Examle, the lengths are assigned to each edge (Figure (a)). 50 60 50 50 0 5 89 0 5 89 0 5 0 5 6 5 6 5 5 78 0 78 0 78 7 7 8 9 7 7 8 9 7 7 8 9 7 7 8 9 (a) (b) (c) (d) Figure : Illustration of the algorithm (A) First we remove all edges that have caacity less than (see the revious examle) (Figure (b)). After the "cutting" of vertices and 6 the grah in Figure (c) will remain. After solving classical STP, final solution is shown in Figure (d). This Steiner tree kees the otimal caacity and under that constraint has a minimal length. It is interesting to notice the following variations of the resented bicriterion Steiner tree roblem: The same formulation can also be alied to another bicriterion Steiner tree roblem where the caacity remains the first criterion while the second one is defined by the number of edges in the tree (which should be minimized). That is a secial case of the revious formulation where all edge lengths have the same value (e.g. c ij = ). Therefore, the same algorithm (A) can be used for this roblem, too. The relaxed lexicograhic method which allows trading between multile criteria can also be alied. By introducing arameter α given by the decision maker and by changing ste of Algorithm (A) where only edges with caacity less then M α should be removed, one can imrove the length of the Steiner tree by decreasing its caacity. By changing arameter α all efficient (dominant) solutions can be obtained.
0 M. Vujo{evi}, M. Stanojevi} / A Bicriterion Steiner Tree Problem on Grah. UMERICAL EXPERIECES For the urose of making numerical exeriments, the comuter rogram that imlements the algorithm (A) has been develoed. As it has been mentioned, the first ste of the rocedure was imlemented through the algorithm (A). The ste of algorithm (A) is erformed by heuristic (H). As a consequence, the whole rocedure has a olynomial comlexity. Therefore, no further code otimizations were done. Hence the second roblem (classical Steiner tree roblem) remains P hard, it was interesting to emirically research the level of grah reduction after Ste of algorithm (A). Three arameters were observed: (a) level of vertices reduction = ( n ) 00% where n is a vertices number of starting grah and n is vertices n number after reduction, (b) level of edges reduction M = ( m ) 00% where m is an edges number of starting grah and m is edges number of remaining grah and (c) maximal caacity M of Steiner tree. All results were obtained as the average of 50 solved instances. Instances were generated randomly. For that urose, two random arameters were used: (a) grah density arameter which resents robability that edge { i, j} exists and (b) range of robably chosen edge caacities R (i.e. q = rand(, R ) ). Table. n= 0, t =, R = n= 0, t =, R = 000 0. 5 7.9.5 9. 6.0 907 0. 6.5..0 59.0 580 0.5 0 50..76 7. 7.8 0.7 5 67.6.6 7. 709 0.9 70.7.66.8 8. 057 n= 00, t = 0, R = n= 00, t = 0, R = 000 0. 9. 55.7.6 7. 7. 87 0. 0.5 75..0.0 90.6 580 0.5 0 75.0.0 9.7 9.9 7 0.7 0 7.9.0.0 96.0 88 0.9 0 7.9.0 7. 97. 87 n= 6, t = 7, R = n= 6, t = 7, R = 000 0. 0 75..0.6 90. 57 0. 0 75.0.0 8.9 96.8 86 0.5 0 75.0.0 6. 97.8 906 0.7 0 75.0.0 6. 98.5 96 0.9 0 75.0.0 6.0 98.8 98 ij m
M. Vujo{evi}, M. Stanojevi} / A Bicriterion Steiner Tree Problem on Grah Different instances were generated varying arameters: number of vertices, grah density, R range of edge caacities and T number of terminal vertices. Exeriments have been done with the following values: n { 0, 00, 6}, { 00050709.,.,.,.,. }, R { 0000,, } and t { n, n }. Some of the obtained results are resented in Tables -. In the first set of exeriments and were varied for all lanned values. Values for R were and 000 and T was n. The results are resented in Table. The first thing that can be concluded is that ST caacity is related to both size and density of the grah. As they grow, the caacity gets better and consequently the grah reduction increases. Secondly, smaller instances have greater vertices reduction then the bigger ones, but reduction of edges dramatically increases with the grah dimension. It is interesting to notice that edges reduction was ''stacked'' on one quarter of initial edges number for instances with R = (which is the consequence of the uniform distribution of edge caacities) and is much better for instances with R = 000. It directly deends on the ST caacity. That observation initiated new set of exeriments with value of R between these ''extreme'' ones. We chose R = 0. ext we wanted to determine how the number of terminal vertices influence grah reduction. The results of these exeriments are given in the Table. Table. n= 0, t =, R = 0 n= 0, t = 5, R = 000 0..0 9.9 9.9 5.6.9 759 0..8 6.. 9. 0.0 0 0.5. 69..8 7.0 5. 0.7 9.8 75.0 8.9 7.0 68.0 700 0.9.8 8..8 9.0 77.9 09 n= 00, t = 0, R = 0 n= 00, t = 50, R = 000 0..5 70.0 7.8.9 55.6 97 0. 6.7 88.7 6. 5. 85. 96 0.5 5. 9. 8..8 9. 6 0.7. 9.5 8.7.9 9.6 7 0.9 0.6 95. 9..9 95. 85 n= 6, t = 7, R = 0 n= 6, t = 58, R = 000 0..9 88.0 5.9.7 8. 87 0. 8.5 95. 9.0.9 9. 76 0.5 7. 96.9 9.7.8 96.6 86 0.7. 97. 0.0.8 97.6 90 0.9 0.6 97. 0.0.8 98. 9
M. Vujo{evi}, M. Stanojevi} / A Bicriterion Steiner Tree Problem on Grah For instances where R = 0 the vertices reduction stayed between the values it had in revious instances. ST caacity reached its maximal value (for n= 6, = 0. 7 ) and therefore the number of edges was reduced to of its initial number. Unlike the instances with R = where the maximum was reached with n = 00 and small density, here the maximum was reached with n = 6 and greater density. Concerning the number of terminal vertices, the conclusion is that its influence on grah reduction is not too big, esecially to edges number. At last, we wanted to check all these trends on greater instances. We tried with n = 000, but only 5 instances er result were made (because of time consumtion). The results are resented in Table. In addition, here we resent average values for n, m and m which are described above. 0 Table. n= 000, t =, R = 000 n m m M 0. 89.6.9 68 9988 95.7 8 0. 98. 8. 07 9806 98.5 97 0.5 89. 0.7 98 9569 99. 968 0.7 89.8 0.7 85 967 99.5 979 0.9 8.0 8.6 6 950 99.6 985 It is obvious that the ST caacity increases with the grah size in both number of vertices and number of edges. Column m of Table clearly shows the decreasing number of remaining edges although the number of edges in initial grah (column m Table ) grows. The conclusion is that grah reduction grows roortionally to grah size, but the level of reduction stays olynomial. On the other hand, the comlexity of classical Steiner tree roblem is P, so the whole roblem remains P hard. evertheless, the grah reduction can move the border of solvable grah size further. REFERECES [] Climaco, J., and Martins, E.Q.V., "A bicriterion shortest ath algorithm", Euroean Journal of Oerational Research, (98) 990. [] Cook, W., Cunningham, W., Pulleyblank, W., and Schrijver, A., Combinatorial Otimization, Series in Discrete Mathematics and Otimization, Wiley-Interscience, 998. [] Cvetkovi}, D., Kova~evi}-Vuj~i}, V., (eds.), Combinatorial Otimization Mathematical theory and algorithms, Yugoslav Oerational Research Society, Belgrade, 996. (in Serbian) [] Ehtgott, M., Multicriteria Otimization, Sringer-Verlag, 000. [5] Ehrgott, M., and Gandibleux, X., "An annotated bibliograhy of multiobjective combinatorial otimization", Reort in Wissenschaftmathematik r 6/000, Universitat Kaiserslautern, 000. www.mathematik.uni-kl.de
M. Vujo{evi}, M. Stanojevi} / A Bicriterion Steiner Tree Problem on Grah [6] Harris Jr., F.C., "Steiner minimal trees: An introduction, arallel comutation and future work", in: D.-Z. Du, P. M. Pardalos (eds.), Handbook of Combinatorial Otimization, Kluwer Academic Publishers, 998. [7] Ivanov, A.O., and Tuzhelin, A.A., Minimal etworks: The Steiner Problem and Its Generalizations, CRC Press, 99. [8] Ulungu, E.L., and Teghem, J., "Multi-objective combinatorial otimization roblems: A survey", Journal of Multi-Criteria Decision Analysis, (99) 80. [9] Vujo{evi}, M., and Stanojevi}, M., "Bottleneck Steiner tree roblem", EURO XVII, 7th Euroean Conference on Oerational Research, Budaest, July 69, 000. [0] Vujo{evi}, M., and Stanojevi}, M., "Multiobjective travelling salesman roblem and a fuzzy set aroach to solving it", Alication of Mathematics in Engineering and Economics, 7 (00) 8. [] Warme, D.M., Winter, P., and Zachariasen, M., "Exact algorithm for lane Steiner tree roblems: A comutational study", in: D.-Z. Du, M. Smith, J. H. Rubinstein (eds.), Advances in Steiner Trees, Kluwer Academic Publishers, 998. [] Steiner tree bibliograhy, htt://www.ganley.org/steiner/steinerbib.html