Solving the Euclidean Steiner Tree Problem in n-space

Similar documents
Marcia Fampa Universidade Federal do Rio de Janeiro Rio de Janeiro, RJ, Brazil

A specialized branch-and-bound algorithm for the Euclidean Steiner tree problem in n-space

Solving the Euclidean Steiner tree problem in n-space

An improved algorithm for computing Steiner minimal trees in Euclidean d-space

This article appeared in a journal published by Elsevier. The attached copy is furnished to the author for internal non-commercial research and

An improved algorithm for computing Steiner minimal trees in Euclidean d space

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg

Construction of Minimum-Weight Spanners Mikkel Sigurd Martin Zachariasen

Geometric Steiner Trees

2 The Service Provision Problem The formulation given here can also be found in Tomasgard et al. [6]. That paper also details the background of the mo

Discrete Optimization with Decision Diagrams

Fundamentals of Integer Programming

Solving a Challenging Quadratic 3D Assignment Problem

Branch-and-bound: an example

Exploiting Degeneracy in MIP

Rearrangement of DNA fragments: a branch-and-cut algorithm Abstract. In this paper we consider a problem that arises in the process of reconstruction

3 INTEGER LINEAR PROGRAMMING

Linear Programming. Course review MS-E2140. v. 1.1

Solving a Challenging Quadratic 3D Assignment Problem

Parallel Machine and Flow Shop Models

A Row-and-Column Generation Method to a Batch Machine Scheduling Problem

A New Multistart Algorithm. Marcel Hunting AIMMS Optimization Specialist

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

DETERMINISTIC OPERATIONS RESEARCH

LaGO. Ivo Nowak and Stefan Vigerske. Humboldt-University Berlin, Department of Mathematics

The ILP approach to the layered graph drawing. Ago Kuusik

Stochastic Separable Mixed-Integer Nonlinear Programming via Nonconvex Generalized Benders Decomposition

General Methods and Search Algorithms

The Full Survey on The Euclidean Steiner Tree Problem

Algorithms for Decision Support. Integer linear programming models

An Optimal Algorithm for the Euclidean Bottleneck Full Steiner Tree Problem

Standard dimension optimization of steel frames

Set Cover with Almost Consecutive Ones Property

First steps to solve MINLP problems with Muriqui Optimizer

EECS 571 Principles of Real-Time Embedded Systems. Lecture Note #8: Task Assignment and Scheduling on Multiprocessor Systems

ALGORITHM CHEAPEST INSERTION

Minimum Perimeter Developments of the Platonic Solids

Cutting Planes for Some Nonconvex Combinatorial Optimization Problems

Global Solution of Mixed-Integer Dynamic Optimization Problems

Column Generation and its applications

Approximation Algorithms

Mathematical programming algorithms for spatial cloaking

Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007)

Abstract The generation of a reservoir development plan with well locations, given a reservoir property map and a set of infrastructure constraints, r

5.3 Cutting plane methods and Gomory fractional cuts

HEURISTIC ALGORITHMS FOR THE GENERALIZED MINIMUM SPANNING TREE PROBLEM

Canonical Forms and Algorithms for Steiner Trees in Uniform Orientation Metrics

An SDP Approach to Multi-level Crossing Minimization

TIM 206 Lecture Notes Integer Programming

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

Ray shooting from convex ranges

Penalty Alternating Direction Methods for Mixed- Integer Optimization: A New View on Feasibility Pumps

A Note on the Separation of Subtour Elimination Constraints in Asymmetric Routing Problems

Last topic: Summary; Heuristics and Approximation Algorithms Topics we studied so far:

Brian Borchers and John E. Mitchell. Rensselaer Polytechnic Institute. Abstract. nonlinear programs with convex objective functions and constraints.

Advanced Use of GAMS Solver Links

Comparison of Some High-Performance MINLP Solvers

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

L2: Algorithms: Knapsack Problem & BnB

Mathematical Programming Formulations, Constraint Programming

