Algorithms for the degree-constrained minimum spanning tree problem

Algorithms for the degree-constrained minimum spanning tree problem

Electronic Notes in Discrete Mathematics 19 (2005) 403–409 www.elsevier.com/locate/endm Algorithms for the degree-constrained minimum spanning tree p...

174KB Sizes 3 Downloads 194 Views

Electronic Notes in Discrete Mathematics 19 (2005) 403–409 www.elsevier.com/locate/endm

Algorithms for the degree-constrained minimum spanning tree problem Alexandre Salles da Cunha a,1 , Abilio Lucena b a

Programa de Engenharia de Sistemas e Computa¸ca ˜o - COPPE Universidade Federal do Rio de Janeiro Rio de Janeiro, Brasil b

Departamento de Administra¸c˜ ao Universidade Federal do Rio de Janeiro Rio de Janeiro, Brasil

Abstract In this paper, two different approaches are proposed to obtain upper and lower bounds to the Degree Constrained Minimum Spanning Tree Problem. To the best of our knowledge, these algorithms are the very first which use blossom inequalities (facet defining for the b-Matching polytope) to generate lower bounds to the problem studied here. One approach is based on (Lagrangian) Relax-and-Cut while the other is a cutting plane algorithm. Preliminary computational results indicate that both approaches may lead to heuristics and to exact solution algorithms that are competitive with the best in the literature. Keywords: relax-and-cut, linear programming, cutting plane, degree-constrained minimum spanning tree, blossom inequalities

1 The author is partially supported by Conselho Nacional de Desenvolvimento Cient´ıfico e Tecnol´ogico - CNPq (grant 14067/2002-9) and by Coordena¸ca˜o de Aperfei¸coamento de Pessoal de N´ıvel Superior - CAPES (grant BEX1543/04-0). Email: [email protected] 2 Email: [email protected]

1571-0653/2005 Published by Elsevier B.V. doi:10.1016/j.endm.2005.05.054

404

1

A.S. da Cunha, A. Lucena / Electronic Notes in Discrete Mathematics 19 (2005) 403–409

Introduction

Let G = (V, E) be a connected undirected graph with a set V of vertices and a set E of edges. Assume that real valued costs {ce : e ∈ E} are associated with the edges of G and that a spanning tree of G is feasible if it does not violate integral valued vertex degree upper bounds {1 ≤ bi ≤ |V | − 1, ∀i ∈ V }. Accordingly, the Degree Constrained Minimum Spanning Tree Problem (DCMSTP) is to find a least cost feasible spanning tree of G. The decision version of DCMSTP is NP-complete [5]. References to existing DCMSTP solution algorithms and practical applications of the problem can be found in [1]. In this paper, we propose two different approaches to generate lower and upper bounds to DCMSTP. Contrary to previous studies in the literature, they use Blossom Inequalities (BIs) to strengthen DCMSTP lower bounds. For the first approach, Relax-and-Cut is used to generate Lagrangian based lower bounds. For the second one, BIs and Subtour Elimination Constraints (SECs) are used as cutting planes in a Linear Programming (LP) based algorithm. In conjunction with these two lower bounding approaches, upper bounding procedures are also suggested. Preliminary computational results indicate that the suggested approaches may lead to exact solution algorithms and heuristics that are competitive with the best in the literature. This paper is organized as follows. In Section 2, a classical Integer Programming (IP) formulation of DCMSTP is strengthened by BIs. Relax-andCut bounds are discussed in Section 3 while LP based ones are considered in Section 4. In Section 5, preliminary computational results are presented. Finally, in Section 6, the paper is closed with conclusions and suggestions.

2

A strengthened IP formulation or DCMSTP

Associate binary 0-1 variables {xe : e ∈ E} with the edges of G and denote by E(S) the set of edges with both endpoints in S ⊆ V . Additionally, denote by δ(S) those edges with exactly one endpoint in S ⊆ V . Accordingly, let x(M ) be the sum of the decision variables associated with the edges in M ⊆ E. A classical DCMSTP formulation is then given by    (1) ce xe : x ∈ H ∩ Z|E| , min e∈E

where H is the polyhedral region (2)

x(E) = |V | − 1,

A.S. da Cunha, A. Lucena / Electronic Notes in Discrete Mathematics 19 (2005) 403–409

(3)

x(E(S)) ≤ |S| − 1, ∀S ⊂ V,

