Professional Documents
Culture Documents
a polytope, the representation size can be smaller than any of the known representations
(V-representation, H-representation, and Z-representation). We also provide a variant of
the M-representation: The chain representation is more compact and we can directly use
it to compute linear transformations and convex hulls – for all other operations on the
chain representation, one requires a conversion to the M-representation.
1 Introduction
The two main representations for convex, bounded polytopes are the well known V-
representation and H-representation [7, 15]. The first one represents a polytope by its
vertices and the second one uses halfspaces. Recently, the novel Z-representation was
introduced in [10], which uses generators multiplied by monomials. The Z-representation
is a special case of polynomial zonotopes [1], which can represent non-convex sets.
Let us have a look at related representation types, which are also surveyed in [3]. The
complexities are described in terms of the number of respective generators of these meth-
ods if not stated otherwise. Another representation for polytopes are zonotope bundles.
This method presents polytopes as the intersection of a finite number of zonotopes [2]. An
advantage of this method is that the intersection of two zonotope bundles can be found
trivially, but neither the Minkowski sum, nor the convex hull have a closed-form expres-
sion [3]. Polynomial zonotopes [1] have a polynomial complexity for the Minkowski sum
and the convex hull, but are not closed under intersections [3]. Besides polynomial zono-
topes there also exist constrained zonotopes [13] and constrained polynomial zonotopes [9].
1
These have additional constraints on the factors appearing in the definition of a (polyno-
mial) zonotope. The Minkowski sum can be computed in linear complexity for constrained
(polynomial) zonotopes. While convex hulls of constrained polynomial zonotopes can be
computed with polynomial complexity [3], convex hulls of constrained zonotopes can be
computed linearly in the number of generators and constraints on the zonotopes [12].
Another representation are support functions [5]. Introduced by Minkowski it makes use
of the supremum of an inner product. The Minkowski sum and the convex hull can
be computed linearly, but the computation of intersections of support functions is not
solved yet [3]. Spectrahedra are another way to represent convex sets. A spectrahedron
is defined by the positive semi-definite values of a Hermitian linear matrix polynomial.
Their representation by matrix polynomials makes them useful in linear programming [11].
As the main result of this paper, we introduce the M-representation for polytopes. Its
form is similar to the Z-representation, but we constrain the factors to positive values.
This rather subtle change has significant implications and improves many characteristics
of the Z-representation: So far, we can only find a Z-representation whose number of
generators is quadratic in the number of vertices n. The M-representation on the other
hand only needs at most as many basis vectors as the V-representation and an additional
matrix of exponents. This matrix can be saved efficiently such that it vanishes in the
complexity of the representation size of the basis vectors. Furthermore, we introduce a
strategy that uses zonotopes in order to decrease the number of basis vectors even further.
Given n vertices in Rd an M-representation can be computed in O(dn).
This paper is organized as follows: In Sec. 2 we present preliminaries and continue in Sec.
3 by introducing the M-representation. We prove the complexities of different operations
in Sec. 4 and present an algorithm to reduce the number of basis vectors in Sec. 5. In
Sec. 6 we propose a variant that reduces the complexity of computations convex hulls.
2 Preliminaries
2.1 Notations
In the remainder of this paper, we will use the following notations: [n] = {1, 2, . . . , n} for
n ∈ N, the symbols O and I refer to the matrices filled with zeros and ones with proper
dimensions. In refers to the identity matrix in Rn×n , Ln to the lower triangular matrix
filled with ones in Rn×n and [ ] denotes the empty matrix. Given a matrix M ∈ Rd×d ,
M(i,j) represents the j-th entry of matrix row i, and M(·,j) the j-th column. Furthermore,
we will denote a set of the form {S(α) | α ∈ [0, 1]p } as {S(α)}α .
2.2 Definitions
Now we provide some definitions that are important for the rest of the paper. In order
to make the paper coherent, we will use the term polytope instead of convex bounded
polytope. Let us first define the V-representation, and the H-representation of polytopes.
2
P. Then we can define the vertex representation as
n
nX n
X o
P= αi vi αi = 1, αi ≥ 0 . (1)
i=1 i=1
P = {x ∈ Rd | Gx ≤ b}. (2)
Let us now define the Z-representation of a polytope, which is a special case of a polyno-
mial zonotope.
n h Yp o
E
X
P = c+ ( αk(k,i) )G(·,i) α ∈ [−1, 1]p (3)
i=1 k=1
and we write
The Z-representation is not unique. For example, the polytope in Fig. 1 can be represented
by the following two sets P1 and P2 with P1 = P2 .
Let us now have a look at zonotopes. The set of zonotopes is a subset of the set
of polytopes, we can therefore express zonotopes as a special case of polytopes in Z-
representation:
Definition 2.5 (Convex hull, Minkowski sum). Let P1 and P2 be two convex sets. Then
we define the convex hull as
3
Figure 1: Plot of P1 = P2
n1 + α 1 − α o
conv(P1 , P2 ) = p1 + p2 p1 ∈ P1 , p2 ∈ P2 , α ∈ [−1, 1] (6)
2 2
and the Minkowski sum as
n o
P1 ⊕ P2 = p1 + p2 p1 ∈ P1 , p2 ∈ P2 . (7)
The convex hull and the Minkowski sum of two polytopes can be computed in the following
way:
Proposition 2.6 (Convex hull, Minkowski sum, Linear transformation, [10]). Let P1 and
P2 be two polytopes in Z-representation with Pi = hci , Gi , Ei iZ , ci ∈ Rd , Gi ∈ Rd×hi and
Ei ∈ {0, 1}pi ×hi . Then their convex hull and Minkowski sum can be computed by
D1 1 E
conv(P1 , P2 ) = (c1 + c2 ), [(c1 − c2 ), G1 , G1 , G2 , −G2 ], Ê
D2 2 E Z (8)
P1 ⊕ P2 = c1 + c2 , [G1 , G2 ], Ē
Z
with
O E1 E1 O O
Ê = O O O E2 E2
1 O I O I
(9)
E1 O
Ē =
O E2
p = p1 + p2 + 1.
For the convex hull we have h = 2h1 + 2h2 + 1 generators and for the Minkowski sum
h = h1 + h2 generators.
A linear transformation by M ∈ Rm×d can be computed by
M P1 = hM c1 , M G1 , E1 iZ . (10)
4
For our M-representation we need another definition:
Definition 2.7 (Multilinear map). A multivariate map f : Rh → Rd is called multilinear
if it is linear in every variable.
In the next section, we introduce our novel M-representation.
3 M-Representation
By limiting the intervals of the factors of the Z-representation to [0, 1] we obtain the
M-representation. This subtle change has far-reaching consequences and combines the
computational advantages of the Z-representation with the low representation size of the
V-representation.
Definition 3.1 (M-representation). Let s ∈ Rd be a starting point, B ∈ Rd×h a matrix
of basis vectors, and E ∈ {0, 1}p×h a matrix of exponents, then the multilinear vertex
representation (M-representation) of a polytope P ⊆ Rd is defined as
n h Yp o
E
X
P = s+ ( αk(k,i) )B(·,i) α ∈ [0, 1]p (11)
i=1 k=1
and we write
This representation can be obtained with complexity O(nd) and has a representation
size in O(nd).
2. This representation has h = n − 1 basis vectors.
We call this form the chain form.
Proof. We prove the statements above by induction.
5
with one basis vector v1 − v2 . Therefore, h(1) = 0 and h(2) = 1. For n ≤ 2, these
representations have the form described in the theorem.
we know that h(n) = h(n1 ) + 2h(n2 ) + 1 with n = n1 + n2 and ni is the number of vertices
of the polytopes being merged in this step.
With h(m) = m − 1 for every m ∈ [n] and the claim of induction, it is obvious that a
polytope with n + 1 vertices has the least number of generators if we choose n1 = n and
n2 = 1. Then we obtain h(n + 1) = n − 1 + 2 · 0 + 1 = n, which proves the second part
of the theorem. For the first part, we need the representation of a polytope Pn with n
vertices in order to compute the induction step. For this polytope we use
n n−1 Y
X n−i o
Pn = vn + αn−j (vi − vi+1 ) . (16)
α
i=1 j=1
In order to obtain this representation, nd subtractions are necessary, therefore the com-
plexity is in O(nd). For the representation size we only need to save the matrix of basis
vectors and the index of the lower triangular matrix which leads to a complexity of O(nd).
This proves the first part of the theorem.
Let us have a look at why Theorem 3.2 cannot be adapted for the Z-representation:
6
Proof. Let P be defined as above. Then
n n−1 Y
X n−i o
n−1
P = c+ αn−j vi α ∈ [−1, 1] . (19)
i=1 j=1
From the Z-representation we know that the vertices are the points of this set with αi ∈
{−1, 1}. Let c + w be a vertex of P with αn−1 = 1. Then by (19) follows that c − w is
also a vertex of P if we only replace αn−1 = −1. Therefore, each vertex has a partner
which is point symmetric to the center c.
From this we know that a general polytope with n vertices cannot be represented by a
Z-representation of the form in (18) with n − 1 generators. In Proposition 4.2 we prove
another advantage of the M-representation over the Z-representation even if there exist
representations of polytopes with the same number of generators/basis vectors.
The next corollary follows directly from the theorem above as well:
Corollary 3.4. Let P be a polytope of the form introduced in Theorem 3.2. Let α and
α0 represent two points in a polytope and let k be maximal s.t. αk = 0. In case there
is no such k, set k = 1. Then α and α0 represent the same point iff αj = αj0 for all
k ≤ j ≤ n − 1.
For a polytope P in the form of Theorem 3.2, the vertices can be computed by all com-
binations of the αi ∈ {0, 1}. With Corollary 3.4 the vertices of P can be represented by
the α’s of the form of the columns of Ln−1 and the zero vector. From Theorem 3.2 it is
clear that we can recover the vertices iteratively in O(nd) operations.
Remark. If we define the starting point of the M-representation as a basis vector as well,
this representation has the same number of basis vectors for general polytopes as the
V-representation has vertices.
7
Theorem 4.1. The M-representation of a polytope P = hs, B, EiM in Rd with h basis
vectors directly inherits the efficient computation of linear transformations and Minkowski
sums from the Z-representation. A linear transformation by M ∈ Rm×d can be computed
as
M P = hM s, M B, EiM . (20)
This can be done in O(mdh).
The Minkowski sum of two polytopes P1 = hs1 , B1 , E1 iM and P2 = hs2 , B2 , E2 iM can be
computed as
D E1 O E
P1 ⊕ P2 = s1 + s2 , [B1 , B2 ], . (21)
O E2 M
This can be computed in O(d) and the representation size is in O (h1 + h2 ) · max{h1 +
h2 , d} .
Lh1 O
If P1 and P2 are in chain form, the matrix of exponents can be represented as .
O Lh2
This has a representation size in O (h1 + h2 )d .
Proof. The proof is identical to the one for the Z-representation in [10] since all operations
are independent of the range of the factors αi . For the representation of polytopes in chain
form we only need to save the matrix of basis vectors and a 2 × 2 matrix filled with the
indices of the
lower triangular
matrices and the O symbol. Therefore the representation
size is in O (h1 + h2 )d .
In [6] the number of vertices for the Minkowski sum of k polytopes in Rd is discussed. If
each of the polytopes has at most n vertices, the total number of vertices is in O(k d−1 n2(d−1) ).
From Theorem 4.1 follows that the number of basis vectors of k polytopes is the sum of
the number of basis vectors of each polytope. Let each polytope be represented by at most
n basis vectors, i.e. the polytope has at least n vertices if we use the representation from
Theorem 3.2. Then the number of basis vectors of the Minkowski sum of these polytopes
is in O(kn).
Let PM 1 and PM 2 be two polytopes in M-representation with hM basis vectors each, PZ1
and PZ2 be two polytopes in Z-representation with hZ generators each and hZ = hM .
Then conv(PM 1 , PM 2 ) needs hM basis vectors less than conv(PZ1 , PZ2 ) needs generators:
Proposition 4.2. Let P1 = hs1 , B1 , E1 iM and P2 = hs2 , B2 , E2 iM be two polytopes in
M-representation with h1 ≥ h2 being the respective number of basis vectors. Then
with
E2 E2 O O
E = O O E1 O (23)
O I I 1
8
being a block matrix and P has h = h1 +2h2 +1 basis vectors. The complexity of obtaining
the convex
hull n of two polytopes in M-representation
o is in O(d) and the representation size
2
is in O max (h1 + 2h2 + 1)d, (h1 + h2 + 1) .
If P1 and P2 are in chain form, the matrix of exponents can be represented as
Lh2 Lh2 O O
E =O O Lh1 O . (24)
O I I 1
This has a representation size in O (h1 + 2h2 + 1)d .
Proof.
n We write two polytopes P1o = hvn , B1 , En1 iM and P2 = hwm , B2 , E
2 iM as P1 o=
Pn−1 Qn−i Pm−1 Qm−i
vn + i=1 j=1 αn−j (vi −vi+1 ) and P2 = wm + i=1 j=1 αm−j (wi −wi+1 )
α α
with n − 1 and m − 1 basis vectors, respectively. Then
P = conv(P1 , P2 ) =
n n−1 Y
X n−i
= αn+m−1 vn + αn−j (vi − vi+1 ) +
i=1 j=1
m−1
X m−i
Y o
+ (1 − αn+m−1 ) wm + αm−j (wi − wi+1 ) =
α
i=1 j=1
n m−1
X m−i
Y m−1
X m−i
Y
= wm + αm−j (wi − wi+1 ) + αn+m−1 − αm−j (wi − wi+1 ) +
i=1 j=1 i=1 j=1
n−1 Y
X n−i o
+ αn+m−1 αn−j (vi − vi+1 ) + αn+m−1 (vn − wm ) =
α
i=1 j=1
9
5 Algorithm for Reducing the Number of Basis Vec-
tors in M-Representation
Now we want to introduce an algorithm that returns an M-representation with at most
n − 1 basis vectors for a polytope with n vertices. In case the vertices of the polytope
fulfill certain condidtions, this algorithm returns less than n − 1 basis vectors. Let us
have a closer look at zonotopes in M-representation for this. From [6] we know that
zonotopes are Minkowski sums of line segments. We can use this for the M-representation
of zonotopes.
By applying Theorem 4.1 h−1 times, we obtain the stated result with h basis vectors.
Proof. For the cases with m < 2 and h < 2 this is clear. For all other cases we can use
Proposition 2.1.2 in [6]: For an m-dimensional zonotope in Rd with h pairwise distinct
basis vectors in M-representation and n vertices the following relation holds:
min{m,h}−1
X h−1
n=2 (27)
i=0
i
Hence, we can represent every zonotope by less than n − 1 basis vectors for n > 2. We can
use this to represent general polytopes, where a subset of the vertices forms a zonotope,
by less than n − 1 basis vectors. Alg. 1 returns at most n − 1 basis vectors for general
10
polytopes with n vertices.
D −2 h −2 2 2 i 100 E
P= , , , , 110 =
−1 −2 0 2 M
111 (31)
n −2
−2
2
o
2
= + α1 α2 α3 · + α2 α3 · + α3 · .
−1 −2 0 2 α
11
If we apply Alg. 1, we can even express it as
and we write
The basis vectors appearing in B connect the starting point and the end point, which
looks like a chain. It is sufficient so save s, B and e, since the exponent matrix in chain
form is uniquely defined by the dimensions of B. This variant has a representation size
in O(hd). Saving the end point helps us for the next proposition:
and P has h = h1 + h2 + 1 basis vectors. The complexity of obtaining the convex hull of
two polytopes in C-representation is O(d) and can be represented in O(hd).
Proof. The set of vertices of the convex hull of P1 and P2 is a subset of the union of the
vertices of these polytopes. It is clear from the definition of the chain form, that (35)
represents a polytope. From Theorem 3.2 also follows that the vertices of the polytope
in (35) can be represented by α’s of the form of the zero vector and the columns of a
lower triangular matrix filled with ones with dimensions (h1 + h2 + 1) × (h1 + h2 + 1).
The matrix of basis vectors is the connection of the original chains B1 and B2 by the
link between the end point e1 and the starting point s2 . This returns as vertices of the
polytope P the union of the vertex sets of P1 and P2 . Hence, (35) represents the required
convex hull.
12
Proposition 6.3. The C-representation of a polytope P = hs, B, eiC in Rd with h basis
vectors directly inherits the efficient computation of linear transformations from the M-
representation. A linear transformation by M ∈ Rm×d can be computed as
M P = hM s, M B, M eiC . (36)
Proof. The proof is identical to the one for the Z-representation in [10].
13
References
[1] M. Althoff, Reachability analysis of nonlinear systems using conservative polynomi-
alization and non-convex sets, In Hybrid Systems: Computation and Control, pp.
173–182, 2013
[2] M. Althoff, B. H. Krogh, Zonotope bundles for the efficient computation of reachable
sets, In Proc. of the 50th IEEE Conference on Decision and Control, 2011
[3] M. Althoff, G. Frehse, A. Girard, Set propagation techniques for reachability analysis,
In Annual Review of Control, Robotics, and Autonomous Systens, Vol. 4, 2021
[4] A. Deza, L. Pournin, A linear optimization oracle for zonotope computation, In Com-
putational Geometry, Vol. 100, 2022
[11] T. Netzer, Spectrahedra and Their Shadows, postdoctoral thesis, University Leipzig,
2012
[12] V. Raghuraman, J. P. Koeln, Set operations and order reductions for constrained
zonotopes In Auotmatica, Vol. 139, Art. no. 110204 2022
[14] H. R. Tiwary, On the hardness of computing intersection, union and Minkowski sum
of polytopes, In Discrete and Computational Geometry, Vol. 40, pp. 469–479, 2008
14