Construction of Minimum-Weight Spanners Mikkel Sigurd Martin Zachariasen

Similar documents
Construction of Minimum-Weight Spanners

Theorem 2.9: nearest addition algorithm

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

Solving lexicographic multiobjective MIPs with Branch-Cut-Price

GENERAL ASSIGNMENT PROBLEM via Branch and Price JOHN AND LEI

Algorithms for the Bin Packing Problem with Conflicts

Approximation Algorithms

3 INTEGER LINEAR PROGRAMMING

Reload Cost Trees and Network Design

Objective of the present work

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

Column Generation Method for an Agent Scheduling Problem

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

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

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

Applications of Geometric Spanner

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

Algorithm Design and Analysis

Minimum Weight Constrained Forest Problems. Problem Definition

Foundations of Computing

Solving the Euclidean Steiner Tree Problem in n-space

Approximation Techniques for Utilitarian Mechanism Design

Minimum Spanning Trees COSC 594: Graph Algorithms Spring By Kevin Chiang and Parker Tooley

Geometric Steiner Trees

α Coverage to Extend Network Lifetime on Wireless Sensor Networks

Approximation Algorithms

Introduction to Approximation Algorithms

Approximation Algorithms

Solving the Maximum Cardinality Bin Packing Problem with a Weight Annealing-Based Algorithm

Algorithms for Integer Programming

Outline of the module

APPROXIMATION ALGORITHMS FOR GEOMETRIC PROBLEMS

Steiner Trees and Forests

Branch-price-and-cut for vehicle routing. Guy Desaulniers

Modeling and Solving Location Routing and Scheduling Problems

The ILP approach to the layered graph drawing. Ago Kuusik

Mathematical and Algorithmic Foundations Linear Programming and Matchings

56:272 Integer Programming & Network Flows Final Exam -- December 16, 1997

CSE 417 Branch & Bound (pt 4) Branch & Bound

DESIGN AND ANALYSIS OF ALGORITHMS GREEDY METHOD

1 Unweighted Set Cover

Outline. Column Generation: Cutting Stock A very applied method. Introduction to Column Generation. Given an LP problem

Shortest-path metric approximation for random subgraphs

Column Generation: Cutting Stock

Improved algorithms for constructing fault-tolerant spanners

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not.

The Size Robust Multiple Knapsack Problem

In the classical vehicle-routing problem (VRP) the objective is to service some geographically scattered customers

Approximation Algorithms

Lagrangian Relaxation in CP

CS 860 Fall Lecture 6. Anna Lubiw, U. Waterloo. one more paper on dynamic graphs (connectivity rather than shortest paths)

22 Elementary Graph Algorithms. There are two standard ways to represent a

Set Cover with Almost Consecutive Ones Property

Notes for Lecture 24

56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998

Tolerance based Greedy Heuristics for the Asymmetric TSP. Gerold Jäger Martin Luther University Halle-Wittenberg

Chapter 9 Graph Algorithms

Recent PTAS Algorithms on the Euclidean TSP

Sparse Hypercube 3-Spanners

Combinatorial Optimization

SLS Methods: An Overview

Optimization Techniques for Design Space Exploration

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

An Integer Programming Approach to Packing Lightpaths on WDM Networks 파장분할다중화망의광경로패킹에대한정수계획해법. 1. Introduction

Approximation Algorithms

Column Generation and its applications

L3 Network Algorithms

The Design of Approximation Algorithms

Chapter 9 Graph Algorithms

A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming

Primal-Dual Methods for Approximation Algorithms

A List Heuristic for Vertex Cover

Decreasing a key FIB-HEAP-DECREASE-KEY(,, ) 3.. NIL. 2. error new key is greater than current key 6. CASCADING-CUT(, )

Mathematical Tools for Engineering and Management

LOCAL SEARCH FOR THE MINIMUM FUNDAMENTAL CYCLE BASIS PROBLEM

AN EXACT ALGORITHM FOR A LOCATION-ROUTING PROBLEM. Martine Labbé 1, Inmaculada Rodríguez Martín 2, Juan José Salazar González 2

Graph Coloring via Constraint Programming-based Column Generation

Chapter 7 TOPOLOGY CONTROL

A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem

3 No-Wait Job Shops with Variable Processing Times

The MIP-Solving-Framework SCIP

Connections in Networks: A Hybrid Approach

CS261: Problem Set #2

Approximating geometrical graphs via spanners and banyans

Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University

11. APPROXIMATION ALGORITHMS

A Column Generation based Heuristic for Maximum Lifetime Coverage in Wireless Sensor Networks

Integer Programming Theory

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?

A Computational Study of Bi-directional Dynamic Programming for the Traveling Salesman Problem with Time Windows