(4)

x(δ(i)) ≤ bi , ∀ i ∈ V,

(5)

0 ≤ xe ≤ 1, ∀e ∈ E.

405

Inequalities (2), (3) and (5) fully describe the Spanning Tree Polytope, while the b-Matching Inequalities (b-MIs) (4) enforce vertex degree constraints. BIs are facet  defining for the u-Capacitated b-Matching polytope [4]. Defining b(S) := i∈S bi , one may specialize BIs for the 1-Capacitated case as   1 x(E(S)) + x(J) ≤ (6) (b(S) + |J|) , ∀S ⊆ V, ∀J ⊆ δ(S), 2 for (b(S) + |J|) odd. Inequalities (6) are thus valid for DCMSTP and may therefore be used to strengthen lower bounds to (1).

3

Relax-and-cut bounds

Assume that inequalities (4) are dualized in a Lagrangian fashion, under multipliers λ ≥ 0. A valid lower bound to DCMSTP is thus given by the Lagrangian Relaxation Problem     (7) c e xe + λi (x(δ(i)) − bi ) : x is a MST of G . LRP(λ) = min e∈E

i∈V

In this case, the best bound one may obtain is given by the Lagrangian dual (8)

LDP = max {LRP(λ) : λ ≥ 0}.

However, BIs (6) may be used to reinforce Lagrangian relaxation bounds in a Relax-and-Cut approach. Accordingly, we dualize BIs on the fly as they become violated at the solution to (7) (see [3] for details). One should thus think of LRP(λ) in (7) as LRP(λ, β), where β is associated with dualized BIs. In this paper, we use the Subgradient Method (SM) of Held, Wolfe and Crowder to solve (8). Denote by x the (spanning tree of G) solution to (7), for the current iteration of SM. In our separation algorithm for BIs, S is initialized with a single vertex which violates b-MIs in x. For any given set S, an edge set J is selected by inspection so that (b(S) + |J|) is odd. Set S may be expanded, one vertex at a time, by taking, as candidates, spanning tree vertices that are neighbors to vertices already introduced into S. The procedure is repeated for as long as expanding S results in a violated BI. Since potentially many violated BIs may be found throughout this procedure, only the one implying the largest violation is eventually dualized. The separation procedure is applied for as

406

A.S. da Cunha, A. Lucena / Electronic Notes in Discrete Mathematics 19 (2005) 403–409

many times as there are spanning tree vertices that violate (4). Each of these vertices is used to initialize a different run of the separation algorithm. We generate feasible solutions to DCMSTP by essentially adapting the Lagrangian heuristic described in [1] to our Relax-and-Cut framework. Whenever |V | > 2 and bi = bj = 1 for i, j ∈ V , edge e = {i, j} may be eliminated from E in a preprocessing test. Reduced costs variable fixing tests similar to those found in [1] are also used in our algorithm. After applying one round of SM, assume that optimality of the available DCMSTP upper bound could not be proven. Assume as well that a significant number of variables were eliminated. We then keep applying successive runs of SM for as long as, for the current SM run, optimality is not proven and a significant number of variables are eliminated.

4

Linear programming bounds

Let x be an optimal solution to the LP relaxation of (1) given by    min (9) ce xe : x ∈ R|E| ∩ (2) ∩ (4) ∩ (5) . e∈E

If x is integral valued and does not violate SECs nor BIs, it must be an optimal solution to (1). Otherwise, LP relaxation (9) may be reinforced with violated SECs and/or BIs to obtain a stronger updated x. Non-decreasing LP relaxation bounds are obtained by progressively reinforcing LP relaxations until no more violated SECs or BIs exist. For the computational results in Section 5, we attempt to identify violated BIs only after no violated SEC could be found. Separation of SECs is initially carried out through a heuristic. If the heuristic does not identify any violated SEC, we resort to an exact separation algorithm based on [7]. Violated BIs are identified through the exact u-Capacitated b-Matching separation algorithm in [6]. A LP based upper bounding heuristic, similar to the one suggested in Section 3, is used to obtain feasible solutions to DCMSTP.

5

Preliminary computational results

Instances in Tables 1-2 are randomly generated, as suggested in [1]. For all these instances, bi ’s are drawn from {1, 2, 3} (with uniform probability) and integral valued randomly generated Euclidean plane coordinates in the range {1, 1000} are associated with every vertex in V . Edge costs are taken as

