SlideShare ist ein Scribd-Unternehmen logo
1 von 58
Downloaden Sie, um offline zu lesen
Volume computation and applications
Vissarion Fisikopoulos
Newcastle University, 3 Oct. 2017
Polytopes and applications Algorithms Oracles Future
Outline
Volumes, polytopes, applications
Algorithms and complexity
Polytope oracles in high dimensions
Future work and references
Polytopes and applications Algorithms Oracles Future
Our problem
Given P a convex polytope in Rd compute the volume of P.
Polytopes and applications Algorithms Oracles Future
Our problem
Given P a convex polytope in Rd compute the volume of P.
Some elementary polytopes (simplex, cube) have simple
determinantal formulas.
1 2 1
3 6 1
6 1 1
/2! = 11
2 5
4 0
= 20
Polytopes and applications Algorithms Oracles Future
Birkhoff polytopes
Given the complete bipartite graph Kn,n = (V, E) a perfect
matching is M ⊆ E s.t. every vertex meets exactly one
member of M
Polytopes and applications Algorithms Oracles Future
Birkhoff polytopes
Given the complete bipartite graph Kn,n = (V, E) a perfect
matching is M ⊆ E s.t. every vertex meets exactly one
member of M
S ⊆ E, χS
e = {1 if e ∈ S, 0 otherwise}
Polytopes and applications Algorithms Oracles Future
Birkhoff polytopes
Given the complete bipartite graph Kn,n = (V, E) a perfect
matching is M ⊆ E s.t. every vertex meets exactly one
member of M
S ⊆ E, χS
e = {1 if e ∈ S, 0 otherwise}
Bn = conv{χM | M is a perfect matching of Kn,n}
Polytopes and applications Algorithms Oracles Future
Birkhoff polytopes
Given the complete bipartite graph Kn,n = (V, E) a perfect
matching is M ⊆ E s.t. every vertex meets exactly one
member of M
S ⊆ E, χS
e = {1 if e ∈ S, 0 otherwise}
Bn = conv{χM | M is a perfect matching of Kn,n}
Polytopes and applications Algorithms Oracles Future
Birkhoff polytopes
Given the complete bipartite graph Kn,n = (V, E) a perfect
matching is M ⊆ E s.t. every vertex meets exactly one
member of M
S ⊆ E, χS
e = {1 if e ∈ S, 0 otherwise}
Bn = conv{χM | M is a perfect matching of Kn,n}
# faces of B3: 6, 15, 18, 9; vol(B3) = 9/8
Polytopes and applications Algorithms Oracles Future
Birkhoff polytopes
Given the complete bipartite graph Kn,n = (V, E) a perfect
matching is M ⊆ E s.t. every vertex meets exactly one
member of M
S ⊆ E, χS
e = {1 if e ∈ S, 0 otherwise}
Bn = conv{χM | M is a perfect matching of Kn,n}
# faces of B3: 6, 15, 18, 9; vol(B3) = 9/8
there exist formulas for the volume [deLoera et al ’07] but
values only known for n ≤ 10 after 1yr of parallel computing
[Beck et al ’03]
Polytopes and applications Algorithms Oracles Future
Volumes and counting
Given n elements & partial order; order polytope PO ⊆ [0, 1]n
coordinates of points satisfies the partial order
c
a
b a, b, c
partial order: a < b
3 linear extensions: abc, acb, cab
Polytopes and applications Algorithms Oracles Future
Volumes and counting
Given n elements & partial order; order polytope PO ⊆ [0, 1]n
coordinates of points satisfies the partial order
c
a
b a, b, c
partial order: a < b
3 linear extensions: abc, acb, cab
# linear extensions = volume of order polytope · n!
[Stanley’86]
Polytopes and applications Algorithms Oracles Future
Volumes and counting
Given n elements & partial order; order polytope PO ⊆ [0, 1]n
coordinates of points satisfies the partial order
c
a
b a, b, c
partial order: a < b
3 linear extensions: abc, acb, cab
# linear extensions = volume of order polytope · n!
[Stanley’86]
Counting linear extensions is #P-hard [Brightwell’91]
Polytopes and applications Algorithms Oracles Future
Mixed volume
Let P1, P2, . . . , Pd be polytopes in Rd then the mixed volume is
M(P1, . . . , Pd) =
I⊆{1,2,...,d}
(−1)(d−|I|)
· Vol(
i∈I
Pi)
where the sum is the Minkowski sum.
Polytopes and applications Algorithms Oracles Future
Mixed volume
Let P1, P2, . . . , Pd be polytopes in Rd then the mixed volume is
M(P1, . . . , Pd) =
I⊆{1,2,...,d}
(−1)(d−|I|)
· Vol(
i∈I
Pi)
where the sum is the Minkowski sum.
Example
For d = 2: M(P1, P2) = Vol(P1 + P2) − Vol(P1) − Vol(P2)
P1 P2 P1 + P2
Polytopes and applications Algorithms Oracles Future
Volumes and algebraic geometry
Toric geometry
If P is an integral d-dimensional polytope, then d! times the
volume of P is the degree of the toric variety associated to P.
BKK bound (Bernshtein, Khovanskii, Kushnirenko)
Let f1, . . . , fn be polynomials in C[x1, . . . , xn]. Let N(fj) denote
the Newton polytope of fj, i.e. the convex hull of it’s exponent
vectors. If f1, . . . , fn are generic, then the number of solutions of
the polynomial system of equations
f1 = 0, . . . , fn = 0
with no xi = 0 is equal to the normalized mixed volume
n!M(N(f1), . . . , N(fn))
Polytopes and applications Algorithms Oracles Future
Applications
Volume of zonotopes is used to test methods for order
reduction which is important in several areas: autonomous
driving, human-robot collaboration and smart grids
Volumes of intersections of polytopes are used in
bio-geography to compute biodiversity and related measures
e.g. [Barnagaud, Kissling, Tsirogiannis, Fisikopoulos, Villeger,
Sekercioglu’17]
Polytopes and applications Algorithms Oracles Future
Outline
Volumes, polytopes, applications
Algorithms and complexity
Polytope oracles in high dimensions
Future work and references
Polytopes and applications Algorithms Oracles Future
Explicit Polytope Representations
A convex polytope P ⊆ Rd can be represented as the
1. convex hull of a pointset {p1, . . . , pm} (V-representation)
2. intersection of halfspaces {h1, . . . , hn} (H-representation)
convex hull problem
vertex enumeration problem
Faces of polytopes: vertices, edges, . . . , facets
Polytopes and applications Algorithms Oracles Future
Implicit Polytope Representation (Oracles)
Membership oracle
Given point y ∈ Rd, return yes if y ∈ P otherwise return no.
Boundary oracle
Given point y ∈ P and line goes through y return the points
∩ ∂P
P P
y
y
Polytopes and applications Algorithms Oracles Future
Our setting
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
Polytopes and applications Algorithms Oracles Future
Our setting
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
Complexity
#P-hard for vertex and for halfspace repres. [DyerFrieze’88]
Polytopes and applications Algorithms Oracles Future
Our setting
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
Complexity
#P-hard for vertex and for halfspace repres. [DyerFrieze’88]
open if both vertex (V-rep) & halfspace (H-rep)
representation is available
Polytopes and applications Algorithms Oracles Future
Our setting
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
Complexity
#P-hard for vertex and for halfspace repres. [DyerFrieze’88]
open if both vertex (V-rep) & halfspace (H-rep)
representation is available
no deterministic poly-time algorithm can compute the volume
with less than exponential relative error [Elekes’86]
Polytopes and applications Algorithms Oracles Future
Our setting
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
Complexity
#P-hard for vertex and for halfspace repres. [DyerFrieze’88]
open if both vertex (V-rep) & halfspace (H-rep)
representation is available
no deterministic poly-time algorithm can compute the volume
with less than exponential relative error [Elekes’86]
randomized poly-time approximation of volume of a convex
body with high probability and arbitrarily small relative
error [DyerFriezeKannan’91]
O∗(d23) → O∗(d4) [LovazVemp’04]
Polytopes and applications Algorithms Oracles Future
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. > 15)
Randomized:
[Lov`aszDe`ak’12] cannot compute in > 10 dimensions
Goal: compute accurate estimations in few hundred dimensions
Polytopes and applications Algorithms Oracles Future
Uniform sampling
rejections techniques (sample from bounding box) fail in high
dimensions
volume(unit cube) = 1
volume(unit ball) ∼ (c/d)d/2
–drops exponentially with d
Polytopes and applications Algorithms Oracles Future
Uniform sampling
for arbitrary polytopes we need random walks
e.g. grid walk, ball walk, hit-and-run (random directions)
P
x
B
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.
W = O∗(d3) [LovaszVempala’06]
Polytopes and applications Algorithms Oracles Future
Uniform sampling
for arbitrary polytopes we need random walks
e.g. grid walk, ball walk, hit-and-run (random directions)
P
x
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.
W = O∗(d3) [LovaszVempala’06]
Polytopes and applications Algorithms Oracles Future
Uniform sampling
for arbitrary polytopes we need random walks
e.g. grid walk, ball walk, hit-and-run (random directions)
P
x
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.
W = O∗(d3) [LovaszVempala’06]
Polytopes and applications Algorithms Oracles Future
Multiphase Monte Carlo (Generating random points)
P0 = B(c, r)
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)
Polytopes and applications Algorithms Oracles Future
Multiphase Monte Carlo (Generating random points)
P0 = B(c, r)
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. Use rand points in Pi−1 to 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)
Polytopes and applications Algorithms Oracles Future
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 steps
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
Polytopes and applications Algorithms Oracles Future
Our contribution [Emiris-Fisikopoulos]
W = O(d) random walk steps (vs. O∗(d3) which hides
constant 1011) achieve < 1% error in up to 100 dim.
Polytopes and applications Algorithms Oracles Future
Our contribution [Emiris-Fisikopoulos]
W = O(d) 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)
Polytopes and applications Algorithms Oracles Future
Our contribution [Emiris-Fisikopoulos]
W = O(d) 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)
iterative rounding using minimum ellipsoid (efficiently handle
skinny polytopes)
Polytopes and applications Algorithms Oracles Future
Our contribution [Emiris-Fisikopoulos]
W = O(d) 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)
iterative rounding using minimum ellipsoid (efficiently handle
skinny polytopes)(CDHR)
Polytopes and applications Algorithms Oracles Future
Our contribution [Emiris-Fisikopoulos]
W = O(d) 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)
iterative rounding using minimum ellipsoid (efficiently handle
skinny polytopes)(CDHR)
boundary oracles using coordinate hit-and-run(CDHR) with
O(m) runtime (vs. O(md) using RDHR)
Polytopes and applications Algorithms Oracles Future
Our contribution [Emiris-Fisikopoulos]
W = O(d) 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)
iterative rounding using minimum ellipsoid (efficiently handle
skinny polytopes)(CDHR)
boundary oracles using coordinate hit-and-run(CDHR) with
O(m) runtime (vs. O(md) using RDHR)
CDHR as accurate as RDHR
Polytopes and applications Algorithms Oracles Future
Our contribution [Emiris-Fisikopoulos]
W = O(d) 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)
iterative rounding using minimum ellipsoid (efficiently handle
skinny polytopes)(CDHR)
boundary oracles using coordinate hit-and-run(CDHR) with
O(m) runtime (vs. O(md) using RDHR)
CDHR as accurate as RDHR
Software framework to test theoretical ideas and conjectures
Polytopes and applications Algorithms Oracles Future
More experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff, order) up to dimension 200 in less
than 2 hours with mean approximation error at most 1%
Polytopes and applications Algorithms Oracles Future
More experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff, order) up to dimension 200 in less
than 2 hours with mean approximation error at most 1%
Running our software on order polytopes offers a method for
estimating the number of linear extensions of a poset
Polytopes and applications Algorithms Oracles Future
More experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff, order) up to dimension 200 in less
than 2 hours with mean approximation error at most 1%
Running our software on order polytopes offers a method for
estimating the number of linear extensions of a poset
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
Note: lattice points of Birkhoff are important in Bayesian
statistics and volume is leading coefficient of the generating
(Ehrhart) polynomial
Polytopes and applications Algorithms Oracles Future
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 ??? ???
Polytopes and applications Algorithms Oracles Future
Outline
Volumes, polytopes, applications
Algorithms and complexity
Polytope oracles in high dimensions
Future work and references
Polytopes and applications Algorithms Oracles Future
Approximate oracles
Issue: algorithm inefficient for large number of facets (e.g.
crosspolytopes have 2d facets; volume computation inefficient
for d > 20 in practice)
Polytopes and applications Algorithms Oracles Future
Approximate oracles
Issue: algorithm inefficient for large number of facets (e.g.
crosspolytopes have 2d facets; volume computation inefficient
for d > 20 in practice)
Solution: approximate oracles (membership and boundary)
Polytopes and applications Algorithms Oracles Future
Approximate oracles
Issue: algorithm inefficient for large number of facets (e.g.
crosspolytopes have 2d facets; volume computation inefficient
for d > 20 in practice)
Solution: approximate oracles (membership and boundary)
Previous work: only for membership oracle; solutions depend
exponentially in d [Bentley et al 82] [Arya et al ’16]
Polytopes and applications Algorithms Oracles Future
Approximate oracles
Issue: algorithm inefficient for large number of facets (e.g.
crosspolytopes have 2d facets; volume computation inefficient
for d > 20 in practice)
Solution: approximate oracles (membership and boundary)
Previous work: only for membership oracle; solutions depend
exponentially in d [Bentley et al 82] [Arya et al ’16]
Idea: reduce problem to Nearest-Neighbor (NN) and use
approximate NN algorithms
Polytopes and applications Algorithms Oracles Future
Approximate oracles
Issue: algorithm inefficient for large number of facets (e.g.
crosspolytopes have 2d facets; volume computation inefficient
for d > 20 in practice)
Solution: approximate oracles (membership and boundary)
Previous work: only for membership oracle; solutions depend
exponentially in d [Bentley et al 82] [Arya et al ’16]
Idea: reduce problem to Nearest-Neighbor (NN) and use
approximate NN algorithms
Side note: Approximate oracle improve sampling performance so
they are applicable to other algorithms that use sampling such as
optimization
Polytopes and applications Algorithms Oracles Future
Approximate Nearest Neighbors
Definition
Given a pointset X ⊂ Rd with cardinality n and an approximation
parameter ∈ (0, 1), preprocess X into a data structure, so that,
given a query point q it is possible to efficiently determine a point
x∗ ∈ X such that:
d(x∗
, q) ≤ (1 + ) min
x∈X
f(x, q),
where f is a distance function.
Locality sensitive hashing (LSH) [Gionis et ’al ’99]
randomized algorithm, sublinear dependence on n, polynomial
dependence on d, exponential dependence on .
Polytopes and applications Algorithms Oracles Future
Approximate membership oracles
For arbitrary point p∗ ∈ P
compute symmetric points
about each facet of P
query: q ∈ P iff p∗ is the
NN of q
p
p
p2
2
3
p3
4
p4
5
p5
6
p6
7
p7
Theorem (Anangostopoulos, Emiris, Fisikopoulos’17)
Given polytope P ⊂ Rd, approximation parameter ∈ (0, 1) and
query point q, we can answer whether q ∈ P in O∗(dnρ+o(1)) time
with a probability of success p = 1/(2(1 + )2 − 1), using
O∗(n1+ρ+o(1) + dn) space; ρ is a probability related to LSH. If
f(q, ∂P) ≤ · diam(P) the data structure can answer either way.
Polytopes and applications Algorithms Oracles Future
Approximate boundary oracles
Start point t1 /∈ P. At some step i :
let pi be the NN of ti
let Hi be the hyperplane
supporting the facet Fi
set ti+1 = (Hi ∩ r).
Iterate until ti ∈ P for some i
Note
The algorithm terminates even for the approximate case with a
changed termination criterion and by doing e-steps to avoid ”local
optima”.
Polytopes and applications Algorithms Oracles Future
Outline
Volumes, polytopes, applications
Algorithms and complexity
Polytope oracles in high dimensions
Future work and references
Polytopes and applications Algorithms Oracles Future
Future & related work
Volume of spectahedral shadows (joint with Konaxis,
Tsigaridas)
Volume of simple convex bodies: intersection of a simplex
with two halfspaces or an ellipsoid; applications in finance
(joint with Emiris, Chalkis)
Sampling on V-polytopes or polytopes given by optimization
oracles [Emiris, Fisikopoulos, Konaxis, Penaranda ’13]
Polytopes and applications Algorithms Oracles Future
Open question
V-polytope sampling
Given P ∈ Rd any point q ∈ P can be written as
q =
i={0,...,m}
λipi, λi ≤ 0,
i={0,...,m}
λi = 0
compute distribution for λ s.t. q is uniform in P.
Polytopes and applications Algorithms Oracles Future
References
Practical polytope volume approximation
Emiris, Fisikopoulos
ACM Transactions on Mathematical Software (to appear)
Polytope oracles in high dimensions
Anangostopoulos, Emiris, Fisikopoulos
work in progress
Code
C++ using CGAL and Eigen libraries
https://github.com/vissarion/volume_approximation
Polytopes and applications Algorithms Oracles Future
Thank you! Questions?

