SlideShare a Scribd company logo
Efficient Random-Walk Methods for
Approximating Polytope Volume
Vissarion Fisikopoulos
Joint work with I.Z. Emiris
Dept. of Informatics & Telecommunications, University of Athens
Visiting Scholar at NIMS, South Korea
SoCG 10 Jun. 2014
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
#-P hard for vertex and for halfspace repres. [DyerFrieze’88]
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
#-P hard for vertex and for halfspace repres. [DyerFrieze’88]
open if both vertex & halfspace representation is available
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
#-P hard for vertex and for halfspace repres. [DyerFrieze’88]
open if both vertex & halfspace representation is available
no deterministic poly-time algorithm can compute the volume
with less than exponential relative error [Elekes’86]
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
#-P hard for vertex and for halfspace repres. [DyerFrieze’88]
open if both vertex & halfspace representation is available
no deterministic poly-time algorithm can compute the volume
with less than exponential relative error [Elekes’86]
randomized poly-time algorithm approximates the volume of a
convex body with high probability and arbitrarily small relative
error [DyerFriezeKannan’91] O∗(d23) → O∗(d4) [LovVemp’04]
Implementations
Exact: VINCI [Bueler et al’00], Latte [deLoera et al], Qhull
[Barber et al], LRS [Avis], Normaliz [Bruns et al]
triangulation, sign decomposition methods
cannot compute in high dimensions (e.g. > 20)
Randomized:
[Lov`aszDe`ak’12] cannot compute in > 10 dimensions
Matlab code by Cousins & Vempala based on [LovVemp’04]
Ours: based on [DyerFriezeKannan’91],. . . ,
[KannanLov`aszSimon.’97]
How do we compute a random point in a polytope P?
easy for simple shapes like simplex or cube
How do we compute a random point in a polytope P?
easy for simple shapes like simplex or cube
BUT for arbitrary polytopes we need random walks
e.g. grid walk, ball walk, hit-and-run
Random Directions Hit-and-Run (RDHR)
P
x
B
Input: point x ∈ P and polytope P ⊂ Rd
Output: a new point in P
1. line through x, uniform on B(x, 1)
2. set x to be a uniform disrtibuted
point on P ∩
Iterate this for W steps and return x.
Random Directions Hit-and-Run (RDHR)
P
x
Input: point x ∈ P and polytope P ⊂ Rd
Output: a new point in P
1. line through x, uniform on B(x, 1)
2. set x to be a uniform disrtibuted
point on P ∩
Iterate this for W steps and return x.
Random Directions Hit-and-Run (RDHR)
P
x Input: point x ∈ P and polytope P ⊂ Rd
Output: a new point in P
1. line through x, uniform on B(x, 1)
2. set x to be a uniform disrtibuted
point on P ∩
Iterate this for W steps and return x.
x is unif. random distrib. in P after W = O∗(d3) steps, where
O∗(·) hides log factors [LovaszVempala’06]
to generate many random points iterate this procedure
Multiphase Monte Carlo (Sequence of balls)
B = B(c, r)
B = B(c, ρ)
P
B(c, 2i/d), i = α, α + 1, . . . , β,
α = d log r , β = d log ρ
Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β,
Pα = B(c, 2α/d) ⊆ B(c, r)
Multiphase Monte Carlo (Generating random points)
P0 = B(c, r)
B = B(c, ρ)
P
P1
B(c, 2i/d), i = α, α + 1, . . . , β,
α = d log r , β = d log ρ
Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β,
Pα = B(c, 2α/d) ⊆ B(c, r)
1. Generate rand. points in Pi
2. Count how many rand. points in Pi fall
in Pi−1
vol(P) = vol(Pα)
β
i=α+1
vol(Pi)
vol(Pi−1)
Multiphase Monte Carlo (Generating random points)
P0 = B(c, r)
B = B(c, ρ)
P
P1
B(c, 2i/d), i = α, α + 1, . . . , β,
α = d log r , β = d log ρ
Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β,
Pα = B(c, 2α/d) ⊆ B(c, r)
1. Generate rand. points in Pi
2. Count how many rand. points in Pi fall
in Pi−1
vol(P) = vol(Pα)
β
i=α+1
vol(Pi)
vol(Pi−1)
Complexity [KannanLS’97]
Assuming B(c, 1) ⊆ P ⊆ B(c, ρ), the volume algorithm returns an
estimation of vol(P), which lies between (1 − )vol(P) and
(1 + )vol(P) with probability ≥ 3/4, making
O∗
(d5
)
oracle calls, where ρ is the radius of a bounding ball for P.
Isotropic sandwitching: ρ = O∗(
√
d) and ball walk.
Runtime
generates d log(ρ) balls
generate N = 400 −2d log d random points in each ball ∩ P
each point is computed after O∗(d3) random walk steps
Modifications towards practicality
W = 10 + d/10 random walk steps (vs. O∗(d3) which hides
constant 1011) achieve < 1% error in up to 100 dim.
sample partial generations of ≤ N points in each ball ∩ P
(starting from the largest ball)
coordinate (vs. random) directions hit-and-run (CDHR)
implement boundary oracles with O(m) runtime in CDHR
Iterative rounding
1. compute set S of random points in P
P
Iterative rounding
1. compute set S of random points in P
2. compute (approximate) minimum volume ellipsoid E covers S
P
E
Iterative rounding
1. compute set S of random points in P
2. compute (approximate) minimum volume ellipsoid E covers S
3. compute L that maps E to the unit ball B and apply L to P
Iterate until the ratio of the maximum over the minumum ellipsoid
axis reaches some user-defined threshold.
P
P
E
B
Iterative rounding
1. compute set S of random points in P
2. compute (approximate) minimum volume ellipsoid E covers S
3. compute L that maps E to the unit ball B and apply L to P
Iterate until the ratio of the maximum over the minumum ellipsoid
axis reaches some user-defined threshold.
P
P
E
B
Efficiently handle skinny polytopes in practice.
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
randomized vs. exact software (VINCI, etc.): there is a
threshold dimension (d < 15) for which exact software halts
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
randomized vs. exact software (VINCI, etc.): there is a
threshold dimension (d < 15) for which exact software halts
computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs.
prob. 3/4 [KLS’97]) up to d = 100
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
randomized vs. exact software (VINCI, etc.): there is a
threshold dimension (d < 15) for which exact software halts
computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs.
prob. 3/4 [KLS’97]) up to d = 100
CDHR faster and more accurate than RDHR
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
randomized vs. exact software (VINCI, etc.): there is a
threshold dimension (d < 15) for which exact software halts
computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs.
prob. 3/4 [KLS’97]) up to d = 100
CDHR faster and more accurate than RDHR
Compute the volume of Birkhoff polytopes B11, . . . , B15 in few
hrs whereas exact methods have only computed that of B10 by
specialized software in ∼ 1 year of parallel computation
Volumes of Birkhoff polytopes
n d estimation
asymptotic estimation
asymptotic
exact
exact
asymptotic[CanfieldMcKay09]
3 4 1.12E+000 1.41E+000 0.7932847 1.13E+000 0.7973923
4 9 6.79E-002 7.61E-002 0.8919349 6.21E-002 0.8159296
5 16 1.41E-004 1.69E-004 0.8344350 1.41E-004 0.8341903
6 25 7.41E-009 8.62E-009 0.8598669 7.35E-009 0.8527922
7 36 5.67E-015 6.51E-015 0.8713891 5.64E-015 0.8665047
8 49 4.39E-023 5.03E-023 0.8729497 4.42E-023 0.8778632
9 64 2.62E-033 2.93E-033 0.8960767 2.60E-033 0.8874117
10 81 8.14E-046 9.81E-046 0.8305162 8.78E-046 0.8955491
11 100 1.40E-060 1.49E-060 0.9342584 ??? ???
12 121 7.85E-078 8.38E-078 0.9370513 ??? ???
13 144 1.33E-097 1.43E-097 0.9331517 ??? ???
14 169 5.96E-120 6.24E-120 0.9550089 ??? ???
15 196 5.70E-145 5.94E-145 0.9593786 ??? ???
Ongoing work
1. random walks for polytopes described by optimization oracles
e.g. resultant polytopes [Emiris,F,Konaxis,Penaranda SoCG’12]
2. use approximate oracles (utilizing approximate NN)
3. volume of more general convex bodies
e.g. spectahedra
Conclusion
Practical volume estimation in high dimensions (e.g. 100)
Software framework for testing theoretical ideas (e.g. new
geometric random walks)
Code
http://sourceforge.net/projects/randgeom
Conclusion
Practical volume estimation in high dimensions (e.g. 100)
Software framework for testing theoretical ideas (e.g. new
geometric random walks)
Code
http://sourceforge.net/projects/randgeom
THANK YOU

More Related Content

PDF
Volume and edge skeleton computation in high dimensions
PDF
Presentation of volesti in eRum 2020
PDF
Sop and pos
PDF
APassengerKnockOnDelayModelForTimetableOptimisation_beamer
PDF
Introduction to Information Channel
PPTX
kmaps
PDF
Homomorphic Lower Digit Removal and Improved FHE Bootstrapping by Kyoohyung Han
PPT
Model Checking Base on Interoplation
Volume and edge skeleton computation in high dimensions
Presentation of volesti in eRum 2020
Sop and pos
APassengerKnockOnDelayModelForTimetableOptimisation_beamer
Introduction to Information Channel
kmaps
Homomorphic Lower Digit Removal and Improved FHE Bootstrapping by Kyoohyung Han
Model Checking Base on Interoplation

What's hot (20)

PDF
20320140501020
PDF
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
PPT
Ai4 heuristic2
PDF
Volume computation and applications
PPTX
Network flows
PDF
Chapter 1
PDF
Differential Distributed Space-Time Coding with Imperfect Synchronization in ...
PPT
Lecture13
PPT
Chap8 new
PDF
High-dimensional polytopes defined by oracles: algorithms, computations and a...
PDF
Ec gate 13
PDF
Minimum phase, All pass and Magnitude Squared Function
PDF
High-dimensional sampling and volume computation
PDF
Derivatives Lesson Oct 5
PDF
Assignment 3 push down automata final
PDF
Quiz3 | Theory of Computation | Akash Anand | MTH 401A | IIT Kanpur
PDF
Efficient Edge-Skeleton Computation for Polytopes Defined by Oracles
PDF
Filter Designing
20320140501020
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
Ai4 heuristic2
Volume computation and applications
Network flows
Chapter 1
Differential Distributed Space-Time Coding with Imperfect Synchronization in ...
Lecture13
Chap8 new
High-dimensional polytopes defined by oracles: algorithms, computations and a...
Ec gate 13
Minimum phase, All pass and Magnitude Squared Function
High-dimensional sampling and volume computation
Derivatives Lesson Oct 5
Assignment 3 push down automata final
Quiz3 | Theory of Computation | Akash Anand | MTH 401A | IIT Kanpur
Efficient Edge-Skeleton Computation for Polytopes Defined by Oracles
Filter Designing
Ad

Similar to Efficient Random-Walk Methods forApproximating Polytope Volume (20)

PDF
14th Athens Colloquium on Algorithms and Complexity (ACAC19)
PDF
Oracle-based algorithms for high-dimensional polytopes.
PDF
Practical Volume Estimation of Zonotopes by a new Annealing Schedule for Cool...
PDF
Practical volume estimation of polytopes by billiard trajectories and a new a...
PDF
Polynomials.pdf
PPTX
Tech-1.pptx
PDF
A new practical algorithm for volume estimation using annealing of convex bodies
PDF
Efficient sampling of constraint spaces in practice
PDF
Polyhedral computations in computational algebraic geometry and optimization
PDF
Anlysis and design of algorithms part 1
PPT
KARNAUGH MAP(K-MAP)
PPT
Data_Structure_and_Algorithms_Lecture_1.ppt
PDF
Applied machine learning for search engine relevance 3
PDF
High-dimensional sampling and volume computation
PDF
Ning_Mei.ASSIGN01
PPTX
pseudocodes for interview preparation 2.pptx
PPTX
Python 04-ifelse-return-input-strings.pptx
PDF
Chapter 6 Balagurusamy Programming ANSI in c
DOCX
error 2.pdf101316, 6(46 PM01_errorPage 1 of 5http.docx
PPT
tutorial5.ppt
14th Athens Colloquium on Algorithms and Complexity (ACAC19)
Oracle-based algorithms for high-dimensional polytopes.
Practical Volume Estimation of Zonotopes by a new Annealing Schedule for Cool...
Practical volume estimation of polytopes by billiard trajectories and a new a...
Polynomials.pdf
Tech-1.pptx
A new practical algorithm for volume estimation using annealing of convex bodies
Efficient sampling of constraint spaces in practice
Polyhedral computations in computational algebraic geometry and optimization
Anlysis and design of algorithms part 1
KARNAUGH MAP(K-MAP)
Data_Structure_and_Algorithms_Lecture_1.ppt
Applied machine learning for search engine relevance 3
High-dimensional sampling and volume computation
Ning_Mei.ASSIGN01
pseudocodes for interview preparation 2.pptx
Python 04-ifelse-return-input-strings.pptx
Chapter 6 Balagurusamy Programming ANSI in c
error 2.pdf101316, 6(46 PM01_errorPage 1 of 5http.docx
tutorial5.ppt
Ad

More from Vissarion Fisikopoulos (17)

PDF
volesti: sampling efficiently from high dimensional distributions
PDF
"Mesh of Periodic Minimal Surfaces in CGAL."
PDF
"Regular triangularions and resultant polytopes."
PDF
"Exact and approximate algorithms for resultant polytopes."
PDF
"An output-sensitive algorithm for computing projections of resultant polytop...
PDF
"Faster Geometric Algorithms via Dynamic Determinant Computation."
PDF
"Combinatorics of 4-dimensional resultant polytopes"
PDF
High-dimensional polytopes defined by oracles: algorithms, computations and a...
PDF
Working with spatial trajectories in Boost Geometry
PDF
Conctructing Polytopes via a Vertex Oracle
PDF
Enumeration of 2-level polytopes
PDF
The Newton polytope of the sparse resultant
PDF
Geodesic algorithms: an experimental study
PDF
The Earth is not flat; but it's not round either (Geography on Boost.Geometry)
PDF
Faster Geometric Algorithms via Dynamic Determinant Computation
PDF
An algorithm for computing resultant polytopes
PDF
Combinatorics of 4-dimensional Resultant Polytopes
volesti: sampling efficiently from high dimensional distributions
"Mesh of Periodic Minimal Surfaces in CGAL."
"Regular triangularions and resultant polytopes."
"Exact and approximate algorithms for resultant polytopes."
"An output-sensitive algorithm for computing projections of resultant polytop...
"Faster Geometric Algorithms via Dynamic Determinant Computation."
"Combinatorics of 4-dimensional resultant polytopes"
High-dimensional polytopes defined by oracles: algorithms, computations and a...
Working with spatial trajectories in Boost Geometry
Conctructing Polytopes via a Vertex Oracle
Enumeration of 2-level polytopes
The Newton polytope of the sparse resultant
Geodesic algorithms: an experimental study
The Earth is not flat; but it's not round either (Geography on Boost.Geometry)
Faster Geometric Algorithms via Dynamic Determinant Computation
An algorithm for computing resultant polytopes
Combinatorics of 4-dimensional Resultant Polytopes

Recently uploaded (20)

PDF
Placing the Near-Earth Object Impact Probability in Context
PDF
Biophysics 2.pdffffffffffffffffffffffffff
PDF
Formation of Supersonic Turbulence in the Primordial Star-forming Cloud
PPTX
Introduction to Cardiovascular system_structure and functions-1
PPTX
Derivatives of integument scales, beaks, horns,.pptx
PPTX
neck nodes and dissection types and lymph nodes levels
PDF
SEHH2274 Organic Chemistry Notes 1 Structure and Bonding.pdf
PDF
IFIT3 RNA-binding activity primores influenza A viruz infection and translati...
PPTX
cpcsea ppt.pptxssssssssssssssjjdjdndndddd
PPTX
Cell Membrane: Structure, Composition & Functions
PPTX
Introduction to Fisheries Biotechnology_Lesson 1.pptx
PPTX
TOTAL hIP ARTHROPLASTY Presentation.pptx
PPT
The World of Physical Science, • Labs: Safety Simulation, Measurement Practice
PPTX
ognitive-behavioral therapy, mindfulness-based approaches, coping skills trai...
PPTX
DRUG THERAPY FOR SHOCK gjjjgfhhhhh.pptx.
PDF
bbec55_b34400a7914c42429908233dbd381773.pdf
PDF
AlphaEarth Foundations and the Satellite Embedding dataset
PDF
An interstellar mission to test astrophysical black holes
PDF
Unveiling a 36 billion solar mass black hole at the centre of the Cosmic Hors...
PDF
HPLC-PPT.docx high performance liquid chromatography
Placing the Near-Earth Object Impact Probability in Context
Biophysics 2.pdffffffffffffffffffffffffff
Formation of Supersonic Turbulence in the Primordial Star-forming Cloud
Introduction to Cardiovascular system_structure and functions-1
Derivatives of integument scales, beaks, horns,.pptx
neck nodes and dissection types and lymph nodes levels
SEHH2274 Organic Chemistry Notes 1 Structure and Bonding.pdf
IFIT3 RNA-binding activity primores influenza A viruz infection and translati...
cpcsea ppt.pptxssssssssssssssjjdjdndndddd
Cell Membrane: Structure, Composition & Functions
Introduction to Fisheries Biotechnology_Lesson 1.pptx
TOTAL hIP ARTHROPLASTY Presentation.pptx
The World of Physical Science, • Labs: Safety Simulation, Measurement Practice
ognitive-behavioral therapy, mindfulness-based approaches, coping skills trai...
DRUG THERAPY FOR SHOCK gjjjgfhhhhh.pptx.
bbec55_b34400a7914c42429908233dbd381773.pdf
AlphaEarth Foundations and the Satellite Embedding dataset
An interstellar mission to test astrophysical black holes
Unveiling a 36 billion solar mass black hole at the centre of the Cosmic Hors...
HPLC-PPT.docx high performance liquid chromatography

Efficient Random-Walk Methods forApproximating Polytope Volume

  • 1. Efficient Random-Walk Methods for Approximating Polytope Volume Vissarion Fisikopoulos Joint work with I.Z. Emiris Dept. of Informatics & Telecommunications, University of Athens Visiting Scholar at NIMS, South Korea SoCG 10 Jun. 2014
  • 2. The volume computation problem Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P #-P hard for vertex and for halfspace repres. [DyerFrieze’88]
  • 3. The volume computation problem Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P #-P hard for vertex and for halfspace repres. [DyerFrieze’88] open if both vertex & halfspace representation is available
  • 4. The volume computation problem Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P #-P hard for vertex and for halfspace repres. [DyerFrieze’88] open if both vertex & halfspace representation is available no deterministic poly-time algorithm can compute the volume with less than exponential relative error [Elekes’86]
  • 5. The volume computation problem Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P #-P hard for vertex and for halfspace repres. [DyerFrieze’88] open if both vertex & halfspace representation is available no deterministic poly-time algorithm can compute the volume with less than exponential relative error [Elekes’86] randomized poly-time algorithm approximates the volume of a convex body with high probability and arbitrarily small relative error [DyerFriezeKannan’91] O∗(d23) → O∗(d4) [LovVemp’04]
  • 6. Implementations Exact: VINCI [Bueler et al’00], Latte [deLoera et al], Qhull [Barber et al], LRS [Avis], Normaliz [Bruns et al] triangulation, sign decomposition methods cannot compute in high dimensions (e.g. > 20) Randomized: [Lov`aszDe`ak’12] cannot compute in > 10 dimensions Matlab code by Cousins & Vempala based on [LovVemp’04] Ours: based on [DyerFriezeKannan’91],. . . , [KannanLov`aszSimon.’97]
  • 7. How do we compute a random point in a polytope P? easy for simple shapes like simplex or cube
  • 8. How do we compute a random point in a polytope P? easy for simple shapes like simplex or cube BUT for arbitrary polytopes we need random walks e.g. grid walk, ball walk, hit-and-run
  • 9. Random Directions Hit-and-Run (RDHR) P x B Input: point x ∈ P and polytope P ⊂ Rd Output: a new point in P 1. line through x, uniform on B(x, 1) 2. set x to be a uniform disrtibuted point on P ∩ Iterate this for W steps and return x.
  • 10. Random Directions Hit-and-Run (RDHR) P x Input: point x ∈ P and polytope P ⊂ Rd Output: a new point in P 1. line through x, uniform on B(x, 1) 2. set x to be a uniform disrtibuted point on P ∩ Iterate this for W steps and return x.
  • 11. Random Directions Hit-and-Run (RDHR) P x Input: point x ∈ P and polytope P ⊂ Rd Output: a new point in P 1. line through x, uniform on B(x, 1) 2. set x to be a uniform disrtibuted point on P ∩ Iterate this for W steps and return x. x is unif. random distrib. in P after W = O∗(d3) steps, where O∗(·) hides log factors [LovaszVempala’06] to generate many random points iterate this procedure
  • 12. Multiphase Monte Carlo (Sequence of balls) B = B(c, r) B = B(c, ρ) P B(c, 2i/d), i = α, α + 1, . . . , β, α = d log r , β = d log ρ Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β, Pα = B(c, 2α/d) ⊆ B(c, r)
  • 13. Multiphase Monte Carlo (Generating random points) P0 = B(c, r) B = B(c, ρ) P P1 B(c, 2i/d), i = α, α + 1, . . . , β, α = d log r , β = d log ρ Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β, Pα = B(c, 2α/d) ⊆ B(c, r) 1. Generate rand. points in Pi 2. Count how many rand. points in Pi fall in Pi−1 vol(P) = vol(Pα) β i=α+1 vol(Pi) vol(Pi−1)
  • 14. Multiphase Monte Carlo (Generating random points) P0 = B(c, r) B = B(c, ρ) P P1 B(c, 2i/d), i = α, α + 1, . . . , β, α = d log r , β = d log ρ Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β, Pα = B(c, 2α/d) ⊆ B(c, r) 1. Generate rand. points in Pi 2. Count how many rand. points in Pi fall in Pi−1 vol(P) = vol(Pα) β i=α+1 vol(Pi) vol(Pi−1)
  • 15. Complexity [KannanLS’97] Assuming B(c, 1) ⊆ P ⊆ B(c, ρ), the volume algorithm returns an estimation of vol(P), which lies between (1 − )vol(P) and (1 + )vol(P) with probability ≥ 3/4, making O∗ (d5 ) oracle calls, where ρ is the radius of a bounding ball for P. Isotropic sandwitching: ρ = O∗( √ d) and ball walk. Runtime generates d log(ρ) balls generate N = 400 −2d log d random points in each ball ∩ P each point is computed after O∗(d3) random walk steps
  • 16. Modifications towards practicality W = 10 + d/10 random walk steps (vs. O∗(d3) which hides constant 1011) achieve < 1% error in up to 100 dim. sample partial generations of ≤ N points in each ball ∩ P (starting from the largest ball) coordinate (vs. random) directions hit-and-run (CDHR) implement boundary oracles with O(m) runtime in CDHR
  • 17. Iterative rounding 1. compute set S of random points in P P
  • 18. Iterative rounding 1. compute set S of random points in P 2. compute (approximate) minimum volume ellipsoid E covers S P E
  • 19. Iterative rounding 1. compute set S of random points in P 2. compute (approximate) minimum volume ellipsoid E covers S 3. compute L that maps E to the unit ball B and apply L to P Iterate until the ratio of the maximum over the minumum ellipsoid axis reaches some user-defined threshold. P P E B
  • 20. Iterative rounding 1. compute set S of random points in P 2. compute (approximate) minimum volume ellipsoid E covers S 3. compute L that maps E to the unit ball B and apply L to P Iterate until the ratio of the maximum over the minumum ellipsoid axis reaches some user-defined threshold. P P E B Efficiently handle skinny polytopes in practice.
  • 21. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1%
  • 22. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1% randomized vs. exact software (VINCI, etc.): there is a threshold dimension (d < 15) for which exact software halts
  • 23. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1% randomized vs. exact software (VINCI, etc.): there is a threshold dimension (d < 15) for which exact software halts computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs. prob. 3/4 [KLS’97]) up to d = 100
  • 24. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1% randomized vs. exact software (VINCI, etc.): there is a threshold dimension (d < 15) for which exact software halts computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs. prob. 3/4 [KLS’97]) up to d = 100 CDHR faster and more accurate than RDHR
  • 25. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1% randomized vs. exact software (VINCI, etc.): there is a threshold dimension (d < 15) for which exact software halts computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs. prob. 3/4 [KLS’97]) up to d = 100 CDHR faster and more accurate than RDHR Compute the volume of Birkhoff polytopes B11, . . . , B15 in few hrs whereas exact methods have only computed that of B10 by specialized software in ∼ 1 year of parallel computation
  • 26. Volumes of Birkhoff polytopes n d estimation asymptotic estimation asymptotic exact exact asymptotic[CanfieldMcKay09] 3 4 1.12E+000 1.41E+000 0.7932847 1.13E+000 0.7973923 4 9 6.79E-002 7.61E-002 0.8919349 6.21E-002 0.8159296 5 16 1.41E-004 1.69E-004 0.8344350 1.41E-004 0.8341903 6 25 7.41E-009 8.62E-009 0.8598669 7.35E-009 0.8527922 7 36 5.67E-015 6.51E-015 0.8713891 5.64E-015 0.8665047 8 49 4.39E-023 5.03E-023 0.8729497 4.42E-023 0.8778632 9 64 2.62E-033 2.93E-033 0.8960767 2.60E-033 0.8874117 10 81 8.14E-046 9.81E-046 0.8305162 8.78E-046 0.8955491 11 100 1.40E-060 1.49E-060 0.9342584 ??? ??? 12 121 7.85E-078 8.38E-078 0.9370513 ??? ??? 13 144 1.33E-097 1.43E-097 0.9331517 ??? ??? 14 169 5.96E-120 6.24E-120 0.9550089 ??? ??? 15 196 5.70E-145 5.94E-145 0.9593786 ??? ???
  • 27. Ongoing work 1. random walks for polytopes described by optimization oracles e.g. resultant polytopes [Emiris,F,Konaxis,Penaranda SoCG’12] 2. use approximate oracles (utilizing approximate NN) 3. volume of more general convex bodies e.g. spectahedra
  • 28. Conclusion Practical volume estimation in high dimensions (e.g. 100) Software framework for testing theoretical ideas (e.g. new geometric random walks) Code http://sourceforge.net/projects/randgeom
  • 29. Conclusion Practical volume estimation in high dimensions (e.g. 100) Software framework for testing theoretical ideas (e.g. new geometric random walks) Code http://sourceforge.net/projects/randgeom THANK YOU