Introduction Network Detection Separation
Finding Embedded Multi-Commodity Flow Submatrices in MIPs and Separation of Cutset Inequalities
Christian Raack Tobias Achterberg
Cooperation of the Zuse-Institute Berlin and ILOG
Aussois 2009
Finding Embedded Multi-Commodity Flow Submatrices in MIPs and - - PowerPoint PPT Presentation
Introduction Network Detection Separation Finding Embedded Multi-Commodity Flow Submatrices in MIPs and Separation of Cutset Inequalities Christian Raack Tobias Achterberg Cooperation of the Zuse-Institute Berlin and ILOG Aussois 2009
Introduction Network Detection Separation
Christian Raack Tobias Achterberg
Cooperation of the Zuse-Institute Berlin and ILOG
Aussois 2009
Introduction Network Detection Separation
Introduction Network Detection Separation
Introduction Network Detection Separation
min cx s.t. Ax ≤ b, x ∈ ZI × RC (MIP)
Cutting Planes in Cplex
clique, cover, disjunctive, flow cover, flow path, gomory, gub, implied bounds, mir, zero-half
Introduction Network Detection Separation
min cx s.t. Ax ≤ b, x ∈ ZI × RC (MIP)
Idea
→ network design, facility location, scheduling, steiner tree ...
“simple” relaxations such as knapsack sets, single node flow sets, stable set relaxations
Introduction Network Detection Separation
capacity flow conservation
1
1 1 1 1
N
1
1 1 1 1
N
1
1 1 1 1
N
1 1 1 1 1 1
block structure: flow for every commodity, network matrix N coupling: capacity constraints for arcs, Flow(a) ≤ Capacity(a)
Introduction Network Detection Separation
given potential network topology, user demands, link capacities find dimensioning of the links + MCF flow such that demands are satisfied and (some) cost is minimal Applications: telecommunication, public transport, ... Modeling: link-flow formulation MCF flow Capacity
1
1 1 1 1
N
1
1 1 1 1
N
1
1 1 1 1
N
1 1 1 1 1 1
Introduction Network Detection Separation
Introduction Network Detection Separation
Introduction Network Detection Separation
1
1 1 1 1
Network detection (in the context of the network simplex): Literature: Brown & Wright [84], Bixby & Fourer [88], Gülpinar et al. [98, 04], Gutin & Zverovitsch [04], Figueiredo & Labbe & Souza [07] Approaches: Row/column-scanning addition/deletion, Signed graphs, IP formulation We use Row scanning addition, it is simple, fast, and successful
Introduction Network Detection Separation
1
1 1 1 1
Row Scanning Addition [BixbyFourer ’88]
→ Valid network submatrix after every step
Introduction Network Detection Separation
1 1 1
1 1 -1
Row Scanning Addition [BixbyFourer ’88]
→ Valid network submatrix after every step
Introduction Network Detection Separation
1
1 1 1 1
Row Scanning Addition [BixbyFourer ’88]
→ Valid network submatrix after every step
Introduction Network Detection Separation
1 1 1
1 1
Row Scanning Addition [BixbyFourer ’88]
→ Valid network submatrix after every step
Introduction Network Detection Separation
1
1 1 1
1
Row Scanning Addition [BixbyFourer ’88]
→ Valid network submatrix after every step
Introduction Network Detection Separation
1
1 1 1
1
Row Scanning Addition [BixbyFourer ’88]
→ Valid network submatrix after every step
Introduction Network Detection Separation
1
1 1 1 1
N
1
1 1 1 1
N
1
1 1 1 1
N
→ Bad News: Complexity of GraphIsomorphism unknown
Introduction Network Detection Separation
1
1 1 1 1
N
1
1 1 1 1
N
1
1 1 1 1
N
1 1 1 1 1 1
→ Bad News: Complexity of GraphIsomorphism unknown → Good News: We can hopefully use the coupling constraints !!
Introduction Network Detection Separation
Omitting one flow row per commodity = ⇒ different node missing per commodity No flow into source nodes = ⇒ different arcs missing per commodity
Fixing, Substituting = ⇒ deletes loosely connected nodes (in some commodities)
(directed, undirected, single path,...)
Introduction Network Detection Separation
Result: Flow system with several components → flow variables ↔ commodity-id, flow row ↔ commodity-id
1
1 1 1 1
N
1
1 1 1 1
N
1
1 1 1 1
N
Introduction Network Detection Separation
Result: Arcs known → flow variable ↔ arc-id, capacity row ↔ arc-id
1 1 1 1
N
1 1 1 1
N
1 1 1 1
N
1 1 1
1 1 1
1
1
1
Introduction Network Detection Separation
similar incidence pattern w.r.t arc-ids
Result: Nodes known → flow row ↔ node-id
1 1 1
N
1 1 1
N
1 1 1
N
1 1 1 1 1 1
1
1 1
1 1
1
1
1
1 2 6 1 2 6 1 2 6
1 2 6 1 2 6 6 2 1
Introduction Network Detection Separation
Result: MCF network + measure for quality of detection
1
1 1 1 1
N
1
1 1 1 1
N
1
1 1 1 1
N
1 1 1 1 1 1
Introduction Network Detection Separation
set #
description arc.set 35
MCF, unsplittable and splittable, binary cap avub 60
randomly generated, SCF, binary caps + GUB cut.set 15
MCF, integer caps fc 20
SCF, fixed charge, binary cap fctp 28
SCF, complete bipartite, binary cap sndlib 52 ZIB MCF, integer caps or binary caps +GUB ufcn 84 L.A. Wolsey SCF, fixed charge, binary cap, big M
(# nodes, # arcs, # commodities, demands, capacities)
inconsistency ratio = 0.0032 (all - cut.set), ≫ 1 (cut.set)
inconsistency ratio = 0.01 (all - cutset), ≫ 1 (cut.set) detected graphs have -22% nodes, -15% arcs
Introduction Network Detection Separation
Introduction Network Detection Separation
Introduction Network Detection Separation
Given:
Idea:
Difference:
(c-MIR – Marchand & Wolsey [98])
Introduction Network Detection Separation
Basic Idea: Bienstock et. al [98], Günlük [99]
w.r.t. capacity constraint of a
(e.g. size 2-8, we used size 4)
5
15
Introduction Network Detection Separation
Basic Idea: Bienstock et. al [98], Günlük [99]
w.r.t. capacity constraint of a
(e.g. size 2-8, we used size 4)
5
15
Introduction Network Detection Separation
Basic Idea: Bienstock et. al [98], Günlük [99]
w.r.t. capacity constraint of a
(e.g. size 2-8, we used size 4)
5
15
Introduction Network Detection Separation
Basic Idea: Bienstock et. al [98], Günlük [99]
w.r.t. capacity constraint of a
(e.g. size 2-8, we used size 4)
5
15
Introduction Network Detection Separation
Basic Idea: Bienstock et. al [98], Günlük [99]
w.r.t. capacity constraint of a
(e.g. size 2-8, we used size 4)
5
15
Enumerate all cuts in the resulting partition
Introduction Network Detection Separation
L S
d +
1
1 1 1 1
L S Given S ⊂ V and corresponding cut L = L+ ∪ L−.
Introduction Network Detection Separation
L S
d +
1
1 1 1 1
L S Given S ⊂ V and corresponding cut L = L+ ∪ L−.
(for commodities with source in S). → f (L+) − f (L−) = d+ > 0 Cancellation!
Introduction Network Detection Separation
L S
d +
1
1 1 1 1
L S Given S ⊂ V and corresponding cut L = L+ ∪ L−.
(for commodities with source in S). → f (L+) − f (L−) = d+ > 0 Cancellation!
→ Cx(L+) − s ≥ d+ (base inequality)
Introduction Network Detection Separation
L S
d +
1
1 1 1 1
L S Given S ⊂ V and corresponding cut L = L+ ∪ L−.
(for commodities with source in S). → f (L+) − f (L−) = d+ > 0 Cancellation!
→ Cx(L+) − s ≥ d+ (base inequality)
→ x(L+) ≥
C
Introduction Network Detection Separation
L S
d +
1
1 1 1 1
L S Given S ⊂ V and corresponding cut L = L+ ∪ L−.
(for commodities with source in S). → f (L+) − f (L−) = d+ > 0 Cancellation!
→ Cx(L+) − s ≥ d+ (base inequality)
→ x(L+) ≥
C
Aggregation of many rows, nevertheless sparse inequality
Introduction Network Detection Separation
ND SCIP team size 180 329 network found 177 246 small inconsistency 165 80 violated ineqs 157 44 time ratio 0.63 0.95 node ratio 0.55 0.79
time_mcf + 1 time_default + 1 and nodes_mcf + 50 nodes_default + 50