Exact and heuristic algorithms for the Euclidean Steiner tree problem

The Size Robust Multiple Knapsack Problem

Branch-and-Cut and GRASP with Hybrid Local Search for the Multi-Level Capacitated Minimum Spanning Tree Problem

An Introduction to Dual Ascent Heuristics

MINLP applications, part II: Water Network Design and some applications of black-box optimization

11. APPROXIMATION ALGORITHMS

A Lifted Linear Programming Branch-and-Bound Algorithm for Mixed Integer Conic Quadratic Programs

Two models of the capacitated vehicle routing problem

Local Search for the Steiner Tree Problem in the Euclidean Plane Martin Zachariasen September 8, 1997 Abstract Most heuristics for the Steiner tree pr

Math Models of OR: The Simplex Algorithm: Practical Considerations

Embedding Formulations, Complexity and Representability for Unions of Convex Sets

Department of Mathematics Oleg Burdakov of 30 October Consider the following linear programming problem (LP):

15.083J Integer Programming and Combinatorial Optimization Fall Enumerative Methods

Integrating Mixed-Integer Optimisation & Satisfiability Modulo Theories

Research Interests Optimization:

Selected Topics in Column Generation

Propagating Separable Equalities. in an MDD Store. Peter Tiedemann INFORMS John Hooker. Tarik Hadzic. Cork Constraint Computation Centre

A Nonlinear Presolve Algorithm in AIMMS

3 No-Wait Job Shops with Variable Processing Times

The BKZ algorithm. Joop van de Pol

Solving lexicographic multiobjective MIPs with Branch-Cut-Price

Martin W.P. Savelsbergh. Georgia Institute of Technology. School of Industrial and Systems Engineering

Reload Cost Trees and Network Design

Finding a minimum-sum dipolar spanning tree in R 3

Investigating Mixed-Integer Hulls using a MIP-Solver

SUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

to the Traveling Salesman Problem 1 Susanne Timsj Applied Optimization and Modeling Group (TOM) Department of Mathematics and Physics

An MILP Model for Short Term Scheduling. of a Special Class of Multipurpose Batch Plants

Bi-objective Network Flow Optimization Problem

Finding Shortest Path on Land Surface

Heuristics in MILP. Group 1 D. Assouline, N. Molyneaux, B. Morén. Supervisors: Michel Bierlaire, Andrea Lodi. Zinal 2017 Winter School

Cyber Security Analysis of State Estimators in Electric Power Systems

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

Lower Bounds for Insertion Methods for TSP. Yossi Azar. Abstract. optimal tour. The lower bound holds even in the Euclidean Plane.

Automatic Scheduling of Hypermedia Documents with Elastic Times


Multiple-choice Vector Bin Packing: Arc-flow Formulation with Graph Compression

Floorplan Area Minimization using Lagrangian Relaxation

All 0-1 Polytopes are. Abstract. We study the facial structure of two important permutation polytopes

Transcription:

Solving the Euclidean Steiner Tree Problem in n-space Marcia Fampa (UFRJ), Jon Lee (U. Michigan), and Wendel Melo (UFRJ) January 2015 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 1 / 32

Problem Denition Given p points in R n. Euclidean Steiner Tree Problem Find a tree with minimal Euclidean length that spans these points using or not extra points, which are called Steiner points. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 2 / 32

Problem Denition Given p points in R n. Euclidean Steiner Tree Problem Find a tree with minimal Euclidean length that spans these points using or not extra points, which are called Steiner points. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 2 / 32

Problem Denition Determine: The number of Steiner points to be used on the minimal tree. The arcs of the tree. Geometrical position of the Steiner points. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 3 / 32

Properties of Steiner Minimal Trees (SMTs) on p terminals No two edges meet at a point with angle less than 120. Each terminal point has degree between 1 and 3. Each Steiner point has degree equal to 3. The number of Steiner points is p 2. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 4 / 32

