Faster Geometric Algorithms via Dynamic Determinant Computation

Abstract The computation of determinants or their signs is the core procedure in many important geometric algorithms, such as convex hull, volume and point location. As the dimension of the computation space grows, a higher percentage of the total computation time is consumed by these computations. In this paper we study the sequences of determinants that appear in geometric algorithms. The computation of a single determinant is accelerated by using the information from the previous computations in that sequence. We propose two dynamic determinant algorithms with quadratic arithmetic complexity when employed in convex hull and volume computations, and with linear arithmetic complexity when used in point location problems. We implement the proposed algorithms and perform an extensive experimental analysis. On one hand, our analysis serves as a performance study of state-of-the-art determinant algorithms and implementations. On the other hand, we demonstrate the supremacy of our methods over state-of-the-art implementations of determinant and geometric algorithms. Our experimental results include a 20 and 78 times speed-up in volume and point location computations in dimension 6 and 11 respectively.

[1]  Donald R. Chand,et al.  An Algorithm for Convex Polytopes , 1970, JACM.

[2]  E. Kaltofen,et al.  Computing the sign or the value of the determinant of an integer matrix, a complexity survey , 2004 .

[3]  Ioannis Z. Emiris,et al.  Implicitization of curves and (hyper)surfaces using predicted support , 2013, Theor. Comput. Sci..

[4]  Marina Weber,et al.  Using Algebraic Geometry , 2016 .

[5]  E. Bareiss Sylvester’s identity and multistep integer-preserving Gaussian elimination , 1968 .

[6]  Victor Y. Pan,et al.  Sign Determination in Residue Number Systems , 1999, Theor. Comput. Sci..

[7]  Costas S. Iliopoulos,et al.  Worst-Case Complexity Bounds on Algorithms for Computing the Canonical Structure of Finite Abelian Groups and the Hermite and Smith Normal Forms of an Integer Matrix , 1989, SIAM J. Comput..

[8]  B. S. Robinson Number 9 , November 2005 Toward an Optimal Algorithm for Matrix Multiplication , 2005 .

[9]  Anna Urbanska,et al.  Faster Combinatorial Algorithms for Determinant and Pfaffian , 2008, Algorithmica.

[10]  François Le Gall,et al.  Powers of tensors and fast matrix multiplication , 2014, ISSAC.

[11]  David Poole,et al.  Linear Algebra: A Modern Introduction , 2002 .

[12]  Jean-Guillaume Dumas,et al.  An Introspective Algorithm for the Integer Determinant , 2022 .

[13]  Günter Rote,et al.  Division-Free Algorithms for the Determinant and the Pfaffian: Algebraic and Combinatorial Approaches , 2001, Computational Discrete Mathematics.

[14]  Kenneth L. Clarkson,et al.  Applications of random sampling in computational geometry, II , 1988, SCG '88.

[15]  Sylvain Pion,et al.  Interval arithmetic yields efficient dynamic filters for computational geometry , 1998, SCG '98.

[16]  Michael Joswig,et al.  polymake: a Framework for Analyzing Convex Polytopes , 2000 .

[17]  Richard S. Bird,et al.  A simple division-free algorithm for computing determinants , 2011, Inf. Process. Lett..

[18]  Manuel Bronstein,et al.  Fast deterministic computation of determinants of dense matrices , 1999, ISSAC '99.

[19]  Kurt Mehlhorn,et al.  Classroom Examples of Robustness Problems in Geometric Computations , 2004, ESA.

[20]  Erich Kaltofen,et al.  On the complexity of computing determinants , 2001, computational complexity.

[21]  R. Guy,et al.  The Book of Numbers , 2019, The Crimean Karaim Bible.

[22]  Konstantin Avrachenkov,et al.  The Effect of New Links on Google Pagerank , 2006 .

[23]  Komei Fukuda,et al.  Exact volume computation for polytopes: a practical study , 1996 .

[24]  D. Avis A Revised Implementation of the Reverse Search Vertex Enumeration Algorithm , 2000 .

[25]  Pierre Alliez,et al.  CGAL - The Computational Geometry Algorithms Library , 2011 .

[26]  Mariette Yvinec,et al.  Algorithmic geometry , 1998 .