Weitere ähnliche Inhalte

Was ist angesagt?

Core–periphery detection in networks with nonlinear Perron eigenvectors
Core–periphery detection in networks with nonlinear Perron eigenvectorsCore–periphery detection in networks with nonlinear Perron eigenvectors
Core–periphery detection in networks with nonlinear Perron eigenvectors
Francesco Tudisco
 
A new approach in specifying the inverse quadratic matrix in modulo-2 for con...
A new approach in specifying the inverse quadratic matrix in modulo-2 for con...A new approach in specifying the inverse quadratic matrix in modulo-2 for con...
A new approach in specifying the inverse quadratic matrix in modulo-2 for con...
Anax Fotopoulos
 
Completely positive maps in quantum information
Completely positive maps in quantum informationCompletely positive maps in quantum information
Completely positive maps in quantum information
wtyru1989
 

Was ist angesagt? (20)

Kolev skalna2018 article-exact_solutiontoa_parametricline
Kolev skalna2018 article-exact_solutiontoa_parametriclineKolev skalna2018 article-exact_solutiontoa_parametricline
Kolev skalna2018 article-exact_solutiontoa_parametricline
 
Elliptic Curve Cryptography for those who are afraid of maths
Elliptic Curve Cryptography for those who are afraid of mathsElliptic Curve Cryptography for those who are afraid of maths
Elliptic Curve Cryptography for those who are afraid of maths
 
