SlideShare a Scribd company logo
1 of 49
Download to read offline
Volume and edge-skeleton computation
in high dimensions
Vissarion Fisikopoulos
Computer Science Department, Algorithms Group
INRIA 5 Nov. 2014
Outline of the talk
Edge-skeleton computation [Emiris-F-Gaertner]
Practical volume approximation [Emiris-F]
Classical Polytope Representations
A convex polytope P ⊆ Rd can be represented as the
1. convex hull of a pointset {p1, . . . , pn} (V-representation)
2. intersection of halfspaces {h1, . . . , hm} (H-representation)
convex hull problem
vertex enumeration problem
These problems are equivalent by polytope duality.
Algorithmic Issues
For general dimension d there is no polynomial algorithm for
the convex hull (or vertex enumeration) problem since m can
be O n d/2 [McMullen’70].
It is open whether there exist a total poly-time algorithm for
the convex hull (or vertex enumeration) problem, i.e. runs in
poly-time in n, m, d.
Vertex enumeration special cases
1. Simple polytopes: O(n m d) [Avis,Fukuda’92]
2. 0/1 polytopes: O(n d TLP) [Bussieck, Lubbecke’98]
Polytope Oracles
Implicit representation for a polytope P ⊆ Rd.
OPTP: Given direction c ∈ Rd return the vertex v ∈ P that maximizes
cT v.
SEPP: Given point y ∈ Rd, return yes if y ∈ P otherwise a
hyperplane h that separates y from P.
c
v
P P
h
y
Well-described polytopes and oracles
Definition
A rational polytope P ⊆ Rd is well-described (with a parameter ϕ)
if there exists an H-representation for P in which every inequality
has encoding length at most ϕ. The encoding length of P is
P = d + ϕ.
Proposition (Gr¨otschel et al.’93)
For a well-described polytope, we can compute OPTP from SEPP
(and vice versa) in oracle polynomial-time. The runtime
(polynomially) depends on d and ϕ.
Why oracles?
Polynomial time algorithms for combinatorial optimization
problems using the ellipsoid method
[Gr¨otschel-Lov´asz-Schrijver’93]
Randomized polynomial-time algorithm for approximating the
volume of convex bodies [Dyer-Frieze-Kannan ’90]
Original Motivation
(1) Secondary, Resultant polytopes
Vertices → reg. triangulations of a
pointset’s convex hull
OPTP is available via a
triangulation computation
[Emiris-F-Konaxis-Pe˜naranda ’12]
(2) Minkowski sums
Applications in Computational Algebraic Geometry, Geometric
Modelling, Combinatorics
Vertex enumeration with edge-directions
Given OPTP and a superset D of the edge directions D(P) of
P ⊆ Rd, compute the vertices P.
Proposition (Rothblum-Onn ’07)
Let P ⊆ Rd given by OPTP, and D ⊇ D(P). All vertices of P can
be computed in
O(|D|d−1
) calls to OPTP + O(|D|d−1
) arithmetic operations.
The edge-skeleton algorithm
Input:
OPTP
Edge vec. P (dir. & len.): D
Output:
Edge-skeleton of P
P
c
Sketch of Algorithm:
Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
The edge-skeleton algorithm
Input:
OPTP
Edge vec. P (dir. & len.): D
Output:
Edge-skeleton of P
P
Sketch of Algorithm:
Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
Compute segments S = {(x, x + d), for all d ∈ D}
The edge-skeleton algorithm
Input:
OPTP
Edge vec. P (dir. & len.): D
Output:
Edge-skeleton of P
P
Sketch of Algorithm:
Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
Compute segments S = {(x, x + d), for all d ∈ D}
Remove from S all segments (x, y) s.t. y /∈ P (OPTP → SEPP)
The edge-skeleton algorithm
Input:
OPTP
Edge vec. P (dir. & len.): D
Output:
Edge-skeleton of P
P
Sketch of Algorithm:
Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
Compute segments S = {(x, x + d), for all d ∈ D}
Remove from S all segments (x, y) s.t. y /∈ P (OPTP → SEPP)
Remove from S the segments that are not extreme
The edge-skeleton algorithm
Input:
OPTP
Edge vec. P (dir. & len.): D
Output:
Edge-skeleton of P
P
Sketch of Algorithm:
Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
Compute segments S = {(x, x + d), for all d ∈ D}
Remove from S all segments (x, y) s.t. y /∈ P (OPTP → SEPP)
Remove from S the segments that are not extreme
Can be altered to work with edge directions only
Complexity
Theorem
Given OPTP and a superset of edge directions D of a well-
described polytope P ⊆ Rd, the edge skeleton of P can be
computed in oracle total polynomial-time
O n |D| (T + LP(d3
|D| B ) + d log n) ,
n the number of vertices of P,
T : runtime of oracle conversion algorithm for P and D,
B is the binary encoding length of the vector set D and P,
LP( A + b + c ) runtime of max cT x over {x : Ax ≤ b}.
Applications
Corollary
The edge skeleton of resultant, secondary polytopes and signed
Minkowski sums (knowing the edge directions of the summands)
can be computed in oracle total polynomial-time.
Corollary
The edge skeletons of polytopes appearing in convex combinatorial
optimization [Rothblum-Onn ’04] and convex integer
programming [De Loera et al. ’09] problems can be computed in
oracle total polynomial-time.
Outline
Edge-skeleton computation [Emiris-F-Gaertner]
Practical volume approximation [Emiris-F]
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
#-P hard for vertex and for halfspace repres. [DyerFrieze’88]
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
#-P hard for vertex and for halfspace repres. [DyerFrieze’88]
open if both vertex & halfspace representation is available
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
#-P hard for vertex and for halfspace repres. [DyerFrieze’88]
open if both vertex & halfspace representation is available
no deterministic poly-time algorithm can compute the volume
with less than exponential relative error [Elekes’86]
The volume computation problem
Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm
Output: Volume of P
#-P hard for vertex and for halfspace repres. [DyerFrieze’88]
open if both vertex & halfspace representation is available
no deterministic poly-time algorithm can compute the volume
with less than exponential relative error [Elekes’86]
randomized poly-time algorithm approximates the volume of a
convex body with high probability and arbitrarily small relative
error [DyerFriezeKannan’91] O∗(d23) → O∗(d4) [LovVemp’04]
Implementations
Exact: VINCI [Bueler et al’00], Latte [deLoera et al], Qhull
[Barber et al], LRS [Avis], Normaliz [Bruns et al]
triangulation, sign decomposition methods
cannot compute in high dimensions (e.g. > 15)
Randomized:
[Lov`aszDe`ak’12] cannot compute in > 10 dimensions
Matlab code by Cousins & Vempala based on [LovVemp’04]
Ours: based on [DyerFriezeKannan’91],. . . ,
[KannanLov`aszSimon.’97]
Goal: compute accurate estimations in about 100 dimensions
How do we compute a random point in a polytope P?
easy for simple shapes like simplex or cube
How do we compute a random point in a polytope P?
easy for simple shapes like simplex or cube
BUT for arbitrary polytopes we need random walks
e.g. grid walk, ball walk, hit-and-run
Random Directions Hit-and-Run (RDHR)
P
x
B
Input: point x ∈ P and polytope P ⊂ Rd
Output: a new point in P
1. line through x, uniform on B(x, 1)
2. set x to be a uniform disrtibuted
point on P ∩
Iterate this for W steps and return x.
Random Directions Hit-and-Run (RDHR)
P
x
Input: point x ∈ P and polytope P ⊂ Rd
Output: a new point in P
1. line through x, uniform on B(x, 1)
2. set x to be a uniform disrtibuted
point on P ∩
Iterate this for W steps and return x.
Random Directions Hit-and-Run (RDHR)
P
x Input: point x ∈ P and polytope P ⊂ Rd
Output: a new point in P
1. line through x, uniform on B(x, 1)
2. set x to be a uniform disrtibuted
point on P ∩
Iterate this for W steps and return x.
x is unif. random distrib. in P after W = O∗(d3) steps, where
O∗(·) hides log factors [LovaszVempala’06]
to generate many random points iterate this procedure
Multiphase Monte Carlo (Sequence of balls)
B = B(c, r)
B = B(c, ρ)
P
B(c, 2i/d), i = α, α + 1, . . . , β,
α = d log r , β = d log ρ
Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β,
Pα = B(c, 2α/d) ⊆ B(c, r)
Multiphase Monte Carlo (Generating random points)
P0 = B(c, r)
B = B(c, ρ)
P
P1
B(c, 2i/d), i = α, α + 1, . . . , β,
α = d log r , β = d log ρ
Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β,
Pα = B(c, 2α/d) ⊆ B(c, r)
1. Generate rand. points in Pi
2. Count how many rand. points in Pi fall
in Pi−1
vol(P) = vol(Pα)
β
i=α+1
vol(Pi)
vol(Pi−1)
Multiphase Monte Carlo (Generating random points)
P0 = B(c, r)
B = B(c, ρ)
P
P1
B(c, 2i/d), i = α, α + 1, . . . , β,
α = d log r , β = d log ρ
Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β,
Pα = B(c, 2α/d) ⊆ B(c, r)
1. Generate rand. points in Pi
2. Count how many rand. points in Pi fall
in Pi−1
vol(P) = vol(Pα)
β
i=α+1
vol(Pi)
vol(Pi−1)
Complexity [KannanLS’97]
Assuming B(c, 1) ⊆ P ⊆ B(c, ρ), the volume algorithm returns an
estimation of vol(P), which lies between (1 − )vol(P) and
(1 + )vol(P) with probability ≥ 3/4, making
O∗
(d5
)
oracle calls, where ρ is the radius of a bounding ball for P.
Isotropic sandwitching: ρ = O∗(
√
d) and ball walk.
Runtime
generates d log(ρ) balls
generate N = 400 −2d log d random points in each ball ∩ P
each point is computed after O∗(d3) random walk steps
Modifications towards practicality
W = 10 + d/10 random walk steps (vs. O∗(d3) which hides
constant 1011) achieve < 1% error in up to 100 dim.
sample partial generations of ≤ N points in each ball ∩ P
(starting from the largest ball)
coordinate (vs. random) directions hit-and-run (CDHR)
implement boundary oracles with O(m) runtime in CDHR
Iterative rounding
1. compute set S of random points in P
P
Iterative rounding
1. compute set S of random points in P
2. compute (approximate) minimum volume ellipsoid E covers S
P
E
Iterative rounding
1. compute set S of random points in P
2. compute (approximate) minimum volume ellipsoid E covers S
3. compute L that maps E to the unit ball B and apply L to P
Iterate until the ratio of the maximum over the minumum ellipsoid
axis reaches some user-defined threshold.
P
P
E
B
Iterative rounding
1. compute set S of random points in P
2. compute (approximate) minimum volume ellipsoid E covers S
3. compute L that maps E to the unit ball B and apply L to P
Iterate until the ratio of the maximum over the minumum ellipsoid
axis reaches some user-defined threshold.
P
P
E
B
Efficiently handle skinny polytopes in practice.
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
randomized vs. exact software (VINCI, etc.): there is a
threshold dimension (d < 15) for which exact software halts
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
randomized vs. exact software (VINCI, etc.): there is a
threshold dimension (d < 15) for which exact software halts
computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs.
prob. 3/4 [KLS’97]) up to d = 100
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
randomized vs. exact software (VINCI, etc.): there is a
threshold dimension (d < 15) for which exact software halts
computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs.
prob. 3/4 [KLS’97]) up to d = 100
CDHR faster and more accurate than RDHR
Experimental results
approximate the volume of a series of polytopes (cubes,
random, cross, birkhoff) up to dimension 100 in less than
2 hours with mean approximation error at most 1%
randomized vs. exact software (VINCI, etc.): there is a
threshold dimension (d < 15) for which exact software halts
computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs.
prob. 3/4 [KLS’97]) up to d = 100
CDHR faster and more accurate than RDHR
Compute the volume of Birkhoff polytopes B11, . . . , B15 in few
hrs whereas exact methods have only computed that of B10 by
specialized software in ∼ 1 year of parallel computation
Volumes of Birkhoff polytopes
n d estimation
asymptotic estimation
asymptotic
exact
exact
asymptotic[CanfieldMcKay09]
3 4 1.12E+000 1.41E+000 0.7932847 1.13E+000 0.7973923
4 9 6.79E-002 7.61E-002 0.8919349 6.21E-002 0.8159296
5 16 1.41E-004 1.69E-004 0.8344350 1.41E-004 0.8341903
6 25 7.41E-009 8.62E-009 0.8598669 7.35E-009 0.8527922
7 36 5.67E-015 6.51E-015 0.8713891 5.64E-015 0.8665047
8 49 4.39E-023 5.03E-023 0.8729497 4.42E-023 0.8778632
9 64 2.62E-033 2.93E-033 0.8960767 2.60E-033 0.8874117
10 81 8.14E-046 9.81E-046 0.8305162 8.78E-046 0.8955491
11 100 1.40E-060 1.49E-060 0.9342584 ??? ???
12 121 7.85E-078 8.38E-078 0.9370513 ??? ???
13 144 1.33E-097 1.43E-097 0.9331517 ??? ???
14 169 5.96E-120 6.24E-120 0.9550089 ??? ???
15 196 5.70E-145 5.94E-145 0.9593786 ??? ???
Open problem
Random walks for polytopes described by optimization oracles
P
x
Open problem
Random walks for polytopes described by optimization oracles
P
x
Open problem
Random walks for polytopes described by optimization oracles
P
x
Open problem
Random walks for polytopes described by optimization oracles
Ongoing and future work
1. Lattice point enumeration using random walks
(joint with R.Yoshida, A.Campo)
2. Volume of more general convex bodies
e.g. spectahedra
3. Other #P-hard problems
e.g. counting linear extensions of posets
4. Use approximate oracles (utilizing approximate NN)
Conclusion
Output-sensitive vertex enumeration for special cases of
polytopes
Practical volume estimation in high dimensions (e.g. 100)
Software framework for testing theoretical ideas (e.g. new
geometric random walks)
Code
http://sourceforge.net/projects/randgeom
Conclusion
Output-sensitive vertex enumeration for special cases of
polytopes
Practical volume estimation in high dimensions (e.g. 100)
Software framework for testing theoretical ideas (e.g. new
geometric random walks)
Code
http://sourceforge.net/projects/randgeom
Thank you!

More Related Content

What's hot

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
 
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
 
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
 
Best polynomial approximation
Best polynomial approximationBest polynomial approximation
Best polynomial approximationDadang Hamzah
 
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
 
Loss Calibrated Variational Inference
Loss Calibrated Variational InferenceLoss Calibrated Variational Inference
Loss Calibrated Variational InferenceTomasz Kusmierczyk
 
Tao Fayan_Iso and Full_volume rendering
Tao Fayan_Iso and Full_volume renderingTao Fayan_Iso and Full_volume rendering
Tao Fayan_Iso and Full_volume renderingFayan TAO
 
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
 
Model Checking Base on Interoplation
Model Checking Base onInteroplationModel Checking Base onInteroplation
Model Checking Base on Interoplationleticia2307
 
Introduction to modern Variational Inference.
Introduction to modern Variational Inference.Introduction to modern Variational Inference.
Introduction to modern Variational Inference.Tomasz Kusmierczyk
 
ECCV2008: MAP Estimation Algorithms in Computer Vision - Part 1
ECCV2008: MAP Estimation Algorithms in Computer Vision - Part 1ECCV2008: MAP Estimation Algorithms in Computer Vision - Part 1
ECCV2008: MAP Estimation Algorithms in Computer Vision - Part 1zukun
 
SPU Optimizations-part 1
SPU Optimizations-part 1SPU Optimizations-part 1
SPU Optimizations-part 1Naughty Dog
 
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
 

What's hot (20)

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...
 
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
 
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
 
Best polynomial approximation
Best polynomial approximationBest polynomial approximation
Best polynomial approximation
 
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
 
Microprocessor 11el01
Microprocessor 11el01Microprocessor 11el01
Microprocessor 11el01
 
Athens workshop on MCMC
Athens workshop on MCMCAthens workshop on MCMC
Athens workshop on MCMC
 
Chap8 new
Chap8 newChap8 new
Chap8 new
 
Loss Calibrated Variational Inference
Loss Calibrated Variational InferenceLoss Calibrated Variational Inference
Loss Calibrated Variational Inference
 
Tao Fayan_Iso and Full_volume rendering
Tao Fayan_Iso and Full_volume renderingTao Fayan_Iso and Full_volume rendering
Tao Fayan_Iso and Full_volume rendering
 
Approximation Algorithms
Approximation AlgorithmsApproximation Algorithms
Approximation Algorithms
 
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
 
5th Semester Electronic and Communication Engineering (2013-June) Question Pa...
5th Semester Electronic and Communication Engineering (2013-June) Question Pa...5th Semester Electronic and Communication Engineering (2013-June) Question Pa...
5th Semester Electronic and Communication Engineering (2013-June) Question Pa...
 
Network flows
Network flowsNetwork flows
Network flows
 
Model Checking Base on Interoplation
Model Checking Base onInteroplationModel Checking Base onInteroplation
Model Checking Base on Interoplation
 
Introduction to modern Variational Inference.
Introduction to modern Variational Inference.Introduction to modern Variational Inference.
Introduction to modern Variational Inference.
 
ECCV2008: MAP Estimation Algorithms in Computer Vision - Part 1
ECCV2008: MAP Estimation Algorithms in Computer Vision - Part 1ECCV2008: MAP Estimation Algorithms in Computer Vision - Part 1
ECCV2008: MAP Estimation Algorithms in Computer Vision - Part 1
 
Lecture26
Lecture26Lecture26
Lecture26
 
SPU Optimizations-part 1
SPU Optimizations-part 1SPU Optimizations-part 1
SPU Optimizations-part 1
 
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 ...
 

Similar to Volume and edge skeleton computation in high dimensions

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
 
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
 
A sweepline algorithm for Voronoi Diagrams
A sweepline algorithm for Voronoi DiagramsA sweepline algorithm for Voronoi Diagrams
A sweepline algorithm for Voronoi DiagramsSweta Sharma
 
Hormann.2001.TPI.pdf
Hormann.2001.TPI.pdfHormann.2001.TPI.pdf
Hormann.2001.TPI.pdfssuserbe139c
 
Cgo2007 P3 3 Birkbeck
Cgo2007 P3 3 BirkbeckCgo2007 P3 3 Birkbeck
Cgo2007 P3 3 BirkbeckaiQUANT
 
A Dimension Abstraction Approach to Vectorization in Matlab
A Dimension Abstraction Approach to Vectorization in MatlabA Dimension Abstraction Approach to Vectorization in Matlab
A Dimension Abstraction Approach to Vectorization in MatlabaiQUANT
 
Kolev skalna2018 article-exact_solutiontoa_parametricline
Kolev skalna2018 article-exact_solutiontoa_parametriclineKolev skalna2018 article-exact_solutiontoa_parametricline
Kolev skalna2018 article-exact_solutiontoa_parametriclineAlina Barbulescu
 
Linear programming in computational geometry
Linear programming in computational geometryLinear programming in computational geometry
Linear programming in computational geometryhsubhashis
 
The slides of my Ph.D. defense
The slides of my Ph.D. defenseThe slides of my Ph.D. defense
The slides of my Ph.D. defenseApostolos Chalkis
 
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
 
Trilinear embedding for divergence-form operators
Trilinear embedding for divergence-form operatorsTrilinear embedding for divergence-form operators
Trilinear embedding for divergence-form operatorsVjekoslavKovac1
 
Problem Solving by Computer Finite Element Method
Problem Solving by Computer Finite Element MethodProblem Solving by Computer Finite Element Method
Problem Solving by Computer Finite Element MethodPeter Herbert
 
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
 
parameterized complexity for graph Motif
parameterized complexity for graph Motifparameterized complexity for graph Motif
parameterized complexity for graph MotifAMR koura
 

Similar to Volume and edge skeleton computation in high dimensions (20)

Volume computation and applications
Volume computation and applications Volume computation and applications
Volume computation and applications
 
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
 
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.
 
A sweepline algorithm for Voronoi Diagrams
A sweepline algorithm for Voronoi DiagramsA sweepline algorithm for Voronoi Diagrams
A sweepline algorithm for Voronoi Diagrams
 
Hormann.2001.TPI.pdf
Hormann.2001.TPI.pdfHormann.2001.TPI.pdf
Hormann.2001.TPI.pdf
 
Cgo2007 P3 3 Birkbeck
Cgo2007 P3 3 BirkbeckCgo2007 P3 3 Birkbeck
Cgo2007 P3 3 Birkbeck
 
A Dimension Abstraction Approach to Vectorization in Matlab
A Dimension Abstraction Approach to Vectorization in MatlabA Dimension Abstraction Approach to Vectorization in Matlab
A Dimension Abstraction Approach to Vectorization in Matlab
 
Unit 3
Unit 3Unit 3
Unit 3
 
Unit 3
Unit 3Unit 3
Unit 3
 
Kolev skalna2018 article-exact_solutiontoa_parametricline
Kolev skalna2018 article-exact_solutiontoa_parametriclineKolev skalna2018 article-exact_solutiontoa_parametricline
Kolev skalna2018 article-exact_solutiontoa_parametricline
 
Linear programming in computational geometry
Linear programming in computational geometryLinear programming in computational geometry
Linear programming in computational geometry
 
The slides of my Ph.D. defense
The slides of my Ph.D. defenseThe slides of my Ph.D. defense
The slides of my Ph.D. defense
 
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
 
Trilinear embedding for divergence-form operators
Trilinear embedding for divergence-form operatorsTrilinear embedding for divergence-form operators
Trilinear embedding for divergence-form operators
 
Problem Solving by Computer Finite Element Method
Problem Solving by Computer Finite Element MethodProblem Solving by Computer Finite Element Method
Problem Solving by Computer Finite Element Method
 
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...
 
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
 
Polynomials.pdf
Polynomials.pdfPolynomials.pdf
Polynomials.pdf
 
Convex hull in 3D
Convex hull in 3DConvex hull in 3D
Convex hull in 3D
 
parameterized complexity for graph Motif
parameterized complexity for graph Motifparameterized complexity for graph Motif
parameterized complexity for graph Motif
 

More from Vissarion Fisikopoulos

"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."Vissarion Fisikopoulos
 
"Regular triangularions and resultant polytopes."
"Regular triangularions and resultant polytopes." "Regular triangularions and resultant polytopes."
"Regular triangularions and resultant polytopes." Vissarion Fisikopoulos
 
"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." Vissarion Fisikopoulos
 
"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
 
"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." Vissarion Fisikopoulos
 
"Combinatorics of 4-dimensional resultant polytopes"
"Combinatorics of 4-dimensional resultant polytopes""Combinatorics of 4-dimensional resultant polytopes"
"Combinatorics of 4-dimensional resultant polytopes"Vissarion Fisikopoulos
 
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 GeometryVissarion 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
 
Conctructing Polytopes via a Vertex Oracle
Conctructing Polytopes via a Vertex OracleConctructing Polytopes via a Vertex Oracle
Conctructing Polytopes via a Vertex OracleVissarion Fisikopoulos
 
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 resultantVissarion Fisikopoulos
 
Geodesic algorithms: an experimental study
Geodesic algorithms: an experimental studyGeodesic algorithms: an experimental study
Geodesic algorithms: an experimental studyVissarion Fisikopoulos
 
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)Vissarion Fisikopoulos
 
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 ComputationVissarion Fisikopoulos
 
An algorithm for computing resultant polytopes
An algorithm for computing resultant polytopesAn algorithm for computing resultant polytopes
An algorithm for computing resultant polytopesVissarion Fisikopoulos
 
Combinatorics of 4-dimensional Resultant Polytopes
Combinatorics of 4-dimensional Resultant PolytopesCombinatorics of 4-dimensional Resultant Polytopes
Combinatorics of 4-dimensional Resultant PolytopesVissarion Fisikopoulos
 

More from 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
 

Recently uploaded

Transposable elements in prokaryotes.ppt
Transposable elements in prokaryotes.pptTransposable elements in prokaryotes.ppt
Transposable elements in prokaryotes.pptArshadWarsi13
 
Forest laws, Indian forest laws, why they are important
Forest laws, Indian forest laws, why they are importantForest laws, Indian forest laws, why they are important
Forest laws, Indian forest laws, why they are importantadityabhardwaj282
 
Call Us ≽ 9953322196 ≼ Call Girls In Mukherjee Nagar(Delhi) |
Call Us ≽ 9953322196 ≼ Call Girls In Mukherjee Nagar(Delhi) |Call Us ≽ 9953322196 ≼ Call Girls In Mukherjee Nagar(Delhi) |
Call Us ≽ 9953322196 ≼ Call Girls In Mukherjee Nagar(Delhi) |aasikanpl
 
Artificial Intelligence In Microbiology by Dr. Prince C P
Artificial Intelligence In Microbiology by Dr. Prince C PArtificial Intelligence In Microbiology by Dr. Prince C P
Artificial Intelligence In Microbiology by Dr. Prince C PPRINCE C P
 
Scheme-of-Work-Science-Stage-4 cambridge science.docx
Scheme-of-Work-Science-Stage-4 cambridge science.docxScheme-of-Work-Science-Stage-4 cambridge science.docx
Scheme-of-Work-Science-Stage-4 cambridge science.docxyaramohamed343013
 
TOPIC 8 Temperature and Heat.pdf physics
TOPIC 8 Temperature and Heat.pdf physicsTOPIC 8 Temperature and Heat.pdf physics
TOPIC 8 Temperature and Heat.pdf physicsssuserddc89b
 
Grafana in space: Monitoring Japan's SLIM moon lander in real time
Grafana in space: Monitoring Japan's SLIM moon lander  in real timeGrafana in space: Monitoring Japan's SLIM moon lander  in real time
Grafana in space: Monitoring Japan's SLIM moon lander in real timeSatoshi NAKAHIRA
 
insect anatomy and insect body wall and their physiology
insect anatomy and insect body wall and their  physiologyinsect anatomy and insect body wall and their  physiology
insect anatomy and insect body wall and their physiologyDrAnita Sharma
 
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.PraveenaKalaiselvan1
 
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...lizamodels9
 
Analytical Profile of Coleus Forskohlii | Forskolin .pdf
Analytical Profile of Coleus Forskohlii | Forskolin .pdfAnalytical Profile of Coleus Forskohlii | Forskolin .pdf
Analytical Profile of Coleus Forskohlii | Forskolin .pdfSwapnil Therkar
 
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Neurodevelopmental disorders according to the dsm 5 tr
Neurodevelopmental disorders according to the dsm 5 trNeurodevelopmental disorders according to the dsm 5 tr
Neurodevelopmental disorders according to the dsm 5 trssuser06f238
 
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptxSOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptxkessiyaTpeter
 
Behavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdfBehavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdfSELF-EXPLANATORY
 
Cytokinin, mechanism and its application.pptx
Cytokinin, mechanism and its application.pptxCytokinin, mechanism and its application.pptx
Cytokinin, mechanism and its application.pptxVarshiniMK
 
Recombinant DNA technology( Transgenic plant and animal)
Recombinant DNA technology( Transgenic plant and animal)Recombinant DNA technology( Transgenic plant and animal)
Recombinant DNA technology( Transgenic plant and animal)DHURKADEVIBASKAR
 
Speech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxSpeech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxpriyankatabhane
 

Recently uploaded (20)

Transposable elements in prokaryotes.ppt
Transposable elements in prokaryotes.pptTransposable elements in prokaryotes.ppt
Transposable elements in prokaryotes.ppt
 
Forest laws, Indian forest laws, why they are important
Forest laws, Indian forest laws, why they are importantForest laws, Indian forest laws, why they are important
Forest laws, Indian forest laws, why they are important
 
Call Us ≽ 9953322196 ≼ Call Girls In Mukherjee Nagar(Delhi) |
Call Us ≽ 9953322196 ≼ Call Girls In Mukherjee Nagar(Delhi) |Call Us ≽ 9953322196 ≼ Call Girls In Mukherjee Nagar(Delhi) |
Call Us ≽ 9953322196 ≼ Call Girls In Mukherjee Nagar(Delhi) |
 
Artificial Intelligence In Microbiology by Dr. Prince C P
Artificial Intelligence In Microbiology by Dr. Prince C PArtificial Intelligence In Microbiology by Dr. Prince C P
Artificial Intelligence In Microbiology by Dr. Prince C P
 
Engler and Prantl system of classification in plant taxonomy
Engler and Prantl system of classification in plant taxonomyEngler and Prantl system of classification in plant taxonomy
Engler and Prantl system of classification in plant taxonomy
 
Scheme-of-Work-Science-Stage-4 cambridge science.docx
Scheme-of-Work-Science-Stage-4 cambridge science.docxScheme-of-Work-Science-Stage-4 cambridge science.docx
Scheme-of-Work-Science-Stage-4 cambridge science.docx
 
TOPIC 8 Temperature and Heat.pdf physics
TOPIC 8 Temperature and Heat.pdf physicsTOPIC 8 Temperature and Heat.pdf physics
TOPIC 8 Temperature and Heat.pdf physics
 
Grafana in space: Monitoring Japan's SLIM moon lander in real time
Grafana in space: Monitoring Japan's SLIM moon lander  in real timeGrafana in space: Monitoring Japan's SLIM moon lander  in real time
Grafana in space: Monitoring Japan's SLIM moon lander in real time
 
insect anatomy and insect body wall and their physiology
insect anatomy and insect body wall and their  physiologyinsect anatomy and insect body wall and their  physiology
insect anatomy and insect body wall and their physiology
 
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
 
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
Best Call Girls In Sector 29 Gurgaon❤️8860477959 EscorTs Service In 24/7 Delh...
 
Analytical Profile of Coleus Forskohlii | Forskolin .pdf
Analytical Profile of Coleus Forskohlii | Forskolin .pdfAnalytical Profile of Coleus Forskohlii | Forskolin .pdf
Analytical Profile of Coleus Forskohlii | Forskolin .pdf
 
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
 
Neurodevelopmental disorders according to the dsm 5 tr
Neurodevelopmental disorders according to the dsm 5 trNeurodevelopmental disorders according to the dsm 5 tr
Neurodevelopmental disorders according to the dsm 5 tr
 
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptxSOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
SOLUBLE PATTERN RECOGNITION RECEPTORS.pptx
 
Behavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdfBehavioral Disorder: Schizophrenia & it's Case Study.pdf
Behavioral Disorder: Schizophrenia & it's Case Study.pdf
 
Cytokinin, mechanism and its application.pptx
Cytokinin, mechanism and its application.pptxCytokinin, mechanism and its application.pptx
Cytokinin, mechanism and its application.pptx
 
Recombinant DNA technology( Transgenic plant and animal)
Recombinant DNA technology( Transgenic plant and animal)Recombinant DNA technology( Transgenic plant and animal)
Recombinant DNA technology( Transgenic plant and animal)
 
Speech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptxSpeech, hearing, noise, intelligibility.pptx
Speech, hearing, noise, intelligibility.pptx
 
Volatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -IVolatile Oils Pharmacognosy And Phytochemistry -I
Volatile Oils Pharmacognosy And Phytochemistry -I
 

Volume and edge skeleton computation in high dimensions

  • 1. Volume and edge-skeleton computation in high dimensions Vissarion Fisikopoulos Computer Science Department, Algorithms Group INRIA 5 Nov. 2014
  • 2. Outline of the talk Edge-skeleton computation [Emiris-F-Gaertner] Practical volume approximation [Emiris-F]
  • 3. Classical Polytope Representations A convex polytope P ⊆ Rd can be represented as the 1. convex hull of a pointset {p1, . . . , pn} (V-representation) 2. intersection of halfspaces {h1, . . . , hm} (H-representation) convex hull problem vertex enumeration problem These problems are equivalent by polytope duality.
  • 4. Algorithmic Issues For general dimension d there is no polynomial algorithm for the convex hull (or vertex enumeration) problem since m can be O n d/2 [McMullen’70]. It is open whether there exist a total poly-time algorithm for the convex hull (or vertex enumeration) problem, i.e. runs in poly-time in n, m, d. Vertex enumeration special cases 1. Simple polytopes: O(n m d) [Avis,Fukuda’92] 2. 0/1 polytopes: O(n d TLP) [Bussieck, Lubbecke’98]
  • 5. Polytope Oracles Implicit representation for a polytope P ⊆ Rd. OPTP: Given direction c ∈ Rd return the vertex v ∈ P that maximizes cT v. SEPP: Given point y ∈ Rd, return yes if y ∈ P otherwise a hyperplane h that separates y from P. c v P P h y
  • 6. Well-described polytopes and oracles Definition A rational polytope P ⊆ Rd is well-described (with a parameter ϕ) if there exists an H-representation for P in which every inequality has encoding length at most ϕ. The encoding length of P is P = d + ϕ. Proposition (Gr¨otschel et al.’93) For a well-described polytope, we can compute OPTP from SEPP (and vice versa) in oracle polynomial-time. The runtime (polynomially) depends on d and ϕ.
  • 7. Why oracles? Polynomial time algorithms for combinatorial optimization problems using the ellipsoid method [Gr¨otschel-Lov´asz-Schrijver’93] Randomized polynomial-time algorithm for approximating the volume of convex bodies [Dyer-Frieze-Kannan ’90]
  • 8. Original Motivation (1) Secondary, Resultant polytopes Vertices → reg. triangulations of a pointset’s convex hull OPTP is available via a triangulation computation [Emiris-F-Konaxis-Pe˜naranda ’12] (2) Minkowski sums Applications in Computational Algebraic Geometry, Geometric Modelling, Combinatorics
  • 9. Vertex enumeration with edge-directions Given OPTP and a superset D of the edge directions D(P) of P ⊆ Rd, compute the vertices P. Proposition (Rothblum-Onn ’07) Let P ⊆ Rd given by OPTP, and D ⊇ D(P). All vertices of P can be computed in O(|D|d−1 ) calls to OPTP + O(|D|d−1 ) arithmetic operations.
  • 10. The edge-skeleton algorithm Input: OPTP Edge vec. P (dir. & len.): D Output: Edge-skeleton of P P c Sketch of Algorithm: Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd)
  • 11. The edge-skeleton algorithm Input: OPTP Edge vec. P (dir. & len.): D Output: Edge-skeleton of P P Sketch of Algorithm: Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd) Compute segments S = {(x, x + d), for all d ∈ D}
  • 12. The edge-skeleton algorithm Input: OPTP Edge vec. P (dir. & len.): D Output: Edge-skeleton of P P Sketch of Algorithm: Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd) Compute segments S = {(x, x + d), for all d ∈ D} Remove from S all segments (x, y) s.t. y /∈ P (OPTP → SEPP)
  • 13. The edge-skeleton algorithm Input: OPTP Edge vec. P (dir. & len.): D Output: Edge-skeleton of P P Sketch of Algorithm: Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd) Compute segments S = {(x, x + d), for all d ∈ D} Remove from S all segments (x, y) s.t. y /∈ P (OPTP → SEPP) Remove from S the segments that are not extreme
  • 14. The edge-skeleton algorithm Input: OPTP Edge vec. P (dir. & len.): D Output: Edge-skeleton of P P Sketch of Algorithm: Compute a vertex of P (x = OPTP(c) for arbitrary cT ∈ Rd) Compute segments S = {(x, x + d), for all d ∈ D} Remove from S all segments (x, y) s.t. y /∈ P (OPTP → SEPP) Remove from S the segments that are not extreme Can be altered to work with edge directions only
  • 15. Complexity Theorem Given OPTP and a superset of edge directions D of a well- described polytope P ⊆ Rd, the edge skeleton of P can be computed in oracle total polynomial-time O n |D| (T + LP(d3 |D| B ) + d log n) , n the number of vertices of P, T : runtime of oracle conversion algorithm for P and D, B is the binary encoding length of the vector set D and P, LP( A + b + c ) runtime of max cT x over {x : Ax ≤ b}.
  • 16. Applications Corollary The edge skeleton of resultant, secondary polytopes and signed Minkowski sums (knowing the edge directions of the summands) can be computed in oracle total polynomial-time. Corollary The edge skeletons of polytopes appearing in convex combinatorial optimization [Rothblum-Onn ’04] and convex integer programming [De Loera et al. ’09] problems can be computed in oracle total polynomial-time.
  • 18. The volume computation problem Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P #-P hard for vertex and for halfspace repres. [DyerFrieze’88]
  • 19. The volume computation problem Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P #-P hard for vertex and for halfspace repres. [DyerFrieze’88] open if both vertex & halfspace representation is available
  • 20. The volume computation problem Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P #-P hard for vertex and for halfspace repres. [DyerFrieze’88] open if both vertex & halfspace representation is available no deterministic poly-time algorithm can compute the volume with less than exponential relative error [Elekes’86]
  • 21. The volume computation problem Input: Polytope P := {x ∈ Rd | Ax ≤ b} A ∈ Rm×d, b ∈ Rm Output: Volume of P #-P hard for vertex and for halfspace repres. [DyerFrieze’88] open if both vertex & halfspace representation is available no deterministic poly-time algorithm can compute the volume with less than exponential relative error [Elekes’86] randomized poly-time algorithm approximates the volume of a convex body with high probability and arbitrarily small relative error [DyerFriezeKannan’91] O∗(d23) → O∗(d4) [LovVemp’04]
  • 22. 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 Matlab code by Cousins & Vempala based on [LovVemp’04] Ours: based on [DyerFriezeKannan’91],. . . , [KannanLov`aszSimon.’97] Goal: compute accurate estimations in about 100 dimensions
  • 23. How do we compute a random point in a polytope P? easy for simple shapes like simplex or cube
  • 24. How do we compute a random point in a polytope P? easy for simple shapes like simplex or cube BUT for arbitrary polytopes we need random walks e.g. grid walk, ball walk, hit-and-run
  • 25. Random Directions Hit-and-Run (RDHR) P x B Input: point x ∈ P and polytope P ⊂ Rd Output: a new point in P 1. line through x, uniform on B(x, 1) 2. set x to be a uniform disrtibuted point on P ∩ Iterate this for W steps and return x.
  • 26. Random Directions Hit-and-Run (RDHR) P x Input: point x ∈ P and polytope P ⊂ Rd Output: a new point in P 1. line through x, uniform on B(x, 1) 2. set x to be a uniform disrtibuted point on P ∩ Iterate this for W steps and return x.
  • 27. Random Directions Hit-and-Run (RDHR) P x Input: point x ∈ P and polytope P ⊂ Rd Output: a new point in P 1. line through x, uniform on B(x, 1) 2. set x to be a uniform disrtibuted point on P ∩ Iterate this for W steps and return x. x is unif. random distrib. in P after W = O∗(d3) steps, where O∗(·) hides log factors [LovaszVempala’06] to generate many random points iterate this procedure
  • 28. Multiphase Monte Carlo (Sequence of balls) B = B(c, r) B = B(c, ρ) P B(c, 2i/d), i = α, α + 1, . . . , β, α = d log r , β = d log ρ Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β, Pα = B(c, 2α/d) ⊆ B(c, r)
  • 29. Multiphase Monte Carlo (Generating random points) P0 = B(c, r) B = B(c, ρ) P P1 B(c, 2i/d), i = α, α + 1, . . . , β, α = d log r , β = d log ρ Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β, Pα = B(c, 2α/d) ⊆ B(c, r) 1. Generate rand. points in Pi 2. Count how many rand. points in Pi fall in Pi−1 vol(P) = vol(Pα) β i=α+1 vol(Pi) vol(Pi−1)
  • 30. Multiphase Monte Carlo (Generating random points) P0 = B(c, r) B = B(c, ρ) P P1 B(c, 2i/d), i = α, α + 1, . . . , β, α = d log r , β = d log ρ Pi := P ∩ B(c, 2i/d), i = α, α + 1, . . . , β, Pα = B(c, 2α/d) ⊆ B(c, r) 1. Generate rand. points in Pi 2. Count how many rand. points in Pi fall in Pi−1 vol(P) = vol(Pα) β i=α+1 vol(Pi) vol(Pi−1)
  • 31. Complexity [KannanLS’97] Assuming B(c, 1) ⊆ P ⊆ B(c, ρ), the volume algorithm returns an estimation of vol(P), which lies between (1 − )vol(P) and (1 + )vol(P) with probability ≥ 3/4, making O∗ (d5 ) oracle calls, where ρ is the radius of a bounding ball for P. Isotropic sandwitching: ρ = O∗( √ d) and ball walk. Runtime generates d log(ρ) balls generate N = 400 −2d log d random points in each ball ∩ P each point is computed after O∗(d3) random walk steps
  • 32. Modifications towards practicality W = 10 + d/10 random walk steps (vs. O∗(d3) which hides constant 1011) achieve < 1% error in up to 100 dim. sample partial generations of ≤ N points in each ball ∩ P (starting from the largest ball) coordinate (vs. random) directions hit-and-run (CDHR) implement boundary oracles with O(m) runtime in CDHR
  • 33. Iterative rounding 1. compute set S of random points in P P
  • 34. Iterative rounding 1. compute set S of random points in P 2. compute (approximate) minimum volume ellipsoid E covers S P E
  • 35. Iterative rounding 1. compute set S of random points in P 2. compute (approximate) minimum volume ellipsoid E covers S 3. compute L that maps E to the unit ball B and apply L to P Iterate until the ratio of the maximum over the minumum ellipsoid axis reaches some user-defined threshold. P P E B
  • 36. Iterative rounding 1. compute set S of random points in P 2. compute (approximate) minimum volume ellipsoid E covers S 3. compute L that maps E to the unit ball B and apply L to P Iterate until the ratio of the maximum over the minumum ellipsoid axis reaches some user-defined threshold. P P E B Efficiently handle skinny polytopes in practice.
  • 37. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1%
  • 38. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1% randomized vs. exact software (VINCI, etc.): there is a threshold dimension (d < 15) for which exact software halts
  • 39. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1% randomized vs. exact software (VINCI, etc.): there is a threshold dimension (d < 15) for which exact software halts computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs. prob. 3/4 [KLS’97]) up to d = 100
  • 40. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1% randomized vs. exact software (VINCI, etc.): there is a threshold dimension (d < 15) for which exact software halts computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs. prob. 3/4 [KLS’97]) up to d = 100 CDHR faster and more accurate than RDHR
  • 41. Experimental results approximate the volume of a series of polytopes (cubes, random, cross, birkhoff) up to dimension 100 in less than 2 hours with mean approximation error at most 1% randomized vs. exact software (VINCI, etc.): there is a threshold dimension (d < 15) for which exact software halts computed value always in [(1 − )vol(P), (1 + )vol(P)] (vs. prob. 3/4 [KLS’97]) up to d = 100 CDHR faster and more accurate than RDHR Compute the volume of Birkhoff polytopes B11, . . . , B15 in few hrs whereas exact methods have only computed that of B10 by specialized software in ∼ 1 year of parallel computation
  • 42. 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 ??? ???
  • 43. Open problem Random walks for polytopes described by optimization oracles P x
  • 44. Open problem Random walks for polytopes described by optimization oracles P x
  • 45. Open problem Random walks for polytopes described by optimization oracles P x
  • 46. Open problem Random walks for polytopes described by optimization oracles
  • 47. Ongoing and future work 1. Lattice point enumeration using random walks (joint with R.Yoshida, A.Campo) 2. Volume of more general convex bodies e.g. spectahedra 3. Other #P-hard problems e.g. counting linear extensions of posets 4. Use approximate oracles (utilizing approximate NN)
  • 48. Conclusion Output-sensitive vertex enumeration for special cases of polytopes Practical volume estimation in high dimensions (e.g. 100) Software framework for testing theoretical ideas (e.g. new geometric random walks) Code http://sourceforge.net/projects/randgeom
  • 49. Conclusion Output-sensitive vertex enumeration for special cases of polytopes Practical volume estimation in high dimensions (e.g. 100) Software framework for testing theoretical ideas (e.g. new geometric random walks) Code http://sourceforge.net/projects/randgeom Thank you!