An Streicher 2

download An Streicher 2

of 24

Transcript of An Streicher 2

  • 7/30/2019 An Streicher 2

    1/24

    An improved algorithm for

    computing Steiner minimaltrees in Euclidean d-space

    Marcia Fampa and Kurt Anstreicher

    VICCOC, Vienna, December 2006

  • 7/30/2019 An Streicher 2

    2/24

    A Feasible SolutionThe Euclidean Steiner Problem

    terminal

    Steiner point

  • 7/30/2019 An Streicher 2

    3/24

    Determine:

    The number of Steiner points to be used

    The arcs of the tree

    Geometric position of the Steiner points

    Topo

    logy

    The Euclidean Steiner Problem

  • 7/30/2019 An Streicher 2

    4/24

    Steiner Tree/Topology A Steiner Tree (ST) is a tree that contains the N given

    terminals and k additional Steiner points, such that:

    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.

    k N-2.

    A Full Steiner Tree (FST) is an ST with the maximum N-2Steiner points.

    A Steiner Topology (Full Steiner Topology) is a topologythat meets the degree requirements of an ST (FST).

  • 7/30/2019 An Streicher 2

    5/24

    Exact Algorithms

    Extensive literature elucidating properties of SMTs in the

    plane that do not extend to d>2.

    1961 Melzak

    1985 Winter GeoSteiner Algorithm 2001 Warme, Winter and Zacharisen - version 3.1of the

    GeoSteiner (10000 terminals solved)

    ESP in the plane

  • 7/30/2019 An Streicher 2

    6/24

    Exact AlgorithmsGeoSteiner Algorithm

  • 7/30/2019 An Streicher 2

    7/24

    Exact Algorithms

    Find all Steiner topologies on the N given terminalsand k Steiner points, with k N-2.

    For each topology optimize the coordinates of the

    Steiner points.

    Output the shortest tree found.

    General d-space: Gilbert and Pollak (1968)

  • 7/30/2019 An Streicher 2

    8/24

    Degenerate Steiner Topologies A topology is called a degeneracy of another if the former can be

    obtained from the latter by shrinking edges.

    Fact: each Steiner topology is either a full Steiner topology or adegeneracy of a full Steiner topology.

    1 1

    2 72

    3 8

    3

    4 94

    5105

    6 6

    7 8

    910

    degenerate Steiner points

  • 7/30/2019 An Streicher 2

    9/24

    Exact Algorithms

    Find all Steiner topologies on the N given terminals

    and k Steiner points, with k=N-2.

    For each topology optimize the coordinates of the

    Steiner points. Output the shortest tree found.

    Full

  • 7/30/2019 An Streicher 2

    10/24

    Full Steiner Topologies The total number of full Steiner topologies for a graph

    with N terminals is given by

    f(2)=1, f(4)=3, f(6)=105, f(8)=10395, f(10)=2,027,025, f(12)=654,729,075

    (2N-4)!

    2N-2(N-2)!f(N) =

    s2

    a d

    c

    s1

    b

    s2

    a d

    cs1

    b

    s2

    a d

    c

    s1

    b

  • 7/30/2019 An Streicher 2

    11/24

    Math Programming Formulation for ESTPFampa and Maculan (2004)

  • 7/30/2019 An Streicher 2

    12/24

    General d-space: Smith (1992)

    An implicit enumeration scheme to generate full

    Steiner topologies and a numerical algorithm to

    solve the ESP for a given topology.

    Computation of SMTs on vertices of regular

    polytopes led to disproof of Gilbert-Pollak

    conjecture on Steiner ratio in dimensions d>2.

    Exact Algorithms

  • 7/30/2019 An Streicher 2

    13/24

    Smith (1992)Enumeration Tree

    1

    2

    3

    1 3

    2

    S1

    T

    l

    a

    b

    T

    Tree with k Steiner points,

    k+2 terminals and n edges (n=2k+1)

    Tree with k+1 Steiner points,

    k+3 terminals and n+2 edges

    T+

    a

    b

    k+3

    l n+1

    n+2

    Sk+1

    Merging

    Operation

    Enumeration Tree

  • 7/30/2019 An Streicher 2

    14/24

    Nodes at level k of tree enumerate full Steiner

    topologies with k+3 terminals, k = 0,1,, N-3. Children of a given node are obtained by merging

    a new terminal node with each arc in current FST.

    Good: Merging operation cannot decreaseminimum length of FST - allows pruning!

    Bad: No easy way to account for effect of missing

    terminal nodes. Ugly: Growth of tree is super-exponential with

    depth, and problems get largerat deeper levels.

    Enumeration Tree

  • 7/30/2019 An Streicher 2

    15/24

    Problem for a Given Topology

    i

    i2

    i1

    i

    i2

    i1

    Case 1:

    Case 2:

    where:

    Topology T with k Steiner points,

    k+2 terminals and n edges (n=2k+1)

  • 7/30/2019 An Streicher 2

    16/24

    The Merging Operation

    l

    a

    bT

    SMT(T)

    Merging

    Operation

    T+

    a

    b

    k+3

    l n+1

    n+2

    Sk+1

    SMT(T+)

  • 7/30/2019 An Streicher 2

    17/24

    Fixing Variables

    where:

    Let:

  • 7/30/2019 An Streicher 2

    18/24

    c

    n+1

    n+2

    b

    (c)c

    n+1

    n+2

    b

    (e)

    a c

    l n+1

    n+2

    b

    (f)

    ca

    l n+1

    n+2

    b

    (g)

    a c

    l n+1

    n+2

    b

    (h)

    a c

    l n+1

    n+2

    b

    (i)

    Topologies for the Subproblems

    a c

    l n+1

    n+2

    b

    (d)

  • 7/30/2019 An Streicher 2

    19/24

    In Smith+ use conic interior-point code (MOSEK)to obtain bounds on minimum length tree for given

    topology. Also use MOSEK to solve subproblems

    with fixed dual variables.

    Choose next terminal node to add so as to

    minimize number of children created/maximize

    sum of child bounds (strong branching). Note must

    extend Smiths enumeration argument to allow forvarying order in which terminals are added!

    Smith versus Smith+

  • 7/30/2019 An Streicher 2

    20/24

    Computational ResultsInstance from OR-Library with 12 terminals

    156661Total

    285209

    0.97310.850.7778

    0.99650.560.85470.913790.550.8346

    0.932970.630.6755

    0.593850.550.7934

    01050.690.7553

    0150.680.4092

    030031

    010010

    FathomNodesElimFathomNodesLevel

    SmithSmith+

  • 7/30/2019 An Streicher 2

    21/24

    Nodes on the B&B TreeOR-Library

    1

    10

    100

    1,000

    10,000

    100,000

    1,000,000

    6 8 10 12 14 16 18

    Terminal nodes

    Average

    B&Bnodes

    Smith

    Smith+

  • 7/30/2019 An Streicher 2

    22/24

    CPU Time (seconds)OR-Library

    1

    10

    10 0

    1,000

    10,000

    100,000

    6 8 10 12 14 16 18

    Terminal nodes

    AverageC

    PUseconds

    Smith

    Smith+

  • 7/30/2019 An Streicher 2

    23/24

    Effect of dimension d

    Average nodes/time for 5 randomly-generated instances with10 terminals in Rd (d=2,3,4).

    4.44,680.520,805.650.89,250.0470,321.85

    2.85,735.616,153.026.913,685.6368,762.84

    3.1753.52,334.133.41,652.455,222.23

    10.568.4717.8160.2105.016,821.62

    FactorSmith+SmithFactorSmith+Smithd

    Average CPU secondsAverage B&B nodesDimension

  • 7/30/2019 An Streicher 2

    24/24

    Conic formulation provides rigorous bounds.

    Fixing dual variables allows for estimate of effectof next merge via solution of smaller problem.

    Novel setting for strong branching; effective in

    reducing size of the tree. More to do! Key problem with use of Smithsenumeration scheme is approximating the effect ofterminals that are not present in partial Steiner

    trees. May also be possible to use geometricconditions that are valid for d>2.

    Conclusions