• No results found

d-Dimensional Polytope Representation

There are many conflicting definitions for the terms polytope and polyhedron. To avoid confusion, we define the following:

Definition 3.1 Given k distinct points p1, p2, . . . , pkinRd, the set of points p = α1p1+ α2p2+ . . .+ αkpk,(αj ∈ R, α1+ α2+ . . . + αk = 1) is the affine set generated by p1, p2, . . . , pk, and p is an affine combination of p1, p2, . . . , pk.

Definition 3.2 Given a subset L ofRd, the affine hull of L is the smallest affine set containing L. Definition 3.3 Given k points p1, p2, . . . , pk, they are said to be affinely independent if the k− 1 vectors p2 − p1, . . . , pk − p1 are linearly independent. An affine hull generated from k affinely

independent points is said to be of dimension k− 1.

Definition 3.4 A polyhedron is a connected region of space consisting of a piecewise linear bound- ary. It is said to be of d dimensions if its affine hull is of d dimensions.

Definition 3.5 A polytope of d dimensions is a convex, bounded, d dimensional polyhedron. Definition 3.6 The boundary of a polyhedral set consists of faces. Faces are lower dimensional convex polyhedra. A k-face is a face of dimension k. We further define a d dimensional polyhedron to have exactly one d-face, which is itself. We also define a (−1)-face to be incident on everything. Definition 3.7 A facet of a d dimensional polyhedron L is a d− 1-face of L.

Polytopes of dimensions 0, 1, 2 and 3 are familiar constructs. They correspond to vertices, segments, bounded polygons and 3 dimensional polytopes. There are two distinct ways to represent polytopes. It is sufficient to represent a polytope as a set of vertices, where the vertices are chosen such that their convex hull is the original polytope. Every polytope may be decomposed into such a set.

Definition 3.8 The extreme points of a polytope L are those points belonging to the smallest set of vertices whose convex hull gives L.

The set of extreme points is always finite. This set is a compact representation of a polytope. Such a representation is possible due to the convexity constraint. This representation is referred to as follows:

Definition 3.9 The V-representation (or Vertex representation) of a polytope is its set of extreme points.

Another common representation is:

Definition 3.10 The H-representation (or Halfspace representation) of a polytope is a set of halfs- paces whose intersection gives the polytope.

It should be noted that the H-representation can also represent unbounded convex polyhedra. Once again we see an important duality. One representation is through points, while the other is through halfspaces (defined by hyperplanes). In the case of polytopes, it is possible to switch between representations using a transformation algorithm [AF92, FP96, AF96].

3.2.1 The Face Lattice

The face lattice is a directed graph representing the incidence relationship between the faces of a polytope. Each face of the polytope is a node of the lattice. If a face of dimension k is contained within a k + 1 dimensional face, a directed arc exists from the k dimensional face to the k + 1 dimensional face (see Figure 7 for an example).

Figure 7:Face Lattice of a Tetrahedron. (a) A tetrahedron, with annotated faces. The tetrahedron is defined

by four planes, h1, h2, h3and h4. Each face is identified, by the subset of planes in which it is embedded. (b) The face lattice of the tetrahedron. The faces are connected by an upwards containment relationship. The bottom row refers to 0 dimensional elements, the row above to 1 dimensional elements, etc. Note how a row of k dimensional elements is defined by the intersection of 3− k planes.

Similarly, Face lattices may be defined for general polyhedra and polytope/polyhedral com- plexes (see Section 3.3).

3.2.2 Face Enumeration

For all polytopes, the face lattice is implicit within its vertex information. This is due to the known property of convexity. Given the set of extreme points for any polytope, the face lattice may be recovered. This process is known as face enumeration [FR94].

It is possible to define any vertex in a d dimensional space as the intersection of a set of hyper- planes. Algebraically, a set of hyperplanes may be considered as a system of linear equation, where the vertex at the intersection is the solution to such a system. In order to define a unique solution (a vertex) the hyperplanes need to define at least d linearly independent constraints.

Definition 3.11 A simple polytope of d dimensions embedded in a d dimensional space is a d dimensional polytope whose vertices are incident on exactly d hyperplanes (facets) of it’s H- representation.

Given the set of extreme points E of a d dimensional simple polytope P , it is possible to find a set of oriented hyperplanes H whose associated half space intersections results in the convex hull of E (see Section 3.2).

Each extreme vertex is therefore incident on a subset of H, of cardinality d. If we enumerate each hyperplane, we can represent each vertex uniquely by the subset of H on which it is incident. We refer to this subset as the enumeration set of the vertex. See Figure 7 for an example.

Through vertex enumeration, we see that it is possible to enumerate every face as the intersection of a set of hyperplanes. Indeed, every k dimensional face is the intersection of d− k hyperplanes in H. From this, we observe that in general it is possible to enumerate every k dimensional face as a subset of hyperplanes in H of cardinality d− k.

This definition of face enumeration supports certain properties:

1. Given two faces f1 and f2 (of dimensionality k), these faces are incident at a face f3 (of dimensionality k− 1) , whose enumeration set is the union of enumeration sets f1and f2. 2. The intersection of the enumeration sets of two faces f1 and f2gives the enumeration set of

the face of lowest dimensionality containing both f1and f2.

As an example, consider Figure 7. Facets{h3} and {h2} intersect at {h3, h2}. Similarly, edges {h3, h2} and {h3, h4} intersect at vertex {h3, h2, h4}. Should the face resulting from the union not belong to the polytope, then no intersection exists.

To illustrate the second property, consider edges{h3, h4} and {h2, h3}, these intersect at facet {h3}. Consider also, vertex {h2, h3, h4} and edge {h1, h3}. These intersect at {h3}. Should edge {h3, h4} be used instead, the intersection is the same edge {h3, h4}. The latter results in a two dimensional face, since the vertex lies on the edge. If the intersection is the empty set, then the largest face containing the specified faces is the polytope itself.