407

A.S. da Cunha, A. Lucena / Electronic Notes in Discrete Mathematics 19 (2005) 403–409

Instance D100 D100 D100 D200 D200 D200 D300 D300 D300 D400 D400 D400 D500 D500 D500 D600 D600 D600

1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3

LB 8778.032 9628.493 10783.479 12028.997 12616.751 12209.993 14768.793 13920.551 14944.452 19231.783 17384.470 16070.678 19345.595 22364.973 19376.952 21906.103 21408.512 22219.844

Relax-and-Cut results UB Gap % % of Cycles FE Iter 8779 Opt 1-757 9629 Opt 1-614 10822 0.352 90.9 3-1500 12041 0.100 98.2 3-1500 12753 1.078 86.0 3-1500 12315 0.860 90.2 3-1500 14876 0.724 91.4 3-1500 13949 0.201 97.4 3-1500 15109 1.097 85.6 3-1500 19277 0.234 96.6 3-1500 17596 1.214 82.7 3-1500 16111 0.249 97.2 3-1500 19480 0.692 90.4 3-1500 22829 2.074 42.4 3-1500 19739 1.868 65.0 3-1500 22229 1.470 69.2 3-1500 21802 1.836 59.7 3-1500 22674 2.043 52.1 3-1500

CPU 0:03 0:04 0:17 0:49 1:29 1:20 4:02 2:44 3:43 14:24 12:40 12:42 19:58 67:21 39:22 59:30 68:47 97:17

Linear Programming results LB LB UB Gap % Iter SEC BLOSSOM 8775.000 8779.000 8779 Opt 26 9623.000 9629.000 9629 Opt 62 10783.000 10791.000 10803 0.111 165 12022.000 12029.000 12079 0.416 224 12611.500 12624.333 12760 1.069 456 12208.500 12224.000 12339 0.941 298 14758.500 14778.250 14913 0.907 688 13906.000 13927.000 13937 0.072 189 14920.500 14981.792 15109 0.948 749 19227.000 19239.000 19239 Opt 1027 17373.500 17405.500 17615 1.201 1059 16063.000 16074.500 16239 1.020 1169 19332.500 19356.000 19393 0.139 1412 22394.000 22397.000 22453 0.250 2772 19365.500 19394.750 19720 1.675 1752 21900.375 21917.677 22162 1.113 1752 21390.875 21424.500 21798 1.741 2257 22217.000 22239.000 22348 0.490 2778

CPU 0:00 0:02 0:10 1:19 3:30 1:56 16:44 4:56 20:48 55:52 53:24 108:42 193:37 396:30 264:37 397:18 526:37 739:56

Table 1 Relax-and-cut and Linear Programming results. Instance D100 D100 D100 D200 D200 D200 D300 D300 D300 D400 D400 D400 D500 D500 D500 D600 D600 D600

1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3

LB LB UB Gap % SEC BLOSSOM 8778.032 8779 Opt 9628.493 9629 Opt 10783.000 10791.000 10801 0.093 12022.000 12029.000 12041 0.100 12611.500 12624.333 12753 1.014 12208.500 12224.000 12315 0.744 14758.500 14778.250 14876 0.907 13906.000 13927.000 13937 0.072 14920.500 14981.792 15109 0.848 19227.000 19239.000 19239 Opt 17373.500 17405.500 17521 0.661 16063.000 16074.500 16111 0.218 19332.500 19356.000 19383 0.139 22394.000 22397.000 22746 1.554 19365.500 19394.750 19682 1.480 21900.375 21917.677 22099 0.825 21390.875 21424.500 21756 1.544 22217.000 22239.000 22382 0.643

Iter 145 149 347 284 763 79 729 1358 1164 1175 1283 2460 1596 1945 2616 2362

CPU Preprocess 0:03 0:04 0:17 0:49 1:29 1:20 4:02 2:44 3:43 14:24 12:40 12:42 19:58 67:21 39:22 59:30 68:47 97:17

CPU 0:01 0:02 0:29 0:19 2:17 0:02 3:34 5:49 15:22 6:27 19:06 187:04 84:28 167:38 265:42 328:09

CPU CPU Red. Total Rate 0:03 0:04 0:18 > 1 0:51 0.645 1:58 0.562 1: 39 0.853 6:19 0.378 2:46 0.561 7:17 0.182 20:13 0.362 28:02 0.525 19:09 0.176 39:04 0.202 254:25 0.642 123:50 0.468 227:08 0.571 334:29 0.635 425:26 0.575

