Automated Control Design for a Piecewise-Ane Approximation of a Abstract

Automated Control Design for a Piecewise-Ane Approximation of a
Class of Nonlinear Systems
Luis Rodrigues
and Jonathan P. How
This paper establishes a framework to automate the
generation of a piecewise-ane approximation for a class
of nonlinear systems. The results enable a completely
automated procedure for designing an output feedback
controller using a method described previously. To perform the piecewise-ane approximation it is assumed
that a uniform rectangular grid is provided for the domain of the nonlinearity. Given this grid, there are
three basic steps of the algorithm presented in this paper. First, a simplicial partition of the grid is found
that provides a partition of the entire state space into
polytopic cells. Then, the piecewise-ane approximation of the nonlinearity within each cell of the partition
is derived. Finally, a polytopic description of the cells
and a parametric description of the boundaries between
cells is created. Each cell of the partition will have a
closed loop equilibrium at a point that must be specied.
This paper presents an optimization objective that can
be used to automate the selection of these equilibrium
points. All steps in this process are completely automated, which represents a key step in the development
of control synthesis tools for piecewise-ane approximations of nonlinear systems.
1 Introduction
Piecewise-ane systems represent an important and
powerful modeling class to approximate nonlinear systems. For example, they arise naturally from linear dynamics in the presence of saturations or as a particular
case of hybrid systems where the continuous dynamics
within the dierent discrete modes are linear or ane [1].
Over the past few years several promising new methods have emerged for the analysis of piecewise-linear
and piecewise-ane systems [2, 3, 4, 5]. Synthesis has
also been attempted for piecewise-linear systems based
on the analysis methods [2, 4]. Synthesis has been attempted for uncertain piecewise-ane discrete-time systems [6]. However, none of these previous works addressed the synthesis of output feedback controllers.
In a previous paper [7], the authors presented
an output feedback controller synthesis methodology
for continuous-time piecewise-ane systems using a
Lyapunov-based approach. However, before the design
could be performed, many parameters had to be pro1 Supported by a PRAXIS XXI grant, Dept.Aeronautics and
Astronautics, Stanford University [email protected]
2 Department of Aeronautics and Astronautics, Massachusetts
Institute of Technology, [email protected]
vided by the designer to the synthesis algorithm. Finding these parameters is often a very tedious process, especially for a general complex dynamical system, and is
far from intuitive. Although the problem of approximating a nonlinear function by a piecewise-ane function
dened over a simplicial partition has been well studied [8, 9, 10], it has been done from an analysis perspective. Several new issues arise when the problem is
approached from a synthesis perspective. For example,
in that case we must guarantee that the output parameters of this approach t the framework of the synthesis
method. As such, it was dicult to nd an algorithm
that completely ts the problem setting in [7]. The purpose of the present paper is to present an algorithm that,
given a nonlinear system in a particular class and a uniform rectangular grid for the domain of the nonlinearity,
automatically approximates the nonlinear system by a
piecewise-ane system and provides all the parameters
required by the output feedback synthesis method developed in [7]. When combined with the results of [7], this
paper gives a fully automated control design technique
for a piecewise-ane approximation of a class of nonlinear systems. The design of controllers for the original
nonlinear system can then be posed as a robust control
This paper is divided into 8 parts. The problem formulation is presented rst, followed by the automatic
controller design machine concept and a motivating example. The algorithm for nding the polytopic description of the cells, the description of the boundaries and
the piecewise-ane approximation of the nonlinearity is
presented in Section 5. Next, an optimization procedure
for nding the desired closed loop equilibrium points is
described. Finally, an example is presented.
2 Problem Formulation
Assumption 1: Class of Nonlinear Systems. The
class of nonlinear systems considered in this work is described by:
x_ = Axx Axz
Azx Azz
x + bx + B (x; z )u (1)
f (x; z )
y = C xz
where bx 2 Rnx is a constant vector, B = [BxT BzT ]T ,
x 2 Rnx contains the state variables with ane dynamics, and z 2 Rnz contains the state variables associated
Axx Axz
Azx Azz
wc l f
Ai bi
Hi g i
Fi j li j wcil
Figure 1: Automatic Controller Design Machine
Figure 2: Inverted Pendulum on a Cart
with the nonlinear dynamics. These variables will be
stacked together in the vector w = [xT z T ]T . The vector
u 2 Rnu is the control input. All the matrices in the
equations are assumed to have the appropriate dimensions. It is further assumed that the mapping from w to
w_ does contain an arbitrarily small neighborhood of the
origin, so that the conditions of Brockett's Theorem do
not apply [11] and the linearization in a neighborhood
of the origin is well dened. The system is assumed to
be locally strongly accessible, which can be checked by
the strong accessibility rank condition using iterated Lie
brackets of the drift term and the input function B (x; z )
[12]. Note that, in the case where there are no variables
with ane dynamics, the description of the system is
z_ = f (z ) + Bz (z )u, which is the common description of
a nonlinear system that is linear in the input.
the whole system is to only have one equilibrium point,
wcl . Therefore, it must be ensured that the location of
the closed-loop equilibrium points of all regions except
the one containing wcl will be outside the corresponding region. This can be accomplished by selecting these
desired closed-loop equilibrium points wcli in a certain
optimal sense (see Section 6). These points must also
be inputs for the design procedure in the second box
(see [7]). This paper addresses the left box in Figure 1
in Sections 5 and 6. The approach will be applied to the
motivating example described in the following section.
Assumption 2: Class of functions. It is assumed
that the function f (w) can be approximated by a
piecewise-ane function over a simplicial partition [9]
of its domain (intervals in R, triangles in R2 ). In other
words, the function can be approximated from knowledge of its values at the vertices of a simplicial grid.
Assumption 3: Support of function. It is assumed
that the support of the function f (w) is a compact1
hypercube and that a uniform rectangular grid is dened
in that compact support.
3 Automatic Controller Design Machine
The automatic controller design machine concept is presented schematically in Figure 1. The inputs to this machine are the system description, the desired closed-loop
equilibrium point wcl , and a uniform rectangular grid for
the domain of the nonlinearity involved in the dynamical system. Given these inputs, the rst box in Figure 1
creates a partition of the state space into a nite number
of polytopic cells and a piecewise-ane approximation
for the nonlinear function. The parameters describing
the partition and the approximation are then used as
inputs to the second box that designs a piecewise-ane
output feedback controller for the system [7], described
by the parameters Ki , Li and mi in each region i.
Note that in closed-loop there will be one equilibrium
point for each polytopic region, but the objective for
1 Piecewise-ane functions with a simplicial partition can uniformly approximate continuous functions on compact domains [13,
4 Motivating Example
To motivate the class of systems introduced in Section 2
and to better illustrate the dierent parts of the algorithm, we use a nonlinear model of the dynamics of an
inverted pendulum on a cart throughout the rest of the
paper (Figure 2). With w = [x1 x2 x3 x4 ]T = [x x_ _]T ,
the dynamics are given by
6 0
w_ = 4 0
y = 10
1 77 w + 66 0 77 +66
7 u;
f1 (w)
cos(x2 )
f2 (w)
0 w;
f1 (w) = M1 m2p l x24 sin(x2 ) + 3m8p g sin(2x2 ) , bx3 ;
f2 (w) = , 23l (g sin(x2 ) + f1 (x2 ; x3 ; x4 ) cos(x2 )) ;
M = mc + mp 1 , 34 cos2 (x2 ) , mc is the mass of the
cart, mp is the mass of the pendulum, l is the length
of the pendulum, and b is the friction coecient (we
assume b = 0 to simplify matters, since the nonlinearity
then only depends on two variables). Set mp = 13 kg,
mc = 1kg, and l = 0:2 m. The dynamics are in the
class represented in Eqs.1 and 2 with x = [x1 x2 ]T and
z = [x3 x4 ]T .
Assume that a uniform rectangular 2D grid with four
cells exists for the region around (x2 ; x4 ) = (; 0). More
precisely, in that grid x2 takes the values f 34 ; ; 54 g
and x4 takes the values f,2; 0; 2g. The next section describes the algorithm that, given this information, produces the input parameters required by the synthesis
method in [7].
5 Algorithm
Given a nonlinear system in the class dened in Section 2
the following problems must be solved:
1. Given a uniform rectangular grid for the domain
of the nonlinearity, order all vertices of that grid,
2. Group the vertices into simplicial cells,
3. Find a polytopic description for each cell,
4. Find a parametric description for the boundaries,
5. Find the piecewise-ane approximation of the
nonlinearity and the piecewise-constant approximation of the input matrix within each cell.
8 5
8 7
9 9 7 7
9 99
9 9
9 9
5.1 List of Vertices
5.2 Grouping of Vertices into Cells
Given the vertices ordered according to Section 5.1, the
algorithm to group n +1 vertices into each cell (where n
is the dimension of the domain of the nonlinearity) is:
1. Expand a tree with 2n , 1 branches for each node.
Each node in the tree corresponds to a vertex and
each branch corresponds to the allowable moves
from that vertex to its neighboring vertices.
2. For each node in the tree,
(a) Select the current node to be the start node.
(b) Run through the tree in a depth rst manner
until a depth of n has been reached and keep
track of the path being followed. The node
reached in this way is set as an end node.
(c) If the end node is a neighbor of the start node
(i.e., there is a branch in the tree connecting
the start and end nodes) then group the n +1
vertices (in the path just followed) as a cell.
(d) Repeat this loop until all nodes a depth n
away from the start node have been reached.
3. Repeat loop 2 for all nodes in the tree in the order
dictated by Section 5.1.
This algorithm is easily implemented by generating a
connecting matrix for the vertices. Entry (i; j ) being
one means that node j is a \child" of node i. This matrix is guaranteed to be upper triangular with zeros in
the main diagonal because of the ordering of the vertices.
The algorithm then proceeds by xing one vertex at a
Figure 3: Expanded Tree
x (rad/sec)
Following [9], if the grid is translated such that the point
corresponding to the minimum values of the variables is
the origin, then the vertices are ordered in increasing
number of nonzero coordinates. In addition, for every
set of vertices with the same number of r zero coordinates, the r tuples of possible locations of the zero
components is A-ordered and the r tuples with the corresponding vertices coordinates are B-ordered (see [9]
for details). For example, for the 2 2 grid given
for the inverted pendulum on a cart, if x2 is translated to x2 , 34 and x4 is translated to x4 + 2, the
ordering f(0; 0); ( 4 ; 0); ( 2 ; 0), (0; 1); (0; 2); ( 4 ; 1); ( 4 ; 2),
( 2 ; 1); ( 2 ; 2)g is obtained. Translating back the variables yields the nal ordering. The vertices will be referred to by their ordering in this list.
x (rad)
Figure 4: Simplicial Cells
time (row of the matrix) and nding the entries that are
1 (which represent the neighboring vertices). For each
of these entries, the corresponding row is then selected
and this process is done iteratively until a nested level
of n entries equal to 1 is reached. Then, step c) of the
algorithm is performed. Changing to another start vertex, the same process is then repeated until all vertices
(rows) have been selected as start nodes. For the pendulum example, the expanded tree is shown in Figure 3 and
the simplicial cells resulting from this tree are shown in
Figure 4. The connecting matrix and the matrix whose
rows give2 the composition of the3 cells are
0 1 0 1 0 1 0 0 0
1 2 6
60 0 1 0 0 1 0 1 07
61 4 67
60 0 0 0 0 0 0 1 07
62 3 87
60 0 0 0 1 1 1 0 07
62 6 87
Tree = 60 0 0 0 0 0 1 0 07 ; Cell = 64 5 777 :
60 0 0 0 0 0 1 1 17
64 6 77
60 0 0 0 0 0 0 0 17
46 7 95
40 0 0 0 0 0 0 0 15
6 8 9
0 0 0 0 0 0 0 0 0
The elements of each row of \Cell" (the rows are indexed
by cell number) are the numbers of the vertices (using
the ordering in Section 5.1) that form the cell. For example, cell 6 in Figure 4 and row 6 of Cell contain the
vertices with ordering numbers 4, 6 and 7.
5.3 Polytopic Description
Using a simplicial partition of the domain of the nonlinearity (of dimension n) for the class of systems described in Section 2 implies that the whole state space
IR(nx +nz ) will be partitioned into a nite number of poly-
topic regions. In fact, these polytopic regions will be
direct products of simplices (corresponding to the state
variables in the domain of the nonlinearity) with linear
subspaces (corresponding to the remaining state variables). The polytopic cells are denoted by Ri ; i 2 I ,
where I is a nite index set. If the number of hypercubes in the original grid is ngrid , then the cardinality
of this set is ngrid n! because there are n! simplices in
each hypercube. As a consequence of the assumptions
in Section 2, the polytopic description of the cells can
be cast in the form presented in [4]
Ri = fw j hTij w < gij ; j = 1; : : : ; n + 1g:
Each cell is then characterized by the vector inequality
HiT w , gi < 0
where Hi = [hi1 ; : : : ; hi(n+1) ], gi = [gi1 ; : : : ; gi(n+1) ]T .
To derive the polytopic description of the cells, the objective is to nd Hi and gi . This is done by:
Computing the matrices for the description of the
simplicial cells.
Performing the direct product of the simplicial
cells with the linear subspaces where the remaining
state variables lie. This step consists of augmenting the matrices with zeros conveniently placed.
The following algorithm is used in the rst step above:
1) For each simplicial cell (i.e each group of n + 1 vertices) all possible combinations (nn+1) of n vertices are
performed and for each combination, the description of
the corresponding hyperplane boundary is found as:
a) Take one of the vertices in the boundary as a reference vertex 0 .
b) Connect this vertex to all other vertices in the
boundary to nd n , 1 vectors that lie in the hyperplane. This set of vectors is V1 and stack their
Cartesian coordinates as rows of matrix D.
c) Connect the vertex out of the hyperplane vout to
all the vertices in the hyperplane to form a new
set of vectors. Let this set of n vectors be V2 and
stack their Cartesian coordinates as the columns
of matrix C .
d) Find the normal to the hyperplane as a convex
combination of the vectors in V2 . The n coecients of the convex combination are known to be
positive and add to one. This produces one constraint equation. The remaining n , 1 constraint
equations can be obtained from ensuring that the
normal vector is orthogonal to the n , 1 vectors
in V1 that lie in the hyperplane. The hyperplane is
then dened by the equation T ( , 0 ) = 0 once
a reference point 0 in the hyperplane and the normal vector are known. If we set Ai = T and
bi = T 0 then the equation of the hyperplane is
Ai x , bi = 0.
2) Decide in which half space of that hyperplane the cell
is contained using the remaining vertex vout of the cell
Figure 5: Cell Description for n = 2
that was left out of the combination of n vertices. More
precisely, according to (3), the sign of the elements of
Ai and bi should be changed if Ai vout , bi > 0.
For the pendulum example, where n = 2, each simplicial
cell contains 3 vertices (0 ; 1 ; 2 ). All possible
2 combinations of 2 vertices are (0 ; 1 ), (0 ; 2 ) and
(1 ; 2 ). Let the boundary of interest for this exercise
be the one dened by the vertices f0 ; 1 g and let 0
(see Figure 5) be taken as the reference point in the
hyperplane. Since the simplicial cell is described by the
vertices f0 ; 1 ; 2 g, 2 is the missing vertex vout . Then
V1 = f1 , 0 g, V2 = f1 , 2 ; 0 , h2 g and
C = 1 , 2 0 , 2 ; D = (1 , 0 )T
T = 1 1 ) = CT
1 :
Note that T is nonsingular because the cells are nondegenerate simplices.
In the particular case of cell six in Fig. 4, 0 = [ 34 0]T ,
1 = [ 0]T , 2 = [ 2]T and = [0 , 2]T , A1 = T ,
b1 = 0. The equation of the hyperplane (a line in this
case) is ,2x4 = 0. Since A1 2 , b1 = ,4 < 0, the
sign of the elements of A1 and b1 does not have to be
changed. After performing the direct product with the
remaining state variables, the rst column of matrix H6
is H61 = [0 0 0 , 2]T and the rst element of the vector
g6 is g61 = 0. The same process can then be repeated to
obtain the other elements of these matrices.
5.4 Description of Boundaries
With the assumptions made in Section 2, a parametric
description of the boundaries can be written as in [4]
Ri \ Rj flij + Fij t j t 2 IRnx nz , g
for i = 1; : : : ; ngrid n! , j 2 Ni = fneighboring cells of
ig and for some Fij 2 IR nx nz nx nz , full rank and
lij 2 IR nx nz . After the step in the last subsection has
been performed, a description of the boundaries (hyperplanes) of each cell is known. To transform this into
a parametric description, it suces to solve the hyperplane equation with respect to one of the state variables
with a nonzero coecient. The vector t in Eq. 4 will thus
be formed by all state variables except this one. However, once a parametric description has been found for
each boundary of each cell, the corresponding neighboring cell still must be found in order to know the correct
indices associated with matrices Fij and lij in Eq. 4.
To solve this problem, the key observation is that, in a
space of dimension n, each boundary is dened by n of
the n + 1 vertices of each cell and that these n vertices
will also belong to the neighboring cell. The neighbor
of cell i across the boundary formed by the set nj of n
vertices can then be found by searching the cell list for
the other cell that has these nj vertices in common with
cell i. For the pendulum example, the neighbor of cell 6
that also contains vertices 0 = ( 34 ; 0) and 1 = (; 0)
(by the ordering in Section 5.1 these are numbered 4 and
6 respectively) can be obtained by searching in the array
Cell (Section 5.2) for a row (other than six) that also has
these vertices. The result is row two. So, the matrices
that give the parametric description of this hyperplane
will have subscripts i = 6; j = 2. Moreover, since the
hyperplane equation is x4 = 0, then t = [x1 x2 x3 ]T and
1 0 0
F62 = 64 00 10 01 75 ; l62 = 64 00 75 :
0 0 0
5.5 Piecewise-Ane Approximation
Finding the piecewise-ane approximation of a nonlinear function based on its values at the vertices of a simplicial grid is basically an estimation problem. Given
f : Rn ! Rnz and n+1 vertices belonging fto a simplicial
cell i, the objective is to nd the matrix Ai and the vector bfi such that the piecewise-ane approximation of f
in the polytopic cell i is described by2 f (w) ' Afi w + bfi .
At each vertex of each simplex i, a linear equation of the
form f ()T = [T j,1] can be written,
where f () is a
nz 1 vector, = [(aki )T j bki ]T nk=1
is a (n + 1) nz
matrix and represents the n 1 vector with the coordinates of the vertex. If all the values f () are stacked in
a matrix F and all the rows [T j 1] in a matrix X , the
solution is then given by = X ,1 F . Notice that since
a simplicial partition of the domain of f is being used,
the matrix X is nonsingular. Applying this process to
the simplicial cell number one of the pendulum example
the following result is obtained3 :
3 2
2 1
3 2 3
,2 1 ,1 ,1:0138 ,57:349
a1 a21
4 #
0 5:
# 5 = 4 ,2 15 4 0
0 1
b11 b21
To derive a piecewise-ane model in the standard form
presented in [7] in which the input matrix is independent
of the state, there still remains the step of approximating the matrix function B (w) by a piecewise-constant
function. A piecewise-constant approximation has the
advantages of being very simple to implement, it does
not need a grid and it can be made as accurate as needed
by making the cells smaller. It has the disadvantage
that the resulting system of dierential equations has
2 f (w ) should be interpreted as f (P (w )), where P (w ) = is
the orthogonal projection of w into the domain of the nonlinearity
3 The lower indices represent the cell number and the upper
indices represent the function component
a discontinuous right hand side which can lead to sliding modes. However, a method for designing output
feedback controllers that avoids the existence of sliding
modes has been presented by the authors in [15]. To
perform such approximation, B (w) will be evaluated at
a point taken to be a reference point within each polytopic cell. The point chosen for evaluating this function
i of each cell i, that is, the
is the Chebychev center wcheb
center of the Euclidean ball of maximum radius that can
be t inside the polytopic cell. The algorithm for nding
such centers is given in section 6. After approximating
i ) and for each cell
the nonlinear dynamics, Bi = B (wcheb
w_ = Ai w + bi + Bi u(t); y = Cw;
0 ; b = bx + 0
Ai = AAxx AAxz + 0 Af !
zx zz
For cell number one of the pendulum example
6 0 7
A1 = 0 73:02 0 0 ; b1 = ,229:4 ; B1 = 64 0:9 75 :
6 Equilibrium Point Optimization
The desired closed-loop equilibrium point for the entire
system (wcl ) will be located in one of the polytopic regions. This will be both the control target point and
the desired closed-loop equilibrium point for that region.
For the other regions, equilibrium points that are outside of the corresponding region need to be chosen so
that, in closed-loop, only one equilibrium point exists
for the system. The goal then will be to design the
controller so that wcl is made globally asymptotically
stable. Note that the locations of the remaining equilibrium points are arbitrary but can have a large impact
on the closed-loop performance. A systematic means of
selecting appropriate points can be developed using a
measure of the control eort, assuming that each ane
system obtained in the previous section is controllable.
With w = [xT z T ]T and u = u~ + mi (as in [7]), Eq. 5 is
w_ = Ai w + Bi u~ + Bi mi + bi :
With the closed-loop equilibrium point for region Ri at
wcli and the change of variables v = w , wcli , Eq. 6 is
v_ = Ai v + Bi u~ + Ai wcli + Bi mi + bi :
To get a linear system for which an initial controller can
be designed (see [7]), the equation
Ai wcli + Bi mi + bi = 0
must be solved for the vectors wcli and mi . Rewriting this equation as Ai w = ,bi , where Ai = [Ai Bi ]
and w = [wcli T mTi ]T , this system of equations has a
solution if and only
, if bi is in the range of Ai , i.e, if
and only if rank [Ai bi ] = rank(Ai ). In this case,
if wp = [wpT mTp ]T is a particular solution of Eq. 8,
then the general solution is w = wp + Np; where N =
[NwT NmT ]T 2 R(nx +nz +nu )s is a matrix whose columns
span the null space of Ai and p is a vector of dimension s that parameterizes the general solution of Eq. 8
(when it exists). Since Ai is a rectangular matrix, its
null space will at least have dimension one. Also, when
there is an open-loop equilibrium point woli for region
Ri , then wp = [woli T 0]T .
The closed-loop equilibrium points of region Ri that
solve Eq. 8 are parameterized by wcli = wp + Nw p. The
design strategy then is to choose from these solutions the
one that, given a time T > 0, minimizes the control eni to the
ergy to take the state from a reference point wref
target point wcl in that time, subject to the constraint of
being outside of region Ri . Since an expression for the
control energy is well known for a controllable linear system [16], to formulate this as a linear rather than ane
i , wi
problem, the change of coordinates vref = wref
and vcl = wcl , wcl is performed. In these coordinates,
using the description in Eq. 3, this problem is equivalent
to the following quadratic program:
vcl , eAi T v,ref T W ,1 vcl , eAi T vref
s:t: HiT Nw p + HiT wp , gi j > 0
for some j = 1 : : : (n + 1);
where W = 0T eATi Bi BiT eAi d is the controllability
Grammian for time T [16]. If the matrix Ai is nonsingular, then the reference point is chosen as the Chebychev
center wcheb
of the region, which can be obtained by
solving the linear program [17]
max r
i + rHi , gi < 0;
s:t: HiT wcheb
i and r, where Hi = [jjhi1 jj : : : jjhip jj]T . When
for wcheb
Ai is singular the reference point is chosen to be the
origin to avoid the problem being ill posed.
7 Example
For the inverted pendulum on a cart, the algorithm described in Section 5 found the polytopic description
0 ,2
H1T = 4 0 ,0:681 0 0:267 5 ; H3 = H6 = H8 = H1 ;
0 0:785 0 0
0 ,0:785 0
H2T = 4 0 0:681 0 ,0:267 5 ; H4 = H5 = H7 = H2
g1 = 4 ,2:138 5 ; g2 = 4 2:138 5 ; g3 = 4 ,2:672 5 ;
g4 = 4
2:672 5 ; g = 4 ,1:6033 5 ; g = 4 ,1:603 5 ;
g7 = 4 2:1377 5 ; g8 = 4 ,2:1377 5
The matrices that describe the boundaries and the location of the closed-loop equilibrium points will not be
shown due to a lack of space.
8 Conclusions
This work presented an algorithm for automatically generating a simplicial piecewise-ane approximation of a
dynamical system belonging to a special class of nonlinear systems. Together with the output feedback
controller design presented in [7], this work enables a
fully automated design of controllers for any simplicial
piecewise-ane approximation of a system in that class.
A toolbox for MATLAB has been developed by the authors to perform the output feedback controller design.
[1] A. Hassibi, S. P. Boyd, J. P. How, A Class of Lyapunov Functionals for Analyzing Hybrid Dynamical Systems. In Proc.
of the American Control Conference, June 1999.
[2] M. Johansson and A. Rantzer. Computation of piecewise
quadratic Lyapunov functions for hybrid systems, IEEE
Trans. on Automatic Control, 43(4):555-559, April 1998.
[3] S. Pettersson. Analysis and Design of Hybrid Systems, PhD
Dissertation, Chalmers University of Technology, June 1999.
[4] A. Hassibi, S. Boyd, Quadratic Stabilization and Control of
Piecewise-Linear Systems. In Proc. of the 1998 American
Control Conference, pp.3659-3664, June 24-26.
[5] J. M. Goncalves, A. Megretski, M. Dahleh. Global Stability
of Relay Feedback Systems,. In Proc. of the 2000 American
Control Conference, June 28-30.
[6] O. Sluphaug. On robust constrained nonlinear control and
hybrid control: BMI and MPC based state-feedback schemes,
PhD dissertation, Norwegian University of Science and Technology, October 1998.
[7] L. Rodrigues, A. Hassibi, J.P. How, Output Feedback Controller Synthesis for Piecewise-Ane Systems with Multiple
Equilibria. In Proc.American Control Conference, pp.17841789, June 2000.
[8] M. Johansson, A. Rantzer. Piecewise Linear Quadratic Optimal Control, Research Report, Lund Institute of Technology,
November 1997.
[9] P. Julian, A High Level Canonical Piecewise Linear Representation Using a Simplicial Partition: Theory and Applications. Ph.D. Thesis, Department of Electrical Engineering,
Universidad Nacional del Sur, Argentina, 1999.
[10] P. Julian, A Toolbox for the Piecewise Linear Approximation
of Multidimensional Functions.
[11] R. W. Brockett, Asymptotic stability and feedback stabilization. In Brocket, R. W., Milman, and R. S., Sussman, H. J.,
editors, Dierential Geometric Control Theory, pp.181-191.
[12] H. Nijmeijer and A. J. van der Schaft, Nonlinear Dynamical
Control Systems. Springer-Verlag, Berlin, Germany, 1990.
[13] M. Chien, E. Kuh, Solving nonlinear resistive networks
using piecewise-linear analysis and simplicial subdivision,
IEEE Trans.Circuits Systems 1, vol.CAS-24, pp.305-317,
June 1977.
[14] P. Julian, A. Desages, O. Agamennoni, High level canonical piecewise linear representation using a simplicial partition, IEEE Trans.Circuits Systems I, vol.46, pp.463-480,
April 1999.
[15] L. Rodrigues and J.P. How. Observer-Based Control of
Piecewise-Ane Systems, submited to CDC2001.
[16] T. Kailath. Linear Systems, Prentice Hall, 1989.
[17] S. Boyd and L. Vandenberghe. Convex Optimization:
Course Reader for EE364, Stanford University, August 1999.