col. gen. stabilization using dual smoothing: theory ...€¦ · outline 1 column generation & cut...

41
Col. Gen. Stabilization using Dual Smoothing: Theory & Practice Colgen Workshop, June 2012 J. Han (1), P. Pesneau (2), A. Pessoa (3), R. Sadykov (1), E. Uchoa (3), F. Vanderbeck (1) (1) INRIA Bordeaux-Sud-Ouest, team RealOpt (2) Université de Bordeaux, Institut de Mathématiques (3) LOGIS , Universidade Federal Fluminense Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

Upload: others

Post on 19-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

  • Col. Gen. Stabilization using Dual Smoothing:Theory & Practice

    Colgen Workshop, June 2012

    J. Han (1), P. Pesneau (2), A. Pessoa (3),R. Sadykov (1), E. Uchoa (3), F. Vanderbeck (1)

    (1) INRIA Bordeaux-Sud-Ouest, team RealOpt

    (2) Université de Bordeaux, Institut de Mathématiques

    (3) LOGIS , Universidade Federal Fluminense

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Outline

    1 Column Generation & Cut Separation in the Dual

    2 Stabilization techniques

    3 Numerical Analysis

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Problem decomposition

    Assume a bounded integer integer problem:

    [F]≡ min{cx :x ∈ Y ≡ Ax ≥ ax ∈ Z ≡ Bx ≥ b

    x ∈ INn

    Let X := Y ∩ Z . Assume that subproblem

    [SP]≡ min{cx : x ∈ Z} (1)

    is “relatively easy” to solve compared to problem [F]. Then,

    Z = {zq}q∈Q= {x ∈ INn : x =

    q∈Qzqλq,∑

    q∈Qλq = 1; λq ≥ 0 ∀q ∈ Q}

    and

    conv(Z) = {x ∈ IRn+ :∑

    q∈Qzqλq,∑

    q∈Qλq = 1, λq ≥ 0 q ∈ Q}

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Lagrangian Relaxation & Duality

    L(π) := minq∈Q{c zq +π(a− Azq)}

    [LD] := maxπ∈IRm+

    minq∈Q{c zq +π(a− Azq)}

    π

    η

    π

    η

    L(π)

    π

    η

    L(π)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Lagrangian Dual as an LP

    [LD] ≡ maxπ∈IRm+

    minq∈Q{π a + (c−πA)zq};

    ≡ max{η,η≤ czq +π(a− Azq) q ∈ Q,π ∈ IRm+,η ∈ IR

    1};

    ≡ min{∑

    q∈Q(czq)λq,

    q∈Q(Azq)λq ≥ a,

    q∈Qλq = 1,

    λq ≥ 0 q ∈ Q};≡ min{cx : Ax ≥ a, x ∈ conv(Z) }.

    π

    η

    L(π)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Dantzig-Wolfe Reformulation & Restricted Master

    min∑

    q∈Q(cx)λq

    q∈Q(Azq)λq ≥ a

    q∈Qλq = 1

    λq ∈ {0, 1} ∀q ∈ Q .

    [Mt ]≡ min{∑

    q∈Qtczqλq :∑

    q∈QtAzqλq ≥ a;∑

    q∈Qtλq = 1;λq ≥ 0, q ∈ Qt}

    [DMt ]≡ max{η : π(Azq − a) +η≤ czq, q ∈ Qt ;π ∈ IRm+;η ∈ IR1}

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Restricted Master, Dual Polyhedra, & Pricing Oracle

    [Mt ]≡ min{cx : Ax ≥ a, x ∈ conv({zq}q∈Qt )}.

    Lt() : π→ Lt(π) =minq∈Qt {πa + (c−πA)zq};

    Solving [LSP(πt )] yields:1 most neg. red. cost col. for [Mt ]2 most violated constr. for [DMt ]3 correct value L() at point πt

    π

    η

    L(π)

    (πt ,ηt)

    π

    η

    L(π)

    (πt ,ηt)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Restricted Master, Dual Polyhedra, & Pricing Oracle

    [Mt ]≡ min{cx : Ax ≥ a, x ∈ conv({zq}q∈Qt )}.

    Lt() : π→ Lt(π) =minq∈Qt {πa + (c−πA)zq};

    Solving [LSP(πt )] yields:1 most neg. red. cost col. for [Mt ]2 most violated constr. for [DMt ]3 correct value L() at point πt

    π

    η

    L(π)

    (πt ,ηt)

    π

    η

    L(π)

    (πt ,ηt)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Dual Polyhedra: Outer and Inner approximations

    π

    η

    L(π)

    (πt ,ηt)(π̂, L̂)

    π

    η

    L(π)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Cut Separation Strategies in the Dual

    Column generation for a master program≡ cut generation for the dual master

    Cutting plane “strategies” translate into in col. gen. “stabilization”

    In-Out separation [BenAmeurNeto07, FischettiSalvagnin10]

    Central point cutting strategy [GoffinVial, LeePark11]

    Lexicographic Simplex [ZanetteFischettiBalas11]

    ...

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Cut Separation Strategies in the Dual

    Column generation for a master program≡ cut generation for the dual master

    Cutting plane “strategies” translate into in col. gen. “stabilization”

    In-Out separation [BenAmeurNeto07, FischettiSalvagnin10]

    Central point cutting strategy [GoffinVial, LeePark11]

    Lexicographic Simplex [ZanetteFischettiBalas11]

    ...

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Methods to Solve the Lagrangian Dual

    A sequence of candidate dual solutions

    {πt}t → π∗ ∈ Π∗

    A sequence of candidate primal solutions (a by-product to proveoptimality)

    {x t}t → x∗ ∈ X ∗

    Oracle: z t ← argminx∈Z {(c−πt−1A)x}.

    1 Ascent methods:SubgradientVolumeConjugate Sub-gradient

    2 Polyhedral methods:KelleyBundleACCPM

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Column Generation & Cut Separation in the Dual

    Methods to Solve the Lagrangian Dual

    A sequence of candidate dual solutions

    {πt}t → π∗ ∈ Π∗

    A sequence of candidate primal solutions (a by-product to proveoptimality)

    {x t}t → x∗ ∈ X ∗

    Oracle: z t ← argminx∈Z {(c−πt−1A)x}.

    1 Ascent methods:SubgradientVolumeConjugate Sub-gradient

    2 Polyhedral methods:KelleyBundleACCPM

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Convergence

    844

    0 100 200 300 400 500 600 700 800 900 1000

    0

    84

    169

    253

    338

    422

    506

    591

    675

    760

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Convergence

    {πt}t → π∗ ∈Π∗

    Dual oscillations: πt jump erratically (bang-bang), {L(πt)} nonmonotic (yo-yo) and possibly

    ||πt −π∗||> ||πt−1−π∗||

    Tailing-off effect: towards the end, added inequalities yieldmarginal improvements / step sizes are very small.

    Primal degeneracy / multiple dual optima:fewer non zero λq than master constraints;dual system with fewer constraints than variables;cuts co-linear with objective (inherent to cutting plane procedures).

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Stabilization Techniques

    Penalty functions to drive the optimization towards π̂:

    πt := argmaxπ∈IRm+{Lt(π)− Ŝ(π)}

    Dual price smoothing (In-Out separation)

    [Wentges97] π̃t = απ̂+ (1−α)πt

    [Neame99] π̃t = απ̃t−1 + (1−α)πt

    Dual price centralization (central point separation)Analytic center (of trust polyhedra)Chebyshev centerOptimal face center

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Stabilization Techniques

    Penalty functions to drive the optimization towards π̂:

    πt := argmaxπ∈IRm+{Lt(π)− Ŝ(π)}

    Dual price smoothing (In-Out separation)

    [Wentges97] π̃t = απ̂+ (1−α)πt

    [Neame99] π̃t = απ̃t−1 + (1−α)πt

    Dual price centralization (central point separation)Analytic center (of trust polyhedra)Chebyshev centerOptimal face center

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Price Smoothing ≡ In-Out Separation

    π̃t = απ̂+ (1−α)πt ↔ (Wentges ’s rule)

    (πin,ηin) := (π̂, L̂) (2)

    (πout,ηout) := (πt ,ηt) . (3)

    (πsep,ηsep) := α (πin,ηin) + (1−α) (πout,ηout) . (4)

    OUT

    SEP

    IN

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Price Smoothing ≡ In-Out Separation

    (πin,ηin) :=

    ¨

    (π̂, L̂) under Wentges ’s rule.(π̃t−1, L(π̃t−1)) under Neame’s rule,

    (5)

    (πout,ηout) := (πt ,ηt) . (6)

    (πsep,ηsep) := α (πin,ηin) + (1−α) (πout,ηout) . (7)

    Oracle: z t ← argminx∈Z {(c−πsepA)x}

    OUT

    SEP

    IN

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    In-Out Separation

    Case A: SEP is cut, so is OUTCase B: SEP is not cut, but

    OUT is cutCase C: neither SEP nor OUT

    is cut→ “mis-price”

    OUT

    SEP

    IN

    OUT

    SEP

    IN

    OUT

    SEPIN

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Properties

    1 If SEP is cut by z t , OUT is cut.2 Otherwise,

    a) SEP defines the next IN point.b) (L(πsep)−ηin) ≥

    (1−α) (ηout −ηin) , i.e.,

    ηout − L(πsep) ≤ α (ηout −ηin)

    c) The OUT point might be cut.d) Otherwise, πt = πt−1 = πout and

    ||π̃t −πout||= α ||π̃t−1 −πout||

    In case of “mis-price”

    πout πsep πin π

    η

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Smoothing: Termination of the Algorithm

    The number of columns that can be generated is finite.

    A column, once added, cannot be regenerated: the associatedconstraint is satisfied by both IN and OUT points (hence by SEP).

    However, there are iterations where no colunms are generated,and the OUT point remains unchanged→ mis-priceThus, on needs to prove convergence of a subsequence ofmis-price iterations, starting with πin = π̃0. Then,π̃t+1 = αt π̃

    t + (1−αt)πout . Hence,

    ||π̃t+1−πout ||= αt ||π̃t −πout ||= . . . = Πtτ=0ατ ||π̃0−πout ||

    if α= 0.8π̃0 π̃1 π̃2 π̃3 πout

    .2 .16 .128

    At iteration t , ||π̃0−πout || is cut by a factor (1−Πtτ=0ατ).

    BEWARE: convergence is only asymptotic for a constant 0< α < 1.Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Smoothing: Termination of the Algorithm

    The number of columns that can be generated is finite.

    A column, once added, cannot be regenerated: the associatedconstraint is satisfied by both IN and OUT points (hence by SEP).

    However, there are iterations where no colunms are generated,and the OUT point remains unchanged→ mis-priceThus, on needs to prove convergence of a subsequence ofmis-price iterations, starting with πin = π̃0. Then,π̃t+1 = αt π̃

    t + (1−αt)πout . Hence,

    ||π̃t+1−πout ||= αt ||π̃t −πout ||= . . . = Πtτ=0ατ ||π̃0−πout ||

    if α= 0.8π̃0 π̃1 π̃2 π̃3 πout

    .2 .16 .128

    At iteration t , ||π̃0−πout || is cut by a factor (1−Πtτ=0ατ).

    BEWARE: convergence is only asymptotic for a constant 0< α < 1.Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Smoothing: Termination of the Algorithm

    The number of columns that can be generated is finite.

    A column, once added, cannot be regenerated: the associatedconstraint is satisfied by both IN and OUT points (hence by SEP).

    However, there are iterations where no colunms are generated,and the OUT point remains unchanged→ mis-priceThus, on needs to prove convergence of a subsequence ofmis-price iterations, starting with πin = π̃0. Then,π̃t+1 = αt π̃

    t + (1−αt)πout . Hence,

    ||π̃t+1−πout ||= αt ||π̃t −πout ||= . . . = Πtτ=0ατ ||π̃0−πout ||

    if α= 0.8π̃0 π̃1 π̃2 π̃3 πout

    .2 .16 .128

    At iteration t , ||π̃0−πout || is cut by a factor (1−Πtτ=0ατ).

    BEWARE: convergence is only asymptotic for a constant 0< α < 1.Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Smoothing: Termination of the Algorithm

    The number of columns that can be generated is finite.

    A column, once added, cannot be regenerated: the associatedconstraint is satisfied by both IN and OUT points (hence by SEP).

    However, there are iterations where no colunms are generated,and the OUT point remains unchanged→ mis-priceThus, on needs to prove convergence of a subsequence ofmis-price iterations, starting with πin = π̃0. Then,π̃t+1 = αt π̃

    t + (1−αt)πout . Hence,

    ||π̃t+1−πout ||= αt ||π̃t −πout ||= . . . = Πtτ=0ατ ||π̃0−πout ||

    if α= 0.8π̃0 π̃1 π̃2 π̃3 πout

    .2 .16 .128

    At iteration t , ||π̃0−πout || is cut by a factor (1−Πtτ=0ατ).

    BEWARE: convergence is only asymptotic for a constant 0< α < 1.Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Smoothing: Termination of the Algorithm

    The number of columns that can be generated is finite.

    A column, once added, cannot be regenerated: the associatedconstraint is satisfied by both IN and OUT points (hence by SEP).

    However, there are iterations where no colunms are generated,and the OUT point remains unchanged→ mis-priceThus, on needs to prove convergence of a subsequence ofmis-price iterations, starting with πin = π̃0. Then,π̃t+1 = αt π̃

    t + (1−αt)πout . Hence,

    ||π̃t+1−πout ||= αt ||π̃t −πout ||= . . . = Πtτ=0ατ ||π̃0−πout ||

    if α= 0.8π̃0 π̃1 π̃2 π̃3 πout

    .2 .16 .128

    At iteration t , ||π̃0−πout || is cut by a factor (1−Πtτ=0ατ).

    BEWARE: convergence is only asymptotic for a constant 0< α < 1.Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Smoothing: Termination “in Theory” vs “in Practice”

    In case of mis-pricing, one observes a sequence of iterations in which:||π̃t+1 −πout ||= αt ||π̃t −πout ||||ηt+1 − L(π̃t+1)|| ≤ αt ||ηt − L(π̃t)||

    Hence, as (1−Πtτ=0ατ)→ 1,

    π̃t → πoutL(π̃t)→ ηout

    After a finite number of iterations, ||ηt − L(π̃t)|| ≤ ε and the master isconsidered as optimized. As there is a finite number of possiblevalues for L(π̃t) and ηt ,

    ∃ε : ||ηt − L(π̃t)|| ≤ ε ⇒ ηt = L(π̃t)

    which proves finite convergence in theory [BenAmeurNeto07,Wentges97].

    In practice, for finite convergence, one better choose ατ :

    (1−Πtτ=0ατ) ≥ 1 for a finite t

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Smoothing: α-schedule for finite convergence in practice

    Algorithm for handling a mis-pricing sequence

    Step 0 k ← 1Step 1 β ← [1− k ∗ (1−α)]+

    Step 2 πsep = β π0 + (1− β)πout

    Step 3 k ← k + 1Step 4 call the oracle on πsep

    Step 5 if mis-pricing occurs, goto Step 1else, got Step 0.

    if α= 0.8π̃0 π̃1 π̃2 π̃3 πout

    .2 .2 .2

    I.e; we chose ατ : (1−Πkτ=0ατ) = k ∗ (1−α). Hence,(1−Πkτ=0ατ)≥ 1 after k =

    l

    1(1−α)

    m

    iterations, and smoothing stops

    with β = 0.

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Stabilization techniques

    Dual Smoothing: Implementation in Practice

    Turn-off smoothing during HEADING-IN Phase.

    Trust πout during TAILING-OFF Phase: small α.

    Decreasing α as the algorithm converges: f.i., record decreasedα-value in mis-pricing sequence.

    844

    0 100 200 300 400 500 600 700 800 900 1000

    0

    84

    169

    253

    338

    422

    506

    591

    675

    760

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Machine Scheduling

    12 jobs per machines(25 jobs / 2 machines ; 50 jobs / 4 machines)

    0 0.2 0.4 0.6 0.8 0.95

    200

    250

    300

    350

    smoothing parameter (α)

    Master iterationsSubproblem calls

    0 0.2 0.4 0.6 0.8 0.95

    0.4

    0.6

    0.8

    1

    smoothing parameter (α)

    Time (sec.)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Machine Scheduling

    25 jobs per machines25 jobs / 1 machine ; 50 jobs / 2 machines; 100 jobs / 4 machines

    0 0.2 0.4 0.6 0.8 0.95300

    400

    500

    600

    700

    800

    smoothing parameter (α)

    Master iterationsSubproblem calls

    0 0.2 0.4 0.6 0.8 0.95

    4

    6

    8

    10

    12

    smoothing parameter (α)

    Time (sec.)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Machine Scheduling

    50 jobs per machines50 jobs / 1 machine ; 100 jobs / 2 machines; 200 jobs / 4 machines

    0 0.2 0.4 0.6 0.8 0.95500

    1,000

    1,500

    2,000

    2,500

    3,000

    smoothing parameter (α)

    Master iterationsSubproblem calls

    0 0.2 0.4 0.6 0.8 0.950

    50

    100

    150

    200

    smoothing parameter (α)

    Time (sec.)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Machine Scheduling

    100 jobs per machines100 jobs / 1 machine

    0 0.2 0.4 0.6 0.8 0.95

    103

    104

    smoothing parameter (α)

    Master iterationsSubproblem calls

    0 0.2 0.4 0.6 0.8 0.95

    102

    103

    smoothing parameter (α)

    Time (sec.)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Generalized Assignment

    OR-Library C, D, E instances: 5 jobs per machine

    0 0.2 0.4 0.6 0.8 0.95100

    150

    200

    250

    300

    smoothing parameter (α)

    Master iterationsSubproblem calls

    0 0.2 0.4 0.6 0.8 0.950.5

    1

    1.5

    2

    2.5

    smoothing parameter (α)

    Time (sec.)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Generalized Assignment

    OR-Library C, D, E instances: 10 jobs per machine

    0 0.2 0.4 0.6 0.8 0.95300

    400

    500

    600

    smoothing parameter (α)

    Master iterationsSubproblem calls

    0 0.2 0.4 0.6 0.8 0.95

    40

    60

    80

    100

    smoothing parameter (α)

    Time (sec.)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Generalized Assignment

    OR-Library C, D, E instances: 20 jobs per machine

    0 0.2 0.4 0.6 0.8 0.95400

    600

    800

    1,000

    1,200

    smoothing parameter (α)

    Master iterationsSubproblem calls

    0 0.2 0.4 0.6 0.8 0.95100

    200

    300

    400

    smoothing parameter (α)

    Time (sec.)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Generalized Assignment

    OR-Library C, D, E instances: 40 jobs per machine

    0.2 0.4 0.6 0.8 0.950

    1,000

    2,000

    3,000

    4,000

    5,000

    smoothing parameter (α)

    Master iterationsSubproblem calls

    0.2 0.4 0.6 0.8 0.950

    0.5

    1

    1.5

    2·104

    smoothing parameter (α)

    Time (sec.)

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Vertex Coloring

    Number of calls to the oracle and Master CPU time

    0 0.2 0.4 0.6 0.8 0.95

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    smoothing parameter (α)

    num

    bero

    fsub

    prob

    lem

    calls

    queenmycielDSJ-1DSJ-2milesmugg

    mulsolzeroinfpsol2school

    average

    0 0.2 0.4 0.6 0.8 0.950

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    smoothing parameter (α)

    time

    spen

    tats

    olvi

    ngm

    aste

    rpro

    blem

    s queenmycielDSJ-1DSJ-2milesmugg

    mulsolzeroinfpsol2school

    average

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Vertex Coloring

    Subproblem CPU time and Overall CPU time

    0 0.2 0.4 0.6 0.8 0.95

    0.5

    1

    1.5

    2

    smoothing parameter (α)

    time

    spen

    tats

    olvi

    ngsu

    bpro

    blem

    s queenmycielDSJ-1DSJ-2milesmugg

    mulsolzeroinfpsol2school

    average

    0 0.2 0.4 0.6 0.8 0.95

    0.5

    1

    1.5

    smoothing parameter (α)

    tota

    lsol

    ving

    time

    queenmycielDSJ-1DSJ-2milesmugg

    mulsolzeroinfpsol2school

    average

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Sensivity to static α: Vertex Coloring

    Dual price vector density & subproblem CPU timeon instance queen12_12, using the oracle of [Ostergard, 2001]

    0 100 200 300 400 5000

    20

    40

    60

    80

    100

    number of iterations

    perc

    enta

    geof

    nonz

    ero

    dual

    s(%

    )

    0

    0.2

    0.4

    0.6

    0.8

    1

    ·106

    time

    fors

    olvi

    ngsu

    bpro

    blem

    nonzero(%)time

    0 100 200 300 400 5000

    20

    40

    60

    80

    100

    number of iterationspe

    rcen

    tage

    ofno

    nzer

    odu

    als

    (%)

    0

    0.2

    0.4

    0.6

    0.8

    1

    ·106

    time

    fors

    olvi

    ngsu

    bpro

    blem

    nonzero(%)time

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

  • Numerical Analysis

    Conclusions

    Dual smoothing is the equivalent of IN-OUT separation↔ cross-fertilization with the cutting-plane community

    Dual smoothing can have a large impact on overallperformance.

    Dual smoothing requires a single parameter; but it needs to becarrefully set.

    Hard instances for Kelley seems to be those with many columns(f.i. more jobs per machine). Then, it seems best to apply heavystabilization f.i. α= 0.85.

    Dynamic and auto-adaptative α-schedules are to be derived.

    Stabilization can make the pricing subproblem harder andeliminates iterations where pricing is easy.

    Colgen Workshop, June 2012 Col. Gen. Stabilization using Dual Smoothing: Theory & Practice

    Column Generation & Cut Separation in the DualStabilization techniquesNumerical Analysis