Full Steiner Topology (FST) A full Steiner topology (FST) for p terminals is a topology with p 2 Steiner points, where all the terminals have degree one and Steiner points have degree three. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 5 / 32

Degenerate Steiner Topologies A topology is called a degeneracy of another if the former can be obtained from the latter by shrinking edges. degenerated Steiner points 2 7 2 1 3 1 7 8 8 3 6 10 9 4 6 9 4 5 10 5 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 6 / 32

Degenerate Steiner Topologies A topology is called a degeneracy of another if the former can be obtained from the latter by shrinking edges. Fact: Any SMT either has a full Steiner topology or a degenerated full Steiner topology. degenerated Steiner points 2 7 2 1 3 1 7 8 8 3 6 10 9 4 6 9 4 5 10 5 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 7 / 32

Solution algorithms n = 2 P. Winter, M. Zachariasen, Euclidean Steiner minimum trees: An improved exact algorithm. Networks, 30 (3) (1997), pp. 149166. D.M. Warme, P. Winter, M. Zachariasen, GeoSteiner, 3.1., 2001. http://www.diku.dk/hjemmesider/ansatte/martinz/geosteiner/. n > 2 E.N. Gilbert, H.O. Pollack, Steiner minimal trees. SIAM J. Applied Math, 16, pp. 129 (1968). W.D. Smith, How to nd Steiner minimal trees in Euclidean d-space, Algorithmica 7 (1992) pp. 137177. M. Fampa, K.M. Anstreicher, An improved algorithm for computing Steiner minimal trees in Euclidean d-space, Discrete Optimization, vol 5 (2008), pp. 530540. J.W. Van Laarhoven, K.M. Anstreicher, Geometric Conditions for Euclidean Steiner Trees in R d, Computational Geometry: Theory and Applications, vol 46 (2013), pp. 520531. R. Fonseca, M. Brazil, P. Winter, M. Zachariasen, Faster Exact Algorithms for Computing Steiner Trees in Higher Dimensional Euclidean Spaces, http://dimacs11.cs.princeton.edu/workshop/ FonsecaBrazilWinterZachariasen.pdf, (2014). Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 8 / 32

MINLP Formulations for the Euclidean Steiner Problem Let G(V, E) be a graph and Maculan, Michelon, Xavier (2000) P := {1, 2,..., p 1, p} be the index set corresponding to the given terminals a 1,..., a p ; S := {p + 1, p + 2,..., 2p 3, 2p 2} be the index set corresponding to Steiner points x p+1,..., x 2p 2 ; V := P S; E := E 1 E 2, where E 1 := {[i, j] i S, j S, i < j} and E 2 := {[i, j] i P, j S}. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 9 / 32

MINLP Formulations for the Euclidean Steiner Problem Maculan, Michelon, Xavier (2000) MMX: min s.t.: x i x j y [i,j] E1 ij + [i,j] E2 ai x j y ij, y j S ij = 1, i P, y i P ij + y k<j,k S kj + y k>j,k S jk = 3, j S, y i<j,i S ij = 1, j S {p + 1}, y ij {0, 1}, [i, j] E 1 E 2, x i R n, i S. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 10 / 32

MINLP Formulations for the Euclidean Steiner Problem Maculan, Michelon, Xavier (2000) MMX: min s.t.: x i x j y [i,j] E1 ij + [i,j] E2 ai x j y ij, y j S ij = 1, i P, y i P ij + y k<j,k S kj + y k>j,k S jk = 3, j S, y i<j,i S ij = 1, j S {p + 1}, y ij {0, 1}, [i, j] E 1 E 2, x i R n, i S. In On a nonconvex MINLP formulation of the Euclidean Steiner tree problem in n-space, with Jon Lee (U. Michigan), and Claudia D'Ambrosio (E. Polytechnique), we propose nonlinear cuts to MMX, and its solution by global solvers Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 10 / 32