A Hybrid Improvement Heuristic for the Bin Packing Problem

6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP:

GRASP with evolutionary path-relinking for the antibandwidth problem

An Experimental Evaluation of the Best-of-Many Christofides Algorithm for the Traveling Salesman Problem

Practice Final Exam 1

Algorithms design under a geometric lens Spring 2014, CSE, OSU Lecture 1: Introduction

Experiments on Exact Crossing Minimization using Column Generation

J Linear Programming Algorithms

Metric Techniques and Approximation Algorithms. Anupam Gupta Carnegie Mellon University

Recursive column generation for the Tactical Berth Allocation Problem

Transcription:

Construction of Minimum-Weight Spanners Mikkel Sigurd Martin Zachariasen University of Copenhagen

Outline Motivation and Background Minimum-Weight Spanner Problem Greedy Spanner Algorithm Exact Algorithm: Column Generation Approach Exact Algorithm: Constrained Shortest Paths Implementation Details Experimental Results Conclusions and Future Work

Motivation and Background Construction of sparse networks that (approximately) preserve distances in original (dense) networks. Application examples:

Motivation and Background Construction of sparse networks that (approximately) preserve distances in original (dense) networks. Application examples: Metric space searching. Compact data structure for holding information about approximate distances.

Motivation and Background Construction of sparse networks that (approximately) preserve distances in original (dense) networks. Application examples: Metric space searching. Compact data structure for holding information about approximate distances. Message distribution in networks. Construction of a network that has both low cost and low delay.

Motivation and Background Construction of sparse networks that (approximately) preserve distances in original (dense) networks. Application examples: Metric space searching. Compact data structure for holding information about approximate distances. Message distribution in networks. Construction of a network that has both low cost and low delay. Faster approximation algorithms for geometric problems. Replacing dense graphs by sparse graphs may speed up approximation algorithms for several geometric optimization problems (e.g., TSP).

-spanner problem (MWSP): Construct a Minimum-Weight Spanner Problem (MWSP) Given an undirected and edge-weighted graph. -spanner: Subgraph between any pair of nodes is at most (where is a fixed constant). of such that the shortest path times longer in than in Minimum-weight with minimum total edge-weight. -spanner in

Minimum-Weight Spanner Example Complete Euclidean graph with 15 nodes

-spanner for Minimum-Weight Spanner Example Minimum weight

-spanner for Minimum-Weight Spanner Example Minimum weight

-spanner for Minimum-Weight Spanner Example Minimum weight

-spanner for Minimum-Weight Spanner Example Minimum weight

-spanner for Minimum-Weight Spanner Example Minimum weight

-spanner for Minimum-Weight Spanner Example Minimum spanning tree (or minimum weight )

Minimum-Weight Spanner Problem (MWSP) Known to be an NP-hard problem [Cai, 1994].

Minimum-Weight Spanner Problem (MWSP) Known to be an NP-hard problem [Cai, 1994]. Several approximation algorithms exist, in particular for the geometric versions of the problem; the greedy algorithm is particularly well studied. All practical applications use some variant of the greedy algorithm.

Minimum-Weight Spanner Problem (MWSP) Known to be an NP-hard problem [Cai, 1994]. Several approximation algorithms exist, in particular for the geometric versions of the problem; the greedy algorithm is particularly well studied. All practical applications use some variant of the greedy algorithm. No (non-trivial) exact algorithm is known.

Greedy Spanner Algorithm 1. Set where. 2. Sort edges in by non-decreasing weight. 3. Process edges in sorted order: Let be the weight of edge. If the shortest path between and in exceeds, then append to.

Greedy Spanner Algorithm 1. Set where. 2. Sort edges in by non-decreasing weight. 3. Process edges in sorted order: Let be the weight of edge. If the shortest path between and in exceeds, then append to. Resulting -spanner denoted greedy spanner; known to have weight times that of a MST for points in fixed dimensional space. [Das, Narasimhan & Salowe, 1995; Das & Narasimhan, 1997]

New Exact Algorithm for MWSP Model a generalization of MWSP as an integer program.

New Exact Algorithm for MWSP Model a generalization of MWSP as an integer program. : Node pairs with length constraints. : Set of paths between and satisfying length constraint. : Set of all paths satisfying length constraint. if edge is on path. if edge is part of the solution. if path is part of the solution.

Integer Programming (IP) Formulation minimize (1.1) subject to (1.2) (1.3) (1.4) (1.5)

Properties of the IP Model Proposed model contains an exponential number of variables (no useful polynomial sized model is known). Model provides a good LP-relaxation lower bound. LP-relaxation can be solved by delayed column generation. Integer solutions obtained by embedding lower bound computations in branch and bound.

