0/1 polytopes need exponential size Some extended formulations Thomas Rothvoß

advertisement
Some 0/1 polytopes need exponential size
extended formulations
Thomas Rothvoß
Department of Mathematics, M.I.T.
0/1 polytopes
P
=
conv(X) with X ⊆ {0, 1}n
(1, 1)
b
P
b
b
(0, 0)
(1, 0)
0/1 polytopes
P
=
conv(X) with X ⊆ {0, 1}n → exponential!
(1, 1)
b
P
b
b
(0, 0)
(1, 0)
0/1 polytopes
P
=
=
conv(X) with X ⊆ {0, 1}n → exponential!
{x ∈ Rn | Ax ≤ b}
(1, 1)
b
P
b
b
(0, 0)
(1, 0)
0/1 polytopes
P
=
=
conv(X) with X ⊆ {0, 1}n → exponential!
{x ∈ Rn | Ax ≤ b}
→ exponential!
(1, 1)
b
P
b
b
(0, 0)
(1, 0)
0/1 polytopes
P
=
=
conv(X) with X ⊆ {0, 1}n → exponential!
{x ∈ Rn | Ax ≤ b}
→ exponential!
b
b
(0, 0)
P b
(1, 0)
(1, 1)
0/1 polytopes
P
◮
◮
=
=
=
conv(X) with X ⊆ {0, 1}n → exponential!
{x ∈ Rn | Ax ≤ b}
→ exponential!
p(Q)
→ can be polynomial
p : Rn+k → Rn linear projection
Q = {(x, y) | Bx + Cy ≤ c}
b
b
Q
b
b
b
b
b
b
(0, 0)
b
P b
(1, 0)
(1, 1)
Extension complexity
Definition
Extension complexity:


Q polyhedron 

xc(P ) := min #facets of Q | p linear projection


p(Q) = P
b
b
Q
b
b
p
b
b
b
b
b
P
b
Extension complexity
Definition
Extension complexity:


Q polyhedron 

xc(P ) := min #facets of Q | p linear projection