MINLP Formulations for the Euclidean Steiner Problem Fampa and Maculan (2004) FM: min [i,j] E d ij, s.t.: d ij x i x j M(1 y ij ), [i, j] E 1, d ij a i x j M(1 y ij ), [i, j] E 2, j S y ij = 1, i P, y i P ij + y k<j,k S kj + y k>j,k S jk = 3, j S, y i<j,i S ij = 1, j S {p + 1}, y ij {0, 1}, d ij R, [i, j] E 1 E 2, x i R n, i S. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 11 / 32

Applying MINLP solvers Weak lower bounds. Long time to decrease the upper bound. Symmetry. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 12 / 32

Dealing with isomorphism Create a set of representative FSTs, with one topology saved for each group of isomorphic FSTs. Later, during the B&B execution, we only solve subproblems corresponding to these representative topologies, pruning all the others. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 13 / 32

Representatives for spanning trees on Steiner points Let T (V (T ), E(T )) be a spanning tree in G, of p 2 Steiner points. V (T ) := {p + 1,..., 2p 2} E(T ) := {[i 1, j 1 ],..., [i p 3, j p 3]} E 1 Consider the bijection f : E 1 L := { 1,..., f ([p + i, p + j]) := i + We represent T by f (E(T )) dened as } (p 2)(p 3) 2 (j 1)(j 2) 2 f (E(T )) := {f ([i 1, j 1 ]),..., f ([i p 3, j p 3])} We map into vectors all spanning trees on the Steiner points, and save for each class of isomorphic spanning trees, a representative given by the lexicographically smaller one. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 14 / 32

Isomorphic trees, 4 Steiner points p+2 p+1 p+3 p+1 p+2 p+3 p+4 p+4 p+2 p+3 p+1 p+2 p+4 p+3 p+4 p+1 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 15 / 32

Isomorphic trees in the feasible set of FM, 4 Steiner points p+2 p+1 p+3 p+1 p+2 p+3 p+4 p+4 {1,2,4} {1,3,5} Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 16 / 32

Isomorphic trees in the feasible set of FM, 4 Steiner points p+2 p+1 p+3 p+4 {1,2,4} Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 17 / 32

Constructing Representative FSTs - Phase 1 p+3 p+1 p+2 p+3 p+1 p+2 p+4 p+4 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 18 / 32

Constructing Representative FSTs - Phase 2 3 1 p+3 p+1 p+2 4 p+4 2 5 6 3 5 p+3 p+1 p+2 p+4 4 1 2 6 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 19 / 32

Number of Representative FSTs vs Number of FSTs in the feasible set of (FM) p Rep. FSTs FSTs in (FM) Reduction (%) 4 3 6 50 5 15 30 50 6 105 450 76 7 945 9450 90 8 10395 264600 96 9 135135 9525600 98 10 2027025 428652000 99 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 20 / 32

Branch-and-Bound - Preprocessing Phase Discarding representative FSTs based on geometric conditions satised by SMTs Let η i be the minimum Euclidean distance between a i and all other terminals. T be a minimum-length spanning tree on the terminals. β ij be the length on the longest edge on the path between a i and a j in T. Then: 1 Two terminals a i and a j may be connected to a common Steiner point only if a i a j η i + η j. 2 Two terminals a i and a j may be connected by two or fewer Steiner points only if a i a j η i + η j + β ij. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 21 / 32

Branch-and-Bound - Preprocessing Phase Fixing variables Let E + be the set of edges of G that belong to every representative FST. E be the set of edges of G that do not belong to any representative FST. Then: If [i, j] E +, set y ij = 1. If [i, j] E, set y ij = 0. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 22 / 32

Branch-and-Bound B&B enumeration scheme starts, at its rst level, with one node coresponding to each representative of spanning trees of Steiner points only. p+3 p+1 p+2 p+3 p+1 p+2 p+4 p+4 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 23 / 32

