Justin Koeln1, Trevor J. Bird2, Jacob Siefert3, Justin Ruths1, Herschel C. Pangborn3, and Neera Jain2*This material is based upon work supported by the National Science Foundation Graduate Research Fellowship under Grant No. DGE-1333468.1Justin Koeln and Justin Ruths are with the Department of Mechanical Engineering,University of Texas at Dallas, Richardson, TX, USAjustin.koeln@utdallas.edu, jruths@utdallas.edu2Trevor J. Bird and Neera Jain are with the School of Mechanical Engineering,Purdue University, West Lafayette, IN, USAbird6@purdue.edu,neerajain@purdue.edu3Jacob Siefert and Herschel C. Pangborn are with the Department of Mechanical Engineering,The Pennsylvania State University, University Park, PA, USAjas7031@psu.edu, hcpangborn@psu.edu
Abstract
This paper introduces zonoLAB, a MATLAB-based toolbox for set-based control system analysis using the hybrid zonotope set representation. Hybrid zonotopes have proven to be an expressive set representation that can exactly represent the reachable sets of mixed-logical dynamical systems and tightly approximate the reachable sets of nonlinear dynamic systems. Moreover, hybrid zonotopes can exactly represent the continuous piecewise linear control laws associated with model predictive control and the input-output mappings of neural networks with piecewise linear activation functions. The hybrid zonotope set representation is also highly exploitable, where efficient methods developed for mixed-integer linear programming can be directly used for set operation and analysis. The zonoLAB toolbox is designed to make these capabilities accessible to the dynamic systems and controls community, with functionality spanning fundamental operations with hybrid zonotope, constrained zonotope, and zonotope set representations, powerful set analysis tools, and general-purpose algorithms for reachability analysis of open- and closed-loop systems.
I Introduction
Set-based methods are increasingly used for the analysis and control of dynamic systems. These methods are supported by a well-established and rigorous theoretical foundation [1, 2, 3] and are becoming more practical in application due to expressive and efficient set representations [4, 5, 6, 7, 8], improved algorithms [9, 10, 11], and the availability of open-source software packages [12, 13, 14, 15, 16, 17, 18, 19]. Within the field of set-based methods, a subset of techniques are based on set propagation and reachability analysis, as reviewed in [20]. Whether used for safety verification, state estimation, dynamic system analysis, or control design, set propagation techniques generally focus on iterative procedures to determine the set of states reachable by a dynamic system, given a bounded set of initial conditions and bounded sets of controllable inputs, exogenous disturbances, and/or model uncertainty. Open-source software toolboxes are available for a variety of set-based methods [12, 13, 14, 15, 16, 17, 18, 19].While a complete review of available toolboxes falls outside the scope of this brief paper, each toolbox is tailored to balance performance and computational cost when applying select analysis techniques to particular classes of systems through the choice of appropriate set representations and algorithms that exploit the structure of these representations.
The objective of this paper is to introduce zonoLAB111Available for download at https://github.com/ESCL-at-UTD/zonoLAB under the GNU General Public License., a MATLAB toolbox that strategically exploits the structures of zonotopic set representations, including zonotopes, constrained zonotopes, and hybrid zonotopes, for a wide range of set operations and applications. A unique feature of zonoLAB is the use of hybrid zonotopes, a set representation using binary factors to define the union of up to constrained zonotopes (i.e., convex polytopes).In addition to basic set operations, such as linear mappings, Minkowski sums, and intersections, zonoLAB provides user-friendly implementations of recent results exploiting the hybrid zonotope set representation, such as reachability analysis of Mixed Logical Dynamical (MLD) and Piecewise Affine (PWA) systems [5], set-based representations of Model Predictive Control (MPC) feedback policies and closed-loop reachability [21], exact set-based representations of neural networks with ReLU activations functions [22], and set-based approximations of nonlinear system dynamics for analysis and control design [23].
The remainder of this paper is organized as follows. Section II provides background information on zonotopic set representations and operations. The structure and main functionality of zonoLAB are presented in Section III. Section IV demonstrates how zonoLAB can be used to compute reachable sets for MLD and PWA systems, MPC-controlled systems, neural networks, and systems with nonlinear dynamics. Section V concludes the paper.
Notation:Sets are denoted by uppercase calligraphic letters, e.g., . Commas in subscripts are used to distinguish between properties that are defined for multiple sets; e.g., describes the complexity of the set . The -dimensional unit hypercube is denoted by while the constrained unit hypercube is . The set of all -dimensional binary vectors is denoted by .The cardinality of the discrete set is denoted by .The concatenation of two column vectors to a single column vector is denoted by . The bold numbers and denote matrices of all and elements, respectively, and denotes the identity matrix with dimensions indicated by subscripts when not easily deduced from context.
II Set Representations and Basic Operations
II-AZonotopic Set Representations
The zonoLAB toolbox is primarily built on three main zonotopic representations: the zonotope, the constrained zonotope, and the hybrid zonotope.
Definition 1
(Zonotope) [24]A set is a zonotope in Generator-representation (G-rep) if there exists generator matrix and center such that
(1)
and is denoted by .
Definition 2
(Constrained Zonotope) [4]A set is a constrained zonotope in Constrained Generator-representation (CG-rep) if there exists a generator matrix , center , constraint matrix , and constraint vector such that
(2)
and is denoted by .
Definition 3
(Hybrid Zonotope) [5]A set is a hybrid zonotope in Hybrid Constrained Generator-representation (HCG-rep) if there exists a continuous generator matrix , binary generator matrix , center , continuous constraint matrix , binary constraint matrix , and constraint vector such that
(3)
and is denoted by .
For zonotopes and constrained zonotopes, the columns of are called the generators and the elements of are called factors. For hybrid zonotopes, the columns of () are called the continuous generators (binary generators) and the elements of () are called continuous factors (binary factors).
As shown in Fig. 1, a zonotope is an affine image of the unit hypercube , while a constrained zonotope is an affine image of the constrained unit hypercube . By introducing binary factors, a hybrid zonotope is equivalent to the union of constrained zonotopes as
(4a)
(4b)
where the constrained zonotope (4b) has its center and constraint vector shifted by the value of the discrete set mapped by and , respectively. Therefore, while a constrained zonotope is the affine image of the intersection of a hypercube and hyperplanes, a hybrid zonotope is the affine image of multiple intersections of a hypercube and shifted hyperplanes, as shown in Fig. 1.
Note that zonotopes are a subset of convex polytopes that are centrally symmetric, constrained zonotopes can represent any convex polytope [4], and hybrid zonotopes can represent the union of any collection of convex polytopes [5]. Moreover, zonotopes are a subset of constrained zonotopes, which are a subset of hybrid zonotopes, and a hybrid zonotope degenerates to a constrained zonotope when , which degenerates to a zonotope when .
Operation
Mathematically
Method
Scalability
Generalized intersection
or &
Cartesian product
tProd
Convex hulla
vexHull
Intersection with halfspace(s)
fspaceIntersection
Linear mapping
mes or *
Minkowski sum
s or +
Pontryagin differenceb
tryDiff
Projection onto subset of dimensions
jection
One-step reach set for MLD system
pMLD
Union
on
a For o and Zono objects only. b Set must be a o object.
II-BZonotopic Set Operations
Historically, the computational benefits of using a zonotope set representation come from the relative ease, numerical accuracy, and scalability of computing linear mappings and Minkowski sums, where given matrix and zonotopes ,
(5a)
(5b)
Such practical benefits were extended to the general class of convex polytopes with the invention of constrained zonotopes [4]. While linear mappings and Minkowski sums are useful for reachability analysis, additional operations are also made computationally efficient through the use of zonotopic set operations. For example, while it has been shown that the zonotope containment problem is co-NP-complete [25], the necessary, but not sufficient, condition for if and are zonotopes is formulated as a feasibility check for a system of linear equations. This enabled set containment conditions to be directly embedded in robust MPC formulations [26]. The zonoLAB toolbox aims to provide a unified framework that implements recent developments in zonotope, constrained zonotope, and hybrid zonotope set operations [10, 5, 21, 27, 28, 29, 23, 22] to make the practical benefits of these set representations more accessible to the dynamic systems and controls community.
III The zonoLAB Toolbox
III-AToolbox Structure
Using Object-Oriented Programming (OOP) in MATLAB, zonoLAB consists of three main classes—o, Zono, and Zono—used to represent zonotopes, constrained zonotopes, and hybrid zonotopes, respectively. An abstract class, tractZono, is used as a superclass for these three classes. As an abstract class, tractZono cannot be instantiated but is used to define common functionality for the o, Zono, and Zono classes.
Methods provided by the zonoLAB toolbox are organized into five categories: properties, arithmetic, visualization, complexity, and auxiliary. For brevity, Table 3 provides a list of only the arithmetic methods currently available using the three zonotopic set representations, along with the computational complexity of each operation. These methods are defined for the tractZono superclass to be used with any of the three main classes.
assuming the variables Gb,c,Ac,Ab,b are predefined. Zonotopes and constrained zontopes are defined similarly. Sets can also be recast to a more expressive representation. For example, a constrained zonotope, Zc, can be recast as a hybrid zonotope using
⬇
=hybZono(Zc)
which automatically sets Gb and Ab to matrices of all zeros of the appropriate dimension.
A convex polytopic set defined in H-rep as , where , , and is the number of halfspaces, can be represented as a constrained zonotope using
⬇
G=conZono([Hf])
The union of sets in H-rep can be represented as a hybrid zonotope using
⬇
CG=hybZono(H_collection)
where ollection is a cell array where the cell is corresponding to the set . Note that the sets do not need to have the same number of halfspaces.
For a collection of vertices , where , a set defined in V-rep is conventionally considered as the convex hull of the vertices, . However, zonoLAB provides the flexibility to use this collection of vertices to define a set as the union of the vertices, as the union of line segments between vertices, as the conventional convex hull of these vertices, or some combination of these three [23]. Thus, in addition to providing the vertex matrix , an incidence matrix must also be provided, where the rows correspond to the vertices and the columns correspond to the desired convex sets. Elements if the vertex is a member of the set. All other entries are zero. For example, if , the result is a hybrid zonotope representing the union of the vertices. If is defined such that and , then the result is a hybrid zonotope representing the line segments between each consecutive vertex in the vertex matrix, including a line segment between the first and last vertices. Finally, if , then the result is a constrained zonotope representing the convex hull of the vertices. In general, with matrices V and M defined, the desired set is created using
⬇
CG=hybZono({V,M})
where M} is a cell array.
III-CPlotting
In zonoLAB, plotting a zonotopic set is achieved by identifying all vertices of the set, and the corresponding collection of faces composed of subsets of these vertices, to use MATLAB’s ch function for visualizing 2D and 3D polygons. As a method of the tractZono class, f]=plot(Z,optPlot) is used to determine the vertices and faces of the -dimensional set Z stored in the matrix v and the matrix f, where is the largest number of vertices on a single face. The second argument Plot is an object of the tOptions class used to tailor display properties for the set. Since plotting Zono and Zono objects requires solving linear programs, a verOptions class is also included in zonoLAB for users to specify their preferred solver for each type of optimization problem. The t method calls set-specific methods for the o, Zono, and Zono classes. For brevity, only the main ideas of the 3D plotting algorithms provided in zonoLAB are presented here, assuming that the set is full-dimensional.
For o objects, zonoLAB exploits the fact that, in 3D, the faces of a zonotope are parallelograms formed by two of the generators from the zonotope centered at a linear combination of the remaining generators [30]. As a result, the number of vertices of a 3D zonotope is bounded such that and the number of faces is bounded such that [3]. However, note that the number of rows of v will likely exceed this bound on since no effort is made to identify and remove repeated vertices. Since plotting o objects does not require solving linear programs, plotting sets is relatively fast even when is large (e.g., a random zonotope with produces vertices and faces and is plotted in approximately 1 second on a standard desktop computer).
Plotting Zono and Zono objects is considerably more time intensive. The zonoLAB toolbox uses a vertex-centric approach, where linear programming is used to identify each vertex and the number of optimization problems to be solved scales linearly with the number of vertices in the set. Currently, zonoLAB plots Zono objects by plotting each constrained zonotope from (4b) and using the Leaves method to determine the discrete set containing the combinations of binary factors that result in non-empty constrained zonotopes. Therefore, plotting a Zono object is the same as plotting Zono objects.
The zonoLAB toolbox plots Zono objects in 3D using a modified version of the expanding polytope algorithm from [31]. With the goal of finding all vertices of a convex polytope, linear programming is used to determine the furthest point in a particular direction while remaining within the set. After identifying an initial 3-simplex with 4 vertices, normal vectors for each face are used as these search directions. If a vertex is identified that is further in this direction than the existing face, the vertex is added to the list of vertices, the existing face is removed from the list of faces, and new faces are defined that include this new vertex. This process is repeated until all face normals have been used as search directions and no new vertices are found. While slower than o plotting, this approach remains practical for medium-complexity sets (e.g., a random constrained zonotope with and , produces vertices and faces and is plotted in approximately 60 seconds on a standard desktop computer, where GUROBI [32] is called to solve a linear program 15,432 times).
III-DSet-based Mappings
The zonoLAB toolbox also leverages the notion of a set-based mapping, where dimensions of a set are categorized as either input or output dimensions and the set provides the mapping between inputs and outputs over a bounded input domain. This notation is similar to the graph of a function, where if then the graph is . The idea of set-based mapping is demonstrated using the following linear system example but is generalizable (and more valuable) when representing piecewise linear and nonlinear mappings.
Consider a linear, discrete-time, time-invariant system , where , , and , and are known. The one-step reachable set is computed as
(6)
Using zonoLAB, with A, B, Rk, and U predefined, the reachable set lus can be computed using methods mes and s of the tractZono class as
The one-step reachable set is also known as the successor set, , which can be defined for the more general nonlinear dynamics as
(7)
The notion of an open-loop state-update set was presented in [23], where a set is used to bound all possible state transitions given by over a predefined bounded domain of states and inputs. These state-update sets are an example of a set-based mapping. When a state-update set capturing open-loop dynamics is coupled to a similar set-based map of a given control law, the resulting closed-loop state-update set bounds the evolution of the closed-loop system and can be used for closed-loop reachability analysis and verification.
Mathematically, the open-loop state-update set is defined as
(8)
where is the domain set of , which is chosen as a region of interest for analysis, as in [29].
Using the open-loop state-update set , with domain set defined such that , the successor set can be computed using projection and generalized intersection operations as
(9)
While (6) provides a method for computing the one-step reachable set, a state-update set can also be used to compute . Assuming the domain set is known such that , then
(10)
This state-update set and the successor set operation from (9) can be used to compute using zonoLAB as
When comparing the use of (9) and (10) with the use of (6), it may appear that there are considerable disadvantages with the state-update set approach, namely is only computed accurately if and the resulting set is a Zono (due to the use of generalized intersection in (9)) instead of the o object obtained when using (6) (assuming and are o objects). However, the use of state-update sets (and set-based mappings in general) allows reachability analysis based on (9) to be easily extended to hybrid systems (including MLD and PWA systems) and nonlinear systems. Additionally, as discussed in [29], state-update sets can also be used to compute precursor sets for backward reachability analysis. The following sections demonstrate how set-based mappings (including state-update sets) provide a unifying framework for several different applications of reachability analysis.
IV Reachability Analysis Examples
The purpose of this section is to demonstrate how zonoLAB can be used to conduct reachability analysis of several different types of systems using the unique capabilities of the hybrid zonotope representation.
IV-AMLD and PWA System Analysis
Based on the work from [5], zonoLAB can compute the reachable sets of MLD systems, a modeling framework combining continuous and binary variables with logical relations in mixed-integer inequalities to express complex dynamic systems [33]. A linear discrete-time MLD system is expressed as
(11a)
(11b)
where are the system states, are the control inputs, and are auxiliary variables. The number of inequality constraints is denoted by such that . Assuming knowledge of A, , , ff, , , , and ff along with the sets Rk and U (such that and ), the compact set W (such that must also be provided.444The set W can be generated automatically using the modeling tool Hybrid System DEscription Language (HYSDEL) [34]. Using zonoLAB, the successor set for the MLD system is computed as
While MLD and PWA systems are equivalent [35], it may be more computationally-efficient to compute the reachable set of a PWA system directly. Using zonoLAB, state update sets can be defined as in (10) using the linear dynamics over a domain , where corresponds to the convex polytope of the PWA system. For a two-state autonomous system with two regions of linear dynamics, the one-set reachable set can be computed using
Fig. 2 shows the reachable sets for the two-equilibrium example system from [5]. Represented as either an MLD system, generated using HYSDEL [34], or as a PWA system, the resulting reachable sets computed using the mpleTwoEqilibrium.m file provided with zonoLAB are the same. The reachable sets computed using the PWA representation have slightly more continuous generators and constraints but do not require the definition and bounding of auxiliary variables as in the MLD representation.
IV-BClosed-loop MPC Analysis
Based on the work from [21], hybrid zonotopes can exactly represent the piecewise linear feedback control law associated with linear MPC formulations of the form
(12)
where is the state vector and is the input vector, related by linear dynamics with and . The sampled state of the system is . The inputs, predicted states, and predicted terminal state are constrained to the convex polytopic sets , , and and are penalized in the quadratic cost function with weight matrices , , and , respectively. To demonstrate this capability, the mpleDoubleIntegrator.m file provided with zonoLAB computes and plots the MPC control law as a hybrid zonotope for the double integrator example from [21].
To perform closed-loop reachability analysis of MPC, the open-loop state-update set from (8) can be combined with the hybrid zonotope representation of the feedback control law (referred to as the state-input map in [23]). It is assumed that the hybrid zonotope maps the measured state to the applied control input such that and is defined over a domain such that for all . Then, the closed-loop state-update set such that is computed as
(13)
In addition to forward reachability analysis, this closed-loop state-update set can also be used for backward reachability analysis. For example, in [29], backward reachable sets were used to compute the maximal positive invariant set of a closed-loop system under an MPC control law.
To represent MPC formulations beyond the form of (12), neural networks can be used to approximate the MPC control policies [23, 36], where representing neural networks as hybrid zonotopes is presented in the following section.
IV-CNeural Network Representation
Based on the work from [22], zonoLAB can exactly represent the input-output mapping of an -layered, ReLU-based, feed-forward, fully-connected neural network mapping inputs to outputs such that
(14)
where and are the weight matrix and bias vector, respectively, between layers and , with and . All activation functions are ReLU functions that operate element-wise, i.e., for the pre-activation vector ,
(15)
where the ReLU function is defined as . The key insight from [22] is that a single ReLU activation function can be represented as a hybrid zonotope containing points over a predetermined domain . The user-defined parameter is chosen large enough so that for all anticipated values of . Specifically, a single ReLU activation function is represented as a hybrid zonotope with continuous generators, binary generator, and constraints. Over the domain such that , the entire feed-forward ReLU neural network with ReLU activation functions is exactly represented as a hybrid zonotope with continuous generators, binary generators, and constraints, assuming is a zonotope with generators.
Using zonoLAB, the hybrid zonotope representation of a neural network is computed as
⬇
,Y]=reluNN(X,Ws,bs,a)
where X is a o object with generators defining the domain ,Ws is a cell array containing the weight matrices, bs is a cell array containing the bias vectors, and a defines the domain for each reLU activation function. The output NN is the hybrid zonotope such that and the output Y is the set of outputs from the neural network produced by inputs in the set X.
Fig. 3 shows the nonlinear function , the approximation of this function using a level neural network with total activation functions, the corresponding approximation error, and the exact representation of this neural network as a hybrid zonotope over the domain , which corresponds to one of the examples from [22].
IV-DNonlinear System Analysis
Based on the work from [28, 23], zonoLAB can bound nonlinear functions using hybrid zonotopes, which enables reachability analysis of systems with nonlinear dynamics. Considering a unary function over the domain , the goal is to find a hybrid zonotope such that . The process used in [28, 23] starts by determining a set of pairs , such that , , and . As described in Section III-B, these pairs can be stored in the vertex matrix where . The associated incidence matrix can be defined to create a hybrid zonotope representing the union of the line segments connecting neighboring vertices. While approximates the nonlinear function, to determine such that , a set bounding the difference between this piecewise-linear approximation and the nonlinear function must identified to compute . Processes for automating the choice of points, computing the error set , and using functional decomposition to bound multi-input functions are currently under development [37] and will be included in future releases of zonoLAB. While applicable to nonlinear functions in general, this approach can also be used to determine hybrid zonotopes that bound 1) the open-loop state update set from Section III-D for a system with nonlinear dynamics , 2) nonlinear feedback control laws, and 3) input-output mappings for neural networks with nonlinear activation functions.
(s)
2
0
0
0
0.2
103
44
59
38
1.1
204
88
118
108
3.6
305
132
177
162
6.8
406
176
236
226
12.4
507
220
295
300
20.1
608
264
354
384
29.2
709
308
413
518
44.9
810
352
472
672
62.9
911
396
531
984
95.0
1012
440
590
1568
186.2
1113
484
649
2666
292.3
1214
528
708
4732
482.3
To demonstrate the ability to bound nonlinear functions and conduct closed-loop reachability analysis of nonlinear dynamic systems, Fig. 4 shows numerical results based on the example from [28], which is provided with zonoLAB in the mpleNonlinear.m file. This examples considers a two-state, one-input, discrete-time nonlinear system (where the dynamics include ) under feedback control based on a saturated Linear Quadratic Regulator (LQR). Fig. 4(a) shows the ability to approximate the function using and bound the function using , which is then used to produce the open-loop state update set . Fig. 4(b) shows the saturated LQR control law represented as a hybrid zonotope, which is combined with to create the closed-loop state update set . Fig. 4(c) shows the forward reachable sets of the closed-loop system for twelve time steps. Finally, for each reachable set, Table II shows , , , , and the computation time (on a standard desktop computer) to determine and plot the resulting constrained zonotopes, using the process described in Section III-C. Despite the large number of binary factors, it is relatively quick to identify the number of non-empty sets using GUROBI and to plot each set using linear programming to find each vertex and face. However, these results motivate the need for set representation complexity reduction based on methods from [38], which will be provided in future releases of zonoLAB.
V Conclusions
This paper introduced zonoLAB as a MATLAB toolbox using zonotopic set representations, including zonotopes, constrained zonotopes, and hybrid zonotopes, for the analysis of dynamic systems and their controllers. The zonoLAB toolbox provides a suite of computationally-efficient set-based operations that exploit the specific structures of these zonotopic set representations and user-friendly methods that package complex analysis into simple function calls. The use of hybrid zonotopes in particular provides a scalable approach to applications where sets of interest correspond to the union of convex polytopes. The zonoLAB toolbox currently includes the basic functionality for defining zonotopic sets and computing fundamental set operations along with several illustrative examples. Ongoing efforts aim to expand the capability of zonoLAB in areas such as representing neural networks with a variety of activation functions, functional decomposition methods for bounding nonlinear functions with hybrid zonotopes, and complexity reduction techniques for zonotopic sets.
References
[1]F.Blanchini and S.Miani, Set-Theoretic Methods in Control,2nded.Springer, 2015.
[2]F.Borrelli, A.Bemporad, and M.Morari, Predictive Control for linearand hybrid systems.Cambridge:Cambridge University Press, 2011.
[3]K.f*ckuda, “Lecture notes: Polyhedral Computation, Spring 2016,” 2016.
[4]J.K. Scott, D.M. Raimondo, G.R. Marseglia, and R.D. Braatz, “Constrainedzonotopes: A new tool for set-based estimation and fault detection,”Automatica, vol.69, pp. 126–136, 2016.
[5]T.J. Bird, H.C. Pangborn, N.Jain, and J.P. Koeln, “Hybrid zonotopes: anew set representation for reachability analysis of mixed logical dynamicalsystems,” Automatica, vol. 154, p. 111107, 2023.
[6]N.Kochdumper and M.Althoff, “Sparse Polynomial Zonotopes: A Novel SetRepresentation for Reachability Analysis,” IEEE Transactions onAutomatic Control, vol.66, no.9, pp. 4043–4058, 2021.
[7]S.Kousik, A.Dai, and G.X. Gao, “Ellipsotopes: Uniting Ellipsoids andZonotopes for Reachability Analysis and Fault Detection,” IEEETransactions on Automatic Control, vol.68, no.6, pp. 3440–3452, 2023.
[8]D.Silvestre, “Constrained Convex Generators: A Tool Suitable for Set-BasedEstimation with Range and Bearing Measurements,” IEEE Control SystemsLetters, vol.6, pp. 1610–1615, 2022.
[9]S.Sadraddini and R.Tedrake, “Linear Encodings for Polytope ContainmentProblems,” IEEE Conference on Decision and Control, pp. 4367–4372,2019.
[10]V.Raghuraman and J.P. Koeln, “Set operations and order reductions forconstrained zonotopes,” Automatica, vol. 139, 2022.
[11]X.Yang and J.K. Scott, “A comparison of zonotope order reductiontechniques,” Automatica, vol.95, pp. 378–384, 2018.
[12]M.Althoff, N.Kochdumper, and M.Wetzlinger, “CORA 2020 Manual,” pp.1–162, 2020.
[13]M.Kvasnica, J.Holaza, B.Takacs, and D.Ingole, “Design and verification oflow-complexity explicit MPC controllers in MPT3,” European ControlConference, pp. 2595–2600, 2015.
[14]S.Bak and P.S. Duggirala, “HyLAA: A Tool for ComputingSimulation-Equivalent Reachability for Linear Systems,” Proceedingsof the 20th International Conference on Hybrid Systems: Computation andControl, pp. 173–178, 2017.
[15]G.Frehse, C.LeGuernic, A.Donzé, S.Cotton, R.Ray, O.Lebeltel,R.Ripado, A.Girard, T.Dang, and O.Maler, “SpaceEx: Scalableverification of hybrid systems,” Lecture Notes in Computer Science(including subseries Lecture Notes in Artificial Intelligence and LectureNotes in Bioinformatics), vol. 6806 LNCS, pp. 379–395, 2011.
[16]P.J. Meyer, A.Devonport, and M.Arcak, “TIRA: Toolbox for intervalreachability analysis,” Proceedings of the 22nd ACM InternationalConference on Hybrid Systems: Computation and Control, pp. 224–229, 2019.
[17]S.Bogomolov, M.Forets, G.Frehse, K.Potomkin, and C.Schilling,“JuliaReach: A toolbox for set-based reachability,” Hybrid Systems:Computation and Control, 2019.
[19]A.P. Vinod, J.D. Gleason, and M.M.K. Oishi, “SReachTools: A MATLABStochastic Reachability Toolbox,” 22nd ACM International Conferenceon Hybrid Systems: Computation and Control, pp. 33–38, 2019.
[20]M.Althoff, G.Frehse, and A.Girard, “Set Propagation Techniques forReachability Analysis,” Annual Review of Control, Robotics, andAutonomous Systems, vol.4, no.1, pp. 1–27, 2021.
[21]T.J. Bird, N.Jain, H.C. Pangborn, and J.P. Koeln, “Set-Based Reachabilityand the Explicit Solution of Linear MPC using Hybrid Zonotopes,”American Control Conference, 2022.
[22]J.Ortiz, A.Vellucci, J.Koeln, and J.Ruths, “Hybrid Zonotopes ExactlyRepresent ReLU Neural Networks,” IEEE Conference on Decision andControl, 2023.
[23]J.A. Siefert, T.J. Bird, J.P. Koeln, N.Jain, and H.C. Pangborn,“Reachability Analysis of Nonlinear Systems Using Hybrid Zonotopes andFunctional Decomposition,” arXiv:2304.06827, 2023.
[24]P.Mcmullen, “On Zonotopes,” Transactions of the AmericanMathematical Society, vol. 159, pp. 91–109, 1971.
[25]A.Kulmburg and M.Althoff, “On the co-NP-completeness of the zonotopecontainment problem,” European Journal of Control, vol.62, pp.84–91, 2021.
[26]V.Raghuraman and J.P. Koeln, “Tube-based robust MPC with adjustableuncertainty sets using zonotopes,” American Control Conference,2021.
[27]T.J. Bird and N.Jain, “Unions and Complements of Hybrid Zonotopes,”IEEE Control Systems Letters, vol.6, pp. 1778–1783, 2022.
[28]J.A. Siefert, T.J. Bird, J.P. Koeln, N.Jain, and H.C. Pangborn,“Successor Sets of Discrete-time Nonlinear Systems Using HybridZonotopes,” American Control Conference, 2023.
[29]——, “Robust Successor and Precursor Sets of Hybrid Systems using HybridZonotopes,” IEEE Control Systems Letters, vol.7, pp. 355–360,2022.
[30]L.J. Guibas, A.Nguyen, and L.Zhang, “Zonotopes as bounding volumes,”Proceedings of the 14th annual ACM-SIAM symposium on discretealgorithms, 2003.
[31]G.vanden Bergen, “Proximity queries and penetration depth computation on 3dgame objects,” Game Developers Conference, 2001.
[33]A.Bemporad and M.Morari, “Control of systems integrating logic, dynamics,and constraints,” Automatica, vol.35, pp. 407–427, 1999.
[34]F.D. Torrisi and A.Bemporad, “HYSDEL - A tool for generating computationalhybrid models for analysis and synthesis problems,” IEEE Transactionson Control Systems Technology, vol.12, no.2, pp. 235–249, 2004.
[35]W.P. Heemels, B.DeSchutter, and A.Bemporad, “Equivalence of hybriddynamical models,” Automatica, vol.37, no.7, pp. 1085–1091, 2001.
[36]B.Karg and S.Lucia, “Efficient Representation and Approximation of ModelPredictive Control Laws via Deep Learning,” IEEE Transactions onCybernetics, vol.50, no.9, pp. 3866–3878, 2020.
[37]J.J. Glunt, J.A. Siefert, A.F. Thompson, and H.C. Pangborn, “Error Boundsfor Compositions of Piecewise Affine Approximations,”arXiv:2402.15601, 2024.
[38]T.J. Bird, “Hybrid Zonotopes: A Mixed-integer Set Representation for theAnalysis of Hybrid Systems,” Ph.D. Dissertation, School Mech. Eng.,Purdue University, West Lafayette, IN, 2022.
Introduction: My name is Jeremiah Abshire, I am a outstanding, kind, clever, hilarious, curious, hilarious, outstanding person who loves writing and wants to share my knowledge and understanding with you.
We notice you're using an ad blocker
Without advertising income, we can't keep making this site awesome for you.