Geometric Sets

CORA has a modular design, making it possible to use the capabilities of the various set representations for other purposes besides reachability analysis. The toolbox implements vector set representation, e.g., intervals, zonotopes, Taylor models, and polytopes, as well as matrix set representations such as matrix zonotopes and interval matrices.

Your browser does not support SVG

Set Representations


Set Operations

The reachability algorithms implemented in CORA rely on set-based computation. One major design principle is that the same standard set operations are implemented for all set representations so that algorithms can be executed with different set representations. We show some basic set operations here. More information in Section 2.1 in the CORA manual.

Linear Map

The linear map is defined as

$$\texttt{mtimes}(M,\mathcal{S}) = M \otimes \mathcal{S} = \left\{ Ms \ |\ s\in\mathcal{S} \right\}.$$

The function \(\texttt{mtimes}\) overloads the \(*\) operator in MATLAB.

Your browser does not support SVG
Minkowski Sum

The Minkowski sum is defined as

$$\texttt{plus}(\mathcal{S}_1,\mathcal{S}_2) = \mathcal{S}_1 \oplus \mathcal{S}_2 = \left\{ s_1 + s_2 \ |\ s_1\in\mathcal{S}_1,\ s_2\in\mathcal{S}_2 \right\}.$$

The function \(\texttt{plus}\) overloads the \(+\) operator in MATLAB.

Your browser does not support SVG
Convex Hull

The convex hull is defined as

$$\texttt{convHull}(\mathcal{S}_1,\mathcal{S}_2) = \left\{ \lambda s_1 + (1-\lambda) s_2 \ |\ s_1\in\mathcal{S}_1,\ s_2\in\mathcal{S}_2,\ \lambda\in[0,1] \right\}.$$
Your browser does not support SVG
Plotting

Plotting sets is a useful function to visualize your computations:

$$\texttt{plot}(\mathcal{S},\texttt{dims},\texttt{varargin}).$$

The function \(\texttt{plot}\) allows flexible plotting of your sets, where \(\texttt{dims}\) are the dimensions to be plotted and \(\texttt{varargin}\) are standard MATLAB plotting parameters.

Your browser does not support SVG

Further examples can be found at ./examples/contSet on GitHub.


Copyright © 2023 - All Rights Reserved - Technische Universität München
Website by Matthias Althoff, Niklas Kochdumper, Mark Wetzlinger, and Tobias Ladner