SlideShare a Scribd company logo
1 of 51
Download to read offline
Practical volume estimation by a new annealing
schedule for cooling convex bodies
A.Chalkis, I.Z.Emiris, V. Fisikopoulos
Dept. of Informatics & Telecommunications, University of Athens
Volume computation
Given P a convex polytope in Rd compute the volume of P.
Volume computation
Given P a convex polytope in Rd compute the volume of P.
H-polytope: P = {x | Ax ≤ b, A ∈ Rq×d , b ∈ Rq}.
Volume computation
Given P a convex polytope in Rd compute the volume of P.
H-polytope: P = {x | Ax ≤ b, A ∈ Rq×d , b ∈ Rq}.
P is given as a set of linear inequalities.
Our setting
Given P a convex polytope in Rd compute the volume of P.
V-polytope: P is the convex hull of a set of points in Rd .
Our setting
Given P a convex polytope in Rd compute the volume of P.
Zonotope: P is the Minkowski sum of k d-dimensional
segments.
A zonotope is a centrally symmetric convex body.
Complexity
Computing the exact volume of P,
Complexity
Computing the exact volume of P,
is #P-hard for all the representations [DyerFrieze’88]
Complexity
Computing the exact volume of P,
is #P-hard for all the representations [DyerFrieze’88]
is open if both H- and V- representations available
Complexity
Computing the exact volume of P,
is #P-hard for all the representations [DyerFrieze’88]
is open if both H- and V- representations available
is APX-hard (oracle model) [Elekes’86]
Our goal
A new practical volume estimation for V-polytopes and
zonotopes.
Our goal
A new practical volume estimation for V-polytopes and
zonotopes.
Why:
Volume computation of such polytopes appear in engineering
and data science.
Current state-of-the-art software can not scale beyond, say
d ≥ 15.
Randomized algorithms
Theorem
For any convex body K and any 0 ≤ , δ ≤ 1, there is a
randomized algorithm which computes an estimate V s.t. with
probability 1 − δ we have (1 − )vol(K) ≤ V ≤ (1 + )vol(K), and
the number of oracle calls is poly(d, 1/ , log(1/δ)).
Using randomness, we can go from an exponential
approximation to an arbitrarily small one.
Multiphase Monte Carlo
Let Cm ⊆ · · · ⊆ C1 a sequence of concentric balls intersecting
P, s.t. Cm ⊆ P ⊆ C1.
Multiphase Monte Carlo
Let Cm ⊆ · · · ⊆ C1 a sequence of concentric balls intersecting
P, s.t. Cm ⊆ P ⊆ C1.
vol(P) = vol(Cm) vol(Cm−1∩P)
vol(Cm∩P)
vol(Cm−2∩P)
vol(Cm−1∩P)
· · · vol(C1∩P)
vol(C2∩P)
Multiphase Monte Carlo
Let Cm ⊆ · · · ⊆ C1 a sequence of concentric balls intersecting
P, s.t. Cm ⊆ P ⊆ C1.
vol(P) = vol(Cm) vol(Cm−1∩P)
vol(Cm∩P)
vol(Cm−2∩P)
vol(Cm−1∩P)
· · · vol(C1∩P)
vol(C2∩P)
Compute: vol(Cm) → closed formula.
Multiphase Monte Carlo
Let Cm ⊆ · · · ⊆ C1 a sequence of concentric balls intersecting
P, s.t. Cm ⊆ P ⊆ C1.
vol(P) = vol(Cm) vol(Cm−1∩P)
vol(Cm∩P)
vol(Cm−2∩P)
vol(Cm−1∩P)
· · · vol(C1∩P)
vol(C2∩P)
Compute: vol(Cm) → closed formula.
Compute ratios: ri = vol(Ci ∩P)
vol(Ci+1∩P)
Ratio estimation
Estimate ri within some target relative error .
Ratio estimation
Estimate ri within some target relative error .
Sample N uniform points from Pi = Ci ∩ P and count points
in Pi+1.
Ratio estimation
Estimate ri within some target relative error .
Sample N uniform points from Pi = Ci ∩ P and count points
in Pi+1.
Keep each ratio bounded, then O(1/ 2) points suffices.
Ratio estimation
Estimate ri within some target relative error .
Sample N uniform points from Pi = Ci ∩ P and count points
in Pi+1.
Keep each ratio bounded, then O(1/ 2) points suffices.
#phases (or ratios) m = d lg d if P is well rounded.
Sampling
To sample uniformly distributed points from Pi we use
geometric random walks (Markov chain).
Sampling
To sample uniformly distributed points from Pi we use
geometric random walks (Markov chain).
A geometric r.w. starts at p0 ∈ P and at each step i, moves to
a ”neighboring” point pi+1 that depends only on pi .
Problem (set the walk length):
Starting from a uniform point pi , how many steps do we have
to perform until we get a new uniform point? (Mixing time).
Sampling
To sample uniformly distributed points from Pi we use
geometric random walks (Markov chain).
A geometric r.w. starts at p0 ∈ P and at each step i, moves to
a ”neighboring” point pi+1 that depends only on pi .
Problem (set the walk length):
Starting from a uniform point pi , how many steps do we have
to perform until we get a new uniform point? (Mixing time).
Random walk Mixing time cost per step cost per step
(walk length) H-rep V- & Z-rep
Hit-and-Run O∗(d3) O(md) 2 LPs
Coordinate Hit-and-Run ?? O(m) 2 LPs
Ball walk O∗(d3) O(md) 1 LP
Vaidya walk O∗(m1/2d3/2) O(md2) –
Riemannian HMC O∗(md2/3) O(md2) –
Billiard walk ?? O(ρmd) ρ LPs
Sampling
Random walk Mixing time cost per step cost per step
(number of steps) H-rep V- & Z-rep
Coordinate Hit-and-Run ?? O(m) 2 LPs
Billiard walk ?? O(ρmd) ρ LPs
Coordinate Hit-and-Run:
Is the main paradigm in applications and software.
In practice converges to uniform distribution in O(d2) steps
[Cousins, Vempala’17].
Sampling
Random walk Mixing time cost per step cost per step
(number of steps) H-rep V- & Z-rep
Coordinate Hit-and-Run ?? O(m) 2 LPs
Billiard walk ?? O(ρmd) ρ LPs
Coordinate Hit-and-Run:
Is the main paradigm in applications and software.
In practice converges to uniform distribution in O(d2) steps
[Cousins, Vempala’17].
Billiard walk:
Converges faster to uniform distribution than Hit-and-Run in
practice [Polyak’14].
For V-polytopes and zonotopes has comparable cost per step
with Coordinate Hit-and-Run.
Billiard walk
Set the walk length equal to 1.
Sample 1000 points from the 1000-dimensional unit-cube and
project the points to the plane.
Left: Billiard walk. Right: Hit-and-Run
State-of-the-art
Authors-Year Complexity Algorithm
(oracle calls)
[Dyer, Frieze, Kannan’91] O∗(d23) Sequence of balls + grid walk
[Kannan, Lovasz, Simonovits’97] O∗(d5) Sequence of balls + ball walk
[Lovasz, Vempala’03] O∗(d4) Exponential dist. + hit-and-run
[Cousins, Vempala’15] O∗(d3) Spherical Gaussians + ball walk
State-of-the-art
Authors-Year Complexity Algorithm
(oracle calls)
[Dyer, Frieze, Kannan’91] O∗(d23) Sequence of balls + grid walk
[Kannan, Lovasz, Simonovits’97] O∗(d5) Sequence of balls + ball walk
[Lovasz, Vempala’03] O∗(d4) Exponential dist. + hit-and-run
[Cousins, Vempala’15] O∗(d3) Spherical Gaussians + ball walk
Practical methods:
Follow theory but make practical adjustments (experimental).
State-of-the-art
Authors-Year Complexity Algorithm
(oracle calls)
[Dyer, Frieze, Kannan’91] O∗(d23) Sequence of balls + grid walk
[Kannan, Lovasz, Simonovits’97] O∗(d5) Sequence of balls + ball walk
[Lovasz, Vempala’03] O∗(d4) Exponential dist. + hit-and-run
[Cousins, Vempala’15] O∗(d3) Spherical Gaussians + ball walk
Practical methods:
Follow theory but make practical adjustments (experimental).
[Emiris, F’14] Sequence of balls + coordinate hit-and-run.
State-of-the-art
Authors-Year Complexity Algorithm
(oracle calls)
[Dyer, Frieze, Kannan’91] O∗(d23) Sequence of balls + grid walk
[Kannan, Lovasz, Simonovits’97] O∗(d5) Sequence of balls + ball walk
[Lovasz, Vempala’03] O∗(d4) Exponential dist. + hit-and-run
[Cousins, Vempala’15] O∗(d3) Spherical Gaussians + ball walk
Practical methods:
Follow theory but make practical adjustments (experimental).
[Emiris, F’14] Sequence of balls + coordinate hit-and-run.
[Cousins, Vempala’16] Spherical Gaussians + coordinate
hit-and-run
Limitations
Limitations of existing practical methods:
Efficient only for H-polytopes (scale up-to few hundred dims in
hrs)
Limitations
Limitations of existing practical methods:
Efficient only for H-polytopes (scale up-to few hundred dims in
hrs)
For V-polytopes or zonotopes:
Both of them request an inscribed ball (ideally the maximum)
C ⊆ P.
The number of total steps is strongly determined by the radius
of C.
[Cousins, Vempala’16] needs a bound on the number of facets.
Our contributions
Multiphase Monte Carlo: We allow any convex body C (that
”fits well” to P and is ”easy” to sample from) besides ball to
construct the sequence.
Our contributions
Multiphase Monte Carlo: We allow any convex body C (that
”fits well” to P and is ”easy” to sample from) besides ball to
construct the sequence.
Sampling: Billiard walk to V-polytopes and zonotopes.
Our contributions
Multiphase Monte Carlo: We allow any convex body C (that
”fits well” to P and is ”easy” to sample from) besides ball to
construct the sequence.
Sampling: Billiard walk to V-polytopes and zonotopes.
A new simulated annealing method to construct a sparser
sequence of bodies.
Sequence by [L.S.’97] (left) and by annealing schedule (right).
Our contributions
Multiphase Monte Carlo: We allow any convex body C (that
”fits well” to P and is ”easy” to sample from) besides ball to
construct the sequence.
Sampling: Billiard walk to V-polytopes and zonotopes.
A new simulated annealing method to construct a sparser
sequence of bodies.
Sequence by [L.S.’97] (left) and by annealing schedule (right).
Our method can be easily extended for any polytope P that is
given as a projection of a polytope Q.
Annealing Schedule
Inputs: Polytope P, body C, cooling parameters r, δ > 0.
Output: A sequence of scaled copies of C, Cm ⊆ · · · ⊆ C1 s.t.
vol(Pi+1)/vol(Pi ) ∈ [r, r + δ] with high probability
where Pi = Ci ∩ P, i = 1, . . . , m and P0 = P.
Statistical tests
for the ratio of volumes of convex bodies
Given convex bodies Pi ⊇ Pi+1, we define two statistical tests:
testL(Pi , Pi+1, r, δ): testR(Pi , Pi+1, r, δ):
H0 : vol(Pi+1)/vol(Pi ) ≥ r + δ H0 : vol(Pi+1)/vol(Pi ) ≤ r
Successful if we reject H0 Successful if we reject H0
If both testL and testR are successful then
ri = vol(Pi+1)/vol(Pi ) ∈ [r, r + δ], with high probability.
Annealing Schedule
How we compute the sequence of bodies
1. Compute the body with smallest
volume in the sequence, C
(C = Cm at termination).
Annealing Schedule
How we compute the sequence of bodies
1. Compute the body with smallest
volume in the sequence, C
(C = Cm at termination).
2. P0 = P, i = 0
Annealing Schedule
How we compute the sequence of bodies
1. Compute the body with smallest
volume in the sequence, C
(C = Cm at termination).
2. P0 = P, i = 0
3. if vol(C ∩ P)/vol(Pi ) ≥ r set m = i + 1, Cm = C stop
otherwise construct Pi+1 s.t. vol(Pi+1)/vol(Pi ) ∈ [r, r + δ].
Check stopping criterion Construct Pi+1
Annealing Schedule
How we compute the sequence of bodies
1. Compute the body with smallest
volume in the sequence, C
(C = Cm at termination).
2. P0 = P, i = 0
3. if vol(C ∩ P)/vol(Pi ) ≥ r set m = i + 1, Cm = C stop
otherwise construct Pi+1 s.t. vol(Pi+1)/vol(Pi ) ∈ [r, r + δ].
Check stopping criterion Construct Pi+1
4. i = i + 1, return to step 3.
Bound #phases
The annealing schedule terminates with constant probability.
#phases m = O log(vol(P)/vol(C ∩ P)) .
If the body we use in MMC is a ”good fit” to P the
vol(C ∩ P) increases and the number of phases m decreases.
Zonotopes
Number of phases
We use the generators of the zonotope P in order to define a
centrally symmetric H-polytope that is a ”good fit” to P.
In both figures vol(C ∩ P)/vol(C ) ∈ [0.8, 0.85].
Zonotopes
Number of phases
Two types of bodies: balls (left) symmetric H-polytopes (right)
Zonotopes
Number of phases
Two types of bodies: balls (left) symmetric H-polytopes (right)
For low order (i.e. #generators/d) zonotopes, the number of
bodies is ≤ 3 for d ≤ 100, smaller than the case of using balls.
Zonotopes
Number of phases
Two types of bodies: balls (left) symmetric H-polytopes (right)
For low order (i.e. #generators/d) zonotopes, the number of
bodies is ≤ 3 for d ≤ 100, smaller than the case of using balls.
The number of bodies right grows as a piecewise constant
function of d.
Complexity for zonotopes
We test the method for 3 different random
zonotope-generators.
Order k/d = 2.
for d = 100 takes ≤ 1hr.
Complexity for V-polytopes
We test the method for 2 different random
V-polytope-generators.
The method performs O∗(d) oracle calls for random
V-polytopes while the best theoretical complexity is O∗(d3)
oracle calls.
for d = 100 takes ≤ 1hr.
Supported by Google Summer of Code 2018 and 2019.
The implementations in C++ are included to the R package
volesti1 in CRAN.
More development branches in Github2.
1
https://cran.r-project.org/web/packages/volesti/index.html
2
https://github.com/GeomScale/volume_approximation

More Related Content

What's hot

Semi-automatic ABC: a discussion
Semi-automatic ABC: a discussionSemi-automatic ABC: a discussion
Semi-automatic ABC: a discussionChristian Robert
 
A Commutative Alternative to Fractional Calculus on k-Differentiable Functions
A Commutative Alternative to Fractional Calculus on k-Differentiable FunctionsA Commutative Alternative to Fractional Calculus on k-Differentiable Functions
A Commutative Alternative to Fractional Calculus on k-Differentiable FunctionsMatt Parker
 
High-dimensional polytopes defined by oracles: algorithms, computations and a...
High-dimensional polytopes defined by oracles: algorithms, computations and a...High-dimensional polytopes defined by oracles: algorithms, computations and a...
High-dimensional polytopes defined by oracles: algorithms, computations and a...Vissarion Fisikopoulos
 
Symposium of Computational Geometry 2021
Symposium of Computational Geometry 2021Symposium of Computational Geometry 2021
Symposium of Computational Geometry 2021Apostolos Chalkis
 
Efficient Edge-Skeleton Computation for Polytopes Defined by Oracles
Efficient Edge-Skeleton Computation for Polytopes Defined by OraclesEfficient Edge-Skeleton Computation for Polytopes Defined by Oracles
Efficient Edge-Skeleton Computation for Polytopes Defined by OraclesVissarion Fisikopoulos
 
Module 13 Gradient And Area Under A Graph
Module 13  Gradient And Area Under A GraphModule 13  Gradient And Area Under A Graph
Module 13 Gradient And Area Under A Graphguestcc333c
 
Derivatives Lesson Oct 5
Derivatives Lesson  Oct 5Derivatives Lesson  Oct 5
Derivatives Lesson Oct 5ingroy
 
p-adic integration and elliptic curves over number fields
p-adic integration and elliptic curves over number fieldsp-adic integration and elliptic curves over number fields
p-adic integration and elliptic curves over number fieldsmmasdeu
 
High-dimensional polytopes defined by oracles: algorithms, computations and a...
High-dimensional polytopes defined by oracles: algorithms, computations and a...High-dimensional polytopes defined by oracles: algorithms, computations and a...
High-dimensional polytopes defined by oracles: algorithms, computations and a...Vissarion Fisikopoulos
 
P2 Area Under A Graph Modul
P2  Area Under A Graph ModulP2  Area Under A Graph Modul
P2 Area Under A Graph Modulguestcc333c
 
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...Don Sheehy
 
Code of the multidimensional fractional pseudo-Newton method using recursive ...
Code of the multidimensional fractional pseudo-Newton method using recursive ...Code of the multidimensional fractional pseudo-Newton method using recursive ...
Code of the multidimensional fractional pseudo-Newton method using recursive ...mathsjournal
 
Building Compatible Bases on Graphs, Images, and Manifolds
Building Compatible Bases on Graphs, Images, and ManifoldsBuilding Compatible Bases on Graphs, Images, and Manifolds
Building Compatible Bases on Graphs, Images, and ManifoldsDavide Eynard
 

What's hot (20)

Semi-automatic ABC: a discussion
Semi-automatic ABC: a discussionSemi-automatic ABC: a discussion
Semi-automatic ABC: a discussion
 
A Commutative Alternative to Fractional Calculus on k-Differentiable Functions
A Commutative Alternative to Fractional Calculus on k-Differentiable FunctionsA Commutative Alternative to Fractional Calculus on k-Differentiable Functions
A Commutative Alternative to Fractional Calculus on k-Differentiable Functions
 
High-dimensional polytopes defined by oracles: algorithms, computations and a...
High-dimensional polytopes defined by oracles: algorithms, computations and a...High-dimensional polytopes defined by oracles: algorithms, computations and a...
High-dimensional polytopes defined by oracles: algorithms, computations and a...
 
Symposium of Computational Geometry 2021
Symposium of Computational Geometry 2021Symposium of Computational Geometry 2021
Symposium of Computational Geometry 2021
 
Presentation socg
Presentation socgPresentation socg
Presentation socg
 
Sop and pos
Sop and posSop and pos
Sop and pos
 
Volume computation and applications
Volume computation and applications Volume computation and applications
Volume computation and applications
 
Efficient Edge-Skeleton Computation for Polytopes Defined by Oracles
Efficient Edge-Skeleton Computation for Polytopes Defined by OraclesEfficient Edge-Skeleton Computation for Polytopes Defined by Oracles
Efficient Edge-Skeleton Computation for Polytopes Defined by Oracles
 
Module 13 Gradient And Area Under A Graph
Module 13  Gradient And Area Under A GraphModule 13  Gradient And Area Under A Graph
Module 13 Gradient And Area Under A Graph
 
Derivatives Lesson Oct 5
Derivatives Lesson  Oct 5Derivatives Lesson  Oct 5
Derivatives Lesson Oct 5
 
p-adic integration and elliptic curves over number fields
p-adic integration and elliptic curves over number fieldsp-adic integration and elliptic curves over number fields
p-adic integration and elliptic curves over number fields
 
High-dimensional polytopes defined by oracles: algorithms, computations and a...
High-dimensional polytopes defined by oracles: algorithms, computations and a...High-dimensional polytopes defined by oracles: algorithms, computations and a...
High-dimensional polytopes defined by oracles: algorithms, computations and a...
 
P2 Area Under A Graph Modul
P2  Area Under A Graph ModulP2  Area Under A Graph Modul
P2 Area Under A Graph Modul
 
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
 
Stack of Tasks Course
Stack of Tasks CourseStack of Tasks Course
Stack of Tasks Course
 
Code of the multidimensional fractional pseudo-Newton method using recursive ...
Code of the multidimensional fractional pseudo-Newton method using recursive ...Code of the multidimensional fractional pseudo-Newton method using recursive ...
Code of the multidimensional fractional pseudo-Newton method using recursive ...
 
Pres_Zurich14
Pres_Zurich14Pres_Zurich14
Pres_Zurich14
 
A Posteriori Error Analysis Presentation
A Posteriori Error Analysis  PresentationA Posteriori Error Analysis  Presentation
A Posteriori Error Analysis Presentation
 
Building Compatible Bases on Graphs, Images, and Manifolds
Building Compatible Bases on Graphs, Images, and ManifoldsBuilding Compatible Bases on Graphs, Images, and Manifolds
Building Compatible Bases on Graphs, Images, and Manifolds
 
QMC: Transition Workshop - Density Estimation by Randomized Quasi-Monte Carlo...
QMC: Transition Workshop - Density Estimation by Randomized Quasi-Monte Carlo...QMC: Transition Workshop - Density Estimation by Randomized Quasi-Monte Carlo...
QMC: Transition Workshop - Density Estimation by Randomized Quasi-Monte Carlo...
 

Similar to 14th Athens Colloquium on Algorithms and Complexity (ACAC19)

A new practical algorithm for volume estimation using annealing of convex bodies
A new practical algorithm for volume estimation using annealing of convex bodiesA new practical algorithm for volume estimation using annealing of convex bodies
A new practical algorithm for volume estimation using annealing of convex bodiesVissarion Fisikopoulos
 
Oracle-based algorithms for high-dimensional polytopes.
Oracle-based algorithms for high-dimensional polytopes.Oracle-based algorithms for high-dimensional polytopes.
Oracle-based algorithms for high-dimensional polytopes.Vissarion Fisikopoulos
 
High-dimensional sampling and volume computation
High-dimensional sampling and volume computationHigh-dimensional sampling and volume computation
High-dimensional sampling and volume computationVissarion Fisikopoulos
 
Coordinate sampler : A non-reversible Gibbs-like sampler
Coordinate sampler : A non-reversible Gibbs-like samplerCoordinate sampler : A non-reversible Gibbs-like sampler
Coordinate sampler : A non-reversible Gibbs-like samplerChristian Robert
 
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by OraclesEfficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by OraclesVissarion Fisikopoulos
 
Geometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic LiftGeometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic LiftDon Sheehy
 
Mba admission in india
Mba admission in indiaMba admission in india
Mba admission in indiaEdhole.com
 
Poster for Bayesian Statistics in the Big Data Era conference
Poster for Bayesian Statistics in the Big Data Era conferencePoster for Bayesian Statistics in the Big Data Era conference
Poster for Bayesian Statistics in the Big Data Era conferenceChristian Robert
 
Polyhedral computations in computational algebraic geometry and optimization
Polyhedral computations in computational algebraic geometry and optimizationPolyhedral computations in computational algebraic geometry and optimization
Polyhedral computations in computational algebraic geometry and optimizationVissarion Fisikopoulos
 
Coordinate sampler: A non-reversible Gibbs-like sampler
Coordinate sampler: A non-reversible Gibbs-like samplerCoordinate sampler: A non-reversible Gibbs-like sampler
Coordinate sampler: A non-reversible Gibbs-like samplerChristian Robert
 
An algorithm for computing resultant polytopes
An algorithm for computing resultant polytopesAn algorithm for computing resultant polytopes
An algorithm for computing resultant polytopesVissarion Fisikopoulos
 
Lecture_10_Parallel_Algorithms_Part_II.ppt
Lecture_10_Parallel_Algorithms_Part_II.pptLecture_10_Parallel_Algorithms_Part_II.ppt
Lecture_10_Parallel_Algorithms_Part_II.pptWahyuAde4
 
ANU ASTR 4004 / 8004 Astronomical Computing : Lecture 9
ANU ASTR 4004 / 8004 Astronomical Computing : Lecture 9ANU ASTR 4004 / 8004 Astronomical Computing : Lecture 9
ANU ASTR 4004 / 8004 Astronomical Computing : Lecture 9tingyuansenastro
 
"An output-sensitive algorithm for computing projections of resultant polytop...
"An output-sensitive algorithm for computing projections of resultant polytop..."An output-sensitive algorithm for computing projections of resultant polytop...
"An output-sensitive algorithm for computing projections of resultant polytop...Vissarion Fisikopoulos
 
Design and Analysis of Algorithms Assignment Help
Design and Analysis of Algorithms Assignment HelpDesign and Analysis of Algorithms Assignment Help
Design and Analysis of Algorithms Assignment HelpProgramming Homework Help
 

Similar to 14th Athens Colloquium on Algorithms and Complexity (ACAC19) (20)

A new practical algorithm for volume estimation using annealing of convex bodies
A new practical algorithm for volume estimation using annealing of convex bodiesA new practical algorithm for volume estimation using annealing of convex bodies
A new practical algorithm for volume estimation using annealing of convex bodies
 
Oracle-based algorithms for high-dimensional polytopes.
Oracle-based algorithms for high-dimensional polytopes.Oracle-based algorithms for high-dimensional polytopes.
Oracle-based algorithms for high-dimensional polytopes.
 
High-dimensional sampling and volume computation
High-dimensional sampling and volume computationHigh-dimensional sampling and volume computation
High-dimensional sampling and volume computation
 
Coordinate sampler : A non-reversible Gibbs-like sampler
Coordinate sampler : A non-reversible Gibbs-like samplerCoordinate sampler : A non-reversible Gibbs-like sampler
Coordinate sampler : A non-reversible Gibbs-like sampler
 
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by OraclesEfficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
Efficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles
 
Geometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic LiftGeometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic Lift
 
Mba admission in india
Mba admission in indiaMba admission in india
Mba admission in india
 
Absorbing Random Walk Centrality
Absorbing Random Walk CentralityAbsorbing Random Walk Centrality
Absorbing Random Walk Centrality
 
Richard Everitt's slides
Richard Everitt's slidesRichard Everitt's slides
Richard Everitt's slides
 
Poster for Bayesian Statistics in the Big Data Era conference
Poster for Bayesian Statistics in the Big Data Era conferencePoster for Bayesian Statistics in the Big Data Era conference
Poster for Bayesian Statistics in the Big Data Era conference
 
Polyhedral computations in computational algebraic geometry and optimization
Polyhedral computations in computational algebraic geometry and optimizationPolyhedral computations in computational algebraic geometry and optimization
Polyhedral computations in computational algebraic geometry and optimization
 
Coordinate sampler: A non-reversible Gibbs-like sampler
Coordinate sampler: A non-reversible Gibbs-like samplerCoordinate sampler: A non-reversible Gibbs-like sampler
Coordinate sampler: A non-reversible Gibbs-like sampler
 
An algorithm for computing resultant polytopes
An algorithm for computing resultant polytopesAn algorithm for computing resultant polytopes
An algorithm for computing resultant polytopes
 
Lecture_10_Parallel_Algorithms_Part_II.ppt
Lecture_10_Parallel_Algorithms_Part_II.pptLecture_10_Parallel_Algorithms_Part_II.ppt
Lecture_10_Parallel_Algorithms_Part_II.ppt
 
ANU ASTR 4004 / 8004 Astronomical Computing : Lecture 9
ANU ASTR 4004 / 8004 Astronomical Computing : Lecture 9ANU ASTR 4004 / 8004 Astronomical Computing : Lecture 9
ANU ASTR 4004 / 8004 Astronomical Computing : Lecture 9
 
"An output-sensitive algorithm for computing projections of resultant polytop...
"An output-sensitive algorithm for computing projections of resultant polytop..."An output-sensitive algorithm for computing projections of resultant polytop...
"An output-sensitive algorithm for computing projections of resultant polytop...
 
Bellmon Ford Algorithm
Bellmon Ford AlgorithmBellmon Ford Algorithm
Bellmon Ford Algorithm
 
6 dof.pdf
6 dof.pdf6 dof.pdf
6 dof.pdf
 
QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...
QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...
QMC: Transition Workshop - Probabilistic Integrators for Deterministic Differ...
 
Design and Analysis of Algorithms Assignment Help
Design and Analysis of Algorithms Assignment HelpDesign and Analysis of Algorithms Assignment Help
Design and Analysis of Algorithms Assignment Help
 

Recently uploaded

Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 

Recently uploaded (20)

Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 

14th Athens Colloquium on Algorithms and Complexity (ACAC19)

  • 1. Practical volume estimation by a new annealing schedule for cooling convex bodies A.Chalkis, I.Z.Emiris, V. Fisikopoulos Dept. of Informatics & Telecommunications, University of Athens
  • 2. Volume computation Given P a convex polytope in Rd compute the volume of P.
  • 3. Volume computation Given P a convex polytope in Rd compute the volume of P. H-polytope: P = {x | Ax ≤ b, A ∈ Rq×d , b ∈ Rq}.
  • 4. Volume computation Given P a convex polytope in Rd compute the volume of P. H-polytope: P = {x | Ax ≤ b, A ∈ Rq×d , b ∈ Rq}. P is given as a set of linear inequalities.
  • 5. Our setting Given P a convex polytope in Rd compute the volume of P. V-polytope: P is the convex hull of a set of points in Rd .
  • 6. Our setting Given P a convex polytope in Rd compute the volume of P. Zonotope: P is the Minkowski sum of k d-dimensional segments. A zonotope is a centrally symmetric convex body.
  • 8. Complexity Computing the exact volume of P, is #P-hard for all the representations [DyerFrieze’88]
  • 9. Complexity Computing the exact volume of P, is #P-hard for all the representations [DyerFrieze’88] is open if both H- and V- representations available
  • 10. Complexity Computing the exact volume of P, is #P-hard for all the representations [DyerFrieze’88] is open if both H- and V- representations available is APX-hard (oracle model) [Elekes’86]
  • 11. Our goal A new practical volume estimation for V-polytopes and zonotopes.
  • 12. Our goal A new practical volume estimation for V-polytopes and zonotopes. Why: Volume computation of such polytopes appear in engineering and data science. Current state-of-the-art software can not scale beyond, say d ≥ 15.
  • 13. Randomized algorithms Theorem For any convex body K and any 0 ≤ , δ ≤ 1, there is a randomized algorithm which computes an estimate V s.t. with probability 1 − δ we have (1 − )vol(K) ≤ V ≤ (1 + )vol(K), and the number of oracle calls is poly(d, 1/ , log(1/δ)). Using randomness, we can go from an exponential approximation to an arbitrarily small one.
  • 14. Multiphase Monte Carlo Let Cm ⊆ · · · ⊆ C1 a sequence of concentric balls intersecting P, s.t. Cm ⊆ P ⊆ C1.
  • 15. Multiphase Monte Carlo Let Cm ⊆ · · · ⊆ C1 a sequence of concentric balls intersecting P, s.t. Cm ⊆ P ⊆ C1. vol(P) = vol(Cm) vol(Cm−1∩P) vol(Cm∩P) vol(Cm−2∩P) vol(Cm−1∩P) · · · vol(C1∩P) vol(C2∩P)
  • 16. Multiphase Monte Carlo Let Cm ⊆ · · · ⊆ C1 a sequence of concentric balls intersecting P, s.t. Cm ⊆ P ⊆ C1. vol(P) = vol(Cm) vol(Cm−1∩P) vol(Cm∩P) vol(Cm−2∩P) vol(Cm−1∩P) · · · vol(C1∩P) vol(C2∩P) Compute: vol(Cm) → closed formula.
  • 17. Multiphase Monte Carlo Let Cm ⊆ · · · ⊆ C1 a sequence of concentric balls intersecting P, s.t. Cm ⊆ P ⊆ C1. vol(P) = vol(Cm) vol(Cm−1∩P) vol(Cm∩P) vol(Cm−2∩P) vol(Cm−1∩P) · · · vol(C1∩P) vol(C2∩P) Compute: vol(Cm) → closed formula. Compute ratios: ri = vol(Ci ∩P) vol(Ci+1∩P)
  • 18. Ratio estimation Estimate ri within some target relative error .
  • 19. Ratio estimation Estimate ri within some target relative error . Sample N uniform points from Pi = Ci ∩ P and count points in Pi+1.
  • 20. Ratio estimation Estimate ri within some target relative error . Sample N uniform points from Pi = Ci ∩ P and count points in Pi+1. Keep each ratio bounded, then O(1/ 2) points suffices.
  • 21. Ratio estimation Estimate ri within some target relative error . Sample N uniform points from Pi = Ci ∩ P and count points in Pi+1. Keep each ratio bounded, then O(1/ 2) points suffices. #phases (or ratios) m = d lg d if P is well rounded.
  • 22. Sampling To sample uniformly distributed points from Pi we use geometric random walks (Markov chain).
  • 23. Sampling To sample uniformly distributed points from Pi we use geometric random walks (Markov chain). A geometric r.w. starts at p0 ∈ P and at each step i, moves to a ”neighboring” point pi+1 that depends only on pi . Problem (set the walk length): Starting from a uniform point pi , how many steps do we have to perform until we get a new uniform point? (Mixing time).
  • 24. Sampling To sample uniformly distributed points from Pi we use geometric random walks (Markov chain). A geometric r.w. starts at p0 ∈ P and at each step i, moves to a ”neighboring” point pi+1 that depends only on pi . Problem (set the walk length): Starting from a uniform point pi , how many steps do we have to perform until we get a new uniform point? (Mixing time). Random walk Mixing time cost per step cost per step (walk length) H-rep V- & Z-rep Hit-and-Run O∗(d3) O(md) 2 LPs Coordinate Hit-and-Run ?? O(m) 2 LPs Ball walk O∗(d3) O(md) 1 LP Vaidya walk O∗(m1/2d3/2) O(md2) – Riemannian HMC O∗(md2/3) O(md2) – Billiard walk ?? O(ρmd) ρ LPs
  • 25. Sampling Random walk Mixing time cost per step cost per step (number of steps) H-rep V- & Z-rep Coordinate Hit-and-Run ?? O(m) 2 LPs Billiard walk ?? O(ρmd) ρ LPs Coordinate Hit-and-Run: Is the main paradigm in applications and software. In practice converges to uniform distribution in O(d2) steps [Cousins, Vempala’17].
  • 26. Sampling Random walk Mixing time cost per step cost per step (number of steps) H-rep V- & Z-rep Coordinate Hit-and-Run ?? O(m) 2 LPs Billiard walk ?? O(ρmd) ρ LPs Coordinate Hit-and-Run: Is the main paradigm in applications and software. In practice converges to uniform distribution in O(d2) steps [Cousins, Vempala’17]. Billiard walk: Converges faster to uniform distribution than Hit-and-Run in practice [Polyak’14]. For V-polytopes and zonotopes has comparable cost per step with Coordinate Hit-and-Run.
  • 27. Billiard walk Set the walk length equal to 1. Sample 1000 points from the 1000-dimensional unit-cube and project the points to the plane. Left: Billiard walk. Right: Hit-and-Run
  • 28. State-of-the-art Authors-Year Complexity Algorithm (oracle calls) [Dyer, Frieze, Kannan’91] O∗(d23) Sequence of balls + grid walk [Kannan, Lovasz, Simonovits’97] O∗(d5) Sequence of balls + ball walk [Lovasz, Vempala’03] O∗(d4) Exponential dist. + hit-and-run [Cousins, Vempala’15] O∗(d3) Spherical Gaussians + ball walk
  • 29. State-of-the-art Authors-Year Complexity Algorithm (oracle calls) [Dyer, Frieze, Kannan’91] O∗(d23) Sequence of balls + grid walk [Kannan, Lovasz, Simonovits’97] O∗(d5) Sequence of balls + ball walk [Lovasz, Vempala’03] O∗(d4) Exponential dist. + hit-and-run [Cousins, Vempala’15] O∗(d3) Spherical Gaussians + ball walk Practical methods: Follow theory but make practical adjustments (experimental).
  • 30. State-of-the-art Authors-Year Complexity Algorithm (oracle calls) [Dyer, Frieze, Kannan’91] O∗(d23) Sequence of balls + grid walk [Kannan, Lovasz, Simonovits’97] O∗(d5) Sequence of balls + ball walk [Lovasz, Vempala’03] O∗(d4) Exponential dist. + hit-and-run [Cousins, Vempala’15] O∗(d3) Spherical Gaussians + ball walk Practical methods: Follow theory but make practical adjustments (experimental). [Emiris, F’14] Sequence of balls + coordinate hit-and-run.
  • 31. State-of-the-art Authors-Year Complexity Algorithm (oracle calls) [Dyer, Frieze, Kannan’91] O∗(d23) Sequence of balls + grid walk [Kannan, Lovasz, Simonovits’97] O∗(d5) Sequence of balls + ball walk [Lovasz, Vempala’03] O∗(d4) Exponential dist. + hit-and-run [Cousins, Vempala’15] O∗(d3) Spherical Gaussians + ball walk Practical methods: Follow theory but make practical adjustments (experimental). [Emiris, F’14] Sequence of balls + coordinate hit-and-run. [Cousins, Vempala’16] Spherical Gaussians + coordinate hit-and-run
  • 32. Limitations Limitations of existing practical methods: Efficient only for H-polytopes (scale up-to few hundred dims in hrs)
  • 33. Limitations Limitations of existing practical methods: Efficient only for H-polytopes (scale up-to few hundred dims in hrs) For V-polytopes or zonotopes: Both of them request an inscribed ball (ideally the maximum) C ⊆ P. The number of total steps is strongly determined by the radius of C. [Cousins, Vempala’16] needs a bound on the number of facets.
  • 34. Our contributions Multiphase Monte Carlo: We allow any convex body C (that ”fits well” to P and is ”easy” to sample from) besides ball to construct the sequence.
  • 35. Our contributions Multiphase Monte Carlo: We allow any convex body C (that ”fits well” to P and is ”easy” to sample from) besides ball to construct the sequence. Sampling: Billiard walk to V-polytopes and zonotopes.
  • 36. Our contributions Multiphase Monte Carlo: We allow any convex body C (that ”fits well” to P and is ”easy” to sample from) besides ball to construct the sequence. Sampling: Billiard walk to V-polytopes and zonotopes. A new simulated annealing method to construct a sparser sequence of bodies. Sequence by [L.S.’97] (left) and by annealing schedule (right).
  • 37. Our contributions Multiphase Monte Carlo: We allow any convex body C (that ”fits well” to P and is ”easy” to sample from) besides ball to construct the sequence. Sampling: Billiard walk to V-polytopes and zonotopes. A new simulated annealing method to construct a sparser sequence of bodies. Sequence by [L.S.’97] (left) and by annealing schedule (right). Our method can be easily extended for any polytope P that is given as a projection of a polytope Q.
  • 38. Annealing Schedule Inputs: Polytope P, body C, cooling parameters r, δ > 0. Output: A sequence of scaled copies of C, Cm ⊆ · · · ⊆ C1 s.t. vol(Pi+1)/vol(Pi ) ∈ [r, r + δ] with high probability where Pi = Ci ∩ P, i = 1, . . . , m and P0 = P.
  • 39. Statistical tests for the ratio of volumes of convex bodies Given convex bodies Pi ⊇ Pi+1, we define two statistical tests: testL(Pi , Pi+1, r, δ): testR(Pi , Pi+1, r, δ): H0 : vol(Pi+1)/vol(Pi ) ≥ r + δ H0 : vol(Pi+1)/vol(Pi ) ≤ r Successful if we reject H0 Successful if we reject H0 If both testL and testR are successful then ri = vol(Pi+1)/vol(Pi ) ∈ [r, r + δ], with high probability.
  • 40. Annealing Schedule How we compute the sequence of bodies 1. Compute the body with smallest volume in the sequence, C (C = Cm at termination).
  • 41. Annealing Schedule How we compute the sequence of bodies 1. Compute the body with smallest volume in the sequence, C (C = Cm at termination). 2. P0 = P, i = 0
  • 42. Annealing Schedule How we compute the sequence of bodies 1. Compute the body with smallest volume in the sequence, C (C = Cm at termination). 2. P0 = P, i = 0 3. if vol(C ∩ P)/vol(Pi ) ≥ r set m = i + 1, Cm = C stop otherwise construct Pi+1 s.t. vol(Pi+1)/vol(Pi ) ∈ [r, r + δ]. Check stopping criterion Construct Pi+1
  • 43. Annealing Schedule How we compute the sequence of bodies 1. Compute the body with smallest volume in the sequence, C (C = Cm at termination). 2. P0 = P, i = 0 3. if vol(C ∩ P)/vol(Pi ) ≥ r set m = i + 1, Cm = C stop otherwise construct Pi+1 s.t. vol(Pi+1)/vol(Pi ) ∈ [r, r + δ]. Check stopping criterion Construct Pi+1 4. i = i + 1, return to step 3.
  • 44. Bound #phases The annealing schedule terminates with constant probability. #phases m = O log(vol(P)/vol(C ∩ P)) . If the body we use in MMC is a ”good fit” to P the vol(C ∩ P) increases and the number of phases m decreases.
  • 45. Zonotopes Number of phases We use the generators of the zonotope P in order to define a centrally symmetric H-polytope that is a ”good fit” to P. In both figures vol(C ∩ P)/vol(C ) ∈ [0.8, 0.85].
  • 46. Zonotopes Number of phases Two types of bodies: balls (left) symmetric H-polytopes (right)
  • 47. Zonotopes Number of phases Two types of bodies: balls (left) symmetric H-polytopes (right) For low order (i.e. #generators/d) zonotopes, the number of bodies is ≤ 3 for d ≤ 100, smaller than the case of using balls.
  • 48. Zonotopes Number of phases Two types of bodies: balls (left) symmetric H-polytopes (right) For low order (i.e. #generators/d) zonotopes, the number of bodies is ≤ 3 for d ≤ 100, smaller than the case of using balls. The number of bodies right grows as a piecewise constant function of d.
  • 49. Complexity for zonotopes We test the method for 3 different random zonotope-generators. Order k/d = 2. for d = 100 takes ≤ 1hr.
  • 50. Complexity for V-polytopes We test the method for 2 different random V-polytope-generators. The method performs O∗(d) oracle calls for random V-polytopes while the best theoretical complexity is O∗(d3) oracle calls. for d = 100 takes ≤ 1hr.
  • 51. Supported by Google Summer of Code 2018 and 2019. The implementations in C++ are included to the R package volesti1 in CRAN. More development branches in Github2. 1 https://cran.r-project.org/web/packages/volesti/index.html 2 https://github.com/GeomScale/volume_approximation