IP Column Generation Work on a restricted linear program with fewer variables. Add variables iteratively according to Dantzig s pricing rule: Add variable with minimum reduced cost. Given dual variables and, solve the pricing problem The pricing problem is a constrained shortest path problem between and on the graph with edge costs and weights.

Constrained Shortest Path Problem (CSPP) Find a shortest path from to with respect to the cost of edges such that the total weight is below a given threshold. NP-hard problem, but has a FPTAS [Warburton, 1987].

to Constrained Shortest Path Problem (CSPP) Find a shortest path from to with respect to the cost of edges such that the total weight is below a given threshold. NP-hard problem, but has a FPTAS [Warburton, 1987]. We solve CSPP by a labeling algorithm: Enumerate all paths from infeasible paths. discarding dominated and Domination and infeasibility can be checked quickly by precomputing shortest path trees from w.r.t. edge costs and weights, respectively.

Implementation Details Used ABACUS branch and price framework [Thienel, 1995]. LP models solved by CPLEX 7.0. Computer: Pentium IV 3.0 GHz, 2GB memory Master LP contains constraints. We solve master problem with fewer constraints, generating violated constraints iteratively. Branching on binary edge variables. Each instance allowed 30 minutes of CPU time.

Two Types of Test Instances

Two Types of Test Instances Euclidean: Complete Euclidean graphs on vertices randomly drawn from a -dimensional hypercube. / /

Two Types of Test Instances Euclidean: Complete Euclidean graphs on vertices randomly drawn from a -dimensional hypercube. / / Realistic: Similar to networks appearing in communication network applications: nodes randomly distributed in a square, edges added according to/not according to locality, and edge costs random or Euclidean. Average degree fixed. / /

Two Types of Test Instances Euclidean: Complete Euclidean graphs on vertices randomly drawn from a -dimensional hypercube. / / Realistic: Similar to networks appearing in communication network applications: nodes randomly distributed in a square, edges added according to/not according to locality, and edge costs random or Euclidean. Average degree fixed. / / 50 instances for every class/size of graphs.

Realistic Graph Examples,, no locality of edges

Realistic Graph Examples,, no locality of edges

Realistic Graph Examples,, with locality of edges

Realistic Graph Examples,, with locality of edges

Computational Results: Euclidean Graphs # Nodes 20 30 Dimension 5 10 20 25 5 10 20 25 0.90 0.00 0.00 0.00 1.63 0.00 0.00 0.00 7.61 0.83 0.00 0.00 10.88 1.20 0.01 0.00 16.22 9.55 0.62 0.31 20.11 13.36 1.00 0.29 21.99 33.03 18.45 13.68-47.93 32.97 17.97 # Nodes 40 50 Dimension 5 10 20 25 5 10 20 25 2.50 0.01 0.00 0.00 3.10 0.01 0.00 0.00 13.00 1.43 0.00 0.00 13.59 1.75 0.01 0.00-15.39 1.38 0.40-18.44 1.50 0.41 -- - - - - - - Average excess from optimum of greedy spanner (in percent).

Computational Results: Realistic Graphs Edge cost Euclidean Random Avg. deg. 4 8 4 8 # Nodes 16 32 64 16 32 64 16 32 64 16 32 64 locality 0.05 0.02 0.02 0.57 0.23 0.14 0.00 0.00 0.00 0.00 0.00 0.00 locality 0.41 0.12 0.09 1.43 1.40 1.00 0.00 0.00 0.00 0.00 0.00 0.00 locality 3.25 2.22 1.29 4.71 8.48 4.35 2.76 1.17 2.46 4.22 3.29 3.33 locality 3.84 2.73 2.32 4.85 - - 1.74 0.90 1.67 5.74 4.34 3.71 locality 1.31 6.29-2.10 - - 0.64 4.72-2.64 - - locality 1.43 - - - - - 0.00 - - 3.95 - - Average excess from optimum of greedy spanner (in percent).

Generalizations handled by Exact Algorithm MWSP with variable stretch factor. Allow different stretch factors for every pair of nodes. Easily handled by changing the definition of the feasible set of paths for a pair of nodes and. MWSP with selected shortest path constraints. Only a subset of all pairs have maximum length constraints. As an example, only paths involving one particular node (the root) have maximum length constraints. Has applications in, e.g., VLSI design, where trees with both low cost and low delay are wanted.

Conclusions and Future Work Total weight of a greedy spanner is within a few percent from optimum for the set of realistic instances; for Euclidean graphs and large stretch factors the quality of the greedy spanner deteriorates significantly. It would be interesting to test the exact algorithm and the greedy spanner algorithm on a larger set of problem instances. Also, improvements to the greedy spanner algorithm would be worthwhile to investigate.