SlideShare a Scribd company logo
High-dimensional polytopes defined by oracles:
algorithms, computations and applications
Vissarion Fisikopoulos
Dept. of Informatics & Telecommunications, University of Athens
PhD defence, Athens, 24.Apr.2014
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
What is an Oracle?
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Why polytope Oracles?
• Polynomial time algorithms for combinatorial optimization
problems using the ellipsoid method
[Gr¨otschel-Lov´asz-Schrijver’93]
• Randomized polynomial-time algorithms for approximating the
volume of convex bodies
[Dyer-Frieze-Kannan ’90],. . . ,[Lov´asz-Vempala ’04]
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Our view of the Oracles
Resultant, Discriminant, Secondary polytopes
• Vertices → subdivisions of a
pointset’s convex hull
• OPTP is available via a subdivision
computation
• Applications in Computational Algebraic Geometry, Geometric
Modelling, Optimization, Combinatorics
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main actor: resultant polytope
• Geometry: Minkowski summands of secondary polytopes,
generalize Birkhoff polytopes
• Algebra: resultant expresses the solvability of polynomial
systems
• Applications: resultant computation, implicitization of
parametric hypersurfaces [Emiris, Kalinka, Konaxis, LuuBa ’12]
Enneper’s Minimal Surface
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Polytopes and Algebra
• Given n + 1 polynomials on n variables.
f0(x) = ax2
+ b
f1(x) = cx2
+ dx + e
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Polytopes and Algebra
• Given n + 1 polynomials on n variables.
• Supports (set of exponents of monomials with non-zero
coefficient) A0, A1, . . . , An ⊂ Zn.
A0
A1
f0(x) = ax2
+ b
f1(x) = cx2
+ dx + e
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Polytopes and Algebra
• Given n + 1 polynomials on n variables.
• Supports (set of exponents of monomials with non-zero
coefficient) A0, A1, . . . , An ⊂ Zn.
• The resultant R is the polynomial in the coefficients of a
system of polynomials which vanishes if there exists a
common root in the torus of the given polynomials.
A0
A1
R(a, b, c, d, e) = ad2
b + c2
b2
− 2caeb + a2
e2
f0(x) = ax2
+ b
f1(x) = cx2
+ dx + e
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Polytopes and Algebra
• Given n + 1 polynomials on n variables.
• Supports (set of exponents of monomials with non-zero
coefficient) A0, A1, . . . , An ⊂ Zn.
• The resultant R is the polynomial in the coefficients of a
system of polynomials which vanishes if there exists a
common root in the torus of the given polynomials.
• The resultant polytope N(R), is the convex hull of the
support of R, i.e. the Newton polytope of the resultant.
A0
A1
N(R)R(a, b, c, d, e) = ad2
b + c2
b2
− 2caeb + a2
e2
f0(x) = ax2
+ b
f1(x) = cx2
+ dx + e
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Mixed subdivisions
A subdivision S of Minkowski sum A0 + A1 + · · · + An is
• mixed: cells are Minkowski sums of subsets of Ai’s,
• fine: for each cell σ = σ0 + · · · + σn, dim(σ) = n
i=0 dim(σi)
Example
A0
A1
A2 fine mixed subdivision S of A0 + A1 + A2
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Resultant polytope vertices
Theorem [GKZ’94,
Sturmfels’94]
• many-to-one relation from
regular fine mixed
subdivisions of
A0 + · · · + An to N(R)
vertices
• one-to-one relation between
regular fine mixed
subdivisions and secondary
polytope Σ vertices
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The idea of the algorithm
Input: A0, A1, . . . , An ⊂ Zn
Simplistic method:
• compute the vertices of secondary polytope Σ [Rambau ’02]
• many-to-one relation between vertices of Σ and N(R)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The idea of the algorithm
Input: A0, A1, . . . , An ⊂ Zn
New Algorithm:
• Optimization oracle for N(R) by subdivision computation
• Output sensitive: 1 subd. per N(R) vertex + 1 per N(R) facet
• Computes projections of N(R), Σ
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The Algorithm
• incremental
• first: compute conv.hull of d + 1 aff. indep. vertices of N(R)
• step: call the oracle with outer normal vector of a halfspace
→ either validate this halfspace
→ or add a new vertex to the convex hull
N(R)
Q
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The Algorithm
• incremental
• first: compute conv.hull of d + 1 aff. indep. vertices of N(R)
• step: call the oracle with outer normal vector of a halfspace
→ either validate this halfspace
→ or add a new vertex to the convex hull
Theorem
H-, V-repr. & triang. T of N(R) can be computed in
O(d5
ns2
) arithmetic operations + O(n + m) oracle calls
n, m, s are the number of vertices, facets of N(R), cells of T resp.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
The Algorithm
• incremental
• first: compute conv.hull of d + 1 aff. indep. vertices of N(R)
• step: call the oracle with outer normal vector of a halfspace
→ either validate this halfspace
→ or add a new vertex to the convex hull
Theorem
H-, V-repr. & triang. T of N(R) can be computed in
O(d5
ns2
) arithmetic operations + O(n + m) oracle calls
n, m, s are the number of vertices, facets of N(R), cells of T resp.
BUT: s can be O n d/2
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
ResPol package
• C++
• Towards high-dimensional
• Propose hashing of determinantal predicates scheme:
optimizing sequences of similar determinants (x100 speed-up)
• Computes 5-, 6- and 7-dimensional polytopes with 35K, 23K
and 500 vertices, respectively, within 2hrs
• Computes polytopes of many important surface equations
encountered in geometric modeling in < 1sec, whereas the
corresponding secondary polytopes are intractable
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• Emiris, F, Konaxis, Pe˜naranda An output-sensitive algorithm
for computing projections of resultant polytopes. Proc. of
28th ACM Annual Symposium on Computational Geometry,
2012, Chapel Hill, NC, USA.
• Emiris, F, Konaxis, Pe˜naranda An oracle-based, output
sensitive algorithm for projections of resultant polytopes.
International Journal of Computational Geometry and
Applications (Special issue) World Scientific.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Well-described polytopes and oracles
Definition
A 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 ϕ.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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}
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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 P and D,
• LP( A + b + c ) runtime of max cT x over {x : Ax ≤ b}.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Applications
Corollary
The edge skeleton of resultant, secondary polytopes 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.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• Emiris, F, G¨artner Efficient Volume and Edge-Skeleton
Computation for Polytopes Given by Oracles. Proc. of 29th
European Workshop on Computational Geometry,
Braunschweig, Germany 2013.
• Emiris, F, G¨artner Efficient edge skeleton computation for
polytopes defined by oracles. Submitted to Computational
Geometry - Theory and Applications.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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]
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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]
• 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]
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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]
• 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, Qhull, etc.) cannot compute in high
dimensions (e.g. > 20)
• Randomized ([CousinsVempala’14], [EmirisF’14]) compute in
high dimensions (e.g. 100)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
How do we compute a random point in a polytope P?
• easy for simple shapes like simplex or cube
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Random Directions Hit-and-Run (RDHR)
x
P
B
Input: point x ∈ P
Output: new point x ∈ 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.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Random Directions Hit-and-Run (RDHR)
x
P
Input: point x ∈ P
Output: new point x ∈ 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.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Random Directions Hit-and-Run (RDHR)
xP
Input: point x ∈ P
Output: new point x ∈ 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.
• 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
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
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)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Multiphase Monte Carlo (Generate/count 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)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Multiphase Monte Carlo (Generate/count 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)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Contributions
Some 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.
• implement boundary oracles with O(m) runtime in coordinate
(vs. random) directions hit-and-run
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Contributions
Some 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.
• implement boundary oracles with O(m) runtime in coordinate
(vs. random) directions hit-and-run
Highlights of experimental results
• approximate the volume of a series of polytopes (cubes,
random, cross, Birkhoff) for d < 100 in <2 hrs with mean
approximation error <1%
• 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
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• Emiris, F. Efficient random-walk methods for approximating
polytope volume. Proc. of 30th ACM Annual Symposium on
Computational Geometry, 2014, Kyoto, Japan.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Existing work
• [GKZ’90] Univariate case / general dimensional N(R)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Existing work
• [GKZ’90] Univariate case / general dimensional N(R)
• [Sturmfels’94] Multivariate case / up to 3 dimensional N(R)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
One step beyond... 4-dimensional N(R)
• Polytope P ⊆ R4; f-vector is the vector of its face cardinalities.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
One step beyond... 4-dimensional N(R)
• Polytope P ⊆ R4; f-vector is the vector of its face cardinalities.
• Call vertices, edges, ridges, facets, the 0,1,2,3-d, faces of P.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
One step beyond... 4-dimensional N(R)
• Polytope P ⊆ R4; f-vector is the vector of its face cardinalities.
• Call vertices, edges, ridges, facets, the 0,1,2,3-d, faces of P.
• f-vectors of 4-dimensional N(R) (computed with ResPol)
(5, 10, 10, 5)
(6, 15, 18, 9)
(8, 20, 21, 9)
(9, 22, 21, 8)
.
.
.
(17, 49, 48, 16)
(17, 49, 49, 17)
(17, 50, 50, 17)
(18, 51, 48, 15)
(18, 51, 49, 16)
(18, 52, 50, 16)
(18, 52, 51, 17)
(18, 53, 51, 16)
(18, 53, 53, 18)
(18, 54, 54, 18)
(19, 54, 52, 17)
(19, 55, 51, 15)
(19, 55, 52, 16)
(19, 55, 54, 18)
(19, 56, 54, 17)
(19, 56, 56, 19)
(19, 57, 57, 19)
(20, 58, 54, 16)
(20, 59, 57, 18)
(20, 60, 60, 20)
(21, 62, 60, 19)
(21, 63, 63, 21)
(22, 66, 66, 22)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
• Degenarations can only decrease the number of faces.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
(i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex
with f-vector (5, 10, 10, 5).
• Degenarations can only decrease the number of faces.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
(i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex
with f-vector (5, 10, 10, 5).
(ii) All |Ai| = 2, except for two with cardinalities 3 and 4, has
f-vector (10, 26, 25, 9).
• Degenarations can only decrease the number of faces.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
(i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex
with f-vector (5, 10, 10, 5).
(ii) All |Ai| = 2, except for two with cardinalities 3 and 4, has
f-vector (10, 26, 25, 9).
(iii) All |Ai| = 2, except for three with cardinality 3, maximal
number of ridges is ˜f2 = 66 and of facets ˜f3 = 22. Moreover,
22 ≤ ˜f0 ≤ 28, and 66 ≤ ˜f1 ≤ 72. The lower bounds are tight.
• Degenarations can only decrease the number of faces.
• Focus on new case (iii), which reduces to n = 2 and each
|Ai| = 3.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Main result
Theorem
Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R)
are degenerations of the polytopes in following cases.
(i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex
with f-vector (5, 10, 10, 5).
(ii) All |Ai| = 2, except for two with cardinalities 3 and 4, has
f-vector (10, 26, 25, 9).
(iii) All |Ai| = 2, except for three with cardinality 3, maximal
number of ridges is ˜f2 = 66 and of facets ˜f3 = 22. Moreover,
22 ≤ ˜f0 ≤ 28, and 66 ≤ ˜f1 ≤ 72. The lower bounds are tight.
• Degenarations can only decrease the number of faces.
• Focus on new case (iii), which reduces to n = 2 and each
|Ai| = 3.
• Generic upper bound for vertices yields 6608 [Sturmfels’94].
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Tool (1): N(R) faces and subdivisions
A subdivision S of A0 + A1 + · · · + An is mixed when its cells are
Minkowski sums of Ai’s subsets.
Example
A0
A1
A2 NOT fine mixed subdivision S of A0 + A1 + A2
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Tool (1): N(R) faces and subdivisions
A subdivision S of A0 + A1 + · · · + An is mixed when its cells are
Minkowski sums of Ai’s subsets.
Example
A0
A1
A2 NOT fine mixed subdivision S of A0 + A1 + A2
Proposition (Sturmfels’94)
A regular mixed subdivision S of A0 + A1 + · · · + An corresponds
to a face of N(R).
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Tool (2): Input genericity
Proposition
Input genericity maximizes the number of resultant polytope faces.
Proof idea
N(R∗
) f-vector: (18, 52, 50, 16)
N(R) f-vector: (14, 38, 36, 12)
p
p∗
A0 A1 A2
A0 A1 A2
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Facets of 4-d resultant polytopes
Lemma
A 4-dimensioanl N(R) have at most
• 9 resultant facets: 3-d N(R)
• 9 prism facets: 2-d N(R) (triangle) + 1-d N(R)
• 4 zonotope facets: Mink. sum of 1-d N(R)s
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• Dickenstein, Emiris, F. Combinatorics of 4-dimensional
Resultant Polytopes. Proc. of the 38th ACM Symposium on
Symbolic and Algebraic Computation, 2013, Boston, MA,
USA.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Outline
Introduction
An algorithm for computing projections of resultant polytopes
Edge-skeleton computation for polytopes defined by oracles
A practical volume algorithm for high dimensional polytopes
Combinatorics of 4-d resultant polytopes
High-dimensional predicates: algorithms and software
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Geometric algorithms and predicates
Setting
• geometric algorithms → sequence of geometric predicates
• Hi-dim: as dimension grows predicates become more expensive
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Geometric algorithms and predicates
Setting
• geometric algorithms → sequence of geometric predicates
• Hi-dim: as dimension grows predicates become more expensive
Examples
• Orientation: Does
c lie on, left or
right of ab?
ax ay 1
bx by 1
cx cy 1
0
a
b
c
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Determinant computation
Given matrix A ⊆ Rd×d
• Theory: State-of-the-art O(dω), ω ∼ 2.3727 [Williams’12]
• Practice: Gaussian elimination, O(d3)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Dynamic Determinant Computations
One-column update problem
Given matrix A ⊆ Rd×d, answer queries for det(A) when i-th
column of A, (A)i, is replaced by u ⊆ Rd.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Dynamic Determinant Computations
One-column update problem
Given matrix A ⊆ Rd×d, answer queries for det(A) when i-th
column of A, (A)i, is replaced by u ⊆ Rd.
Solution: Sherman-Morrison formula (1950)
A −1
= A−1
−
(A−1(u − (A)i)) (eT
i A−1)
1 + eT
i A−1(u − (A)i)
det(A ) = (1 + eT
i A−1
(u − (A)i)det(A)
• Only vector×vector, vector×matrix → Complexity: O(d2)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Incremental convex hull: REVISITED
p2 p5
p2 p4 p5
1 1 1
A =
p1
p3
p4
• Orientation(p2, p4, p5) = sgn(det(A))
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Incremental convex hull: REVISITED
p2 p5
p6 p4 p5
1 1 1
A =
p1
p3
p4
p6
• Orientation(p6, p4, p5) = sgn(det(A )) in O(d2)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Incremental convex hull: REVISITED
p2 p5
p6 p4 p5
1 1 1
A =
p1
p3
p4
p6
• Orientation(p6, p4, p5) = sgn(det(A )) in O(d2)
• Store det(A), A−1 in a hash table
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Incremental convex hull: REVISITED
p2 p5
p6 p4 p5
1 1 1
A =
p1
p3
p4
p6
• Orientation(p6, p4, p5) = sgn(det(A )) in O(d2)
• Store det(A), A−1 in a hash table
• Update det(A ), A −1 (Sherman-Morrison)
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Experiments
Determinants (1-column updates)
• 2 and 7 times faster than state-of-the-art software (Eigen,
Linbox, Maple) in rational and integer arithmetic resp.
Convex hull
• Plug into triangulation/CGAL improving performance
• Outperforms polymake, lrs, cdd in most cases with generic
input in d ≤ 7
Point location
• Improves up to 78 times in triangulation/CGAL, using up
to 50 times more memory, d ≤ 11
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
References
• F, Pe˜naranda. Faster Geometric Algorithms via Dynamic
Determinant Computation. Proc. of European Symposium on
Algorithms, LNCS, 2012, Ljubljana, Slovenia.
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Acknowledgements
Funding
Co-authors
Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates
Acknowledgements
Funding
Co-authors
THANK YOU !!!

More Related Content

What's hot

A Star Search
A Star SearchA Star Search
A Star Search
Computing Cage
 
Astar algorithm
Astar algorithmAstar algorithm
Astar algorithm
Shuqing Zhang
 
Approximation algorithms
Approximation algorithmsApproximation algorithms
Approximation algorithms
Ganesh Solanke
 
TMPA-2017: Generating Cost Aware Covering Arrays For Free
TMPA-2017: Generating Cost Aware Covering Arrays For Free TMPA-2017: Generating Cost Aware Covering Arrays For Free
TMPA-2017: Generating Cost Aware Covering Arrays For Free
Iosif Itkin
 
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
Vissarion Fisikopoulos
 
Sep logic slide
Sep logic slideSep logic slide
Sep logic slide
rainoftime
 
AI Lesson 05
AI Lesson 05AI Lesson 05
AI Lesson 05
Assistant Professor
 
AbdoSummerANS_mod3
AbdoSummerANS_mod3AbdoSummerANS_mod3
AbdoSummerANS_mod3
Mohammad Abdo
 
Heuristic search
Heuristic searchHeuristic search
Heuristic search
Soheil Khodayari
 
Cerutti -- TAFA2013
Cerutti -- TAFA2013Cerutti -- TAFA2013
Cerutti -- TAFA2013
Federico Cerutti
 
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
 
Modern C++ for Beginners
Modern C++ for BeginnersModern C++ for Beginners
Modern C++ for Beginners
Kangjun Heo
 
Lecture 14 Heuristic Search-A star algorithm
Lecture 14 Heuristic Search-A star algorithmLecture 14 Heuristic Search-A star algorithm
Lecture 14 Heuristic Search-A star algorithm
Hema Kashyap
 
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
Matt Parker
 
LR(0) parser in Compiler Consturction
LR(0) parser in Compiler ConsturctionLR(0) parser in Compiler Consturction
LR(0) parser in Compiler Consturction
Muhammad Haroon
 
Argumentation Extensions Enumeration as a Constraint Satisfaction Problem: a ...
Argumentation Extensions Enumeration as a Constraint Satisfaction Problem: a ...Argumentation Extensions Enumeration as a Constraint Satisfaction Problem: a ...
Argumentation Extensions Enumeration as a Constraint Satisfaction Problem: a ...
Federico Cerutti
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 8
Giáo trình Phân tích và thiết kế giải thuật - CHAP 8Giáo trình Phân tích và thiết kế giải thuật - CHAP 8
Giáo trình Phân tích và thiết kế giải thuật - CHAP 8
Nguyễn Công Hoàng
 
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
Federico Cerutti
 
SPU Optimizations-part 1
SPU Optimizations-part 1SPU Optimizations-part 1
SPU Optimizations-part 1
Naughty Dog
 
Practical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT MethodsPractical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT Methods
Naughty Dog
 

What's hot (20)

A Star Search
A Star SearchA Star Search
A Star Search
 
Astar algorithm
Astar algorithmAstar algorithm
Astar algorithm
 
Approximation algorithms
Approximation algorithmsApproximation algorithms
Approximation algorithms
 
TMPA-2017: Generating Cost Aware Covering Arrays For Free
TMPA-2017: Generating Cost Aware Covering Arrays For Free TMPA-2017: Generating Cost Aware Covering Arrays For Free
TMPA-2017: Generating Cost Aware Covering Arrays For Free
 
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
 
Sep logic slide
Sep logic slideSep logic slide
Sep logic slide
 
AI Lesson 05
AI Lesson 05AI Lesson 05
AI Lesson 05
 
AbdoSummerANS_mod3
AbdoSummerANS_mod3AbdoSummerANS_mod3
AbdoSummerANS_mod3
 
Heuristic search
Heuristic searchHeuristic search
Heuristic search
 
Cerutti -- TAFA2013
Cerutti -- TAFA2013Cerutti -- TAFA2013
Cerutti -- TAFA2013
 
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...
 
Modern C++ for Beginners
Modern C++ for BeginnersModern C++ for Beginners
Modern C++ for Beginners
 
Lecture 14 Heuristic Search-A star algorithm
Lecture 14 Heuristic Search-A star algorithmLecture 14 Heuristic Search-A star algorithm
Lecture 14 Heuristic Search-A star algorithm
 
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
 
LR(0) parser in Compiler Consturction
LR(0) parser in Compiler ConsturctionLR(0) parser in Compiler Consturction
LR(0) parser in Compiler Consturction
 
Argumentation Extensions Enumeration as a Constraint Satisfaction Problem: a ...
Argumentation Extensions Enumeration as a Constraint Satisfaction Problem: a ...Argumentation Extensions Enumeration as a Constraint Satisfaction Problem: a ...
Argumentation Extensions Enumeration as a Constraint Satisfaction Problem: a ...
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 8
Giáo trình Phân tích và thiết kế giải thuật - CHAP 8Giáo trình Phân tích và thiết kế giải thuật - CHAP 8
Giáo trình Phân tích và thiết kế giải thuật - CHAP 8
 
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
A SCC Recursive Meta-Algorithm for Computing Preferred Labellings in Abstract...
 
SPU Optimizations-part 1
SPU Optimizations-part 1SPU Optimizations-part 1
SPU Optimizations-part 1
 
Practical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT MethodsPractical Spherical Harmonics Based PRT Methods
Practical Spherical Harmonics Based PRT Methods
 

Similar to High-dimensional polytopes defined by oracles: algorithms, computations and applications

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)
Apostolos Chalkis
 
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
Vissarion Fisikopoulos
 
Chap12 slides
Chap12 slidesChap12 slides
Chap12 slides
BaliThorat1
 
Linear Size Meshes
Linear Size MeshesLinear Size Meshes
Linear Size Meshes
Don Sheehy
 
Maapr3
Maapr3Maapr3
Maapr3
FNian
 
Design and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture NotesDesign and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture Notes
Sreedhar Chowdam
 
My PhD defence
My PhD defenceMy PhD defence
My PhD defence
Jialin LIU
 
PS
PSPS
NIPS2007: learning using many examples
NIPS2007: learning using many examplesNIPS2007: learning using many examples
NIPS2007: learning using many examples
zukun
 
Pwl rewal-slideshare
Pwl rewal-slidesharePwl rewal-slideshare
Pwl rewal-slideshare
palvaro
 
Fp12_Efficient_SCM
Fp12_Efficient_SCMFp12_Efficient_SCM
Fp12_Efficient_SCM
Md. Al-Amin Khandaker Nipu
 
20110319 parameterized algorithms_fomin_lecture01-02
20110319 parameterized algorithms_fomin_lecture01-0220110319 parameterized algorithms_fomin_lecture01-02
20110319 parameterized algorithms_fomin_lecture01-02
Computer Science Club
 
Lecture5.pptx
Lecture5.pptxLecture5.pptx
Lecture5.pptx
ARVIND SARDAR
 
DeepLearn2022 1. Goals & AlgorithmDesign.pdf
DeepLearn2022 1. Goals & AlgorithmDesign.pdfDeepLearn2022 1. Goals & AlgorithmDesign.pdf
DeepLearn2022 1. Goals & AlgorithmDesign.pdf
Sean Meyn
 
Design and Analysis of Algorithms Exam Help
Design and Analysis of Algorithms Exam HelpDesign and Analysis of Algorithms Exam Help
Design and Analysis of Algorithms Exam Help
Programming Exam Help
 
LSH
LSHLSH
Elementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
Elementary Landscape Decomposition of the Hamiltonian Path Optimization ProblemElementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
Elementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
jfrchicanog
 
04 greedyalgorithmsii 2x2
04 greedyalgorithmsii 2x204 greedyalgorithmsii 2x2
04 greedyalgorithmsii 2x2
MuradAmn
 
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
 
On clusteredsteinertree slide-ver 1.1
On clusteredsteinertree slide-ver 1.1On clusteredsteinertree slide-ver 1.1
On clusteredsteinertree slide-ver 1.1
VitAnhNguyn94
 

Similar to High-dimensional polytopes defined by oracles: algorithms, computations and applications (20)

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
 
Chap12 slides
Chap12 slidesChap12 slides
Chap12 slides
 
Linear Size Meshes
Linear Size MeshesLinear Size Meshes
Linear Size Meshes
 
Maapr3
Maapr3Maapr3
Maapr3
 
Design and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture NotesDesign and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture Notes
 
My PhD defence
My PhD defenceMy PhD defence
My PhD defence
 
PS
PSPS
PS
 
NIPS2007: learning using many examples
NIPS2007: learning using many examplesNIPS2007: learning using many examples
NIPS2007: learning using many examples
 
Pwl rewal-slideshare
Pwl rewal-slidesharePwl rewal-slideshare
Pwl rewal-slideshare
 
Fp12_Efficient_SCM
Fp12_Efficient_SCMFp12_Efficient_SCM
Fp12_Efficient_SCM
 
20110319 parameterized algorithms_fomin_lecture01-02
20110319 parameterized algorithms_fomin_lecture01-0220110319 parameterized algorithms_fomin_lecture01-02
20110319 parameterized algorithms_fomin_lecture01-02
 
Lecture5.pptx
Lecture5.pptxLecture5.pptx
Lecture5.pptx
 
DeepLearn2022 1. Goals & AlgorithmDesign.pdf
DeepLearn2022 1. Goals & AlgorithmDesign.pdfDeepLearn2022 1. Goals & AlgorithmDesign.pdf
DeepLearn2022 1. Goals & AlgorithmDesign.pdf
 
Design and Analysis of Algorithms Exam Help
Design and Analysis of Algorithms Exam HelpDesign and Analysis of Algorithms Exam Help
Design and Analysis of Algorithms Exam Help
 
LSH
LSHLSH
LSH
 
Elementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
Elementary Landscape Decomposition of the Hamiltonian Path Optimization ProblemElementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
Elementary Landscape Decomposition of the Hamiltonian Path Optimization Problem
 
04 greedyalgorithmsii 2x2
04 greedyalgorithmsii 2x204 greedyalgorithmsii 2x2
04 greedyalgorithmsii 2x2
 
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.
 
On clusteredsteinertree slide-ver 1.1
On clusteredsteinertree slide-ver 1.1On clusteredsteinertree slide-ver 1.1
On clusteredsteinertree slide-ver 1.1
 

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 Geometry
Vissarion Fisikopoulos
 
High-dimensional sampling and volume computation
High-dimensional sampling and volume computationHigh-dimensional sampling and volume computation
High-dimensional sampling and volume computation
Vissarion Fisikopoulos
 
Conctructing Polytopes via a Vertex Oracle
Conctructing Polytopes via a Vertex OracleConctructing Polytopes via a Vertex Oracle
Conctructing Polytopes via a Vertex Oracle
Vissarion Fisikopoulos
 
Enumeration of 2-level polytopes
Enumeration of 2-level polytopesEnumeration of 2-level polytopes
Enumeration of 2-level polytopes
Vissarion 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 resultant
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 bodies
Vissarion Fisikopoulos
 
Geodesic algorithms: an experimental study
Geodesic algorithms: an experimental studyGeodesic algorithms: an experimental study
Geodesic algorithms: an experimental study
Vissarion 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 Computation
Vissarion Fisikopoulos
 
An algorithm for computing resultant polytopes
An algorithm for computing resultant polytopesAn algorithm for computing resultant polytopes
An algorithm for computing resultant polytopes
Vissarion Fisikopoulos
 
Combinatorics of 4-dimensional Resultant Polytopes
Combinatorics of 4-dimensional Resultant PolytopesCombinatorics of 4-dimensional Resultant Polytopes
Combinatorics of 4-dimensional Resultant Polytopes
Vissarion Fisikopoulos
 

More from Vissarion Fisikopoulos (17)

"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
 
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
 
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

The cost of acquiring information by natural selection
The cost of acquiring information by natural selectionThe cost of acquiring information by natural selection
The cost of acquiring information by natural selection
Carl Bergstrom
 
Eukaryotic Transcription Presentation.pptx
Eukaryotic Transcription Presentation.pptxEukaryotic Transcription Presentation.pptx
Eukaryotic Transcription Presentation.pptx
RitabrataSarkar3
 
Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...
Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...
Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...
AbdullaAlAsif1
 
Thornton ESPP slides UK WW Network 4_6_24.pdf
Thornton ESPP slides UK WW Network 4_6_24.pdfThornton ESPP slides UK WW Network 4_6_24.pdf
Thornton ESPP slides UK WW Network 4_6_24.pdf
European Sustainable Phosphorus Platform
 
Shallowest Oil Discovery of Turkiye.pptx
Shallowest Oil Discovery of Turkiye.pptxShallowest Oil Discovery of Turkiye.pptx
Shallowest Oil Discovery of Turkiye.pptx
Gokturk Mehmet Dilci
 
THEMATIC APPERCEPTION TEST(TAT) cognitive abilities, creativity, and critic...
THEMATIC  APPERCEPTION  TEST(TAT) cognitive abilities, creativity, and critic...THEMATIC  APPERCEPTION  TEST(TAT) cognitive abilities, creativity, and critic...
THEMATIC APPERCEPTION TEST(TAT) cognitive abilities, creativity, and critic...
Abdul Wali Khan University Mardan,kP,Pakistan
 
GBSN - Biochemistry (Unit 6) Chemistry of Proteins
GBSN - Biochemistry (Unit 6) Chemistry of ProteinsGBSN - Biochemistry (Unit 6) Chemistry of Proteins
GBSN - Biochemistry (Unit 6) Chemistry of Proteins
Areesha Ahmad
 
8.Isolation of pure cultures and preservation of cultures.pdf
8.Isolation of pure cultures and preservation of cultures.pdf8.Isolation of pure cultures and preservation of cultures.pdf
8.Isolation of pure cultures and preservation of cultures.pdf
by6843629
 
20240520 Planning a Circuit Simulator in JavaScript.pptx
20240520 Planning a Circuit Simulator in JavaScript.pptx20240520 Planning a Circuit Simulator in JavaScript.pptx
20240520 Planning a Circuit Simulator in JavaScript.pptx
Sharon Liu
 
waterlessdyeingtechnolgyusing carbon dioxide chemicalspdf
waterlessdyeingtechnolgyusing carbon dioxide chemicalspdfwaterlessdyeingtechnolgyusing carbon dioxide chemicalspdf
waterlessdyeingtechnolgyusing carbon dioxide chemicalspdf
LengamoLAppostilic
 
NuGOweek 2024 Ghent programme overview flyer
NuGOweek 2024 Ghent programme overview flyerNuGOweek 2024 Ghent programme overview flyer
NuGOweek 2024 Ghent programme overview flyer
pablovgd
 
The use of Nauplii and metanauplii artemia in aquaculture (brine shrimp).pptx
The use of Nauplii and metanauplii artemia in aquaculture (brine shrimp).pptxThe use of Nauplii and metanauplii artemia in aquaculture (brine shrimp).pptx
The use of Nauplii and metanauplii artemia in aquaculture (brine shrimp).pptx
MAGOTI ERNEST
 
Authoring a personal GPT for your research and practice: How we created the Q...
Authoring a personal GPT for your research and practice: How we created the Q...Authoring a personal GPT for your research and practice: How we created the Q...
Authoring a personal GPT for your research and practice: How we created the Q...
Leonel Morgado
 
Topic: SICKLE CELL DISEASE IN CHILDREN-3.pdf
Topic: SICKLE CELL DISEASE IN CHILDREN-3.pdfTopic: SICKLE CELL DISEASE IN CHILDREN-3.pdf
Topic: SICKLE CELL DISEASE IN CHILDREN-3.pdf
TinyAnderson
 
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
hozt8xgk
 
Compexometric titration/Chelatorphy titration/chelating titration
Compexometric titration/Chelatorphy titration/chelating titrationCompexometric titration/Chelatorphy titration/chelating titration
Compexometric titration/Chelatorphy titration/chelating titration
Vandana Devesh Sharma
 
Bob Reedy - Nitrate in Texas Groundwater.pdf
Bob Reedy - Nitrate in Texas Groundwater.pdfBob Reedy - Nitrate in Texas Groundwater.pdf
Bob Reedy - Nitrate in Texas Groundwater.pdf
Texas Alliance of Groundwater Districts
 
The debris of the ‘last major merger’ is dynamically young
The debris of the ‘last major merger’ is dynamically youngThe debris of the ‘last major merger’ is dynamically young
The debris of the ‘last major merger’ is dynamically young
Sérgio Sacani
 
Oedema_types_causes_pathophysiology.pptx
Oedema_types_causes_pathophysiology.pptxOedema_types_causes_pathophysiology.pptx
Oedema_types_causes_pathophysiology.pptx
muralinath2
 
Micronuclei test.M.sc.zoology.fisheries.
Micronuclei test.M.sc.zoology.fisheries.Micronuclei test.M.sc.zoology.fisheries.
Micronuclei test.M.sc.zoology.fisheries.
Aditi Bajpai
 

Recently uploaded (20)

The cost of acquiring information by natural selection
The cost of acquiring information by natural selectionThe cost of acquiring information by natural selection
The cost of acquiring information by natural selection
 
Eukaryotic Transcription Presentation.pptx
Eukaryotic Transcription Presentation.pptxEukaryotic Transcription Presentation.pptx
Eukaryotic Transcription Presentation.pptx
 
Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...
Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...
Unlocking the mysteries of reproduction: Exploring fecundity and gonadosomati...
 
Thornton ESPP slides UK WW Network 4_6_24.pdf
Thornton ESPP slides UK WW Network 4_6_24.pdfThornton ESPP slides UK WW Network 4_6_24.pdf
Thornton ESPP slides UK WW Network 4_6_24.pdf
 
Shallowest Oil Discovery of Turkiye.pptx
Shallowest Oil Discovery of Turkiye.pptxShallowest Oil Discovery of Turkiye.pptx
Shallowest Oil Discovery of Turkiye.pptx
 
THEMATIC APPERCEPTION TEST(TAT) cognitive abilities, creativity, and critic...
THEMATIC  APPERCEPTION  TEST(TAT) cognitive abilities, creativity, and critic...THEMATIC  APPERCEPTION  TEST(TAT) cognitive abilities, creativity, and critic...
THEMATIC APPERCEPTION TEST(TAT) cognitive abilities, creativity, and critic...
 
GBSN - Biochemistry (Unit 6) Chemistry of Proteins
GBSN - Biochemistry (Unit 6) Chemistry of ProteinsGBSN - Biochemistry (Unit 6) Chemistry of Proteins
GBSN - Biochemistry (Unit 6) Chemistry of Proteins
 
8.Isolation of pure cultures and preservation of cultures.pdf
8.Isolation of pure cultures and preservation of cultures.pdf8.Isolation of pure cultures and preservation of cultures.pdf
8.Isolation of pure cultures and preservation of cultures.pdf
 
20240520 Planning a Circuit Simulator in JavaScript.pptx
20240520 Planning a Circuit Simulator in JavaScript.pptx20240520 Planning a Circuit Simulator in JavaScript.pptx
20240520 Planning a Circuit Simulator in JavaScript.pptx
 
waterlessdyeingtechnolgyusing carbon dioxide chemicalspdf
waterlessdyeingtechnolgyusing carbon dioxide chemicalspdfwaterlessdyeingtechnolgyusing carbon dioxide chemicalspdf
waterlessdyeingtechnolgyusing carbon dioxide chemicalspdf
 
NuGOweek 2024 Ghent programme overview flyer
NuGOweek 2024 Ghent programme overview flyerNuGOweek 2024 Ghent programme overview flyer
NuGOweek 2024 Ghent programme overview flyer
 
The use of Nauplii and metanauplii artemia in aquaculture (brine shrimp).pptx
The use of Nauplii and metanauplii artemia in aquaculture (brine shrimp).pptxThe use of Nauplii and metanauplii artemia in aquaculture (brine shrimp).pptx
The use of Nauplii and metanauplii artemia in aquaculture (brine shrimp).pptx
 
Authoring a personal GPT for your research and practice: How we created the Q...
Authoring a personal GPT for your research and practice: How we created the Q...Authoring a personal GPT for your research and practice: How we created the Q...
Authoring a personal GPT for your research and practice: How we created the Q...
 
Topic: SICKLE CELL DISEASE IN CHILDREN-3.pdf
Topic: SICKLE CELL DISEASE IN CHILDREN-3.pdfTopic: SICKLE CELL DISEASE IN CHILDREN-3.pdf
Topic: SICKLE CELL DISEASE IN CHILDREN-3.pdf
 
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
快速办理(UAM毕业证书)马德里自治大学毕业证学位证一模一样
 
Compexometric titration/Chelatorphy titration/chelating titration
Compexometric titration/Chelatorphy titration/chelating titrationCompexometric titration/Chelatorphy titration/chelating titration
Compexometric titration/Chelatorphy titration/chelating titration
 
Bob Reedy - Nitrate in Texas Groundwater.pdf
Bob Reedy - Nitrate in Texas Groundwater.pdfBob Reedy - Nitrate in Texas Groundwater.pdf
Bob Reedy - Nitrate in Texas Groundwater.pdf
 
The debris of the ‘last major merger’ is dynamically young
The debris of the ‘last major merger’ is dynamically youngThe debris of the ‘last major merger’ is dynamically young
The debris of the ‘last major merger’ is dynamically young
 
Oedema_types_causes_pathophysiology.pptx
Oedema_types_causes_pathophysiology.pptxOedema_types_causes_pathophysiology.pptx
Oedema_types_causes_pathophysiology.pptx
 
Micronuclei test.M.sc.zoology.fisheries.
Micronuclei test.M.sc.zoology.fisheries.Micronuclei test.M.sc.zoology.fisheries.
Micronuclei test.M.sc.zoology.fisheries.
 

High-dimensional polytopes defined by oracles: algorithms, computations and applications

  • 1. High-dimensional polytopes defined by oracles: algorithms, computations and applications Vissarion Fisikopoulos Dept. of Informatics & Telecommunications, University of Athens PhD defence, Athens, 24.Apr.2014
  • 2. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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.
  • 3. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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.
  • 4. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates What is an Oracle?
  • 5. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Why polytope Oracles? • Polynomial time algorithms for combinatorial optimization problems using the ellipsoid method [Gr¨otschel-Lov´asz-Schrijver’93] • Randomized polynomial-time algorithms for approximating the volume of convex bodies [Dyer-Frieze-Kannan ’90],. . . ,[Lov´asz-Vempala ’04]
  • 7. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Our view of the Oracles Resultant, Discriminant, Secondary polytopes • Vertices → subdivisions of a pointset’s convex hull • OPTP is available via a subdivision computation • Applications in Computational Algebraic Geometry, Geometric Modelling, Optimization, Combinatorics
  • 8. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Outline Introduction An algorithm for computing projections of resultant polytopes Edge-skeleton computation for polytopes defined by oracles A practical volume algorithm for high dimensional polytopes Combinatorics of 4-d resultant polytopes High-dimensional predicates: algorithms and software
  • 9. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Outline Introduction An algorithm for computing projections of resultant polytopes Edge-skeleton computation for polytopes defined by oracles A practical volume algorithm for high dimensional polytopes Combinatorics of 4-d resultant polytopes High-dimensional predicates: algorithms and software
  • 10. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Main actor: resultant polytope • Geometry: Minkowski summands of secondary polytopes, generalize Birkhoff polytopes • Algebra: resultant expresses the solvability of polynomial systems • Applications: resultant computation, implicitization of parametric hypersurfaces [Emiris, Kalinka, Konaxis, LuuBa ’12] Enneper’s Minimal Surface
  • 11. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Polytopes and Algebra • Given n + 1 polynomials on n variables. f0(x) = ax2 + b f1(x) = cx2 + dx + e
  • 12. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Polytopes and Algebra • Given n + 1 polynomials on n variables. • Supports (set of exponents of monomials with non-zero coefficient) A0, A1, . . . , An ⊂ Zn. A0 A1 f0(x) = ax2 + b f1(x) = cx2 + dx + e
  • 13. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Polytopes and Algebra • Given n + 1 polynomials on n variables. • Supports (set of exponents of monomials with non-zero coefficient) A0, A1, . . . , An ⊂ Zn. • The resultant R is the polynomial in the coefficients of a system of polynomials which vanishes if there exists a common root in the torus of the given polynomials. A0 A1 R(a, b, c, d, e) = ad2 b + c2 b2 − 2caeb + a2 e2 f0(x) = ax2 + b f1(x) = cx2 + dx + e
  • 14. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Polytopes and Algebra • Given n + 1 polynomials on n variables. • Supports (set of exponents of monomials with non-zero coefficient) A0, A1, . . . , An ⊂ Zn. • The resultant R is the polynomial in the coefficients of a system of polynomials which vanishes if there exists a common root in the torus of the given polynomials. • The resultant polytope N(R), is the convex hull of the support of R, i.e. the Newton polytope of the resultant. A0 A1 N(R)R(a, b, c, d, e) = ad2 b + c2 b2 − 2caeb + a2 e2 f0(x) = ax2 + b f1(x) = cx2 + dx + e
  • 15. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Mixed subdivisions A subdivision S of Minkowski sum A0 + A1 + · · · + An is • mixed: cells are Minkowski sums of subsets of Ai’s, • fine: for each cell σ = σ0 + · · · + σn, dim(σ) = n i=0 dim(σi) Example A0 A1 A2 fine mixed subdivision S of A0 + A1 + A2
  • 16. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Resultant polytope vertices Theorem [GKZ’94, Sturmfels’94] • many-to-one relation from regular fine mixed subdivisions of A0 + · · · + An to N(R) vertices • one-to-one relation between regular fine mixed subdivisions and secondary polytope Σ vertices
  • 17. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates The idea of the algorithm Input: A0, A1, . . . , An ⊂ Zn Simplistic method: • compute the vertices of secondary polytope Σ [Rambau ’02] • many-to-one relation between vertices of Σ and N(R)
  • 18. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates The idea of the algorithm Input: A0, A1, . . . , An ⊂ Zn New Algorithm: • Optimization oracle for N(R) by subdivision computation • Output sensitive: 1 subd. per N(R) vertex + 1 per N(R) facet • Computes projections of N(R), Σ
  • 19. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates The Algorithm • incremental • first: compute conv.hull of d + 1 aff. indep. vertices of N(R) • step: call the oracle with outer normal vector of a halfspace → either validate this halfspace → or add a new vertex to the convex hull N(R) Q
  • 20. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates The Algorithm • incremental • first: compute conv.hull of d + 1 aff. indep. vertices of N(R) • step: call the oracle with outer normal vector of a halfspace → either validate this halfspace → or add a new vertex to the convex hull Theorem H-, V-repr. & triang. T of N(R) can be computed in O(d5 ns2 ) arithmetic operations + O(n + m) oracle calls n, m, s are the number of vertices, facets of N(R), cells of T resp.
  • 21. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates The Algorithm • incremental • first: compute conv.hull of d + 1 aff. indep. vertices of N(R) • step: call the oracle with outer normal vector of a halfspace → either validate this halfspace → or add a new vertex to the convex hull Theorem H-, V-repr. & triang. T of N(R) can be computed in O(d5 ns2 ) arithmetic operations + O(n + m) oracle calls n, m, s are the number of vertices, facets of N(R), cells of T resp. BUT: s can be O n d/2
  • 22. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates ResPol package • C++ • Towards high-dimensional • Propose hashing of determinantal predicates scheme: optimizing sequences of similar determinants (x100 speed-up) • Computes 5-, 6- and 7-dimensional polytopes with 35K, 23K and 500 vertices, respectively, within 2hrs • Computes polytopes of many important surface equations encountered in geometric modeling in < 1sec, whereas the corresponding secondary polytopes are intractable
  • 23. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates References • Emiris, F, Konaxis, Pe˜naranda An output-sensitive algorithm for computing projections of resultant polytopes. Proc. of 28th ACM Annual Symposium on Computational Geometry, 2012, Chapel Hill, NC, USA. • Emiris, F, Konaxis, Pe˜naranda An oracle-based, output sensitive algorithm for projections of resultant polytopes. International Journal of Computational Geometry and Applications (Special issue) World Scientific.
  • 24. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Outline Introduction An algorithm for computing projections of resultant polytopes Edge-skeleton computation for polytopes defined by oracles A practical volume algorithm for high dimensional polytopes Combinatorics of 4-d resultant polytopes High-dimensional predicates: algorithms and software
  • 25. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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.
  • 26. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Well-described polytopes and oracles Definition A 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 ϕ.
  • 27. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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)
  • 28. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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}
  • 29. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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)
  • 30. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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
  • 31. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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
  • 32. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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 P and D, • LP( A + b + c ) runtime of max cT x over {x : Ax ≤ b}.
  • 33. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Applications Corollary The edge skeleton of resultant, secondary polytopes 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.
  • 34. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates References • Emiris, F, G¨artner Efficient Volume and Edge-Skeleton Computation for Polytopes Given by Oracles. Proc. of 29th European Workshop on Computational Geometry, Braunschweig, Germany 2013. • Emiris, F, G¨artner Efficient edge skeleton computation for polytopes defined by oracles. Submitted to Computational Geometry - Theory and Applications.
  • 35. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Outline Introduction An algorithm for computing projections of resultant polytopes Edge-skeleton computation for polytopes defined by oracles A practical volume algorithm for high dimensional polytopes Combinatorics of 4-d resultant polytopes High-dimensional predicates: algorithms and software
  • 36. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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]
  • 37. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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] • 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]
  • 38. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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] • 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, Qhull, etc.) cannot compute in high dimensions (e.g. > 20) • Randomized ([CousinsVempala’14], [EmirisF’14]) compute in high dimensions (e.g. 100)
  • 39. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates How do we compute a random point in a polytope P? • easy for simple shapes like simplex or cube
  • 40. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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
  • 41. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Random Directions Hit-and-Run (RDHR) x P B Input: point x ∈ P Output: new point x ∈ 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.
  • 42. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Random Directions Hit-and-Run (RDHR) x P Input: point x ∈ P Output: new point x ∈ 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.
  • 43. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Random Directions Hit-and-Run (RDHR) xP Input: point x ∈ P Output: new point x ∈ 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. • 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
  • 44. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates 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)
  • 45. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Multiphase Monte Carlo (Generate/count 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)
  • 46. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Multiphase Monte Carlo (Generate/count 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)
  • 47. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Contributions Some 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. • implement boundary oracles with O(m) runtime in coordinate (vs. random) directions hit-and-run
  • 48. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Contributions Some 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. • implement boundary oracles with O(m) runtime in coordinate (vs. random) directions hit-and-run Highlights of experimental results • approximate the volume of a series of polytopes (cubes, random, cross, Birkhoff) for d < 100 in <2 hrs with mean approximation error <1% • 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
  • 49. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates References • Emiris, F. Efficient random-walk methods for approximating polytope volume. Proc. of 30th ACM Annual Symposium on Computational Geometry, 2014, Kyoto, Japan.
  • 50. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Outline Introduction An algorithm for computing projections of resultant polytopes Edge-skeleton computation for polytopes defined by oracles A practical volume algorithm for high dimensional polytopes Combinatorics of 4-d resultant polytopes High-dimensional predicates: algorithms and software
  • 51. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Existing work • [GKZ’90] Univariate case / general dimensional N(R)
  • 52. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Existing work • [GKZ’90] Univariate case / general dimensional N(R) • [Sturmfels’94] Multivariate case / up to 3 dimensional N(R)
  • 53. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates One step beyond... 4-dimensional N(R) • Polytope P ⊆ R4; f-vector is the vector of its face cardinalities.
  • 54. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates One step beyond... 4-dimensional N(R) • Polytope P ⊆ R4; f-vector is the vector of its face cardinalities. • Call vertices, edges, ridges, facets, the 0,1,2,3-d, faces of P.
  • 55. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates One step beyond... 4-dimensional N(R) • Polytope P ⊆ R4; f-vector is the vector of its face cardinalities. • Call vertices, edges, ridges, facets, the 0,1,2,3-d, faces of P. • f-vectors of 4-dimensional N(R) (computed with ResPol) (5, 10, 10, 5) (6, 15, 18, 9) (8, 20, 21, 9) (9, 22, 21, 8) . . . (17, 49, 48, 16) (17, 49, 49, 17) (17, 50, 50, 17) (18, 51, 48, 15) (18, 51, 49, 16) (18, 52, 50, 16) (18, 52, 51, 17) (18, 53, 51, 16) (18, 53, 53, 18) (18, 54, 54, 18) (19, 54, 52, 17) (19, 55, 51, 15) (19, 55, 52, 16) (19, 55, 54, 18) (19, 56, 54, 17) (19, 56, 56, 19) (19, 57, 57, 19) (20, 58, 54, 16) (20, 59, 57, 18) (20, 60, 60, 20) (21, 62, 60, 19) (21, 63, 63, 21) (22, 66, 66, 22)
  • 56. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Main result Theorem Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R) are degenerations of the polytopes in following cases. • Degenarations can only decrease the number of faces.
  • 57. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Main result Theorem Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R) are degenerations of the polytopes in following cases. (i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex with f-vector (5, 10, 10, 5). • Degenarations can only decrease the number of faces.
  • 58. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Main result Theorem Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R) are degenerations of the polytopes in following cases. (i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex with f-vector (5, 10, 10, 5). (ii) All |Ai| = 2, except for two with cardinalities 3 and 4, has f-vector (10, 26, 25, 9). • Degenarations can only decrease the number of faces.
  • 59. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Main result Theorem Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R) are degenerations of the polytopes in following cases. (i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex with f-vector (5, 10, 10, 5). (ii) All |Ai| = 2, except for two with cardinalities 3 and 4, has f-vector (10, 26, 25, 9). (iii) All |Ai| = 2, except for three with cardinality 3, maximal number of ridges is ˜f2 = 66 and of facets ˜f3 = 22. Moreover, 22 ≤ ˜f0 ≤ 28, and 66 ≤ ˜f1 ≤ 72. The lower bounds are tight. • Degenarations can only decrease the number of faces. • Focus on new case (iii), which reduces to n = 2 and each |Ai| = 3.
  • 60. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Main result Theorem Given A0, A1, . . . , An ⊂ Zn with N(R) of dimension 4. Then N(R) are degenerations of the polytopes in following cases. (i) All |Ai| = 2, except for one with cardinality 5, is a 4-simplex with f-vector (5, 10, 10, 5). (ii) All |Ai| = 2, except for two with cardinalities 3 and 4, has f-vector (10, 26, 25, 9). (iii) All |Ai| = 2, except for three with cardinality 3, maximal number of ridges is ˜f2 = 66 and of facets ˜f3 = 22. Moreover, 22 ≤ ˜f0 ≤ 28, and 66 ≤ ˜f1 ≤ 72. The lower bounds are tight. • Degenarations can only decrease the number of faces. • Focus on new case (iii), which reduces to n = 2 and each |Ai| = 3. • Generic upper bound for vertices yields 6608 [Sturmfels’94].
  • 61. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Tool (1): N(R) faces and subdivisions A subdivision S of A0 + A1 + · · · + An is mixed when its cells are Minkowski sums of Ai’s subsets. Example A0 A1 A2 NOT fine mixed subdivision S of A0 + A1 + A2
  • 62. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Tool (1): N(R) faces and subdivisions A subdivision S of A0 + A1 + · · · + An is mixed when its cells are Minkowski sums of Ai’s subsets. Example A0 A1 A2 NOT fine mixed subdivision S of A0 + A1 + A2 Proposition (Sturmfels’94) A regular mixed subdivision S of A0 + A1 + · · · + An corresponds to a face of N(R).
  • 63. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Tool (2): Input genericity Proposition Input genericity maximizes the number of resultant polytope faces. Proof idea N(R∗ ) f-vector: (18, 52, 50, 16) N(R) f-vector: (14, 38, 36, 12) p p∗ A0 A1 A2 A0 A1 A2
  • 64. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Facets of 4-d resultant polytopes Lemma A 4-dimensioanl N(R) have at most • 9 resultant facets: 3-d N(R) • 9 prism facets: 2-d N(R) (triangle) + 1-d N(R) • 4 zonotope facets: Mink. sum of 1-d N(R)s
  • 65. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates References • Dickenstein, Emiris, F. Combinatorics of 4-dimensional Resultant Polytopes. Proc. of the 38th ACM Symposium on Symbolic and Algebraic Computation, 2013, Boston, MA, USA.
  • 66. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Outline Introduction An algorithm for computing projections of resultant polytopes Edge-skeleton computation for polytopes defined by oracles A practical volume algorithm for high dimensional polytopes Combinatorics of 4-d resultant polytopes High-dimensional predicates: algorithms and software
  • 67. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Geometric algorithms and predicates Setting • geometric algorithms → sequence of geometric predicates • Hi-dim: as dimension grows predicates become more expensive
  • 68. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Geometric algorithms and predicates Setting • geometric algorithms → sequence of geometric predicates • Hi-dim: as dimension grows predicates become more expensive Examples • Orientation: Does c lie on, left or right of ab? ax ay 1 bx by 1 cx cy 1 0 a b c
  • 69. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Determinant computation Given matrix A ⊆ Rd×d • Theory: State-of-the-art O(dω), ω ∼ 2.3727 [Williams’12] • Practice: Gaussian elimination, O(d3)
  • 70. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Dynamic Determinant Computations One-column update problem Given matrix A ⊆ Rd×d, answer queries for det(A) when i-th column of A, (A)i, is replaced by u ⊆ Rd.
  • 71. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Dynamic Determinant Computations One-column update problem Given matrix A ⊆ Rd×d, answer queries for det(A) when i-th column of A, (A)i, is replaced by u ⊆ Rd. Solution: Sherman-Morrison formula (1950) A −1 = A−1 − (A−1(u − (A)i)) (eT i A−1) 1 + eT i A−1(u − (A)i) det(A ) = (1 + eT i A−1 (u − (A)i)det(A) • Only vector×vector, vector×matrix → Complexity: O(d2)
  • 72. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Incremental convex hull: REVISITED p2 p5 p2 p4 p5 1 1 1 A = p1 p3 p4 • Orientation(p2, p4, p5) = sgn(det(A))
  • 73. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Incremental convex hull: REVISITED p2 p5 p6 p4 p5 1 1 1 A = p1 p3 p4 p6 • Orientation(p6, p4, p5) = sgn(det(A )) in O(d2)
  • 74. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Incremental convex hull: REVISITED p2 p5 p6 p4 p5 1 1 1 A = p1 p3 p4 p6 • Orientation(p6, p4, p5) = sgn(det(A )) in O(d2) • Store det(A), A−1 in a hash table
  • 75. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Incremental convex hull: REVISITED p2 p5 p6 p4 p5 1 1 1 A = p1 p3 p4 p6 • Orientation(p6, p4, p5) = sgn(det(A )) in O(d2) • Store det(A), A−1 in a hash table • Update det(A ), A −1 (Sherman-Morrison)
  • 76. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Experiments Determinants (1-column updates) • 2 and 7 times faster than state-of-the-art software (Eigen, Linbox, Maple) in rational and integer arithmetic resp. Convex hull • Plug into triangulation/CGAL improving performance • Outperforms polymake, lrs, cdd in most cases with generic input in d ≤ 7 Point location • Improves up to 78 times in triangulation/CGAL, using up to 50 times more memory, d ≤ 11
  • 77. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates References • F, Pe˜naranda. Faster Geometric Algorithms via Dynamic Determinant Computation. Proc. of European Symposium on Algorithms, LNCS, 2012, Ljubljana, Slovenia.
  • 78. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Acknowledgements Funding Co-authors
  • 79. Introduction Algorithm for resultant polytopes Edge-skeleton Volume 4-d resultant polytopes Predicates Acknowledgements Funding Co-authors THANK YOU !!!