Table 2 Combined Relax-and-cut and Linear Programming results.

the rounded down Euclidean distances between corresponding vertex points. Graphs are complete and instance dimensions are specified within their names. All algorithms were coded in C and experiments were carried out on an Athlon 3GHz based machine. GNU compiler gcc was used (flag -O3 activated) under the Linux operating system. In Table 1, for the first set of columns, best lower (LB) and upper (UB) Relax-and-Cut bounds are presented together with their corresponding percentage duality gaps. Column (% of FE) indicates the number of suboptimal edges eliminated by the variable fixing tests (as a percentage of the original number of edges). A column for the number of SM cycles performed and the number of SM iterations in each cycle, follows. Finally, a column for CPU times (minutes:seconds) is given. A similar pattern is used for the LP based results in the following columns in Table 1. Two LP lower bounds are presented, respectively under columns LB SEC and LB

408

A.S. da Cunha, A. Lucena / Electronic Notes in Discrete Mathematics 19 (2005) 403–409

BLOSSOM. Column LB SEC gives LP bounds obtained while only separating SECs. Column LB BLOSSOM gives LP bounds obtained while separating SECs and BIs. Results in Table 2 relate to the combined use, as suggested in [3], of Relax-and-Cut (as a preprocessor) and LP relaxation. CPU times are given for the total time spent in this two-steps procedure. UB in Table 2 indicates the best upper bound obtained throughout the overall procedure. Optimality certificates were obtained for 3 out of the 18 instances in the test set. That could only be attained because BIs, together with SECs, were used. Furthermore, bounds that involve BIs, either Linear or Lagrangian, consistently improved upon the bounds based on the use of SECs alone. For those instances where optimality could not be proven by Relax-and-Cut, 82.1 % of the original edges were, on the average, priced out. Through the combined use of SECs and BIs we are able to generate stronger DCMSTP lower bounds than the best exact solution algorithm found in the literature, i.e. [2]. It is therefore likely that an exact solution algorithm based on any of the two approaches introduced here should be competitive with that algorithm. The hybrid algorithm, involving Relax-and-Cut preprocessing, cut overall CPU times to about one third of what they would otherwise be if preprocessing is not carried out. Finally, preliminary results appear to indicate that our upper bounds are stronger than those in [1], which are the best in the literature.

6

Conclusions

In this paper we describe the combined use of SECs and BIs to reinforce DCMSTP lower and upper bounds. From our preliminary computational results, bounds generated by either of the two investigated approaches appear competitive with the best in the literature. Furthermore, a hybrid algorithm that uses Relax-and-Cut as a preprocessor to Linear Programming dominates the straightforward Linear Programming approach, in terms of CPU time. Based on the results presented here, two exact solution approaches will be implemented for DCMSTP: a Relax-and-Cut based Branch-and-Bound algorithm and a Branch-and-Cut algorithm. These algorithms should be presented at GRACO 2005.

A.S. da Cunha, A. Lucena / Electronic Notes in Discrete Mathematics 19 (2005) 403–409

409

References [1] R. Andrade, A. Lucena and N. Maculan. Using lagrangian dual information to generate degree constrained minimum spanning trees. Discrete Applied Mathematics (accepted for publication), 2004. [2] L. Cacceta and S.P. Hill. A branch and cut method for the degree-constrained minimum spanning tree problem. Networks, 37(2): 74-83, 2001. [3] F. Calheiros, A. Lucena and C. de Souza. Optimal Rectangular Partitions. Networks, 41, 51-67, 2003. [4] J. Edmonds. Maximum matching and a polyhedron with 0-1 vertices. J. Res. Nat. Bur. Standards,69B: 125-130, 1965. [5] M.R. Garey and D.S. Johnson. Computers and Intractability: a guide to the theory of NP-completeness. Freeman, 1979. [6] A.N. Letchford, G. Reinelt and D.O. Theis. A faster exact separation algorithm for blossom inequalities. In G. Nemhauser and D. Bienstock (Eds.) Integer Programming and Combinatorial Optimization 10. Lecture Notes in Computer Science, Vol 3064. Berlin: Springer Verlag, 2004. [7] M. Padberg and L. Wolsey. Trees and cuts. Annals of Discrete Mathematics, 17: 511-517, 1983.