p(Q) = P
If xc(P ) ≤ poly(n) ⇒ (Q, p) compact formulation of P .
b
b
Q
b
b
p
b
b
b
b
b
P
b
Example: Parity Polytope
P
=
conv{x ∈ {0, 1}n | # ones in x is odd}
(0, 1, 1)
(0, 0, 1) b
(1, 1, 1)
b
(1, 0, 1)
(0, 1, 0) b
(1, 1, 0)
b
(0, 0, 0)
(1, 0, 0)
Example: Parity Polytope
P
=
=
conv{x ∈ {0, 1}n | # ones in x is odd}
{0 ≤ x ≤ 1 | x(A) − x([n]\A) ≤ |A| − 1 ∀A ⊆ [n] : |A| even}
(0, 1, 1)
(0, 0, 1) b
(1, 1, 1)
b
(1, 0, 1)
(0, 1, 0) b
(1, 1, 0)
b
(0, 0, 0)
(1, 0, 0)
Example: Parity Polytope
P
=
=
conv{x ∈ {0, 1}n | # ones in x is odd}
{0 ≤ x ≤ 1 | x(A) − x([n]\A) ≤ |A| − 1 ∀A ⊆ [n] : |A| even}
(0, 1, 1)
1T z k
=
k
0 ≤ zk
≤
1
(k odd)
k(0,=
1
0, 1) b
(1, 1, 1)
b
(1, 0, 1)
(0, 1, 0) b
(1, 1, 0)
b
(0, 0, 0)
k=3
(1, 0, 0)
Example: Parity Polytope
P
conv{x ∈ {0, 1}n | # ones in x is odd}
=
=
{0 ≤ x ≤ 1 | x(A) − x([n]\A) ≤ |A| − 1 ∀A ⊆ [n] : |A| even}
x
=
1T z k
=
0 ≤ zk
≤
X
(0, 1, 1)
zk
k odd
T
k · λk
1 · λk
1 λ
=
1
λ
≥
0
(k odd)
k(0,=
1
0, 1) b
(1, 1, 1)
b
(1, 0, 1)
(0, 1, 0) b
(1, 1, 0)
b
(0, 0, 0)
k=3
(1, 0, 0)
What’s known?
Compact formulations:
◮ Perfect Matching in planar graphs [Barahona ’93]
◮ Perfect Matching in bounded genus graphs [Gerards
’91]
◮ O(n log n)-size for Permutahedron [Goemans ’10]
(→ tight)
◮ nO(1/ε) -size ε-apx for Knapsack Polytope [Bienstock ’08]
◮ ...
What’s known?
Compact formulations:
◮ Perfect Matching in planar graphs [Barahona ’93]
◮ Perfect Matching in bounded genus graphs [Gerards
’91]
◮ O(n log n)-size for Permutahedron [Goemans ’10]
(→ tight)
◮ nO(1/ε) -size ε-apx for Knapsack Polytope [Bienstock ’08]
◮ ...
Theorem (Yannakakis)
No symmetric compact formulation for TSP Polytope and
Perfect Matching Polytope.
What’s known?
Compact formulations:
◮ Perfect Matching in planar graphs [Barahona ’93]
◮ Perfect Matching in bounded genus graphs [Gerards
’91]
◮ O(n log n)-size for Permutahedron [Goemans ’10]
(→ tight)
◮ nO(1/ε) -size ε-apx for Knapsack Polytope [Bienstock ’08]
◮ ...
Theorem (Yannakakis)
No symmetric compact formulation for TSP Polytope and
Perfect Matching Polytope.
Theorem (Kaibel, Pashkovich & Theis ’10)
Compact formulation for log n size matchings, but no
symmetric one.
1st Cargèse Workshop on Combinatorial Optim.
1st Cargèse Workshop on Combinatorial Optim.
1st Cargèse Workshop on Combinatorial Optim.
1st Cargèse Workshop on Combinatorial Optim.
1st Cargèse Workshop on Combinatorial Optim.
Open problem I
Does the matching polytope
have a compact formulation?
1st Cargèse Workshop on Combinatorial Optim.
ea
!
Open problem I
N
o
id
Does the matching polytope
have a compact formulation?
1st Cargèse Workshop on Combinatorial Optim.
ea
!
Open problem I
N
o
id
Does the matching polytope
have a compact formulation?
1st Cargèse Workshop on Combinatorial Optim.
ea
!
Open problem I
N
o
id
Does the matching polytope
have a compact formulation?
Open problem II (V. Kaibel)
Is there any 0/1 polytope without
a compact formulation?
1st Cargèse Workshop on Combinatorial Optim.
ea
!
Open problem I
N
o
id
Does the matching polytope
have a compact formulation?
Open problem II (V. Kaibel)
Ye
s!
Is there any 0/1 polytope without
a compact formulation?
Theorem
For every n there exists X ⊆ {0, 1}n s.t.
xc(conv(X)) ≥ 2n/2·(1−o(1)) .
Proof strategy
X ⊆ {0, 1}n
Proof strategy
X ⊆ {0, 1}n
z



x | ∃y :
conv(X)
}|
A
x+
B
y≤
b
{


Proof strategy
injective
map
X ⊆ {0, 1}n
z



x | ∃y :
conv(X)
}|
A
x+
B
y≤
b
{


Proof strategy
injective
map
X ⊆ {0, 1}n
#0/1 polytopes
z



≤
x | ∃y :
conv(X)
}|
A
x+
B
y≤
# extended form.
b
{


Proof strategy
injective
map
X ⊆ {0, 1}n
#0/1 polytopes
=
22
n
z



≤
x | ∃y :
conv(X)
}|
A
x+
B
y≤
# extended form.
b
{


Proof strategy
irrational
entries
injective
map
X ⊆ {0, 1}n
#0/1 polytopes
=
22
n
z



≤
x | ∃y :
conv(X)
}|
A
B
x+ √
2
y≤
# extended form.
=
∞
b
{


Proof strategy
irrational
entries
X ⊆ {0, 1}n
n
≤
n’
es
Do
22
x | ∃y :
tw
or
k

#0/1 polytopes
=
z


conv(X)
}|
A
!
injective
map
B
x+ √
2
y≤
# extended form.
=
∞
b
{


Slack-matrix
Write: P = conv({x1 , . . . , xv }) = {x ∈ Rn | Ax ≤ b}
{z
}
|
non-redundant
# vertices
Slack-matrix
# facets
S
Sij
Sij = bi − ATi xj
Slack-matrix
Write: P = conv({x1 , . . . , xv }) = {x ∈ Rn | Ax ≤ b}
{z
}
|
non-redundant
# vertices
vertex
j
# facets
facet i
S
Slack-matrix
Sij
Sij = bi − ATi xj
Slack-matrix
Write: P = conv({x1 , . . . , xv }) = {x ∈ Rn | Ax ≤ b}
{z
}
|
non-redundant
# vertices
r
r
# facets
U
≥
0
V ≥0
S
Slack-matrix
Sij
Sij = bi − ATi xj
Non-negative rank:
×r
r×v
: S = UV }
, V ∈ R≥0
rk+ (S) = min{r | ∃U ∈ Rf≥0
Example for slack-matrix
(1, 1)
x1 − x2 ≥ 0
(0, 0)
P
x2 ≥ 0
2x1 ≤ 2
(1, 0)
0 1 0
2 0 0
0 0 1
S
Yannakakis’ Theorem
Theorem (Yannakakis ’91)
Let S be slackmatrix for P :
◮
xc(P ) = rk+ (S).
◮
For any non-neg. factorization S = U V :
P = {x ∈ Rn | ∃y ≥ 0 : Ax + U y = b}
Yannakakis’ Theorem
Theorem (Yannakakis ’91)
Let S be slackmatrix for P :
◮
xc(P ) = rk+ (S).
◮
For any non-neg. factorization S = U V :
P = {x ∈ Rn | ∃y ≥ 0 : Ax + U y = b}
◮
For vertex xj : Ai xj + Ui V j = bi .
Yannakakis’ Theorem
Theorem (Yannakakis ’91)
Let S be slackmatrix for P :
◮
xc(P ) = rk+ (S).
◮
For any non-neg. factorization S = U V :
P = {x ∈ Rn | ∃y ≥ 0 : Ax + U y = b}
◮
◮
For vertex xj : Ai xj + Ui V j = bi .
Ai x > bi =⇒ Ai x + Ui y > bi .
|{z}
≥0
Yannakakis’ Theorem
Theorem (Yannakakis ’91)
Let S be slackmatrix for P :
◮
xc(P ) = rk+ (S).
◮
For any non-neg. factorization S = U V :
P = {x ∈ Rn | ∃y ≥ 0 : Ax + U y = b}
◮
◮
For vertex xj : Ai xj + Ui V j = bi .
Ai x > bi =⇒ Ai x + Ui y > bi .
|{z}
≥0
◮
“≥” follows from an application of duality.
Controlling the coefficients
Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and
Slack-matrix S = U V
Valid assumption:
◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n)
◮
Controlling the coefficients
Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and
Slack-matrix S = U V
Valid assumption:
◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n)
◮ xc(P ) ≤ 2n .
◮
Controlling the coefficients
Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and
Slack-matrix S = U V
Valid assumption:
◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n)
◮ xc(P ) ≤ 2n .
2
◮ |Sij | = |bi − Ai xj | ≤ (n + 1) · 2n log(2n) ≤ 2n
◮
Controlling the coefficients
Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and
Slack-matrix S = U V
Valid assumption:
◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n)
◮ xc(P ) ≤ 2n .
2
◮ |Sij | = |bi − Ai xj | ≤ (n + 1) · 2n log(2n) ≤ 2n
2
◮ kU k∞ , kV k∞ ≤ 2n
◮
V
U
S
Slack-matrix
Controlling the coefficients
Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and
Slack-matrix S = U V
Valid assumption:
◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n)
◮ xc(P ) ≤ 2n .
2
◮ |Sij | = |bi − Ai xj | ≤ (n + 1) · 2n log(2n) ≤ 2n
2
◮ kU k∞ , kV k∞ ≤ 2n
◮
◮
Scale s.t. kU ℓ k∞ = kVℓ k∞ .
V
U
col
ℓ
row ℓ
S
Slack-matrix
Controlling the coefficients
Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and
Slack-matrix S = U V
Valid assumption:
◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n)
◮ xc(P ) ≤ 2n .
2
◮ |Sij | = |bi − Ai xj | ≤ (n + 1) · 2n log(2n) ≤ 2n
2
◮ kU k∞ , kV k∞ ≤ 2n
◮
◮
◮
Scale s.t. kU ℓ k∞ = kVℓ k∞ .
But kSk∞ ≥ kU ℓ k∞ · kVℓ k∞
largest entry in row/col
U
col
ℓ
V
row ℓ
S
Slack-matrix
≤ 2n
2
Rounding entries
b
b
Q
b
b
b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤ ∞ :
A
·x+
b
P
U b
·y =
b
)
b
Rounding entries
b
b
Q
b
b
b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
b
P
U b
·y =
b
)
b
Rounding entries
b
b
Pick rows I max. | det([AI , UI ])|
◮
Q
b
b
b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
b
P
U b
·y =
b
)
b
Rounding entries
b
b
Pick rows I max. | det([AI , UI ])|
◮
Q
b
b
b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
b
P
U b
·y =
√
2
b
)
b
Rounding entries
b
b
Q
Pick rows I max. | det([AI , UI ])|
◮
Round Uij → Uij′ ∈ Z · ( 12 )n
◮
b
3
b
b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
b
b
P
U b
·y =
1.41
b
b
)
b
b
Rounding entries
b
b
Pick rows I max. | det([AI , UI ])|
◮
Round Uij →
◮
Uij′
∈Z
Q
b
3
· ( 12 )n
b
b
b
b
b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
b
P
U b
·y =
b
±
b
1
2n2
)
Rounding entries
b
b
Pick rows I max. | det([AI , UI ])|
◮
Round Uij →
◮
Uij′
∈Z
b
3
· ( 12 )n
b
b
Consider vertex x ∈ X: rounding error
2
≤ kU − U ′ k∞ · kyk1 ≤ . . . ≤ ( 12 )n
◮
b
b
X=
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
b
b
b
(
Q
b
x
P
U b
·y =
b
±
b
1
2n2
)
Rounding entries
b
Consider x ∈
/ X.
◮
b
Q
b
b
b
xb
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
b
b
b
b
b
P
U b
·y =
b
±
b
1
2n2
)
Rounding entries
b
Consider x ∈
/ X.
◮
b
Q
∃ violated constraint: Aℓ x ≥ bℓ + 1
◮
b
b
b
xb
b
b
b
b
b
b
P
b
b
Aℓ x ≤ bℓ
ℓ
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
U b
·y =
±
1
2n2
)
Rounding entries
b
Consider x ∈
/ X.
◮
b
Q
∃ violated constraint: Aℓ x ≥ bℓ + 1
◮
(Aℓ , Uℓ ) =
◮
P
i∈I
det
det
·
b
b
(Ai , Ui )
b
xb
b
b
b
b
b
b
P
b
b
Aℓ x ≤ bℓ
ℓ
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
U b
·y =
±
1
2n2
)
Rounding entries
b
Consider x ∈
/ X.
◮
b
∃ violated constraint: Aℓ x ≥ bℓ + 1
P
(Aℓ , Uℓ ) = i∈I [−1, 1]· (Ai , Ui )
◮
◮
Q
b
b
b
xb
b
b
b
b
b
b
P
b
b
Aℓ x ≤ bℓ
ℓ
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
U b
·y =
±
1
2n2
)
Rounding entries
b
Consider x ∈
/ X.
◮
b
∃ violated constraint: Aℓ x ≥ bℓ + 1
P
◮ (Aℓ , Uℓ ) =
i∈I [−1, 1]· (Ai , Ui )
P
◮ violation in ℓ ≤
i∈I violation in i :
X
|Ai x + Ui y − bi |
1 ≤ |Aℓ x + Uℓ y − b| ≤
Q
◮
b
b
b
xb
i∈I
b
b
b
b
b
b
P
b
b
Aℓ x ≤ bℓ
ℓ
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
U b
·y =
±
1
2n2
)
Rounding entries
b
Consider x ∈
/ X.
◮
b
∃ violated constraint: Aℓ x ≥ bℓ + 1
P
◮ (Aℓ , Uℓ ) =
i∈I [−1, 1]· (Ai , Ui )
P
◮ violation in ℓ ≤
i∈I violation in i :
X
|Ai x + Ui y − bi |
1 ≤ |Aℓ x + Uℓ y − b| ≤
Q
◮
b
b
b
xb
i∈I
One i ∈ I violated by
1
1 n2
′
|I| − kU − U k∞ · kyk1 ≫ ( 2 )
⇒ x not feasible!
◮
b
b
b
b
b
b
P
b
b
Aℓ x ≤ bℓ
ℓ
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2
2n
:
A
·x+
U b
·y =
±
1
2n2
)
Conclusion
◮
Let R :=
max {xc(conv(X))}.
X⊆{0,1}n
Conclusion
b
b
RR
Q
b
b
◮
Let R :=
max {xc(conv(X))}.
X⊆{0,1}n
X ⊆ {0, 1}n
b
b
b
A U ′b
b
b
P bb
b
b
Rn
Conclusion
b
b
RR
Q
b
b
◮
Let R :=
max {xc(conv(X))}.
X⊆{0,1}n
injective
X ⊆ {0, 1}n
b
b
b
A U ′b
b
b
P bb
b
b
Rn
Conclusion
b
b
RR
Q
b
b
◮
Let R :=
max {xc(conv(X))}.
X⊆{0,1}n
injective
X ⊆ {0, 1}n
22
n
≤
b
b
b
A U ′b
b
b
P bb
b
b
Rn
Conclusion
b
b
RR
Q
b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective
X ⊆ {0, 1}n
22
n
≤
b
b
b
P bb
R
A U ′b
n+R
b
b
Rn
Conclusion
b
b
RR
Q
b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective
X ⊆ {0, 1}n
b
b
b
P bb
R
A U ′b
n+R
poly(n) bits
22
n
≤
b
b
Rn
Conclusion
b
b
RR
Q
b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective
X ⊆ {0, 1}n
b
b
b
P bb
R
A U ′b
n+R
poly(n) bits
22
n
≤
2poly(n)·R
2
b
b
Rn
Conclusion
b
b
RR
Q
b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective
X ⊆ {0, 1}n
b
b
b
P bb
R
A U ′b
n+R
poly(n) bits
22
n
≤
⇒ R ≥ 2n/2·(1−o(1))
2poly(n)·R
2
b
b
Rn
Conclusion
b
b
RR
Q
b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective
X ⊆ {0, 1}n
b
b
b
P bb
R
A U ′b
n+R
poly(n) bits
22
n
≤
2poly(n)·R
2
⇒ ∃X ⊆ {0,
: xc(conv(X))
⇒1}
Rn ≥
2n/2·(1−o(1)) ≥ 2n/2·(1−o(1))
b
b
Rn
Consequences for matroids
◮
Fact: There are 22
[Duke ’03].
n /poly(n)
many matroids on n elements
Consequences for matroids
◮
Fact: There are 22
[Duke ’03].
n /poly(n)
many matroids on n elements
Theorem
For every n there exists a matroid M = ([n], I) such that
xc(conv(χ(I)) ≥ 2n/2·(1−o(1)) .
Consequences for TSP
Theorem (Folkore)
NP 6⊆ P/poly ⇒ no compact formulation for
PT SP = conv{χ(C) | C is Hamiltonian in complete graph}
with polynomially encodable coefficients.
Consequences for TSP
Theorem
NP 6⊆ P/poly ⇒ no compact formulation for
PT SP = conv{χ(C) | C is Hamiltonian in complete graph}
with polynomially encodable coefficients.
Rxc(P )
P
Rn
Consequences for TSP
Theorem
NP 6⊆ P/poly ⇒ no compact formulation for
PT SP = conv{χ(C) | C is Hamiltonian in complete graph}
with polynomially encodable coefficients.
b
Given instance G = (V, E) for Hamiltonian Cycle. Optimize
(
1 e∈E
ce :=
0 otherwise
b
Rxc(P )
Q
b
b
b
b
b
over rounded polytope.
b
P
b
Rn
b
projx (Q)
Consequences for TSP
Theorem
NP 6⊆ P/poly ⇒ no compact formulation for
PT SP = conv{χ(C) | C is Hamiltonian in complete graph}
with polynomially encodable coefficients.
b
Given instance G = (V, E) for Hamiltonian Cycle. Optimize
(
1 e∈E
ce :=
0 otherwise
b
b
b
b
b
◮
∃HC ⇒ OP T ≥ n
NO HC ⇒ OP T ≤ n − 1 + εn ≤ n −
Q
b
over rounded polytope.
◮
b
Rxc(P )
1
2
P
b
Rn
b
P + ε projx (Q)
Open problems
Open Problem
Can one prove a super-polynomial lower bound for any explicit
0/1 polytope???
Open problems
Open Problem
Can one prove a super-polynomial lower bound for any explicit
0/1 polytope???
Thanks for your attention
Download