The Generalized Minimum Spanning Tree: Polyhedra and Branch-and-Cut

The Generalized Minimum Spanning Tree: Polyhedra and Branch-and-Cut

The Generalized Minimum Spanning Tree: Polyhedra and Branch-and-Cut Feremans Corinne Service de Math´ematiques de la Gestion, Universit´e Libre de Bru...

84KB Sizes 3 Downloads 53 Views

The Generalized Minimum Spanning Tree: Polyhedra and Branch-and-Cut Feremans Corinne Service de Math´ematiques de la Gestion, Universit´e Libre de Bruxelles, B-1050 Brussels, Belgium

Labb´e Martine Service de Math´ematiques de la Gestion, Universit´e Libre de Bruxelles, B-1050 Brussels, Belgium

Laporte Gilbert Centre de Recherche sur les Transports, Universit´e de Montr´eal, H3C3J7 Montr´eal, Canada

Abstract An undirected graph whose nodes are partitioned into mutually exclusive and exhaustive node sets is given. The GMSTP consists of finding a minimum-cost tree which includes exactly one node from each node set. A classification of linear formulations is given. A Branch-and-Bound algorithm is implemented. Inequalities inducing facets are investigated. Key words: Minimum Spanning Tree, integer programming, generalization.

1

Introduction

Given an undirected graph whose nodes are partitioned into mutually exclusive and exhaustive node sets, the Generalized Minimum Spanning Tree Problem (GMSTP) is to find a minimum-cost tree which includes exactly one node from each node set. We consider several linear formulations of the GMSTP and their related linear relaxations with the aim of finding a “good” formulation for the development of a Branch and Cut solving method . It is well known that the classical Minimum Spanning Tree Problem (MSTP) Preprint submitted to Elsevier Preprint

26 April 1999

is polynomial however its generalized version is NP -hard [2]. Moreover, if P = NP no polynomial-time heuristic with a finite worst-case performance ratio can exist [2]. Our study of the polytopes associated to linear relaxation of linear formulations is essentially based on the linear formulations of the MSTP and of the Node Weighted Steiner Tree Problem [3]. A Branch and Bound algorithm is developed using one of the best formulations and a greedy heuristic is implemented yielding an upper bound. This method is implemented in C++ and uses the class library ABACUS [1]. We analyze the facial structure of the polytope associated to the GMSTP with the aim of finding “good” inequalities to strengthen our previous linear formulations. Several families of inequalities which are facet-inducing for the polytope of the GMSTP are investigated. Our proofs of “facetness” for valid inequalities of the GMSTP polytope use tools developped in [4] and also classical results from [5]. Polytopes which are closely related to the GMSTP polytope are investigated. Facets-inducing results are extended to these more general polytopes.

2

Notations

The GMSTP is defined on an undirected graph G(V, E) (V is the node set and E the edge set) with nodes partitionned into m mutually exclusive and exhaustive node sets: V = V1 ∪ V2 ∪ ... ∪ Vm with Vi ∩ Vj = ∅ ∀i = j. Let K = {1, ..., m} be the index set of the node sets. The Vi are called “clusters”. We assume that m ≥ 5 and that edges are defined between nodes belonging to different sets (i.e. the graph is complete in the sense of the clusters). If  variable x is defined for the elements of a set M, then we denote xi for i∈N

N ⊆ M by x(N). For each S ⊂ V , let δ(S) = {e = {i, j} ∈ E|i ∈ S, j ∈ V \S}, E(S) = {e = {i, j} ∈ E|i ∈ S, j ∈ S}, µ(S) = |{k : Vk ⊆ S}|, η(S) = |{k : Vk ∩ S = ∅}|.

For v ∈ V we denote by Vh(v) the cluster containing v. We also define W = {v ∈ V : |Vh(v) | = 1}. 2

The common used variables are   1

xij =   and

3

0 otherwise

  1

yi =  

{i, j} ∈ E selected i ∈ V selected

0 otherwise.

Linear Formulations

A feasible solution of the GMSTP can be seen as a subgraph including |K| − 1 edges and having a path between any pair of the |K| selected nodes. Therefore, this leads to the following 0-1 mixed integer programming problem: Definition 1 Cutset formulation y(Vk ) = 1

k∈K

x(δ(S)) ≥ y(Vk \S) − y(Vp\S)

∅⊂S⊂V k, p ∈ K, k = p

x(E) = |K| − 1 xij ∈ {0, 1}

{i, j} ∈ E

yi ∈ {0, 1}

i ∈ V.

A feasible solution of the GMSTP can also be seen as a subgraph containing |K| − 1 edges and having no cycle in the subgraph induced by the |K| selected nodes. Definition 2 Subpacking formulation y(Vk ) = 1

k ∈ K (1)

x(E) = |K| − 1

(2)

x(E(S)) ≤ y(S\Vk ) ∅ ⊂ S ⊂ V, k ∈ K (3) xij ∈ {0, 1}

{i, j} ∈ E (4)

yi ∈ {0, 1}

i ∈ V (5). 3

