Transcript Document
A Sieving Algorithm for Approximate
Integer Programming
Daniel Dadush, CWI
Integer Programming (IP)
min ππ‘π₯
s.t. π΄π₯ β₯ π
π₯ π β€π
π variables, π constraints
Classic Problem in Discrete Optimization:
Danzig, Fulkerson, Johnson `54
Gomory `58, Lenstra `82, Kannan `87, β¦
π
πΎ
Complexity & Algorithms
IP is NP-Complete (even with just binary variables).
We do not expect polynomial time algorithms.
Question:
What is worst case complexity of IP?
Complexity & Algorithms
min π π‘ π₯
s.t. π΄π₯ β₯ π, π₯ π β€π
H. Lenstra `83: IP can be solved in time
3
π
π
poly π 2
using poly π space, where π is the input length.
Kannan `87: Running time can be reduced to
poly π 2π(π) π2.5π .
Current Fastest: 2π(π) ππ time, 2π(π) space [D. `12].
Complexity & Algorithms
min π π‘ π₯
s.t. π΄π₯ β₯ π, π₯ π β€π
H. Lenstra `83: IP can be solved in time
3
π
π
poly π 2
using poly π space, where π is the input length.
Kannan `87: Running time can be reduced to
poly π 2π(π) π2.5π .
Developed tools for lattice problems which have
found applications in Cryptanalysis, Cryptography,
Coding Theory, Number Theory, β¦.
Integer Programming Feasibility
Find feasible solution to
π΄π₯ β₯ π, π₯ π β€π
or decide that no solution exists.
πΎ = {π₯ π βπ : π΄π₯ β₯ π} (continuous relaxation)
π¦
πΎ
0
β€π
Binary vs General Integer
Find feasible solution to
π΄π₯ β₯ π, π₯ π 0,1 π
or decide that no solution exists.
Total enumeration is βeasyβ (2π time).
πΎ
0
β€π
Binary vs General Integer
Find feasible solution to
π΄π₯ β₯ π, π₯ π β€π
or decide that no solution exists.
No easy analog of total enumeration.
π¦
πΎ
0
β€π
Binary vs General Integer
Find feasible solution to
π΄π₯ β₯ π, π₯ π β€π
or decide that no solution exists.
Need to adapt to the geometry of πΎ.
π¦
πΎ
0
β€π
Binary vs General Integer
Find feasible solution to
π΄π₯ β₯ π, π₯ π β€π
or decide that no solution exists.
Question: Is there a 2π(π) time algorithm for IP?
π¦
πΎ
0
β€π
Relaxing the Model
Pick π π πΎ, π > 0. Find solution to
π΄π₯ β₯ π + π(π β π΄π), π₯ π β€π
or decide system is infeasible for π = 0.
1+π scaling of πΎ about π
πΎ
π¦β²
π
0
β€π
Relaxing the Model
Pick π π πΎ, π > 0. Find solution to
π΄π₯ β₯ π + π(π β π΄π), π₯ π β€π
or decide system is infeasible for π = 0.
1+π scaling of πΎ about π
πΎ
π¦β²
π
0
β€π
Result: Approximate Feasibility
1
2
Algorithm: 0 < π β€ , π the center of mass of πΎ,
either (1) finds π₯ π β€π in (1+π) scaling of πΎ about c,
or (2) decides that πΎ is integer free,
using
1
π
π(π)
time, space and randomness.
π₯
πΎ
π
Result: Approximate Optimization
Algorithm: 0 < π β€ , πΏ < 0, objective π£ π βπ ,
1
2
either (1) decides that πΎ is integer free or
(2) finds π₯ π β€π in πΎ + π(πΎβπΎ) (βblowupβ of πΎ),
satisfying min π π£ π‘ π¦ β₯ π£ π‘ π₯ β πΏ,
π¦ π πΎβ©β€
using
1
π
π(π)
1
log
πΏ
time, space, randomness.
π₯
πΎ
π£
Center of Mass
Convex body πΎ β βπ
ππ₯
Center of Mass: c = πΎ π₯ vol(πΎ)
cβ
Algorithm:
1
π
π
π=1 ππ
ππ are iid uniform from πΎ [Dyer-Frieze-Kannan 89].
π₯1
π₯5 π₯
2
π₯3
π π₯4
π₯6
π₯7
πΎ
Center of Mass
Convex body πΎ β βπ
ππ₯
Center of Mass: c = πΎ π₯ vol(πΎ)
Crucial Property [Milman-Pajor `00]:
vol πΎ β€ 2π vol(πΎ β© 2πβπΎ)
2πβπΎ
π
(near symmetry)
πΎ
Kinchineβs Flatness Theorem
Algorithm: Given πΎ β βπ. Using 2π(π) time and space
(1) either finds π₯ π πΎ β© β€π , or
π₯
πΎ
Kinchineβs Flatness Theorem
Algorithm: Given πΎ β βπ. Using 2π(π) time and space
(1) either finds π₯ π πΎ β© β€π , or
(2) find π¦ π β€π β {0} satisfying
widthπΎ π¦ = maxπ₯ π πΎ π¦, π₯ β minπ₯ π πΎ π¦, π₯ β€ Õ(π4/3 )
[Kinchine 48, Babai 86, Lenstra-Lagarias-Schnorr 87, Hastad 88, Kannan-L0vasz 88,
Banasczyk 96, Rudelson 00]
π¦
πΎ
ytx=0
ytx=1
ytx=2
Kinchineβs Flatness Theorem
Best known bounds for Flatness Constants:
1. Ellipsoids:
π(π) = Ρ²(π)
2. General Bodies:
π π = Õ π4 3
[Kinchine 48, Lenstra-Lagarias-Schnorr 87, Kannan-L0vasz 88,
Banasczyk et al 99, Rudelson 00]
πΎ
πΈ
Norms and Convex Bodies
Symmetric convex body πΎ β βπ (πΎ = βπΎ).
πΎ-norm: π₯
πΎ
β inf {π β₯ 0: π₯ π π πΎ}
πΎ
π πΎ
π₯
0
-π₯
1. π₯ + π¦ πΎ β€ π₯ πΎ + π¦
2. π‘π₯ πΎ = π‘ π₯ πΎ , π‘ β₯ 0
3. π₯ πΎ = βπ₯ πΎ
πΎ = {π₯ π βπ : π₯ πΎ β€ 1}
πΎ is unit ball of β πΎ
πΎ
(triangle inequality)
(homogeneity)
(symmetry)
Norms and Convex Bodies
Convex body πΎ β βπ containing origin in its interior.
πΎ-norm: π₯
πΎ
β inf {π β₯ 0: π₯ π π πΎ}
πΎ
π πΎ
π₯
0
1. π₯ + π¦ πΎ β€ π₯ πΎ + π¦
2. π‘π₯ πΎ = π‘ π₯ πΎ , π‘ β₯ 0
3. π₯ πΎ = βπ₯ πΎ
πΎ = {π₯ π βπ : π₯ πΎ β€ 1}
πΎ is unit ball of β πΎ
πΎ
(triangle inequality)
(homogeneity)
(symmetry)
Norms and Convex Bodies
Convex body πΎ β βπ containing origin in its interior.
πΎ-norm: π₯
πΎ
β inf {π β₯ 0: π₯ π π πΎ}
πΎ
0
π πΎ
π₯
πΎ = {π₯ π βπ : π₯ πΎ β€ 1}
πΎ is unit ball of β πΎ
1. π₯ + π¦ πΎ β€ π₯ πΎ + π¦ πΎ (triangle inequality)
2. π‘π₯ πΎ = π‘ π₯ πΎ , π‘ β₯ 0
(homogeneity)
3. vol πΎ β€ 2π(π) vol(πΎ β© βπΎ) (near-symmetry)
Shortest Vector Problem (SVP)
Given: norm β πΎ in βπ .
Goal: Find π¦ π β€π β {0} minimizing π¦
K.
π¦
πΎ
0
β€π
-π¦
Closest Vector Problem (CVP)
Given: target π₯, norm β πΎ in βπ .
Goal: Find π¦ π β€π minimizing π¦ β π₯
πΎ
πΎ.
π¦
π₯
β€π
Main Tools
Algorithms: Near symmetric norm β πΎ .
(1) Finds shortest non-zero integer vector under β
2π(π) time, space, and randomness.
πΎ
π¦
0
πΎ
using
Main Tools
Algorithms: Near symmetric norm β πΎ .
(1) Finds shortest non-zero integer vector under β
πΎ
using
2π(π) time, space, and randomness.
(2) 0 < π β€
1
,π‘
2
π βπ . Finds 1+π -approximate closest
integer vector to t under β
πΎ using 1/π
π(π)
π¦
πΎ
π‘
ββ¦β.
Approx. IP β€ Approx. CVP
Algorithm:
1. Estimate center of mass π of πΎ (via uniform sampling).
2. Solve (1 + π)-approximate Closest Vector Problem
with target π under β πΎβπ (near symmetric).
3. If π¦ β π πΎβπ β€ 1 + π, return y.
Else, return πΎ β© β€π = β
.
πΎ
π
β€π
π¦
The Randomized Sieve
General Idea: Sample exponentially many βperturbedβ
integer points, combine them to get closer & closer
(shorter & shorter) integer vectors.
Ajtai-Kumar-Sivakumar `0o+`01: Developed randomized
sieving strategy for SVP and 1 + π -CVP for the π2 norm.
Blomer-Naewe `07: Refined and extended AKS approach
to get SVP and 1 + π -CVP for ππ norms.
Arvind-Joglekar `09: SVP for symmetric norms.
This paper: SVP & 1 + π -CVP for near symmetric norms.
Recent work
[D. Vempala `12, D. `12]: Deterministic
2π(π) space algorithm for (1+π) CVP.
1 π
π
time,
Conclusions
1. Presented approximate IP model and gave single
exponential time algorithm to solve it.
2. Generalized the AKS randomized sieve to nearly all
norms.
Open Problems
1.
Achieve same time complexity using poly(π) space?
2. 2π(π) time algorithm for IP?
Thank You!