Branch-and-Bound Each node on the enumeration tree has at most p 2 children. A terminal is connected to a dierent Steiner point at each child of the node, dividing the feasible set according to the constraint j S y ij = 1, i P. p+3 p+1 p+2 p+4 p+3 p+1 p+2 p+3 p+1 p+2 p+3 p+1 p+2 p+4 p+4 p+4 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 24 / 32

Branch-and-Bound Each node on the enumeration tree has at most p 2 children. A terminal is connected to a dierent Steiner point at each child of the node, dividing the feasible set according to the constraint j S y ij = 1, i P. p+3 p+1 p+2 p+4 p+3 p+1 p+2 p+3 p+1 p+2 p+3 p+1 p+2 p+4 p+4 p+4 Terminals are added to the tree in a xed order. The terminal added at each level is the farthest one to the terminals already in the tree. The rst terminal added is the farthest one to the centroid of the set of terminals. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 24 / 32

Branch-and-Bound Pruning by isomorphism At each node of the B&B tree, we use the set of representative FSTs to prune all descendant nodes where the variables xed at 1 do not correspond to edges in any representative FST. Let Then: Fixing more variables F be the set of representative FSTs that contain all the edges corresponding to y ij = 1 at a given node of the B&B tree. E + be the set of additional edges of G that also belong to every topology in F. E be the set of edges of G that do not belong to any topology in F. If [i, j] E +, set y ij = 1. If [i, j] E, set y ij = 0. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 25 / 32

Branch-and-Bound Dynamic Constraint Set (DCS) The idea is to dynamically change the set of constraints of the subproblems, eliminating redundant nonlinear constraints. Constraints d ij x i x j M(1 y ij ), [i, j] E 1, d ij a i x j M(1 y ij ), [i, j] E 2, corresponding to y ij xed at 0, i.e., the redundant constraints are removed from the model. d ij x i x j M, [i, j] E 1 : y ij = 0, d ij a i x j M, [i, j] E 2 : y ij = 0, Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 26 / 32

Branch-and-Bound Improving upper bounds and generating more valid inequalities Let ȳ ij be the fractional value of the binary variable y ij at the optimal solution of the relaxation solved at a node of the B&B tree. Assign to each edge [i, j] of G, the weight given by w ij := 1 ȳ ij. Apply a greedy heuristic to compute the minimum spanning tree of G with a FST. Let ŷ be the characteristic vector of the tree, i.e. ŷ ij = 1 if edge [i, j] belongs to the tree, and ŷ ij = 0, otherwise. Compute the Steiner minimal tree corresponding to the FST given by ŷ, and update the current upper bound if possible. Add to each unsolved subproblem, the cut [i,j] E ŷ ij y ij 2p 4, (1) Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 27 / 32

Numerical experiments We show the impact of the main specialized procedures on a standard b&b algorithm for convex MINLP (coded in a solver named Muriqui), and compare Muriqui to our specialized b&b algorithm named SAMBA (Steiner Adaptations on Muriqui B&b Algorithm). Algorithms are implemented in C++. Runs were conducted on a 3.60 GHz core i7-4790 CPU, 8 MB, 16 GB, running under Linux. Time limit of 4 hours. MOSEK was used to solve the subproblems relaxations in b&b, and also to solve the convex problem obtained by xing all integer variables in (FM), in the heuristic procedure used to improve the upper bounds. Instances considered were the same used in used by Fampa & Anstreicher in 2008, and Laarhoven & Anstreicher in 2013: 30 instances with 10 terminals randomly distributed in the hypercube [0, 10] n, 10 in each dimension n = 3, 4, 5. Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 28 / 32

Impact of the specialized procedures on B&B Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 29 / 32

Impact of the specialized procedures on B&B Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 30 / 32

Impact of the specialized procedures on B&B Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 31 / 32

Numerical results Table : Average results Dimension Muriqui Branch-and-Bound SAMBA gap cpu time gap cpu time (%) (sec) (%) (sec) n = 3 84 14400.38 0 240.96 n = 4 84 14401.12 0 740.87 n = 5 82 14400.34 0 1301.54 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree Problem Aussois 2015 32 / 32