How Good Are Convex Hull Algorithms?

How Good Are Convex Hull Algorithms?

How Go o d are Convex Hull Algorithms David Bremner David Avis Scho ol of Computer Science Scho ol of Computer Science McGill University McGill University Montreal QC CANADA HA A Montreal QC CANADA HA A y Raimund Seidel Fachberich Informatik Computer Science Division Universitat des Saarlandes University of California Berkeley D Saarbruc ken GERMANY Berkeley CA February Abstract A convex polytope P can b e sp ecied in twoways as the convex hull of the vertex set V of P orastheintersection of the set H of its facetinducing halfspaces The vertex enumeration problem is to compute V from H The facet enumer ation problem it to compute H from V These two problems are essentially equivalent under p ointhyp erplane duality They are among the central computational problems in the theory of p olytop es It is op en whether they can b e solved in time p olynomial in jH j jV j In this pap er we consider the main known classes of algorithms for solving these problems We argue that they all have at least one of twoweaknesses inabilitytodealwell with degen eracies or inabilitytocontrol the sizes of intermediate results Wethenintro duce families of p olytop es that exercise those weaknesses Roughly sp eaking fatlattice or intricate p olytop es cause algorithms with bad degeneracy handling to p erform badly dwarfed p olytop es cause al gorithms with bad intermediate size control to p erform badly We also present computational exp erience with trying to solve these problem on these hard p olytop es using various implementations of the main algorithms Intro duction A ddimensional convex polyhedron is the intersection of a nite number m of nonredundant halfs d g of IR A b ounded convex p olyhedron is called a polytope A classic paces H f H H H m theorem from convexity states that every p olytop e P can be expressed as the convex hull of its n extreme p oints or vertices V These descriptions of P will b e referred to as the halfspace and Supp orted byNSERC Canada and FCAR Queb ec Email avisbremnercsmcgillca y Supp orted by NSF Presidential Young Investigator award CCR Email seidelcsunisbde vertex descriptions resp ectively The size of a p olytop e denoted size P m nd is the space required to store b oth descriptions of a p olytop e There are three closely related computational problems concerning the two descriptions of a p olytop e The vertex enumeration problem asks to compute V from H The facet enumeration problem asks to compute H from V The polytope verication problem asks to decide whether a given vertex description V and halfspace description H dene the same p olytop e If redundant elements are allowed as inputs to the p olytop e verication problem then all three problems are p olynomially equivalent The rst two problems are equivalent under p ointhyp erplane duality Either of the rst two can be trivially used to solve the third To solve eg vertex enumeration using p olytop e verication verify that all vertices have b een found for each facet of P If not recurse on that facet In at most djH j p olytop e verication calls the algorithm nds a new vertex This pap er will not b e concerned with the p olytop e verication problem p er se but with vertex enumeration and facet enumeration We already stated that these two problems are essentially equivalent under pointhyp erplane duality Thus it would suce if we restricted the discussion to just one of those two However some asp ects and phenomena are more easily describ ed in the context of facet enumeration others more easily in the context of vertex enumeration For that reason we will feel free to switchback and forth b etween those two problems with the understanding that all examples and results stated for vertex enumeration also hold appropriately dualized for the facet enumeration problem and vice versa Howev er most of the ensuing discussions will b e in terms of vertex enumeration We are interested in the computational dicultyofvertex enumeration When measuring the eciency of a vertex enumeration algorithm it is imp ortantto take into account the vast p ossible variation in output size By the upp er and lower b ound theorems of McMullen and Barnette d a p olytop e P sp ecied as the intersection of m halfspaces in IR can have as few as d mm dd vertices in the nonsimple case even fewer and as manyas m bd c m bd c d m b dc b d c This large p ossible range suggests that the p erformance of vertex enumeration algorithms b e mea sured not only in terms of input size dm but also in terms of output size dn where n is the number of vertices pro duced An outstanding question from b oth a theoretical and a practical p oint of view is whether vertex enumeration can b e solved in time p olynomial in input size dm and output size dn or equivalently p olynomial in size P dm n One of the central purp oses of this pap er is to show that all known main typ es of vertex enumeration algorithms actually do have sup erp olynomial worst case Actuallyinsomeways it would b e more elegant to apply homogenization and frame our discussion in terms of extreme ray and facet enumeration for p olyhedral cones We will refrain from doing so mainly since the ane setting providesbetterintuition For the most part we will ignore the issue of unb oundedness and extreme rays although it has some asp ects that are interesting in their own right running time This is done by providing explicit example families of p olytop es for which the various algorithms p erform p o orly We also corrob orate those ndings by computational exp eriments At this point a comparison to the situation in Linear Programming may be called for Ob viously Linear Programming and vertex enumeration are closely related The title of our pap er was inspired by the famous pap er of Klee and Minty where they showed that the simplex algorithm with a certain natural pivoting rule can have sup erp olynomial running time Our goal is more ambitious in that wewanttoshow sup erp olynomial running time not just for one sp ecic algorithm but for all known main classes of vertex enumeration algorithms At the same time our ndings are more devastating since in contrast to the simplex algorithm which on problems arising in practice essen tially never exhibits its p ossible worst case b ehaviour our exp erience suggests that vertex enumeration algorithms do exhibit their sup erp olynomial worst case b ehaviour on problems arising in practice see eg Fortunately vertex enumeration as a problem arises muchless frequently than linear programming Still we want to stress that contrary to prevailing opinions in the computational geometry community the current situation with resp ect to vertex and facet enumeration is unsatisfying b oth in the practical and in the theoretical sense In Linear Program ming the current state of aairs app ears to be somewhat satisfactory for practical purp oses and of course from a theoretical p oint of view there are p olynomial algorithms for Linear Programming in the bit mo del of computation The main algorithms Geometrically the main vertex enumeration algorithms can all b e viewed as not just generating all vertices of a polytope P but actually the skeleton of P ie the graph formed by P s v ertices and edges Dually facet enumeration algorithms can be viewed as generating the facet graph ie a graph whose no des are the facets of the p olytop e and with two facets adjacent i they share a common ridge In essence there are only two main classes of algorithms for pro ducing these graphs graph traversal algorithms and incremental algorithms The graph traversal algorithms rst nd some no de of the graph in question and then attempt to identify all no des and edges of the graph bytraversing it in some fashion In the case of vertex enumeration eachvertex v of a dp olytop e P can b e identied bya basis ie d facets that contain v and whose spanning hyp erplanes are anely indep endent Two vertices of P are connected by an edge of P if they have bases that dier in exactly one member Going from a vertex to an adjacent one during the graph traversal amounts to changing this one member of the basis This op eration is known as pivoting in the simplex algorithm for linear programming For this reason graph traversal algorithms for vertex enumeration are also known as pivoting algorithms In the context of facet enumeration going from one facet to a neighb oring can be viewed as rotating a supp orting hyp erplane ab out the common ridge In analogy to a dimensional physical realization giftwrapping step this op eration is therefore known as a Representatives of this class of graph traversal algorithms are the gift wrapping algorithm of Chand and Kapur Seidels algorithm and the reverse search algorithm of Avis and Fukuda Incremental algorithms for the vertex enumeration problem compute the vertex description by intersecting the dening halfspaces sequentially An initial simplex is constructed from a subset of d halfspaces and its vertices and skeleton are computed Additional halfspaces are intro duced sequentially and the vertex description and skeleton are up dated at each stage Essentially suchan up date amounts to identifying and removing all vertices that are not contained in the new halfspace intro ducing new vertices for all intersections between edges and the b ounding hyp erplane of the new halfspace and generating the new edges b etween these new vertices Although the rst explicit description of such an algorithm now widely known as the double description method app eared in the pioneering

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    36 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us