Practical volume estimation of polytopes by billiard trajectories and a new a...
Practical volume estimation of polytopes by billiard trajectories and a new a...Practical volume estimation of polytopes by billiard trajectories and a new a...
Practical volume estimation of polytopes by billiard trajectories and a new a...
 
Introduction to modern Variational Inference.
Introduction to modern Variational Inference.Introduction to modern Variational Inference.
Introduction to modern Variational Inference.
 
Elliptical curve cryptography
Elliptical curve cryptographyElliptical curve cryptography
Elliptical curve cryptography
 
Core–periphery detection in networks with nonlinear Perron eigenvectors
Core–periphery detection in networks with nonlinear Perron eigenvectorsCore–periphery detection in networks with nonlinear Perron eigenvectors
Core–periphery detection in networks with nonlinear Perron eigenvectors
 
Optimal L-shaped matrix reordering, aka graph's core-periphery
Optimal L-shaped matrix reordering, aka graph's core-peripheryOptimal L-shaped matrix reordering, aka graph's core-periphery
Optimal L-shaped matrix reordering, aka graph's core-periphery
 
Algorithm Assignment Help
Algorithm Assignment HelpAlgorithm Assignment Help
Algorithm Assignment Help
 
Loss Calibrated Variational Inference
Loss Calibrated Variational InferenceLoss Calibrated Variational Inference
Loss Calibrated Variational Inference
 
