The zonoLAB toolbox is a MATLAB-based software package for generating, manipulating, and analyzing hybrid zonotopes, a set representation that is equivalent to the union of $2^N$ constrained zonotopes (i.e. convex polytopes). Hybrid zonotopes are represented in Hybrid Constrained Generator-representation (HCG-rep), with the shorthand notation $\mathcal{Z}_h = \langle G^c,G^b,c,A^c,A^b,b\rangle\subset\mathbb{R}^n$, such that
$$\mathcal{Z}h = \lbrace z = \left[G^c \ G^b\right] \begin{bmatrix}\xi^c \atop\xi^b \end{bmatrix} + c \ | \ \begin{bmatrix}\xi^c \atop\xi^b \end{bmatrix} \in \mathcal{B}_{\infty}^{n_{g}} \times \lbrace -1,1\rbrace^{n\{b}}, \ \left[A^c \ A^b\right] \begin{bmatrix}\xi^c \atop\xi^b \end{bmatrix} = b \rbrace, $$
where:
In this toolbox, hybrid zonotopes are represented using the class hybZono. Constrained zonotopes and zonotopes can be viewed as specific cases of hybrid zonotopes and are also represented using the classes conZono and zono, respectively. All three classes inherit properties from the abstract superclass abstractZono, which contains the properties and methods commonly used by hybZono, conZono, and zono.
The zonoLab toolbox does not require installation beyond adding the folder and subfolders to the path in MATLAB. Running zonoLab_Install will automatically add all necessary folders to your MATLAB path. Additionally, it is highly recommended that Gurobi is installed and added to your MATLAB path. Information on installing Gurobi, including details on free license for academic use, can be found on the Getting Started with Gurobi Optimizer page.
The following code can be used to create and plot your first hybrid zonotope.
Gc = [3 -3 1; 2 1 -2]; % Continuous generator matrix
Gb = [6 -6 2; 4 2 -4]; % Binary generator matrix
c = [0;0]; % Center
Ac = [1 1 1]; % Continuous constraint matrix
Ab = [1 1 1]; % Binary constraint matrix
b = 1; % Constraint offset vector
Zh = hybZono(Gc,Gb,c,Ac,Ab,b); % Creates a hybrid zonotope
figure;
plot(Zh,'b',0.1) % Plots hybrid zonotope in transparent blue
To learn more about generating hybrid zonotopes, plotting, and set-based operations, please visit the Wiki Tutorial, Functions, and Examples pages.
The zonoLab toolbox is distributed under the GNU General Public License (GPL). The paper provided above must be referenced when zonoLab is used in published work. This toolbox is distributed without any warranty and, therefore, the user is responsible for assessing the correctness of the software.
Please cite the following publication if you publish work based on the zonoLAB toolbox:
For general background on hybrid zonotopes, refer to the following publication:
More information on the hybrid zonotopes and applications can be found in the following publications:
Jacob A. Siefert, Trevor J. Bird, Andrew F. Thompson, Jonah J. Glunt, Justin P. Koeln, Neera Jain, Herschel C. Pangborn, Reachability Analysis Using Hybrid Zonotopes and Functional Decomposition, arXiv:2304.06827v2, 2024.
Joshua Ortiz, Alyssa Velluci, Justin Koeln, Justin Ruths, Hybrid Zonotopes Exactly Represent ReLU Neural Networks, IEEE Conference on Decision and Control, 2023.
Jacob A. Siefert, Andrew F. Thompson, Jonah J. Glunt, Herschel C. Pangborn, Set-Valued State Estimation for Nonlinear Systems Using Hybrid Zonotopes, IEEE Conference on Decision and Control, 2023.
Jacob A. Siefert, Trevor J. Bird, Justin P. Koeln, Neera Jain, Herschel C. Pangborn, Successor Sets of Discrete-time Nonlinear Systems Using Hybrid Zonotopes, American Control Conference, 2023.
Jacob A. Siefert, Trevor J. Bird, Justin P. Koeln, Neera Jain, Herschel C. Pangborn, Robust Successor and Precursor Sets of Hybrid Systems using Hybrid Zonotopes, IEEE Control Systems Letters, 2022.
Trevor J. Bird, Neera Jain, Herschel C. Pangborn, Justin P. Koeln, Set-Based Reachability and the Explicit Solution of Linear MPC using Hybrid Zonotopes, American Control Conference, 2022.
Trevor J. Bird, Neera Jain, Unions and Complements of Hybrid Zonotopes, IEEE Control Systems Letters, 2021.
Dissertations:
Jacob A. Siefert, Reachability Analysis of Nonlinear and Hybrid Systems Using Hybrid Zonotopes and Graphs of Functions, Mechanical Engineering (PhD), Penn State University, 2023.
Trevor J. Bird, Hybrid Zonotopes: A Mixed-Integer Set Representation for the Analysis of Hybrid Systems, Mechanical Engineering (PhD), Purdue University, 2022.