Let P = denotes the GMSTP polytope defined as P = = conv{(x, y) ∈ IR|E|×|V | |(1), (2), (3), (4), (5) hold}. We can show that constraints x(E(S)) ≤ y(S\Vk ) ∅ ⊂ S ⊂ V, k ∈ K, are dominated by constraints x(E(S)) ≤ y(S) − 1,

∅ ⊂ S ⊂ V, µ(S) = 0, k ∈ K

(5 ).

The linear relaxation associated to this formulation is solved dynamically. First, we solve the linear program obtained by dropping the integrality constraints and the constraints (5 ). This leads to a current solution (˜ x, y˜). For every fixed cluster Vk , k = 1, · · · , |K|, we look for the constraint x(E(S)) ≤ y(S) − 1, Vk ⊂ S ⊂ V which is most violated by (˜ x, y˜). For this purpose, we solve a mincut problem defined on an auxiliary graph. We add at most |K| (one per cluster) constraints to the current linear program. We iterate until no more violated constraint is found. If so, the method branches using a “close-half-expensive” strategy. The GMSTP defined on an undirected graph G(V, E) can always be transformed into a Generalized Minimum Spanning Arborescence Problem (GMSAP). The GMSAP in a directed graph is to find a minimum-cost arborescence which includes exactly one node from each node set. One node set is designated the root node set from which the root node of the arborescence has to be selected. The undirected problem can be transformed into a directed one by bidirecting every edge of the undirected graph, choosing arbitrarily a root node set denoted V1 , and letting the costs of both arcs (i, j) and (j, i) be the same as the cost of edge {i, j}. Let A be the set of arcs. Definition 3 Directed cutset formulation y(Vk ) = 1

k∈K

x(E) = |K| − 1 w(δ − (S)) ≥ y(V1 \S) − y(Vk \S) ∅ ⊂ S ⊂ V k ∈ K\{1} wij ≤ yi

i ∈ V1 , j ∈ V1

wij + wji = xij

{i, j} ∈ E

xij ∈ {0, 1}

{i, j} ∈ E

yi ∈ {0, 1}

i∈V

wij ∈ {0, 1}

(i, j) ∈ A. 4

Definition 4 Directed subpacking formulation

y(Vk ) = 1

k∈K

x(E) = |K| − 1 x(E(S)) ≤ y(S\Vk ) ∅ ⊂ S ⊂ V, k ∈ K wij + wji = xij

{i, j} ∈ E

w(δ − (j)) = yj

j ∈ V \V1

xij ∈ {0, 1}

{i, j} ∈ E

yi ∈ {0, 1}

i∈V

wij ∈ {0, 1}

(i, j) ∈ A.

Proposition 5 Psub = Pdsub = Pdcut ⊂ Pcut where P polytopes in the (x, y)-space.

4

are the associated

Facets

Proposition 6 dim( P =) = |E| + |V | − |K| − 1.

Proposition 7 Trivial inequalities. (1) The inequality xe ≥ 0 defines a facet of P = for all e ∈ E. (2) The inequality xe ≤ 1 defines a facet of P = if and only if e ∈ E(W ). (3) For i ∈ W , xij ≤ yi defines a facet of P = if and only if j ∈ W .

Proposition 8 The inequality x(E(S)) ≤ y(S) − 1, µ(S) = 0, ∅ ⊂ S ⊂ V is facet-defining for P = if and only if one of the following condition holds: (1) η(S) ≥ 3 and η(V \S) ≥ 2. (2) S = {v} ∪ Vl with h(v) = l, v ∈ W . (3) S = V \{v}, v ∈ V .

5

Proposition 9 Given 2r + 1 clusters V1 , · · · , V2r+1 , for every partition of the form Vk = Vk1 ∪ Vk2 , Vk1 ∩ Vk2 = ∅, Vk1 , Vk2 = ∅ for all k = 1, · · · , 2r + 1 if r = 1 or r = 2 then 2r 

x(δ(Vk1 , Vk+12 )) + x(δ(V2r+11 , V12 )) ≤ r

k=1

defines a facet of P =. Proposition 10 Given 2r +1 clusters V1 , · · · , V2r+1 , for every partition of the form Vk = Vk1 ∪ Vk2 ∪ · · · ∪ Vk2r , Vki ∩ Vkj = ∅, i = j, Vki = ∅, i, j = 1, 2, · · · , 2r, k = 1, 2, · · · , 2r + 1 if r = 2 then 2r  2r 

x(δ(Vij , Vj+1i )) ≤ r

i=1 j=i

defines a facet of P =.

References [1] Universit¨at zu K¨ oln,Universit¨ at Heidelberg. ABACUS, A Branch-And-CUt System (Version 2.2, October 1998) [2] Y.S. Myung, C.H. Lee, D.W. Tcha. On the Generalized Minimum Spanning Tree Problem. (Networks 26, 1995) 231–241. [3] T.L. Magnanti, L.A. Wolsey. Optimal Trees. (Handsbooks in OR & MS 7,1995). [4] M. Fischetti, J.J. Salazar, P. Toth. The Symmetric Generalized Traveling Salesman Polytope. (Networks 26, 1997) 113–123. [5] G.L. Nemhauser, L.A. Wolsey. Integer and Combinatorial Optimization. ( John Wiley & Sons, 1988).

6