A new approach in specifying the inverse quadratic matrix in modulo-2 for con...
A new approach in specifying the inverse quadratic matrix in modulo-2 for con...A new approach in specifying the inverse quadratic matrix in modulo-2 for con...
A new approach in specifying the inverse quadratic matrix in modulo-2 for con...
 
Elliptic curve cryptography
Elliptic curve cryptographyElliptic curve cryptography
Elliptic curve cryptography
 
Wg qcolorable
Wg qcolorableWg qcolorable
Wg qcolorable
 
Completely positive maps in quantum information
Completely positive maps in quantum informationCompletely positive maps in quantum information
Completely positive maps in quantum information
 
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...
 
Analytic construction of points on modular elliptic curves
Analytic construction of points on modular elliptic curvesAnalytic construction of points on modular elliptic curves
Analytic construction of points on modular elliptic curves
 
Csr2011 june14 15_45_musatov
Csr2011 june14 15_45_musatovCsr2011 june14 15_45_musatov
Csr2011 june14 15_45_musatov
 
QMC: Transition Workshop - Reduced Component-by-Component Constructions of (P...
QMC: Transition Workshop - Reduced Component-by-Component Constructions of (P...QMC: Transition Workshop - Reduced Component-by-Component Constructions of (P...
QMC: Transition Workshop - Reduced Component-by-Component Constructions of (P...
 
Shanghai tutorial
Shanghai tutorialShanghai tutorial
Shanghai tutorial
 
Masters Thesis Defense
Masters Thesis DefenseMasters Thesis Defense
Masters Thesis Defense
 
Optimal interval clustering: Application to Bregman clustering and statistica...
Optimal interval clustering: Application to Bregman clustering and statistica...Optimal interval clustering: Application to Bregman clustering and statistica...
Optimal interval clustering: Application to Bregman clustering and statistica...
 

Ähnlich wie Volume computation and applications

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
Vissarion Fisikopoulos
 
BALANCING BOARD MACHINES
BALANCING BOARD MACHINESBALANCING BOARD MACHINES
BALANCING BOARD MACHINES
butest
 

Ähnlich wie Volume computation and applications (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
 
14th Athens Colloquium on Algorithms and Complexity (ACAC19)
14th Athens Colloquium on Algorithms and Complexity (ACAC19)14th Athens Colloquium on Algorithms and Complexity (ACAC19)
14th Athens Colloquium on Algorithms and Complexity (ACAC19)
 
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
 
Efficient Random-Walk Methods forApproximating Polytope Volume
Efficient Random-Walk Methods forApproximating Polytope VolumeEfficient Random-Walk Methods forApproximating Polytope Volume
Efficient Random-Walk Methods forApproximating Polytope Volume
 
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
 
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.
 
Practical Volume Estimation of Zonotopes by a new Annealing Schedule for Cool...
Practical Volume Estimation of Zonotopes by a new Annealing Schedule for Cool...Practical Volume Estimation of Zonotopes by a new Annealing Schedule for Cool...
Practical Volume Estimation of Zonotopes by a new Annealing Schedule for Cool...
 
Algorithm Exam Help
Algorithm Exam HelpAlgorithm Exam Help
Algorithm Exam Help
 
Algorithm Homework Help
Algorithm Homework HelpAlgorithm Homework Help
Algorithm Homework Help
 
RDFS with Attribute Equations via SPARQL Rewriting
RDFS with Attribute Equations via SPARQL RewritingRDFS with Attribute Equations via SPARQL Rewriting
RDFS with Attribute Equations via SPARQL Rewriting
 
BALANCING BOARD MACHINES
BALANCING BOARD MACHINESBALANCING BOARD MACHINES
BALANCING BOARD MACHINES
 
Nbhm m. a. and m.sc. scholarship test 2005
Nbhm m. a. and m.sc. scholarship test 2005Nbhm m. a. and m.sc. scholarship test 2005
Nbhm m. a. and m.sc. scholarship test 2005
 
Maapr3
Maapr3Maapr3
Maapr3
 
Relaxation methods for the matrix exponential on large networks
Relaxation methods for the matrix exponential on large networksRelaxation methods for the matrix exponential on large networks
Relaxation methods for the matrix exponential on large networks
 
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
Efficient Solution of Two-Stage Stochastic Linear Programs Using Interior Poi...
 
L16
L16L16
L16
 
3. Linear Algebra for Machine Learning: Factorization and Linear Transformations
3. Linear Algebra for Machine Learning: Factorization and Linear Transformations3. Linear Algebra for Machine Learning: Factorization and Linear Transformations
3. Linear Algebra for Machine Learning: Factorization and Linear Transformations
 
Optimization Techniques
Optimization TechniquesOptimization Techniques
Optimization Techniques
 
Polynomials.pdf
Polynomials.pdfPolynomials.pdf
Polynomials.pdf
 
Matlab II
Matlab IIMatlab II
Matlab II
 

Mehr von Vissarion Fisikopoulos

Geodesic algorithms: an experimental study
Geodesic algorithms: an experimental studyGeodesic algorithms: an experimental study
Geodesic algorithms: an experimental study
Vissarion Fisikopoulos
 

Mehr von Vissarion Fisikopoulos (16)

"Mesh of Periodic Minimal Surfaces in CGAL."
"Mesh of Periodic Minimal Surfaces in CGAL.""Mesh of Periodic Minimal Surfaces in CGAL."
"Mesh of Periodic Minimal Surfaces in CGAL."
 
"Regular triangularions and resultant polytopes."
"Regular triangularions and resultant polytopes." "Regular triangularions and resultant polytopes."
"Regular triangularions and resultant polytopes."
 
"Exact and approximate algorithms for resultant polytopes."
"Exact and approximate algorithms for resultant polytopes." "Exact and approximate algorithms for resultant polytopes."
"Exact and approximate algorithms for resultant polytopes."
 
"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...
 
"Faster Geometric Algorithms via Dynamic Determinant Computation."
"Faster Geometric Algorithms via Dynamic Determinant Computation." "Faster Geometric Algorithms via Dynamic Determinant Computation."
"Faster Geometric Algorithms via Dynamic Determinant Computation."
 
"Combinatorics of 4-dimensional resultant polytopes"
"Combinatorics of 4-dimensional resultant polytopes""Combinatorics of 4-dimensional resultant polytopes"
"Combinatorics of 4-dimensional resultant polytopes"
 
Working with spatial trajectories in Boost Geometry
Working with spatial trajectories in Boost GeometryWorking with spatial trajectories in Boost Geometry
Working with spatial trajectories in Boost Geometry
 
High-dimensional sampling and volume computation
High-dimensional sampling and volume computationHigh-dimensional sampling and volume computation
High-dimensional sampling and volume computation
 
Conctructing Polytopes via a Vertex Oracle
Conctructing Polytopes via a Vertex OracleConctructing Polytopes via a Vertex Oracle
Conctructing Polytopes via a Vertex Oracle
 
Enumeration of 2-level polytopes
Enumeration of 2-level polytopesEnumeration of 2-level polytopes
Enumeration of 2-level polytopes
 
The Newton polytope of the sparse resultant
The Newton polytope of the sparse resultantThe Newton polytope of the sparse resultant
The Newton polytope of the sparse resultant
 
Geodesic algorithms: an experimental study
Geodesic algorithms: an experimental studyGeodesic algorithms: an experimental study
Geodesic algorithms: an experimental study
 
The Earth is not flat; but it's not round either (Geography on Boost.Geometry)
The Earth is not flat; but it's not round either (Geography on Boost.Geometry)The Earth is not flat; but it's not round either (Geography on Boost.Geometry)
The Earth is not flat; but it's not round either (Geography on Boost.Geometry)
 
Faster Geometric Algorithms via Dynamic Determinant Computation
Faster Geometric Algorithms via Dynamic Determinant ComputationFaster Geometric Algorithms via Dynamic Determinant Computation
Faster Geometric Algorithms via Dynamic Determinant Computation
 
An algorithm for computing resultant polytopes
An algorithm for computing resultant polytopesAn algorithm for computing resultant polytopes
An algorithm for computing resultant polytopes
 
Combinatorics of 4-dimensional Resultant Polytopes
Combinatorics of 4-dimensional Resultant PolytopesCombinatorics of 4-dimensional Resultant Polytopes
Combinatorics of 4-dimensional Resultant Polytopes
 

Kürzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
PirithiRaju
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
PirithiRaju
 

Kürzlich hochgeladen (20)

Clean In Place(CIP).pptx .
Clean In Place(CIP).pptx                 .Clean In Place(CIP).pptx                 .
Clean In Place(CIP).pptx .
 
Introduction to Viruses
Introduction to VirusesIntroduction to Viruses
Introduction to Viruses
 
GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)
 
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICESAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)
 
High Class Escorts in Hyderabad ₹7.5k Pick Up & Drop With Cash Payment 969456...
High Class Escorts in Hyderabad ₹7.5k Pick Up & Drop With Cash Payment 969456...High Class Escorts in Hyderabad ₹7.5k Pick Up & Drop With Cash Payment 969456...
High Class Escorts in Hyderabad ₹7.5k Pick Up & Drop With Cash Payment 969456...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Forensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfForensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdf
 
Molecular markers- RFLP, RAPD, AFLP, SNP etc.
Molecular markers- RFLP, RAPD, AFLP, SNP etc.Molecular markers- RFLP, RAPD, AFLP, SNP etc.
Molecular markers- RFLP, RAPD, AFLP, SNP etc.
 
FAIRSpectra - Enabling the FAIRification of Analytical Science
FAIRSpectra - Enabling the FAIRification of Analytical ScienceFAIRSpectra - Enabling the FAIRification of Analytical Science
FAIRSpectra - Enabling the FAIRification of Analytical Science
 
COST ESTIMATION FOR A RESEARCH PROJECT.pptx
COST ESTIMATION FOR A RESEARCH PROJECT.pptxCOST ESTIMATION FOR A RESEARCH PROJECT.pptx
COST ESTIMATION FOR A RESEARCH PROJECT.pptx
 
High Profile 🔝 8250077686 📞 Call Girls Service in GTB Nagar🍑
High Profile 🔝 8250077686 📞 Call Girls Service in GTB Nagar🍑High Profile 🔝 8250077686 📞 Call Girls Service in GTB Nagar🍑
High Profile 🔝 8250077686 📞 Call Girls Service in GTB Nagar🍑
 
Justdial Call Girls In Indirapuram, Ghaziabad, 8800357707 Escorts Service
Justdial Call Girls In Indirapuram, Ghaziabad, 8800357707 Escorts ServiceJustdial Call Girls In Indirapuram, Ghaziabad, 8800357707 Escorts Service
Justdial Call Girls In Indirapuram, Ghaziabad, 8800357707 Escorts Service
 
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptxPSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
 
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
Human & Veterinary Respiratory Physilogy_DR.E.Muralinath_Associate Professor....
 
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
 
Zoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdfZoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdf
 
Connaught Place, Delhi Call girls :8448380779 Model Escorts | 100% verified
Connaught Place, Delhi Call girls :8448380779 Model Escorts | 100% verifiedConnaught Place, Delhi Call girls :8448380779 Model Escorts | 100% verified
Connaught Place, Delhi Call girls :8448380779 Model Escorts | 100% verified
 

Volume computation and applications

  • 1. Volume computation and applications Vissarion Fisikopoulos Newcastle University, 3 Oct. 2017
  • 2. Polytopes and applications Algorithms Oracles Future Outline Volumes, polytopes, applications Algorithms and complexity Polytope oracles in high dimensions Future work and references
  • 3. Polytopes and applications Algorithms Oracles Future Our problem Given P a convex polytope in Rd compute the volume of P.
  • 4. Polytopes and applications Algorithms Oracles Future Our problem Given P a convex polytope in Rd compute the volume of P. Some elementary polytopes (simplex, cube) have simple determinantal formulas. 1 2 1 3 6 1 6 1 1 /2! = 11 2 5 4 0 = 20
  • 5. Polytopes and applications Algorithms Oracles Future Birkhoff polytopes Given the complete bipartite graph Kn,n = (V, E) a perfect matching is M ⊆ E s.t. every vertex meets exactly one member of M
  • 6. Polytopes and applications Algorithms Oracles Future Birkhoff polytopes Given the complete bipartite graph Kn,n = (V, E) a perfect matching is M ⊆ E s.t. every vertex meets exactly one member of M S ⊆ E, χS e = {1 if e ∈ S, 0 otherwise}
  • 7. Polytopes and applications Algorithms Oracles Future Birkhoff polytopes Given the complete bipartite graph Kn,n = (V, E) a perfect matching is M ⊆ E s.t. every vertex meets exactly one member of M S ⊆ E, χS e = {1 if e ∈ S, 0 otherwise} Bn = conv{χM | M is a perfect matching of Kn,n}
  • 8. Polytopes and applications Algorithms Oracles Future Birkhoff polytopes Given the complete bipartite graph Kn,n = (V, E) a perfect matching is M ⊆ E s.t. every vertex meets exactly one member of M S ⊆ E, χS e = {1 if e ∈ S, 0 otherwise} Bn = conv{χM | M is a perfect matching of Kn,n}
  • 9. Polytopes and applications Algorithms Oracles Future Birkhoff polytopes Given the complete bipartite graph Kn,n = (V, E) a perfect matching is M ⊆ E s.t. every vertex meets exactly one member of M S ⊆ E, χS e = {1 if e ∈ S, 0 otherwise} Bn = conv{χM | M is a perfect matching of Kn,n} # faces of B3: 6, 15, 18, 9; vol(B3) = 9/8
  • 10. Polytopes and applications Algorithms Oracles Future Birkhoff polytopes Given the complete bipartite graph Kn,n = (V, E) a perfect matching is M ⊆ E s.t. every vertex meets exactly one member of M S ⊆ E, χS e = {1 if e ∈ S, 0 otherwise} Bn = conv{χM | M is a perfect matching of Kn,n} # faces of B3: 6, 15, 18, 9; vol(B3) = 9/8 there exist formulas for the volume [deLoera et al ’07] but values only known for n ≤ 10 after 1yr of parallel computing [Beck et al ’03]
  • 11. Polytopes and applications Algorithms Oracles Future Volumes and counting Given n elements & partial order; order polytope PO ⊆ [0, 1]n coordinates of points satisfies the partial order c a b a, b, c partial order: a < b 3 linear extensions: abc, acb, cab
  • 12. Polytopes and applications Algorithms Oracles Future Volumes and counting Given n elements & partial order; order polytope PO ⊆ [0, 1]n coordinates of points satisfies the partial order c a b a, b, c partial order: a < b 3 linear extensions: abc, acb, cab # linear extensions = volume of order polytope · n! [Stanley’86]
  • 13. Polytopes and applications Algorithms Oracles Future Volumes and counting Given n elements & partial order; order polytope PO ⊆ [0, 1]n coordinates of points satisfies the partial order c a b a, b, c partial order: a < b 3 linear extensions: abc, acb, cab # linear extensions = volume of order polytope · n! [Stanley’86] Counting linear extensions is #P-hard [Brightwell’91]
  • 14. Polytopes and applications Algorithms Oracles Future Mixed volume Let P1, P2, . . . , Pd be polytopes in Rd then the mixed volume is M(P1, . . . , Pd) = I⊆{1,2,...,d} (−1)(d−|I|) · Vol( i∈I Pi) where the sum is the Minkowski sum.
  • 15. Polytopes and applications Algorithms Oracles Future Mixed volume Let P1, P2, . . . , Pd be polytopes in Rd then the mixed volume is M(P1, . . . , Pd) = I⊆{1,2,...,d} (−1)(d−|I|) · Vol( i∈I Pi) where the sum is the Minkowski sum. Example For d = 2: M(P1, P2) = Vol(P1 + P2) − Vol(P1) − Vol(P2) P1 P2 P1 + P2
  • 16. Polytopes and applications Algorithms Oracles Future Volumes and algebraic geometry Toric geometry If P is an integral d-dimensional polytope, then d! times the volume of P is the degree of the toric variety associated to P. BKK bound (Bernshtein, Khovanskii, Kushnirenko) Let f1, . . . , fn be polynomials in C[x1, . . . , xn]. Let N(fj) denote the Newton polytope of fj, i.e. the convex hull of it’s exponent vectors. If f1, . . . , fn are generic, then the number of solutions of the polynomial system of equations f1 = 0, . . . , fn = 0 with no xi = 0 is equal to the normalized mixed volume n!M(N(f1), . . . , N(fn))
  • 17. Polytopes and applications Algorithms Oracles Future Applications Volume of zonotopes is used to test methods for order reduction which is important in several areas: autonomous driving, human-robot collaboration and smart grids Volumes of intersections of polytopes are used in bio-geography to compute biodiversity and related measures e.g. [Barnagaud, Kissling, Tsirogiannis, Fisikopoulos, Villeger, Sekercioglu’17]
  • 18. Polytopes and applications Algorithms Oracles Future Outline Volumes, polytopes, applications Algorithms and complexity Polytope oracles in high dimensions Future work and references
  • 19. Polytopes and applications Algorithms Oracles Future Explicit Polytope Representations A convex polytope P ⊆ Rd can be represented as the 1. convex hull of a pointset {p1, . . . , pm} (V-representation) 2. intersection of halfspaces {h1, . . . , hn} (H-representation) convex hull problem vertex enumeration problem Faces of polytopes: vertices, edges, . . . , facets
  • 20. Polytopes and applications Algorithms Oracles Future Implicit Polytope Representation (Oracles) Membership oracle Given point y ∈ Rd, return yes if y ∈ P otherwise return no. Boundary oracle Given point y ∈ P and line goes through y return the points ∩ ∂P P P y y
  • 21. Polytopes and applications Algorithms Oracles Future Our setting Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P
  • 22. Polytopes and applications Algorithms Oracles Future Our setting Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P Complexity #P-hard for vertex and for halfspace repres. [DyerFrieze’88]
  • 23. Polytopes and applications Algorithms Oracles Future Our setting Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P Complexity #P-hard for vertex and for halfspace repres. [DyerFrieze’88] open if both vertex (V-rep) & halfspace (H-rep) representation is available
  • 24. Polytopes and applications Algorithms Oracles Future Our setting Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P Complexity #P-hard for vertex and for halfspace repres. [DyerFrieze’88] open if both vertex (V-rep) & halfspace (H-rep) representation is available no deterministic poly-time algorithm can compute the volume with less than exponential relative error [Elekes’86]
  • 25. Polytopes and applications Algorithms Oracles Future Our setting Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P Complexity #P-hard for vertex and for halfspace repres. [DyerFrieze’88] open if both vertex (V-rep) & halfspace (H-rep) representation is available no deterministic poly-time algorithm can compute the volume with less than exponential relative error [Elekes’86] randomized poly-time approximation of volume of a convex body with high probability and arbitrarily small relative error [DyerFriezeKannan’91] O∗(d23) → O∗(d4) [LovazVemp’04]
  • 26. Polytopes and applications Algorithms Oracles Future 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. > 15) Randomized: [Lov`aszDe`ak’12] cannot compute in > 10 dimensions Goal: compute accurate estimations in few hundred dimensions
  • 27. Polytopes and applications Algorithms Oracles Future Uniform sampling rejections techniques (sample from bounding box) fail in high dimensions volume(unit cube) = 1 volume(unit ball) ∼ (c/d)d/2 –drops exponentially with d
  • 28. Polytopes and applications Algorithms Oracles Future Uniform sampling for arbitrary polytopes we need random walks e.g. grid walk, ball walk, hit-and-run (random directions) P x B 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. W = O∗(d3) [LovaszVempala’06]
  • 29. Polytopes and applications Algorithms Oracles Future Uniform sampling for arbitrary polytopes we need random walks e.g. grid walk, ball walk, hit-and-run (random directions) P x 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. W = O∗(d3) [LovaszVempala’06]
  • 30. Polytopes and applications Algorithms Oracles Future Uniform sampling for arbitrary polytopes we need random walks e.g. grid walk, ball walk, hit-and-run (random directions) P x 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. W = O∗(d3) [LovaszVempala’06]
  • 31. Polytopes and applications Algorithms Oracles Future Multiphase Monte Carlo (Generating random points) P0 = B(c, r) 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)
  • 32. Polytopes and applications Algorithms Oracles Future Multiphase Monte Carlo (Generating random points) P0 = B(c, r) 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. Use rand points in Pi−1 to 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)
  • 33. Polytopes and applications Algorithms Oracles Future 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 steps 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
  • 34. Polytopes and applications Algorithms Oracles Future Our contribution [Emiris-Fisikopoulos] W = O(d) random walk steps (vs. O∗(d3) which hides constant 1011) achieve < 1% error in up to 100 dim.
  • 35. Polytopes and applications Algorithms Oracles Future Our contribution [Emiris-Fisikopoulos] W = O(d) 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)
  • 36. Polytopes and applications Algorithms Oracles Future Our contribution [Emiris-Fisikopoulos] W = O(d) 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) iterative rounding using minimum ellipsoid (efficiently handle skinny polytopes)
  • 37. Polytopes and applications Algorithms Oracles Future Our contribution [Emiris-Fisikopoulos] W = O(d) 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) iterative rounding using minimum ellipsoid (efficiently handle skinny polytopes)(CDHR)
  • 38. Polytopes and applications Algorithms Oracles Future Our contribution [Emiris-Fisikopoulos] W = O(d) 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) iterative rounding using minimum ellipsoid (efficiently handle skinny polytopes)(CDHR) boundary oracles using coordinate hit-and-run(CDHR) with O(m) runtime (vs. O(md) using RDHR)
  • 39. Polytopes and applications Algorithms Oracles Future Our contribution [Emiris-Fisikopoulos] W = O(d) 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) iterative rounding using minimum ellipsoid (efficiently handle skinny polytopes)(CDHR) boundary oracles using coordinate hit-and-run(CDHR) with O(m) runtime (vs. O(md) using RDHR) CDHR as accurate as RDHR
  • 40. Polytopes and applications Algorithms Oracles Future Our contribution [Emiris-Fisikopoulos] W = O(d) 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) iterative rounding using minimum ellipsoid (efficiently handle skinny polytopes)(CDHR) boundary oracles using coordinate hit-and-run(CDHR) with O(m) runtime (vs. O(md) using RDHR) CDHR as accurate as RDHR Software framework to test theoretical ideas and conjectures
  • 41. Polytopes and applications Algorithms Oracles Future More experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff, order) up to dimension 200 in less than 2 hours with mean approximation error at most 1%
  • 42. Polytopes and applications Algorithms Oracles Future More experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff, order) up to dimension 200 in less than 2 hours with mean approximation error at most 1% Running our software on order polytopes offers a method for estimating the number of linear extensions of a poset
  • 43. Polytopes and applications Algorithms Oracles Future More experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff, order) up to dimension 200 in less than 2 hours with mean approximation error at most 1% Running our software on order polytopes offers a method for estimating the number of linear extensions of a poset 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 Note: lattice points of Birkhoff are important in Bayesian statistics and volume is leading coefficient of the generating (Ehrhart) polynomial
  • 44. Polytopes and applications Algorithms Oracles Future 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 ??? ???
  • 45. Polytopes and applications Algorithms Oracles Future Outline Volumes, polytopes, applications Algorithms and complexity Polytope oracles in high dimensions Future work and references
  • 46. Polytopes and applications Algorithms Oracles Future Approximate oracles Issue: algorithm inefficient for large number of facets (e.g. crosspolytopes have 2d facets; volume computation inefficient for d > 20 in practice)
  • 47. Polytopes and applications Algorithms Oracles Future Approximate oracles Issue: algorithm inefficient for large number of facets (e.g. crosspolytopes have 2d facets; volume computation inefficient for d > 20 in practice) Solution: approximate oracles (membership and boundary)
  • 48. Polytopes and applications Algorithms Oracles Future Approximate oracles Issue: algorithm inefficient for large number of facets (e.g. crosspolytopes have 2d facets; volume computation inefficient for d > 20 in practice) Solution: approximate oracles (membership and boundary) Previous work: only for membership oracle; solutions depend exponentially in d [Bentley et al 82] [Arya et al ’16]
  • 49. Polytopes and applications Algorithms Oracles Future Approximate oracles Issue: algorithm inefficient for large number of facets (e.g. crosspolytopes have 2d facets; volume computation inefficient for d > 20 in practice) Solution: approximate oracles (membership and boundary) Previous work: only for membership oracle; solutions depend exponentially in d [Bentley et al 82] [Arya et al ’16] Idea: reduce problem to Nearest-Neighbor (NN) and use approximate NN algorithms
  • 50. Polytopes and applications Algorithms Oracles Future Approximate oracles Issue: algorithm inefficient for large number of facets (e.g. crosspolytopes have 2d facets; volume computation inefficient for d > 20 in practice) Solution: approximate oracles (membership and boundary) Previous work: only for membership oracle; solutions depend exponentially in d [Bentley et al 82] [Arya et al ’16] Idea: reduce problem to Nearest-Neighbor (NN) and use approximate NN algorithms Side note: Approximate oracle improve sampling performance so they are applicable to other algorithms that use sampling such as optimization
  • 51. Polytopes and applications Algorithms Oracles Future Approximate Nearest Neighbors Definition Given a pointset X ⊂ Rd with cardinality n and an approximation parameter ∈ (0, 1), preprocess X into a data structure, so that, given a query point q it is possible to efficiently determine a point x∗ ∈ X such that: d(x∗ , q) ≤ (1 + ) min x∈X f(x, q), where f is a distance function. Locality sensitive hashing (LSH) [Gionis et ’al ’99] randomized algorithm, sublinear dependence on n, polynomial dependence on d, exponential dependence on .
  • 52. Polytopes and applications Algorithms Oracles Future Approximate membership oracles For arbitrary point p∗ ∈ P compute symmetric points about each facet of P query: q ∈ P iff p∗ is the NN of q p p p2 2 3 p3 4 p4 5 p5 6 p6 7 p7 Theorem (Anangostopoulos, Emiris, Fisikopoulos’17) Given polytope P ⊂ Rd, approximation parameter ∈ (0, 1) and query point q, we can answer whether q ∈ P in O∗(dnρ+o(1)) time with a probability of success p = 1/(2(1 + )2 − 1), using O∗(n1+ρ+o(1) + dn) space; ρ is a probability related to LSH. If f(q, ∂P) ≤ · diam(P) the data structure can answer either way.
  • 53. Polytopes and applications Algorithms Oracles Future Approximate boundary oracles Start point t1 /∈ P. At some step i : let pi be the NN of ti let Hi be the hyperplane supporting the facet Fi set ti+1 = (Hi ∩ r). Iterate until ti ∈ P for some i Note The algorithm terminates even for the approximate case with a changed termination criterion and by doing e-steps to avoid ”local optima”.
  • 54. Polytopes and applications Algorithms Oracles Future Outline Volumes, polytopes, applications Algorithms and complexity Polytope oracles in high dimensions Future work and references
  • 55. Polytopes and applications Algorithms Oracles Future Future & related work Volume of spectahedral shadows (joint with Konaxis, Tsigaridas) Volume of simple convex bodies: intersection of a simplex with two halfspaces or an ellipsoid; applications in finance (joint with Emiris, Chalkis) Sampling on V-polytopes or polytopes given by optimization oracles [Emiris, Fisikopoulos, Konaxis, Penaranda ’13]
  • 56. Polytopes and applications Algorithms Oracles Future Open question V-polytope sampling Given P ∈ Rd any point q ∈ P can be written as q = i={0,...,m} λipi, λi ≤ 0, i={0,...,m} λi = 0 compute distribution for λ s.t. q is uniform in P.
  • 57. Polytopes and applications Algorithms Oracles Future References Practical polytope volume approximation Emiris, Fisikopoulos ACM Transactions on Mathematical Software (to appear) Polytope oracles in high dimensions Anangostopoulos, Emiris, Fisikopoulos work in progress Code C++ using CGAL and Eigen libraries https://github.com/vissarion/volume_approximation
  • 58. Polytopes and applications Algorithms Oracles Future Thank you! Questions?