[27]  Kurt Mehlhorn,et al.  Four Results on Randomized Incremental Constructions , 1992, Comput. Geom..

[28]  I. M. Gelʹfand,et al.  Discriminants, Resultants, and Multidimensional Determinants , 1994 .

[29]  Anna Urbanska Faster Combinatorial Algorithms for Determinant and Pfaffian , 2007, ISAAC.

[30]  Narendra Karmarkar,et al.  A new polynomial-time algorithm for linear programming , 1984, Comb..

[31]  Gary L. Miller,et al.  A new approach to output-sensitive voronoi diagrams and delaunay triangulations , 2013, SoCG '13.

[32]  Don Coppersmith,et al.  Matrix multiplication via arithmetic progressions , 1987, STOC.

[33]  Jörg Rambau,et al.  TOPCOM: Triangulations of Point Configurations and Oriented Matroids , 2002 .

[34]  Jean-Daniel Boissonnat,et al.  Incremental construction of the delaunay triangulation and the delaunay graph in medium dimension , 2009, SCG '09.

[35]  J. Sherman,et al.  Adjustment of an Inverse Matrix Corresponding to a Change in One Element of a Given Matrix , 1950 .

[36]  Piotr Sankowski,et al.  Dynamic Transitive Closure via Dynamic Matrix Inverse , 2004 .

[37]  G. Villard A study of Coppersmith's block Wiedemann algorithm using matrix polynomials , 1997 .

[38]  J. Hopcroft,et al.  Triangular Factorization and Inversion by Fast Matrix Multiplication , 1974 .

[39]  R. Seidel A Convex Hull Algorithm Optimal for Point Sets in Even Dimensions , 1981 .

[40]  Herbert Edelsbrunner,et al.  Algorithms in Combinatorial Geometry , 1987, EATCS Monographs in Theoretical Computer Science.

[41]  Erich Kaltofen,et al.  LINBOX: A GENERIC LIBRARY FOR EXACT LINEAR ALGEBRA , 2002 .

[42]  P. Cochat,et al.  Et al , 2008, Archives de pediatrie : organe officiel de la Societe francaise de pediatrie.

[43]  Piotr Sankowski,et al.  Dynamic transitive closure via dynamic matrix inverse: extended abstract , 2004, 45th Annual IEEE Symposium on Foundations of Computer Science.

[44]  D. Harville Matrix Algebra From a Statistician's Perspective , 1998 .

[45]  A. Barvinok,et al.  An Algorithmic Theory of Lattice Points in Polyhedra , 1999 .

[46]  W. Press,et al.  Numerical Recipes: The Art of Scientific Computing , 1987 .

[47]  Ioannis Z. Emiris,et al.  An output-sensitive algorithm for computing projections of resultant polytopes , 2012, SoCG '12.

[48]  D. Garling,et al.  Inequalities: A Journey into Linear Analysis , 2007 .

[49]  Chee Yap,et al.  The exact computation paradigm , 1995 .

[50]  S. Basu,et al.  Algorithms in real algebraic geometry , 2003 .

[51]  C. Jordan Advanced Determinant Calculus: a Complement , 2008 .

[52]  Stuart J. Berkowitz,et al.  On Computing the Determinant in Small Parallel Time Using a Small Number of Processors , 1984, Inf. Process. Lett..

[53]  Kenneth L. Clarkson,et al.  Safe and effective determinant evaluation , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[54]  M. Bartlett An Inverse Matrix Adjustment Arising in Discriminant Analysis , 1951 .

[55]  Meena Mahajan,et al.  A combinatorial algorithm for the determinant , 1997, SODA '97.

[56]  Vissarion Fisikopoulos,et al.  Faster Geometric Algorithms via Dynamic Determinant Computation , 2012, ESA.

[57]  G. Ziegler Lectures on Polytopes , 1994 .

[58]  Ioannis Z. Emiris,et al.  An Oracle-Based, output-Sensitive Algorithm for Projections of Resultant Polytopes , 2013, Int. J. Comput. Geom. Appl..

[59]  D. Avis lrs : A Revised Implementation of the Rev rse Search Vertex Enumeration Algorithm , 1998 .