Discrete & Computational Geometry

, Volume 8, Issue 3, pp 295–313 | Cite as

A pivoting algorithm for convex hulls and vertex enumeration of arrangements and polyhedra

  • David Avis
  • Komei Fukuda


We present a new pivot-based algorithm which can be used with minor modification for the enumeration of the facets of the convex hull of a set of points, or for the enumeration of the vertices of an arrangement or of a convex polyhedron, in arbitrary dimension. The algorithm has the following properties:
  1. (a)

    Virtually no additional storage is required beyond the input data.

  2. (b)

    The output list produced is free of duplicates.

  3. (c)

    The algorithm is extremely simple, requires no data structures, and handles all degenerate cases.

  4. (d)

    The running time is output sensitive for nondegenerate inputs.

  5. (e)

    The algorithm is easy to parallelize efficiently.


For example, the algorithm finds thev vertices of a polyhedron inRd defined by a nondegenerate system ofn inequalities (or, dually, thev facets of the convex hull ofn points inRd, where each facet contains exactlyd given points) in timeO(ndv) andO(nd) space. Thev vertices in a simple arrangement ofn hyperplanes inRd can be found inO(n2dv) time andO(nd) space complexity. The algorithm is based on inverting finite pivot algorithms for linear programming.


Convex Hull Span Tree Convex Polyhedron Enumeration Tree Hyperplane Arrangement 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    D. Avis and V. Chvátal, Notes on Bland's Pivoting Rule,Math. Programming Study., vol. 8, pp. 24–34, 1978.CrossRefGoogle Scholar
  2. 2.
    R. G. Bland, New Finite Pivoting Rules for the Simplex Method,Math. Oper. Res., vol. 2, pp. 103–107, 1977.MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    D. R. Chand and S. S. Kapur, An Algorithm for Convex Polytopes,J. Assoc. Comput. Mach., vol. 17, pp. 78–86, 1970.MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    B. Chazelle, An Optimal Convex Hull Algorithm and New Results on Cuttings,Proc. 32nd Annual IEEE Symposium on Foundations of Computer Science, pp. 29–38, 1991.Google Scholar
  5. 5.
    V. Chvátal,Linear Programming, Freeman, San Francisco, 1983.zbMATHGoogle Scholar
  6. 6.
    M. E. Dyer, The Complexity of Vertex Enumeration Methods,Math. Oper. Res., vol. 8, pp. 381–402, 1983.MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    H. Edelsbrunner,Algorithms in Combinatorial Geometry, Springer-Verlag, New York, 1987.CrossRefzbMATHGoogle Scholar
  8. 8.
    H. Edelsbrunner and L. Guibas, Topologically Sweeping an Arrangement,J. Comput. Syst. Sci., vol. 38, pp. 165–194, 1989.MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    H. Edelsbrunner, J. O'Rourke, and R. Seidel, Constructing Arrangements of Lines and Hyperplanes with Applications,SIAM J. Comput. Sci., vol. 15, pp. 341–363, 1986.MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    K. Fukuda, Oriented Matroid Programming, Ph.D. Thesis, University of Waterloo, 1982.Google Scholar
  11. 11.
    K. Fukuda and T. Matsui, On the Finiteness of the Criss-Cross Method,European J. Oper. Res., to appear.Google Scholar
  12. 12.
    M. E. Houle, H. Imai, K. Imai, J.-M. Robert, and P. Yamamoto, Orthogonal Weighted LinearL 1 andL Approximation and Applications, Manuscript, September 1990.Google Scholar
  13. 13.
    T. H. Mattheiss and D. S. Rubin, A Survey and Comparison of Methods for Finding all Vertices of Convex Polyhedral Sets,Math. Oper. Res., vol. 5, pp. 167–185, 1980.MathSciNetCrossRefGoogle Scholar
  14. 14.
    T. S. Motzkin, H. Raiffa, G. L. Thompson, and R. M. Thrall,The Double Description Method, Annals of Mathematical Studies, vol. 8, Princeton University Press, Princeton, NJ, 1953.Google Scholar
  15. 15.
    K. Paparrizos, Pivoting Rules Directing the Simplex Method Through all Feasible Vertices of Klee-Minty Examples,OPSEARCH, vol. 26, pp. 77–95, 1989.MathSciNetzbMATHGoogle Scholar
  16. 16.
    G. Rote, Degenerate Convex Hulls in High Dimensions Without Extra Storage,Proc. 8th Annual Symposium on Computational Geometry, ACM Press, New York, pp. 26–32, 1992.Google Scholar
  17. 17.
    R. Seidel, A Convex Hull Algorithm Optimal for Point Sets in Even Dimensions, Report 81-14, Department of Computer Science, University of British Columbia, 1981.Google Scholar
  18. 18.
    R. Seidel, Constructing Higher-Dimensional Convex Hulls at Logarithmic Cost per Face,Proc. 1986 Symposium on the Theory of Computing, pp. 404–413.Google Scholar
  19. 19.
    T. Terlaky, A Convergent Criss-Cross Method,Math. Operationsforsch. Statist. Ser. Optim., vol. 16, pp. 683–690, 1985.MathSciNetzbMATHGoogle Scholar
  20. 20.
    T. Terlaky, A Finite Criss-Cross Method for Oriented Matroids,J. Combin. Theory Ser. B, vol. 42, pp. 319–327, 1987.MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    M. Todd, Linear and Quadratic Programming in Oriented Matroids,J. Combin. Theory Ser. B, vol. 39, pp. 105–133, 1985.MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Z. Wang, A Conformal Elimination Free Algorithm for Oriented Matroid Programming,Chinese Ann. Math., Ser. B, vol. 8, p. 1, 1987.Google Scholar
  23. 23.
    D. Avis and K. Fukuda, Reverse Search for Enumeration, Research Report 92-5, GSSM, University of Tsukuba, April 1992.Google Scholar

Copyright information

© Springer-Verlag New York Inc. 1992

Authors and Affiliations

  • David Avis
    • 1
  • Komei Fukuda
    • 2
  1. 1.School of Computer ScienceMcGill UniversityMontrealCanada
  2. 2.Graduate School of Systems ManagementUniversity of TsukubaTokyoJapan

Personalised recommendations