You are on page 1of 105

Control System Theory & Design

Lecture Notes
Ismail Hameduddin
KING ABDULAZIZ UNIVERSITY
Contents
Contents 2
1 Introduction to feedback control 4
1.1 Basic notion of feedback control . . . . . . . . . . . . . . . . . . 4
1.2 Control architectures . . . . . . . . . . . . . . . . . . . . . . . . 8
2 System models and representation 15
2.1 Model classication . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 State-space representation . . . . . . . . . . . . . . . . . . . . . 15
2.3 Input/output dierential equation . . . . . . . . . . . . . . . . . 16
2.4 Transfer functions . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Dynamic response of systems 19
3.1 First-order system response . . . . . . . . . . . . . . . . . . . . . 19
3.2 Second-order systems . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3 Design considerations . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4 Routh-Hurwitz stability criterion . . . . . . . . . . . . . . . . . . 21
3.5 Pole/Zero eects . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4 Frequency response tools 25
4.1 Frequency response . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.2 Bode plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.3 Gain and phase margins . . . . . . . . . . . . . . . . . . . . . . . 27
4.4 Phase margin and second-order systems . . . . . . . . . . . . . . 29
4.5 Root-locus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.6 Nyquist stability criterion . . . . . . . . . . . . . . . . . . . . . . 32
4.7 Feedback with disturbances . . . . . . . . . . . . . . . . . . . . . 37
4.8 Trends from Bode & Poissons integral constraints . . . . . . . . 39
4.9 Upper bounds on peaks for sensitivity integrals . . . . . . . . . . 42
5 Frequency domain control design 43
5.1 Direct pole-placement . . . . . . . . . . . . . . . . . . . . . . . . 43
5.2 Modeling errors . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.3 Robust stability . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.4 Robust performance . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.5 Internal Model Principle . . . . . . . . . . . . . . . . . . . . . . . 48
6 State-space techniques 49
6.1 Transfer function to state-space . . . . . . . . . . . . . . . . . . . 49
2
Contents
6.2 Eigenvalues & eigenvectors . . . . . . . . . . . . . . . . . . . . . 50
6.3 Solution and stability of dynamic systems . . . . . . . . . . . . . 50
6.4 State transformation . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.5 Diagonalization . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.6 State-space to transfer function . . . . . . . . . . . . . . . . . . . 57
6.7 Cayley-Hamilton Theorem . . . . . . . . . . . . . . . . . . . . . . 58
6.8 Controllability & reachability . . . . . . . . . . . . . . . . . . . . 59
6.9 Controllability gramian . . . . . . . . . . . . . . . . . . . . . . . 64
6.10 Output controllability . . . . . . . . . . . . . . . . . . . . . . . . 65
6.11 Control canonical form and controllability . . . . . . . . . . . . . 66
6.12 Stabilizability . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
6.13 Popov-Belevitch-Hautus test for controllability and stabilizability . 72
6.14 Observability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
6.15 Observability gramian . . . . . . . . . . . . . . . . . . . . . . . . 75
6.16 Observable canonical form and observability . . . . . . . . . . . . 75
6.17 Detectability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
6.18 PHB test for observability and detectability . . . . . . . . . . . . 76
6.19 Duality between observability and controllability . . . . . . . . . . 76
7 Control design in state-space 77
7.1 State feedback design/Pole-placement . . . . . . . . . . . . . . . 77
7.2 Ackermanns formula . . . . . . . . . . . . . . . . . . . . . . . . 79
7.3 SISO tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
7.4 SISO tracking via complementary sensitivity functions . . . . . . . 81
7.5 SISO tracking via integral action . . . . . . . . . . . . . . . . . . 82
7.6 Stabilizable systems . . . . . . . . . . . . . . . . . . . . . . . . . 83
7.7 State observer design/Luenberger state observer/estimator design 87
7.8 Disturbance observers . . . . . . . . . . . . . . . . . . . . . . . . 90
7.9 Output feedback control . . . . . . . . . . . . . . . . . . . . . . 92
7.10 Transfer function for output feedback compensator . . . . . . . . 93
7.11 SISO tracking with output feedback control . . . . . . . . . . . . 93
8 Basic notions of linear algebra 95
3
Chapter 1
Introduction to feedback control
We introduce feedback in terms of what will be discussed in these notes.
1.1 Basic notion of feedback control
A block diagram illustration of an ideal standard feedback control system is shown
in Fig. 1.1.
Figure 1.1: Block diagram illustration of ideal feedback control system.
The idea of feedback is straightforward: we monitor the actual output of the system
or plant, then generate an error signal based on the dierence between the desired
output and the actual output of the dynamic system and nally use this error term
in a compensator which gives a control signal that can act as an input to the actual
system.
The compensator is a general term and it can be anything such as an algorithm,
function or just a simple gain, i.e., a constant value multiplying the error. The
goal of control design is to determine an appropriate compensator to achieve per-
formance objectives. The plant in the system is the dynamic system that is being
controlled. We model this system via mathematical tools and use it to design
the compensator. A mathematical model is always an approximation of the real
model since we cannot eectively model everything present in the real world and we
cannot also take into account variations in parameters such as geometries, forces
and operating conditions. Thus, there always exists some uncertainty in the plant
model which directly aects compensator design.
4
1.1. Basic notion of feedback control
Feedback goes beyond mathematical functions and abstractions. It is a fact of
everyday life. An obvious example of human feedback is when you adjust the
water temperature in the shower. The hot-cold knob is adjusted until a comfortable
position is reached. In this case, the skin monitors the output of the system, i.e.,
the temperature of the water. It then sends this signal to the brain that judges the
dierence between the desired water temperature and actual water temperature.
This dierence is then used by the brain to general a control signal that commands
the hand to adjust the knobs to reduce this dierence. If the water is cold, you
shiver, the brain determines that you need to be warmer, it sends a signal to
your hand to adjust the knob for warmer water until you stop shivering. Control
engineering is then simply the attempt to mimic the elegant, ecient and eective
control of processes apparent in nature.
We mentioned that the goal of control design is to determine an appropriate com-
pensator to achieve performance objectives. Some common performance objectives
are listed below:
Stability of the closed-loop system.
Dynamic response to be satisfactory, e.g.,
Settling time (time of response).
Percent overshoot.
Tracking/steady-state error small.
Remain within hardware limits, e.g., forces and voltages.
Eliminate impact of disturbances such as wind gusts in UAVs and inclines
in a car cruise control system.
Eliminate impact of measurement noise.
Eliminate impact of model uncertainty.
The above wish list is not something that is not usually completely possible due to
the existence of fundamental limitations in the the system. There is nothing called
a free lunch. However, we can via feedback control and other strategies, trade-
o these fundamental limitations with respect to each other to achieve the best
possible scenario based on requirements. This is the essence of control engineering.
An example of the previous is when we try to have aggressive control, i.e. small
response time, and also eliminate the impact of model uncertainty. The bandwidth
of the system is a measure of the aggressiveness of the control action and/or
the dynamic response. A higher bandwidth implies a higher frequency at which
we have good response and therefore more aggressive control. But at the same
time, in most models, the magnitude of the uncertainty becomes large at higher
frequencies. Hence we limit the bandwidth or frequency of response depending
on the frequency at which uncertainty begins to become signicant. We want low
magnitude of response at frequencies where model uncertainty magnitude becomes
high to reduce the system sensitivity to this uncertainty. This is a situation where,
since we cannot avoid model uncertainties, we have to limit the aggressiveness of
the response to avoid the uncertainty becoming signicant.
5
1.1. Basic notion of feedback control
Actual control systems
We often treat the control and feedback of systems as an idealized scenario to aid
in the design process. It is important for the control engineer to appreciate the
actual complex nature of control systems. It is instructive to do this through a
simple example.
Recently, there has been a growing research interest in applications of piezoelec-
tric materials. These are very sensitive materials that produce a voltage sig-
nal when they sense a force. The converse phenomenon is also true, i.e., a
force/displacement is produced in the material when voltage is applied to it. This
characteristic is considered particularly advantageous and is being tested in a wide
variety of applications. Among these is their use as a variable valve actuator in
fuel injector systems.
Figure 1.2: Schematic of a proposed piezoelectric variable valve injector system.
Fuel injection for an internal combustion engine should ideally be tightly controlled
to produce an air-fuel mixture that reduces pollutants and increases eciency while
at the same time mitigating undesirable phenomena such as combustion instability.
This is possible through a variable valve that regulates the amount of fuel owing
through the cylinder nozzle.
One type of assembly of such a variable valve available in the literature is shown
6
1.1. Basic notion of feedback control
in Fig. 1.2
1
. The piezo stack at the top consists of a stacked combination
of piezeoelectric materials that produces the desired displacement characteristics
when voltage is applied. The voltage is applied by the piezo stack driver. When
the piezo stack expands (due to voltage via the piezo stack driver), it moves the
top link down which in turn pushes the bottom link down. This displaces uid
out of the needle upper volume into the injector body and we would expect the
needle lower volume to be reduced as well. However, assuming incompressibility,
this cannot happen because the needle lower volume does not have an opening
into the injector body. Instead, to compensate for the loss of volume induced by
the bottom link moving down, the needle is pushed up by the uid. This opens the
nozzle. In a similar fashion, with appropriate voltage, the nozzle is closed as well.
The piezo stack via mechanical means, controls the nozzle state and it is hence
called a variable valve actuator (VVA). The chief benets of using piezoelectric
materials here is their quick response (high bandwidth) and because incorporation
of a piezoelectric actuator helps eliminate many mechanical, moving parts which in
turn reduces cost and increases reliability. The disadvantage is that the maximum
expansion achievable by piezoelectric materials is usually low. This is remedied
by using the stair-like ledge shown in Fig. 1.2 which acts as a displacement
multiplier. A larger ledge causes a larger loss of needle lower volume when the
bottom link moves down which makes the needle displace more to compensate for
lost volume.
The idealized block diagram that is used in control design is shown in Fig. 1.3. It
is supposed to be as simple as possible in order to capture only the most essential
characteristics of the system. The actual valve position and the desired valve
position together generate an error signal and the compensator is used to determine
the appropriate voltage signal that will eventually reduce this error to zero. Here
the VVA is actually a 5 state control oriented model, i.e., it needs 5 variables to be
fully described in the time domain. These states include position of the actuator,
velocity of the actuator and the pressure. A full model description of the VVA would
entail many more states that do not have as much eect on the system response
but greatly aect the complexity of the problem. Such models are sometimes called
simulation models because we use them to simulate the response of the system
rather than use them to determine an appropriate compensator (control design).
Figure 1.3: Block diagram of an ideal closed-loop variable valve actuator system.
The actual or close to actual block diagram is shown in Fig. 1.4. Here we do not
ignore any known elements from our system. The valve position is measurement
1
Chris Satkoski, Gregory M. Shaver, Ranjit More, Peter Meckl, and Douglas Memering,
Dynamic Modeling of a Piezo-electric Actuated Fuel Injector, IFAC Workshop on Engine and
Powertrain Control Simulation and Modeling, 11/30-12/2/2009, IFP, Rueil-Malmaison, France.
7
1.2. Control architectures
by the linear variable displacement transducer (LVDT) in an analog form. This is
then converted to a digital signal by an analog to digital converter (A/D). It is
then used to generate an error signal based on the desired valve position. The error
is fed into the compensator which outputs a digital signal which is converted to
an analog voltage via a digital to analog converter (D/A). This signal is amplied
using a pulse-width modulation (PWM) amplier and then supplied to the VVA
actuator.
Figure 1.4: Block diagram of a closed-loop variable valve actuator system.
It is obvious that this is far more complicated system than the one considered
earlier. Every element in the system has its own dynamics which may or may
not include time delay. Furthermore we have errors in measurement and digiti-
zation/quantization error. We cannot remove any elements from consideration in
this system without rst verifying their eect and on the entire system. If the
dynamics of the element are fast enough to approximate as a straight line rather
than a block in the diagram, then we can often ignore the element. For sensors
such as the LVDT, this may be accomplished by checking manufacturer published
information about them such as bandwidth, damping ratio, etc. This is a fairly
simple example but more complicated systems such as ight control systems may
have hundreds of these blocks. These notes only deal with the situation in Fig.
1.3.
1.2 Control architectures
We now consider several commonly used control architectures. In the following,
the reference command is given by the transfer function R(s), the plant by G(s),
the output by Y (s), the compensator C(s), disturbances by D(s) and noise by
N(s).
8
1.2. Control architectures
Open-loop/Feedforward control
We now consider the simplest case of control called open-loop or feedforward
control. As the name suggests, there is no feedback of the output back to the
compensator. Rather everything is done without output measurements. A block
diagram representing a simple feedforward scheme is shown in Fig. 1.5.
Figure 1.5: Block diagram of a feedforward variable valve actuator system.
The transfer function from the output to the input is simply
Y
R
= CG Y = CGR (1.1)
where the arguments have been dropped for convenience. Since ideally we want
Y (s) = R(s), a natural choice for the compensator would be C(s) = G
1
(s)
which leads to
Y = CGR = G
1
GR = R. (1.2)
This looks like a perfect scenario but we made some critical assumptions which
makes the previous result problematic. One assumption was that there are no
disturbances anywhere in the system. This assumption is false since we always
have disturbances in the system.
Although there may be multiple disturbances in dierent parts of the system, we
now consider one type of disturbance in the system for simplicity and for illustrative
purposes. Let there be a disturbance in the control signal being fed into the plant,
i.e., the control signal input into the plant is not the same as the compensator
output. This situation is illustrated in Fig. 1.6. For such a system we can derive
Figure 1.6: Block diagram of a feedforward variable valve actuator system with
disturbance.
the transfer function from the reference R(s) to the output Y (s) as
Y = G(CR +D) = GCR +GD (1.3)
and substituting the previous compensator choice C(s) = G
1
(s)
Y = GG
1
R +GD = R +GD. (1.4)
9
1.2. Control architectures
Therefore, even in the case of a single source of disturbance, feedforward fails to
provide good reference tracking since now we have an extra G(s)D(s) term that
is unwanted and perturbs the output from the reference signal.
Another assumption is of having no model uncertainty. This is always false since
there is always uncertainty in a mathematical reasons for a variety of reasons such
as lack of modeling of certain dynamics for simplicity and physical variation between
systems. Thus, we dont have an actual true model but a perturbed model

G(s)
and therefore we can only have

G
1
(s). Substituting this into (1.1) gives
Y = CGR =

G
1
GR = R. (1.5)
where is some factor dependent on the model uncertainty. Feedforward fails
when we have uncertainty in the model. A more acute problem occurs when G(s)
and hence

G(s) have right-half plane (RHP) zeros, i.e., roots of the numerator
have positive real parts. In this situation,

G
1
(s) will have RHP poles, i.e., roots
of the denominator have positive real parts; something that characterizes unstable
systems. And since

G
1
,= G
1
, there will never be perfect cancellation of the RHP
poles and zeros. Hence, the entire feedforward system (even without disturbances)
will be unstable because of the existence of RHP poles.
Even though the previous has painted a bleak picture, feedforward control is still a
useful tool as long as it is used in an intelligent manner. We sometimes combine
feedback and feedforward control to achieve excellent results as will be shown later.
Feedback/closed-loop control
We consider the previous problem of having input disturbance but now we employ
a feedback scheme to tackle the control and reference tracking problem. We also
add noise to the measurement of the output; something that is expected and
unavoidable. The block diagram of such a closed-loop system is shown in Fig. 1.7.
Figure 1.7: Block diagram of a feedback variable valve actuator system with dis-
turbance and noise.
10
1.2. Control architectures
Following basic procedures, we determine the system transfer function as
Y = GC(R Y N) +GD (1.6)
=
GC
1 +GC
R +
G
1 +GC
D
GC
1 +GC
N (1.7)
= Y
R
+Y
D
Y
N
(1.8)
where Y
R
(s) is the transfer function from R(s) to Y (s), Y
D
(s) is the transfer
function from D(s) to Y (s) and Y
N
(s) is the transfer function from N(s) to
Y (s). For the output to perfectly track the reference input, we want Y
R
(s) 1,
Y
D
(s) 0 and Y
N
(s) 0. Let the compensator be a large number, i.e., C(s)
, then
G
1 +GC
1 Y
D
= 0 (1.9)
which implies complete disturbance rejection, i.e., the feedforward problem is
solved. Furthermore,
GC
1 +GC
1 Y
R
= 1 (1.10)
which is exactly what we want for perfect reference tracking. This is the motivation
behind high gain feedback. But we also have
GC
1 +GC
1 Y
N
= 1 (1.11)
which means the noise is amplied; something we certainly do not want. There
is an inherent problem here because the coecient of R(s) and N(s) are the
same. Thus, we cannot have Y
R
(s) 1 and Y
N
(s) 0 simultaneously. We
have a fundamental contradiction here. The only way to get rid of noise is to set
C(s) = 0 but then this leads to no control action.
Feedback helps us deal with disturbances and plant uncertainty. High gain feedback
looks similar to plant inversion in feedforward control but only better. It gives
us a plant inversion like process and mitigates the eect of disturbances. The
drawback, however, is that mitigating noise and perfect tracking cannot be done
simultaneously.
In many situations, the reference tracking is in a low frequency range. An example
of this would be the reference signal of the bank angle of a commercial airliner.
Also, for most sensors, noise becomes prevalent mainly in the frequency ranges.
Thus we can design C(s) such that the transfer function
Y
R
= Y
N
=
GC
1 +GC
(1.12)
is 1 at low frequencies (to aid in reference track) and 0 at high frequencies (to
mitigate measurement noise). The frequency response for such a transfer function
is shown in Fig. 1.8.
Figure 1.8 shows a transfer function with a bandwidth (i.e. approx. roll-o fre-
quency) of 7 radians per second. It implies, for perfect tracking and noise mitiga-
tion, that the reference signal must be predominant in frequencies below 7 radians
per second and the measurement noise must be predominant in frequencies above 7
radians per second. Thus, the extent to which you can be aggressive with control,
i.e. have high bandwidth, depends on two factors:
11
1.2. Control architectures
10
1
10
0
10
1
10
2
10
3
50
45
40
35
30
25
20
15
10
5
M
a
g
n
i
t
u
d
e

(
d
B
)
Frequency (rad/sec)
Figure 1.8: Typical frequency response magnitude of Y
R
= Y
N
to mitigate noise
and provide good tracking..
The frequency range at which the noise is present.
The reference signal frequency range.
This is an example of a fundamental limitation in a feedback situation. The ag-
gressiveness of the control is limited by the measurement noise and the reference
signal frequency range.
When we close the loop, it allows us to trade o the impact of disturbances, noise,
reference tracking signals and stability among others. It gives us the freedom to
trade o quantities which we might not have been able to otherwise, such as
plant uncertainty, noise mitigation and tracking accuracy. These notes deal with
developing a sophisticated outlook and precise tools to do tradeos.
Feedback with feedforward
Another way to tackle the above problems is to include a feedforward term in
the feedback architecture as shown in Fig. (1.9). Here G
f
(s) is the feedforward
transfer function. The transfer function of the system is
Y = GC(R Y N) +GG
f
R +GD
Y (1 +GC) = (GC +GG
f
)R +GD GCN (1.13)
and hence
Y =
GC +GG
f
1 +GC
R +
G
1 +GC
D
GC
1 +GC
N (1.14)
= Y
R
+Y
D
Y
N
. (1.15)
As before, we want Y
R
(s) 1, Y
D
(s) 0 and Y
N
(s) 0. Notice we have an
extra degree of freedom in the design of Y
R
(s) due to the feedforward term G
f
(s).
12
1.2. Control architectures
Figure 1.9: Block diagram of a two degree of freedom feedback-feedforward variable
valve actuator system with disturbance and noise.
Let G
f
(s) = G
1
(s) and thus
GC +GG
f
1 +GC
=
GC +GG
1
(s)
1 +GC
= 1 (1.16)
which gives accurate steady-state tracking although we still run into problems of
model uncertainty as in the feedforward architecture. But most importantly, since
we are not using feedforward or feedback alone, accurate steady-state tracking
does not imply noise amplication. Now the challenge is the tradeo between the
noise and disturbance. If we set C(s)
G
1 +GC
0 (1.17)
which implies Y
D
(s) 0. But for Y
N
(s) 0, we need C(s) = 0
GC
1 +GC
0. (1.18)
These seemingly contradictary/conicting requirements represent a tradeo that
we cannot avoid. If our model is excellent, feedforward is benecial in this case
but we still have tradeos. Thus, control cannot change the underlying problem
but can give us tools to play with the fundamental tradeos to get an acceptable
design.
Feedback with disturbance compensation
Assuming we know the disturbance D(s), will this buy us anything? Consider the
feedback architecture shown in Fig. 1.10. Here G
D
(s) is an additional transfer
function called the disturbance compensation transfer function.
13
1.2. Control architectures
Figure 1.10: Block diagram of a combined feedback and disturbance feedback
variable valve actuator system with disturbance and noise.
From Fig. 1.10 we have
Y = GC(R Y N) +CG
D
GD +GD
Y (1 +GC) = GCR + (GCG
D
+G)D GCN (1.19)
and hence
Y =
GC
1 +GC
R +
GG
D
C +G
1 +GC
D
GC
1 +GC
N (1.20)
= Y
R
+Y
D
Y
N
. (1.21)
Again we want Y
R
(s) 1, Y
D
(s) 0 and Y
N
(s) 0. Now we seem to have
more exibility because setting G
D
(s) = C
1
(s) gives
GG
D
C +G = CC
1
G+G = 0
GG
D
C +G
1 +GC
= 0 (1.22)
which implies that we have perfect disturbance rejection. But again this method
has its own challenges because we need to have knowledge of the disturbance.
This can be through estimation, especially if we have some idea about the nature
of disturbance. For example, the disturbance in a manufacturing when the oor
shaking in a repeating.
14
Chapter 2
System models and representation
2.1 Model classication
There are many approaches to developing system models and a similarly large
number of classications of model types. System models can be classied as white,
grey or black box models. Models where the underlying physics of the system are
rst considered to help develop the model are known as white box models. Black
box models, on the other hand, are entirely data drive. The output of a system is
considered subject to a given input and a corresponding model is formed using tools
such as Fourier analysis. Grey box models combine the above two approaches in
that the model form is derived from physical principles while the model parameters
are determined using experimental data.
Models can also be classied as nominal/control models or simulation/calibration
models. The nominal/control model form is a simplied dynamic model where
the desire is to capture the dynamic coupling between control inputs and system
outputs. These models are directed towards usage for controller design since a
simplied model aids in this process. Conversely, simulation models are typically
generated to capture as many aspects of the system behavior as accurately as
possible. The intended use of these types of models is for system and controller
validation, intuition development and assumption interrogation.
2.2 State-space representation
Consider a set of 1st-order ordinary dierential equations,
x
i
= f
1
(x
1
, ..., x
n
, u
1
, ..., u
m
) (2.1)
.
.
.
x
n
= f
n
(x
1
, ..., x
n
, u
1
, ..., u
m
) (2.2)
where x
1
, ..., x
n
are called the system states and u
1
, ..., u
m
are the system inputs.
15
2.3. Input/output dierential equation
Next consider a set of algebraic equations relating outputs to state variables and
inputs,
y
1
= g
1
(x
1
, ..., x
n
, u
1
, ..., u
m
) (2.3)
.
.
.
y
p
= g
p
(x
1
, ..., x
n
, u
1
, ..., u
m
). (2.4)
If we let x = [x
1
, ..., x
n
]
T
, u = [u
1
, ..., u
m
]
T
, and y = [y
1
, ..., y
p
]
T
, then the above
relationships can be written in the compact state-space form

x =

f(x, u) (2.5)

y = g(x, u). (2.6)


If the system considered is linear then it can be written in the linear parameter
varying form (LPV)

x = A(t)x +B(t)u (2.7)


y = C(t)x +D(t)u (2.8)
or if the system is linear time-invariant (LTI)

x = Ax +Bu (2.9)
y = Cx +Du (2.10)
where A, B, C and D are the relevant matrices.
States are the smallest set of n variables (state variables) such that knowledge
of these n variables at t = t
0
together with knowledge of the inputs for t t
0
determines system behaviour for t t
0
. The state vector is the n-th order vector
with states as components and the state-space is the n-dimensional space with
coordinates as the state variables. Correspondingly, the state trajectory is the path
produced in the state-space as the state vector evolves over time.
The advantages of the state-space representation are that the dynamic model is
represented in a compact form with regular notation, the internal behaviour of the
system is given treatment, the model can easily incorporate complicated output
functions, denition of states helps build intuition and MIMO systems are easily
dealt with. There are many tools available for control design for this type of model
form. The drawback of the state-space representation is that the particular equa-
tions themselves may not always be very intuitive.
2.3 Input/output dierential equation
The input/output dierential equation relates the outputs directly to the inputs.
It is obtainable usually through taking the Laplace transform of the state-space
representation, substituting/rearranging appropriately and nally taking the inverse
16
2.4. Transfer functions
Laplace transform to obtain an high-order dierential equation. A linear time-
invariant input/output dierential equation is given by
y
n
+a
n1
y
n1
+... +a
1
y +a
0
y = b
m
u
m
+b
m1
u
m1
+.... +b
1
u +b
0
u (2.11)
The advantages of input/output dierential equations are that they are concep-
tually simple, can easily be converted to transfer functions and many tools are
available in this context for control design. It is however dicult to solve in the
time domain since we would need to solve the Laplace transform which is generally
not an easy task.
2.4 Transfer functions
Recall from the study of Laplace transforms the following important transforma-
tions
/[

f(t)] = sF(s) f(0) (2.12)
/[

f(t)] = s
2
F(s) sf(0)

f(0) (2.13)
.
.
.
/[f
n
(t)] = s
n
F(s) s
n1
f(0) s
n2

f(0) ... sy
n2
(0) y
n1
(0). (2.14)
Now consider a generic LTI input/output dierential equation given by
y
n
+a
n1
y
n1
+... +a
1
y +a
0
y = b
m
u
m
+b
m1
u
m1
+.... +b
1
u+b
0
u. (2.15)
Applying the Laplace transforms from above to this dierential equation yields
s
n
Y (s) +a
n1
s
n1
Y (s) +... +a
1
sY (s) +a
0
Y (s) +f
y
(s, t = 0) =
b
m
s
m
U(s) +... +b
1
sU(s) +b
0
U(s) +f
u
(s, t = 0) (2.16)
where f
y
(s, t = 0) and f
u
(s, t = 0) are functions of the initial conditions as given
by the Laplace transform. Rearranging the above gives
Y (s) =
b
m
s
m
+... +b
1
s +b
0
s
n
+a
n1
s
n1
+... +a
0
1
U(s) +
f
u
(s, t = 0) f
y
(s, t = 0)
s
n
+a
n1
s
n1
+... +a
0
2
.
(2.17)
Box 1 represents the transfer function and it describes the forced response of the
system. Box 2 represents the free response of the system depending on the initial
conditions. Depending on the system (whether it has control input or not) and the
exact system scenario (whether the initial conditions are zero or not), Y (s) may
comprise box 1 or box 2 or both. For control analysis, we usually assume box 2
is zero and thus box 1 represents the entire system response. It will be seen later
that many results which are true for this case are also true when box 1 is zero and
box 2 is not.
The roots of the numerator of a transfer functions are called zeros since they send
the transfer function to zero whereas the roots of the denominator of a transfer
17
2.4. Transfer functions
function are called poles since they send the transfer function to . The poles and
zeros are very important in analyzing system response and for designing appropriate
compensators.
18
Chapter 3
Dynamic response of systems
3.1 First-order system response
A rst-order system (such as a spring-mass system) takes on the general form
y +y = ku (3.1)
y +
y

=
k

u (3.2)
y +ay = bu, a = 1/ , b = k/ (3.3)
[sY (s) +y(0)] +Y (s) = kU(s) (3.4)
Y (s) =
k/
s + (1/)
1
U(s) +
y(0)
s + (1/)
2
(3.5)
where is the time constant of the system response and k is a constant.
The roots of the denominator of the transfer function (the characteristic equation)
are called poles and in this case the pole is a =
1

. If the pole lies in the


left-half of the complex s-plane (LHP), it is stable (exponentially decreasing). If it
is in the right-half of the complex s-plane (RHP) then it is unstable (exponentially
increasing). A pole on the imaginary axis (with real part equal to 0) is marginally
stable.
The free response of this system (due to the initial conditions) is given by y
free
(t) =
y(0)e

= y(0)e
at
.
The forced response of the system to a step input is given by y
step
(t) = k +
[y(0) k]e

. The value of y at the time constant value is given by y() =


0.368y(0) + 0.632k. The lower is, the faster the response. Thus, making [a[
bigger gives a faster response.
3.2 Second-order systems
The general form of a second-order system is given by
y + 2
n
y +
2
n
y = k
2
n
u (3.6)
19
3.2. Second-order systems
where k is a constant,
n
is the natural frequency of the system, and is the
damping ratio. Taking the Laplace transform as before yields the system in terms
of its forced and free response,
Y (s) =
k
2
n
s
2
+ 2
n
s +
2
n
1
U(s) +
[s + 2
n
]y(0) + y(0)
s
2
+ 2
n
s +
2
n
2
(3.7)
where the common denominator is the open loop characteristic equation and whose
roots give the system poles. For such a canonical form of second-order system, the
poles are given by
n

n
_

2
1. If 0 < < 1, then we have two complex
poles (since
2
1 is negative) implying oscillation in the system free response. In
this case poles are given by
n

n
_
1
2
j
The free response of a second-order system (0 < < 1) is given by
y
free
(t) =
y(0)
_
1
2
e

n
t
cos t + tan
1
_
_
1
2

_
(3.8)
It can be easily seen from the above that we need
n
> 0 or alternatively the
poles in the LHP for stability.
The forced response of a second-order system (0 < < 1) to a step is given by
y
step
(t) = k
_
1
e

n
t
_
1
2
sin
_

d
t + tan
1
_
_
1
2

___
(3.9)
where
d
=
n
_
1
2
.
For a second-order system, the rise time t
r
is given by
t
r
=

d
(3.10)
where is the angle such that cos = . The time to maximum overshoot is
given by
t
p
=

d
=
T
d
2
(3.11)
and the maximum overshoot M
p
itself is given by
M
p
= e

1
2
e

(3.12)
where the percent overshoot can be determined by multiplying the above expression
by 100.
If the system is nonminimum phase (RHP zeroes), then the response will have
undershoot instead of overshoot. When the system has a RHP zero at s = c, a
lower bound for the undershoot M
u
is given by
M
u

1
e
ct
s
1
(3.13)
where is the maximum allowable steady-state error in response beyond the settling
time. Thus for a 2% settling time, = 0.02.
20
3.3. Design considerations
3.3 Design considerations
We consider the case where we require a certain percent overshoot in our system.
We know that the damping ratio is a critical factor in this, but how must it be
chosen such that we have a certain percent maximum overshoot? Moreover, how
must we choose our poles so that this choice of is satised.
We can use the relationship for percent overshoot given previously to determine
the damping ratio that will ensure a certain maximum overshoot,
%OS
. As long
as we choose a damping ratio greater than
%OS
, we will not exceed the specied
maximum overshoot. In the complex s-plane, the following can easily be shown to
be true
cos = (3.14)
where is a counterclockwise angle made with the negative real axis. Hence any
poles that lie on or between the lines described by = cos
1
(
%OS
) satisfy

%OS
.
For a LHP pole a, it is true that = 1/a. Thus, a larger magnitude of a LHP
pole signies a faster response and these poles are known as fast poles. The 2%
setting time is given by t
2%
= 4 and the 5% settling time is given by t
5%
= 3,
where is the time constant. Hence, to achieve a settling time of t
2%
or less
requires placing the poles of the system to the left of a =
4
t
2%
. A similar result
can be easily derived for t
5%
.
We can combine the above to results for maximum overshoot and settling time to
determine precise poles for a desired system response.
3.4 Routh-Hurwitz stability criterion
As discussed previously, poles in the RHP indicate instability of a system. There-
fore, the roots of the denominator of a transfer function hold key information
regarding the stability and response characteristics of the system.
Consider the denominator of a closed-loop transfer function, also known as the
closed-loop characteristic equation,
CLCE(s) = s
n
+a
1
s
n1
+. . . +a
n1
s +a
n
= 0 (3.15)
where a
1
, . . . , a
n
are real constants. The system is stable if the roots of the
CLCE(s) are in the LHP. If the system is stable, then a
1
, . . . , a
n
> 0 but a
1
, . . . , a
n
>
0 does not necessarily imply stability. Furthermore, if any a
k
0, then the system
has at least one pole with a positive or zero real part which implies stability or
marginal stability, respectively.
The Routh-Hurwitz stability criterion helps determine not only whether a system
is stable or not but it also species how many unstable poles are present without
explicitly solving the characteristic equation, CLCE(s). It can also be used for
multiple gain closed-loop systems.
By the Routh-Hurwitz stability criterion, if a
1
, . . . , a
n
,= 0 and if a
1
, . . . , a
n
are all
positive (or equivalently all negative) then we can use the Routh array to determine
stability and the number of unstable poles.
21
3.4. Routh-Hurwitz stability criterion
To form the Routh array, rst arrange a
1
, . . . , a
n
in two rows as follows
Row
n 1 a
2
a
4
. . . 0
n-1 a
1
a
3
a
5
. . . 0
Then we determine the rest of the elements in the array. For the third row,
coecients are computed using the pattern below
b
1
=

1 a
2
a
1
a
3

a
1
b
2
=

1 a
4
a
1
a
5

a
1
b
3
=

1 a
6
a
1
a
7

a
1
. . . (3.16)
This is continued until the remaining elements are all zero. Similarly, for the fourth
row
c
1
=

a
1
a
3
b
1
b
2

b
1
c
2
=

a
1
a
5
b
1
b
3

b
1
c
3
=

a
1
a
7
b
1
b
4

b
1
. . . (3.17)
and for the fth row
d
1
=

b
1
b
2
c
1
c
2

c
1
d
2
=

b
1
b
3
c
1
c
3

c
1
d
3
=

b
1
b
4
c
1
c
4

c
1
. . . (3.18)
where all the series of elements are continued until the remaining are all zero. The
Routh array is then given by
Row
n 1 a
2
a
4
. . . 0
n-1 a
1
a
3
a
5
. . . 0
n-2 b
1
b
3
b
5
. . . 0
n-3 c
1
c
3
c
5
. . . 0
n-4 d
1
d
3
d
5
. . . 0
. . .
. . .
. . .
2 e
1
e
2
1 f
1
0 g
1
The number of roots of the closed-loop characteristic equation in the RHP is equal
to the number of changes in sign of the coecients of the rst column of the array
[1, a
1
, b
1
, c
1
, . . .]. The system is stable if and only if a
1
, . . . , a
n
> 0 and all the
terms in [1, a
1
, b
1
, c
1
, . . .] are positive.
We have a special case when the rst element in a row becomes zero, since this
implies division by 0 for succeeding rows. For this case, replace the 0 with
(arbitrarily small constant) and continue with obtaining expressions for the elements
in the succeeding rows. Finally, when all expressions are obtained, let 0 and
evaluate the sign of the expressions. This is all that is needed since we are only
22
3.5. Pole/Zero eects
concerned with sign changes. If we nd no sign changes, then the 0 element
signies a pair of poles on the imaginary axis (no real parts) implying marginal
stability.
Another special case is when all the elements in a row become zero. In this case
we may still proceed in constructing the Routh array using the derivative of a
polynomial dened using the previous (nonzero) row. If the n-th row is all zero,
rst form a polynomial of order n 1 in s using the elements in row n 1. Then
obtain the derivative of this polynomial with respect to s, i.e.
d
ds
and replace the
zero row (the n-th row) with the coecients of this derivative. The rest of the
array is completed as usual.
3.5 Pole/Zero eects
The location of the closed-loop system poles determines the nature of the system
models but the location of the closed-loop zeros determines the proportion in
which these modes are combined. This can be easily veried via partial fraction
expansions. Poles and zeros far away from the imaginary axis are known as fast
poles and zeros, respectively. Conversely, poles and zeros close to the imaginary
axis are known as slow poles and zeros. Fast zeros, RHP or LHP, have little to no
impact on system response.
Slow zeros have a signicant eect on system response. Slow LHP zeros lead to
overshoot and slow RHP zeros lead to undershoot. A lower bound M
u
for the
maximum undershoot (due to the presence of a RHP zero at s = c) is given by
M
u

1
e
ct
s
1
(3.19)
where = 0.02 for a 2% settling time t
s
. From the denominator of the above, it
is obvious that fast zeros (large c)lead to a smaller lower bound for the maximum
undershoot M
u
and vice versa. Alternatively a short settling time t
s
, implying a
high bandwidth, would lead to more undershoot. Hence for a given RHP zero,
we can only lower t
s
so much before getting unacceptable undershoot. To avoid
undershoot, the closed-loop bandwidth is limited by the magnitude of a RHP zero.
We determine the maximum bandwidth acceptable below.
The the approximate 2% settling time is given by t
s
4 = 4/a where is the
time constant and a is the real part of the slowest LHP closed-loop system pole.
Thus M
u
can then be expressed as
M
u

1
e
4c/a
1
. (3.20)
Thus if the magnitude of the real part of the slowest LHP closed-loop pole is
smaller than the RHP zero, undershoot will remain low since the denominator of
the above will become large. The converse is true as well. Keep real part of slowest
LHP pole less than real part of any RHP zero to avoid undershoot.
The above results are true for LHP zeros as well in an analogous manner but for
overshoot instead. Thus, in order to avoid overshoot, we must keep [a[ < [c[ where
a is the slowest LHP pole and c is the slowest LHP zero.
23
3.5. Pole/Zero eects
If the magnitude of the real part of the dominant closed-loop poles is less than the
magnitude of the largest unstable open-loop pole, then signicant overshoot will
occur. Keep real part of slowest LHP pole greater than real part of any RHP pole
to avoid overshoot.
24
Chapter 4
Frequency response tools
4.1 Frequency response
We consider the input to any transfer function G(s) = B(s)/A(s) to be u(t) =
Asin t where A is a constant and is the system frequency. Then it can be
shown that the steady-state output is then given by
y
ss
(t) = [G(j)[Asin t +G(j) (4.1)
where [G(j)[ is simply the magnitude of G(s) when evaluated at j and the
phase G(j) is given by
G(j) = B(j)A(j) = tan
1
_
ImB(j)
Re B(j)
_
tan
1
_
ImA(j)
Re A(j)
_
(4.2)
for all R
+
. Much useful and generalizable information can be gleaned from
the above (the frequency response function G(j) or FRF).
4.2 Bode plots
The pair of plots of magnitude [G(j)[ vs. frequency and phase G(j) vs.
frequency are collectively known as the Bode plots of G(s). The magnitude
is usually plotted in decibels (dB) and the frequency for both plots is on the
logarithmic scale. The decibel value of the FRF |G(j)| is given by
|G(j)| = 20 log
10
[G(j)[ (4.3)
and the logarithmic scale value of is log
10
. The appropriate values for the
magnitude and phase are determined as previously shown.
The benet of using a logarithmic scale are many fold but most importantly, multi-
plication in a linear scale implies addition in the logarithmic scale. Thus, since the
poles/zeros of a transfer function can be expressed as an arbitrarily long multiplica-
tion of factors, in the logarithmic scale we can decompose a transfer function into
a summation of elementary transfer functions based on the original poles/zeros.
This helps in plotting the function and obtaining fundamental insights into the
behaviour of the plant.
25
4.2. Bode plots
Example Describe the frequency response of the following closed-
loop transfer function using bode plots
G(s) =
45s + 237
(s
2
+ 3s + 1)(s + 13)
. (4.4)
The bode plots for the transfer function can be generated using the
bode command in MATLAB. These are shown in Figs. (4.1) and (4.2).
Figure (4.1) shows the frequency response bode plots on the standard
logarithmic scale and Fig. (4.2) shows the frequency response bode
plots on a linear scale. The benets of the logarithmic scale are obvi-
ous from the gures since they show the response of the system better
when compared to the linear scale plots. This is especially true at very
low and very high frequencies where the linear scale response grows
asymptotically.
80
60
40
20
0
20
40
M
a
g
n
i
t
u
d
e

(
d
B
)
10
3
10
2
10
1
10
0
10
1
10
2
180
135
90
45
0
P
h
a
s
e

(
d
e
g
)
Frequency (Hz)
Figure 4.1: Logarithmic scale bode plot of G(s).
Note that the frequency is shown in Hz and not in rad/sec to make
the linear scale bode plots distinguishable.
Many systems, including control systems, have their performance specied in terms
of frequency response criteria. An important one of these is the bandwidth of
the system. We dene it, in general terms, as the frequency range for which
the magnitude of the transfer function from input to output is close to unity (in
absolute terms) or zero (in dB). This implies that the bandwidth is the frequency
range for which the system response is close to ideal.
The previous denition can be expressed more exactly for control systems since they
normally behave like low-pass systems. Low-pass systems are systems for which
the response begins near zero decibels and then rolls o with increasing frequency.
26
4.3. Gain and phase margins
0
5
10
15
20
M
a
g
n
i
t
u
d
e

(
a
b
s
)
10 20 30 40 50 60 70 80 90 100
180
135
90
45
0
P
h
a
s
e

(
d
e
g
)
Frequency (Hz)
Figure 4.2: Linear scale bode plot of G(s).
It is usually the case that the magnitude response does not roll o immediately but
rather remains level for some frequency range. For such systems, the bandwidth is
the frequency at which the magnitude has rolled o by 3 dB from its low-frequency
level value. Another denition which is the used in the rest of these notes is that
the bandwidth is the real part of the slowest LHP pole. It is commonly the case
that the bandwidth from the two denitions usually closely coincides.
4.3 Gain and phase margins
As has been previously discussed, a system is stable if all of its poles are in the LHP.
Otherwise it is unstable. Not all stable systems are the same and some systems are
more stable than others. Thus, we may are faced with the problem of the extent
of stability of a system. The concepts of gain and phase margins are useful in
this regard and bode plots in particular are helpful in determining these. It must
be noted that gain and phase margins are only meaningful for stable closed-loop
systems that become unstable with increasing gain.
Consider a simple stable feedback system with the plant H(s) = B(s)/A(s) and
the compensator given by C(s) = KP(s)/L(s) where K is a constant gain. Let
G(s) be the closed-loop transfer function given by
G(s) =
H(s)C(s)
1 +H(s)C(s)
(4.5)
Then the closed-loop characteristic equation CLCE which is the denominator of
the closed-loop transfer function can be easily found to be
CLCE(s) = 1 +KH(s)C(s) (4.6)
27
4.3. Gain and phase margins
where the roots of 1 +KH(s)C(s) are the closed-loop poles of the system. These
are given by the solutions to
KH(s)C(s) = 1. (4.7)
Since angles in the complex s-plane are measured in a counterclockwise direction
from the positive real axis, in polar coordinates, the point 1 lies at an angle
1 = 180

and magnitude [ 1[ = 1. Thus, if we evaluate the frequency response


of the closed-loop system G(j), the system will become unstable precisely at
a point where we have both G(j) = 180

and [G(j)[ = 1. It can also


be shown that the closed-loop system is also stable for [G(j)[ < 1. But since
we already have a stable system there will be no point where [G(j)[ < 1 and
G(j) = 180

simultaneously. This point is commonly known as the crossover


frequency. The gain crossover frequency is when only [G(j)[ = 1 or |G(j)| = 0
is true and the phase crossover frequency is when only G(j) = 180

is true.
It can be seen from the previous that since systems with RHP poles are a priori
unstable, the concepts of phase and gain margins are meaningless.
It follows that we can dene the gain and phase margins as how much we will
need to change the system (in terms of magnitude and angle) before we reach
instability. Moreover, we can exploit the bode plots to formulate succinct denitions
of these. Thus, the phase margin is dened as the amount of additional phase lag
needed at the gain crossover frequency which will bring the system to the verge
of instability (i.e. G(j) = 180

or G(j) = +180

). Correspondingly, the
gain margin is dened as the reciprocal of the magnitude [G(j)[ or the negative
decibel magnitude |G(j)| at the phase crossover frequency. This gain margin
determination is based on a decibel plot since 20 log
10
1 = 0.
For minimum-phase systems, the phase margin must be negative for stability. Al-
ternatively, we can use G(j) = 180

as the stability criterion since it refers to


the same angle in the complex s-plane. In this case, for minimum-phase systems,
the phase margin must be positive for stability.
The gain margin describes the maximum multiple of the gain K that can be applied
in feedback before the system becomes unstable. A gain margin in decibels that
is positive implies that the system is stable and conversely, a negative decibel gain
margin implies instability of the underlying system.
For a stable minimum-phase system, the gain margin indicates how much we
can increase the gain before the onset of instability. Conversely for an unstable
minimum-phase system, it indicates how much we must decrease gain to regain
stability. However, since an unstable system would yield a negative decibel value,
this implies 0 < K < 1. This is not a feasible control gain for most systems and
therefore is not a meaningful measure of instability for many unstable systems.
For systems that never approach the phase crossover frequency, the gain margin is
either or indicating that the system is stable for all gains or unstable for
all gains, respectively. Furthermore, the system may have more than one crossover
frequency indicating that the system is stable only for gain values within a certain
range. For stable systems with more than one gain crossover frequency, the phase
margin is measured at the highest gain crossover frequency.
For nonminimum-phase system or systems with undened phase/gain margins, the
best recourse is to use the Nyquist stability criterion.
28
4.4. Phase margin and second-order systems
4.4 Phase margin and second-order systems
For a strict canonical second-order closed-loop system, the phase margin is related
to the damping ratio, . We must be careful to make sure we have a true second-
order closed-loop system before using the following results. The second-order
closed-loop transfer function CLTF(s) is given by
CLTF(s) =

2
n
s
2
+ 2
n
s +
2
n
(4.8)
and the related second-order open-loop transfer function OLTF(s) is given by
OLTF(s) =

2
n
s(s + 2
n
)
. (4.9)
The phase margin for this open-loop transfer function in closed-loop with gain K
can then be related to as follows
Phase margin = tan
1
_
_
2
_
_
1 + 4
4
2
2
_
_
(4.10)
100 for 0 < Phase margin < 70

(4.11)
The gain crossover frequency
gc
for such a second-order system can also be
determined as

gc
=
n
_
_
1 + 4
4
2
2
(4.12)
This allows us to determine the required gain crossover for a specied percent
overshoot (since percent overshoot can be used to determine ).
The bandwidth,
BW
of the system is given by

BW
=
n
_
1 2
2
+
_
4
4
4
2
+ 2 (4.13)
It can also be shown for the above system that
gc

BW
2
gc
.
Since the time constant = 1/
BW
, a higher bandwidth implies a faster response
(smaller time constant). It also allows us to specify
BW
in terms of and de-
termine the corresponding range of
gc
. We can use this and the previous result
to design a system in terms of phase margins and crossover gains using specied
design requirements.
4.5 Root-locus
The basic characteristics of the transient response of a system are closely related
to pole locations. Pole locations depends on the value of the loop gain in a simple
feedback setting where the compensator is a constant gain. Hence, it is becomes
important to know how the closed-loop poles move in the complex s-plane as the
gain is varied. Once the desired poles are determined using previously discussed
techniques, the design problem then only involves determining the appropriate gain
29
4.5. Root-locus
to place the system poles at their desired locations. In many cases, simple gain
will not work and we would need to add a more complex compensator.
Root-locus addresses the design problem when dealing with adjusting a simple
parameter (such as a gain but could be otherwise). It was developed by W. R.
Evans and involves plotting the roots of the characteristic equation of the closed-
loop system for all values (0 to ) of an adjustable system parameter that is
usually the loop gain. Root-locus means the locus of roots of the characteristic
equation.
Consider a simple feedback system with plant H(s) and compensator C(s). The
closed-loop transfer function G(s) is then given by
G(s) =
H(s)C(s)
1 +H(s)C(s)
. (4.14)
The characteristic equation is the denominator of the above equated to 0 and it
satises the following
H(s)C(s) = 1. (4.15)
We can express this in the polar form as
H(s)C(s) = 180

[H(s)C(s)[ = 1. (4.16)
Only the values of s that satisfy the above satisfy the characteristic equation and
it follows that these are the poles of the closed-loop transfer function G(s).
Let the H(s)C(s) have poles at p
1
, . . . , p
n
and zeroes at z
1
, . . . , z
m
. Then the
angle at a given s maybe determined using the following
H(s)C(s) = z
1
+. . . +z
m
p
1
. . . p
n
(4.17)
where the angle of an arbitrary zero/pole x is given by x = tan
1
(Imx/Re x).
The magnitude of any complex number x is given by [x[ =

Re x + Imx. This
can be used to determine [H(s)C(s)[.
Angles are measured counterclockwise from the positive real axis.
Root-loci are symmetric about the real-axis, due to the presence of complex
conjugates.
If the dierence between the orders of the numerator and denominator of
H(s)C(s) is greater or equal to two, then the sum of the poles is a constant.
This implies that if some poles move toward the right, others have to move
toward the left.
A slight change in pole-zero congurations may cause signicant changes in
the root-locus.
The patterns of the root-loci depend only on the relative separation of the
open-loop poles and zeros.
If a pole in the root-locus plot only moves over into the RHP (implying
instability) or LHP for a xed bounded interval of the gain, then the system
is called conditionally stable. It is not desirable in a control system since
the danger always exists of becoming unstable/stable by both increasing the
gain too much or decreasing the gain too much.
30
4.5. Root-locus
If the construction of G(s) involved a cancellation of poles with zeros be-
cause of the interaction between the plant and compensator, all the roots
of the true characteristic equation will not show (since we are dealing with
a reduced equation). To avoid this problem, add the canceled closed-loop
pole retroactively to the closed-loop poles obtained from the root-locus plot
of G(s). This implies that the canceled pole is still a pole of the system but
is only canceled in feedback (or it is available after feedback).
Example For the feedback system shown in Fig. (4.3) with
H(s) =
1
s(s + 1)
2
(4.18)
nd the root-locus plot and the gain values that ensure the system
R(s)
+
-
U(s) Y(s)
K H(s)
Figure 4.3: Simple gain feedback system.
stable.
The root-locus plot for this transfer function can be approximately
drawn by hand or plotted using the rlocus command in MATLAB as
shown in Fig. (4.4). The two poles and their movement with increas-
Real Axis
I
m
a
g
i
n
a
r
y

A
x
i
s
2 1.5 1 0.5 0 0.5
1
0.5
0
0.5
1
0.16 0.34 0.5 0.64 0.76 0.86
0.94
0.985
0.16 0.34 0.5 0.64 0.76 0.86
0.94
0.985
0.25 0.5 0.75 1 1.25 1.5 1.75 2
Figure 4.4: Root-locus plot for H(s).
31
4.6. Nyquist stability criterion
Real Axis
I
m
a
g
i
n
a
r
y

A
x
i
s
0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0.1 0.2
0.2
0
0.2
0.4
0.6
0.8
1
1.2
System: sys
Gain: 2
Pole: 0.000468 + 1i
Damping: 0.000468
Overshoot (%): 100
Frequency (rad/sec): 1
0.12 0.24 0.38 0.5
0.64
0.76
0.88
0.97
0.97
0.2
0.4
0.6
0.8
1
1.2
0.2
Figure 4.5: Maximum stabilizing gain for closed-loop system.
ing gain is indicated on the plot. The stable pole at s = 1 does not
become unstable for any value of K. However, the marginally stable
pole at s = 1 does cross the imaginary axis to become unstable for
some value of K. This maximum value of the gain is shown in Fig.
(4.5). Thus for any gain value K > 2, the system becomes unstable.
4.6 Nyquist stability criterion
This is a helpful tool that is useful for many kinds of systems including time
delay systems and robust stability. Given a closed-loop transfer function G(s), we
want to determine closed-loop stability/instability and also the number of unstable
closed-loop poles.
Nyquist plots are obtained by plotting G(j) for all on the complex plane (real
vs. imaginary). The direction of the plotted line is also indicated in terms of
increasing . These can usually be done with the aid of bode plots by reading o
values of magnitude/phase for a certain frequency from the bode plots and then
plotting these points in the complex plane using polar coordinates (i.e. magnitude
and direction/angle). Angles are measured in a counterclockwise manner from the
positive real axis. The Nyquist plot is symmetric about the real axis due to the
presence of complex conjugates.
The number of unstable poles N is then given by the equation
N = N
CW
+N
OL
(4.19)
where N
OL
is the number of open-loop unstable poles and N
CW
is the number of
clockwise encirclements of the point 1/K by the Nyquist plot. The variable K
is an independent gain on the plant and is usually considered 1 when the Nyquist
32
4.6. Nyquist stability criterion
plot is not being used for design purposes. A counterclockwise encirclement is the
same as a negative clockwise encirclement.
Example Consider the simple feedback system shown in Fig. (4.6).
Given
C(s) G(s)
R(s)
+
-
U(s) Y(s)
Figure 4.6: Block diagram of simple single degree of freedom feedback system.
G(s) =
3
s 1
, C(s) =
K
s + 3
(4.20)
where K is a gain to be determined, nd the appropriate Nyquist plot
and comment on the stability of the closed loop system.
Since Nyquist plotting requires an independent gain on the plant, we
rearrange and manipulate the feedback system to obtain the closed-
loop transfer function as
G
CL
(s) = KH(s) = K
3
(s + 3)(s 1)
. (4.21)
The corresponding block diagram is shown in Fig. (4.7). The bode
R(s)
+
-
U(s) Y(s)
K H(s)
Figure 4.7: Block diagram of feedback system manipulated for generating the
Nyquist plot.
diagram is then plotted as in Fig. (4.8) and values at relevant points
are picked out in order to make the Nyquist plot. Typical points to get
the angle/magnitude of the frequency response are when the angle is
at multiples of 90

. A more complex Nyquist plot would require more


points to get an accurate representation. The corresponding Nyquist
plot is shown in Fig. (4.9) with the directions put in according to
increasing frequency.
It is clear from the expression of H(s) that we have 1 unstable open-
loop pole at s = 1, i.e. N
OL
= 1. From the Nyquist plot we have 1
33
4.6. Nyquist stability criterion
80
60
40
20
0
M
a
g
n
i
t
u
d
e

(
d
B
)
10
2
10
1
10
0
10
1
10
2
180
175
170
165
160
155
150
P
h
a
s
e

(
d
e
g
)

Frequency (rad/sec)
Figure 4.8: Bode plot of closed-loop system.
1.51.41.31.21.1 1 0.90.80.70.60.50.40.30.20.1 0 0.1 0.2 0.3 0.4 0.5
0.4
0.3
0.2
0.1
0
0.1
0.2
0.3
0.4
Real Axis
I
m
a
g

A
x
i
s
Figure 4.9: Nyquist plot of closed-loop system.
counterclockwise encirclement or -1 clockwise encirclements for 1 <
1/K < 0, i.e. N
CW
= 1. It follows that
N
CL
= N
CW
+N
OL
=
_
1 + 1 = 0 for 1 < 1/K < 0
0 + 1 = 1 for 1/K < 1
(4.22)
and thus
N
CL
=
_
0 if K > 1
1 if K < 1
(4.23)
34
4.6. Nyquist stability criterion
In other words, any gain greater than 1 ensures stability of the closed-
loop system.
When there is a pole at the origin or anywhere else on the imaginary axis, the
Nyquist plot will become singular which leads to a problem of counting the encir-
clements. This problem is countered by evaluating G(s) at a point which is not
singular but is very close to the singular point. If the singular point is given by
s
j,
then the point close to it is usually taken to be +
s
j, where is an arbitrarily
small positive real number as shown in Fig. (4.10).
Figure 4.10: s-plane showing path taken to determine how symmetric singularities
join when making Nyquist plots.
This point is then located on the plot and is made arbitrarily large in magnitude
(tending to ) which helps indicate in which direction the singular points join at
innite distance.
Example Consider a feedback system similar to the one shown in
Fig. (4.7) with closed-loop transfer function
G
CL
(s) = KH(s) = K
1
s(s + 1)
2
. (4.24)
where K is a gain to be determined. Find the appropriate Nyquist plot.
The bode diagram is then plotted as in Fig. (4.11) and values at rele-
vant points are picked out in order to make the Nyquist plot. Typical
points to get the angle/magnitude of the frequency response are when
the angle is at multiples of 90

. A more complex Nyquist plot would


require more points to get an accurate representation.
35
4.6. Nyquist stability criterion
60
40
20
0
20
M
a
g
n
i
t
u
d
e

(
d
B
)
10
1
10
0
10
1
270
225
180
135
90
P
h
a
s
e

(
d
e
g
)

Frequency (rad/sec)
Figure 4.11: Bode plot of closed-loop system.
Since this transfer function has a pole on the imaginary axis at s = 0,
we do not evaluate G
CL
(j0) but instead evaluate at G
CL
( + j0)
where is an arbitrarily small number. This is in order to determine
the asymptotic direction of the closed contour of the Nyquist plot. The
corresponding Nyquist plot with directions is shown in Fig. (4.12).
2 0 2 4 6 8
10
5
0
5
10
Real Axis
I
m
a
g

A
x
i
s
Figure 4.12: Nyquist plot of closed-loop system.
The stability of the closed-loop system maybe determined as before
36
4.7. Feedback with disturbances
using the Nyquist plot.
4.7 Feedback with disturbances
Consider a single degree of freedom feedback system (shown below) with input
disturbance D
i
(disturbance between the compensator C(s) output U(s) and the
input of the plant G(s)), output disturbance D
o
(disturbance in the plant output)
and measurement noise/disturbance D
m
. Let the system input be R(s).
C(s) G(s)
R(s)
+
-
D
+
+ +
+
+
+
D
D
U(s)
i o
m
Y(s)
Figure 4.13: Block diagram of a single degree-of-freedom feedback system with
disturbances.
For such a system, we can write the following two functions
Y (s) = T(s)R(s) +S(s)D
o
(s) +S
i
(s)D
i
(s) T(s)D
m
(s) (4.25)
U(s) = S
u
(s)R(s) +S
u
(s)D
o
(s) T(s)D
i
(s) S
u
(s)D
m
(s) (4.26)
where S(s) is the sensitivity function, T(s) is the complementary sensitivity func-
tion, S
i
(s) is the input-disturbance sensitivity function and S
u
(s) is the control
sensitivity function. These are given by the following relations
T(s) =
G(s)C(s)
1 +G(s)C(s)
(4.27)
S(s) =
1
1 +G(s)C(s)
(4.28)
S
i
(s) =
G(s)
1 +G(s)C(s)
= G(s)S(s) (4.29)
S
u
(s) =
C(s)
1 +G(s)C(s)
= C(s)S(s) (4.30)
We can use the above to derive transfer functions between any input/output pair.
Furthermore, we can independently assess the stability of each input/output pair
by evaluating the relevant transfer function.
37
4.7. Feedback with disturbances
Example Find the closed-loop sensitivity functions for a closed-loop
system with plant transfer function
G(s) =
3
(s + 4)(s + 2)
(4.31)
and compensator
C(s) =
s + 2
s
. (4.32)
Also comment on the stability of the system.
Since G(s) = B(s)/A(s) and C(s) = P(s)/L(s)
B(s) = 3 A(s) = (s + 4)(s + 2) P(s) = s + 2 L(s) = s
(4.33)
which gives us
T(s) =
GC
1 +GC
=
BP
AL +BP
=
3
s + 7
(4.34)
S(s) =
1
1 +GC
=
AL
AL +BP
=
s(s + 4)
s
2
+ 4s + 3
(4.35)
S
u
(s) = SC =
(s + 4)(s + 2)
s
2
+ 4s + 3
(4.36)
S
i
(s) = SG =
3s
(s
2
+ 4s + 3)(s + 2)
. (4.37)
All the above closed-loop transfer functions are stable except for the
input-disturbance S
i
(s) since it has a positive pole. Thus, the input-
disturbance to output path is not stable and therefore the entire system
is unstable.
As can be seen, the complementary sensitivity function T(s) is the basic transfer
function from the input R(s) and the output Y (s). Thus, for good tracking we
need T(s) 1. But as can be seen from the rst function for Y (s), this increases
the measurement noise D
m
. The sensitivity on the other hand is the transfer
function from the output disturbance D
o
(s) to the output Y (s). Moreover the
S(s) sensitivity function is directly related to the input sensitivity S
i
(s) and the
control sensitivity S
u
(s), both of which we want to reduce to as low as possible.
Therefore, we want S(s) 0 and T(s) 1. This is both possible and is actually
a constraint on the system as it can be easily shown that
T(s) +S(s) = 1 (4.38)
But as mentioned earlier, T(s) 1 amplies measurement noise. If T(s) = 1
(and thus S(s) = 0) for all frequencies , then the system has innite bandwidth
(fast response). However, it amplies the measurement noise at all frequencies
which is even more noticeable at high frequencies since measurement noise is
usually signicant at higher frequencies. Therefore, having a high bandwidth is
not necessarily something desirable from a control design standpoint.
Innite bandwidth leads to high measurement noise because T(s) = 1 .
38
4.8. Trends from Bode & Poissons integral constraints
In real systems, T(s) cannot be 1 for all frequencies and rolls o at some nite
bandwidth frequency.
The bandwidth is dened as
BW
= 1/ where is the time constant of the
slowest LHP pole or in an alternate denition is the 3 dB point on a bode
magnitude plot.
When the true plant transfer function is not available, we proceed with our
analysis using the nominal plant transfer function G
0
(s). In this case the
sensitivity functions remain the same but with G
0
(s) instead of G(s). Thus
we have T
0
(s), S
0
(s), S
i0
(s) and S
u0
(s).
For a plant G(s) = B(s)/A(s) and a compensator C(s) = P(s)/L(s), the
closed-loop characteristic A
cl
is as before and is the denominator of all the
sensitivity functions above
A
cl
= AL +BP = 0 (4.39)
We need all the sensitivity functions to be stable for stability, i.e. we need
all the roots of A
cl
to be in the LHP.
This is only true if there is no cancellation of unstable poles between C(s)
and G(s). Canceling unstable poles is not recommended since we will never
have a perfect model and this will cause us to end up with a nonminimum-
phase zero instead of canceling the unstable pole. Moreover, this will result
in a RHP zero and pole very close to each other and this leads to much
higher instability as will be seen later.
4.8 Trends from Bode & Poissons integral constraints
Consider the case when we have no open-loop RHP planes or zeros. Then for
stability, the following is satised
_

0
ln[S(j)[ d =
_
0
d
> 0
k

2

d
= 0
(4.40)
where k = lim
s
sG(s)C(s) and
d
is the time delay in the system. This
is the rst of Bodes integral constraints on sensitivity. The next equation for
complementary sensitivity also needs to be satised for stability
_

0
ln

T
_
j
1

d
1

=
d


2k
r
(4.41)
where k
1
r
= lim
s
1/sG(s)C(s). Since an integral is the area under a graph,
the above signify how much of the graph of T(j) and S(j) needs to be above
or below the 0 axis. Upon inspection of the equations, it can be seen that time
delay causes a more positive integral, leading to the fact that time delays cause
both T(j) and S(j) to need to move more above the 0 axis for stability (to
satisfy the more positive integrals). This is undesirable as mentioned before and
therefore, time delays are undesirable.
39
4.8. Trends from Bode & Poissons integral constraints
Consider the case when we have N open-loop RHP (unstable) poles p
1
, . . . , p
N
and no open-loop RHP zeros. Then for stability, the following needs to be satised
_

0
ln[S(j)[ d =
_
_
_

N
i=1
Rep
i
n
r
> 1
k

2
+

n
i=1
Rep
i
n
r
= 1
(4.42)
where n
r
is the relative degree of the open-loop system (dierence between orders
of numerator and denominator of a proper transfer function). This is the second of
Bodes integral constraints on sensitivity. It is obvious from the above that having
larger RHP poles leads to a more positive sensitivity integral, which is something
undesirable because it pushes S(s) above the 0 axis causing peaks and increased
sensitivity at certain frequencies. An equation for the integral of the complementary
sensitivity is not available.
Consider the case when we have M open-loop RHP (nonminimum-phase) zeros
c
1
, . . . , c
M
and no RHP poles. For this case, there is no integral available for S(j)
but the following must be satised for stability
_

0
ln

T
_
j
1

d
1

=
d

2
+
M

i=1
1
c
i


2k
r
. (4.43)
It can be seen from the above that RHP zeros close to the imaginary axis make
the integral more positive (since 1/c
i
becomes large) leading to a larger area above
the 0 axis. This usually implies poor tracking and overshoot in certain frequency
ranges and is undesirable. Time delay also makes the integral more positive and is
undesirable.
Consider the case when we have N RHP poles p
1
, . . . , p
N
and M RHP zeros
c
1
, . . . , c
M
. Let the k-th pole be given by p
k
=
k
+ j
k
and the k-th zero by
c
k
=
k
+j
k
. The the following must be satised for stability
_

ln[S(j)[
_

k

2
k
+ (
k
)
2
_
d = ln

i=1
c
k
p
i
c
k
+p

for k = 1, . . . , M (4.44)
where a superscripted signies the complex conjugate. A similar expression can
be derived for the complementary sensitivity function
_

ln[T(j)[
_

k

2
k
+ (
k
)
2
_
d = ln

i=1
p
k
c
i
p
k
+c

+
d

k
for k = 1, . . . , N (4.45)
where the complex conjugate is indicated as before. The above two are known
as Poissons integral constraints on sensitivity and complementary sensitivity, re-
spectively. Since ln

N
i=1
c
k
p
i
c
k
+p

< 0 and ln

M
i=1
p
i
c
k
p
i
+c

< 0, the integrals will


in general be positive. Thus, having a RHP pole and a RHP zero close to each
other would make the denominators of the right hand-side small, leading to large
positive integrals. This implies the presence of large peaks and signicant areas
40
4.8. Trends from Bode & Poissons integral constraints
above the 0 axis for both sensitivity functions. This is undesirable and therefore,
we must avoid having a RHP pole and RHP zero close to each other.
The Poisson integral constraints containing a weighting term that concentrates
the frequency response in a certain frequency band. Thus, the integral eects are
more pronounced so we need to make a positive integral in a more or less nite
frequency rather than the innite frequency aorded to the previous integrals.
What we want:
We want to avoid peaks in T(j) above 0 since this would imply that we
have overshoot, poor tracking and a higher measurement noise amplication
in a certain frequency range.
Similarly, we want to avoid peaks in S(j) above 0 because this implies that
we have an increased sensitivity to disturbances in a certain frequency range.
Summary of trends:
We have a water-bed eect in both S(j) and T(j) even when we have no
RHP poles or zeros but the integral is negative so it is easier to deal with.
The presence of time delays introduces (higher) peaks in both S(j)
and T(j) since the integrals are not necessarily negative anymore and
become more positive. In the case of S(j), the integral becomes zero
(4.40) and in the case of T(j) the integral can range from a small
negative to a large positive (4.41).
The presence of only RHP poles makes the water-bed eect worse since it
makes the integral for sensitivity S(j) more positive (4.42).
Larger real parts of RHP poles are undesirable because they lead to a
a higher sensitivity peak because of a more positive integral.
A relative degree higher than 1 is undesirable since it eliminates a helpful
negative term in the integral expression.
The presence of only RHP zeros, in general, makes the water-bed eect worse
since the integral for T(j) has more positive terms than negative (4.43).
Smaller real parts of RHP zeros are undesirable because they lead to
a higher sensitivity peak because the reciprocal of the zeros makes the
integral more positive.
Time delays are also undesirable since they introduce another positive
term in the integral.
In the presence of both RHP zeros and poles, water-bed eect is most no-
ticeable [(4.44) and (4.45)].
Having a RHP pole and RHP zero close to each other is undesirable
since it greatly increases the integral value for both S(j) and T(j)
leading to large peaks in both. This is why we avoid canceling a RHP
pole.
The integral is more pronounced in this case because our frequency is
concentrated in a nite band.
41
4.9. Upper bounds on peaks for sensitivity integrals
4.9 Upper bounds on peaks for sensitivity integrals
Dene the weighting functions used in the Poisson integral constraint on sensitivity
W(c
k
, ) =

k

2
k
+ (
k
)
2
(4.46)
Then the integral of the weighting function is given as
(c
k
,
c
) 2
_

c
0
W(c
k
, ) d (4.47)
= 2 tan
1
_

k
_
+ 2 tan
1
_

k
_
(4.48)
We can use this to split the integration limits using the fact (c
k
, ) = .
Lets say we want to limit S(j) to a low value for a certain range of frequency
. We may want to do this because disturbances are signicant in that frequency
range or because most of the response will be in that frequency range. From our
previous discussion, this is not possible without a penalty which will be in the form
of a peak in the sensitivity function.
Let us assume we want to limit S(j) to a small number between the frequencies
0 and
l
. We can then use our previous results to split the integration limits of
the Poisson integral constraints to get an expressions for a lower bound on the
maximum peak in S(j)
ln[S(j)
max
[ >

ln

N
i=1
c
k
p
i
c
k
+p

+[(ln)(c
k
,
l
)[
(c
k
,
l
)
(4.49)
We can use this to determine the lower bound on the complementary sensitivity
function since T(s) +S(s) = 1.
Closed-loop bandwidth should not exceed the magnitude of the smallest RHP
open-loop zero. The penalty for not following this guideline is that a very
large sensitivity peak will occur leading to fragile (nonrobust) loops and large
undershoots/overshoots.
The lower bound on the complementary sensitivity peak is larger for systems
with time delay and inuence of delay increases for fast unstable poles.
If closed-loop bandwidth is much smaller than RHP pole, we will have large
complementary sensitivity peak and thus large overshoot.
42
Chapter 5
Frequency domain control design
5.1 Direct pole-placement
This involves placing the poles of the closed-loop characteristic equation (CLCE or
A
cl
) at desired locations. Let the plant transfer function be proper and given by
H(s) = B(s)/A(s) and the compensator transfer function by C(s) = P(s)/L(s).
It can then be shown that the closed-loop characteristic equation for this one
degree-of-freedom system is equivalent to the following
A
cl
= A(s)L(s) +B(s)P(s) (5.1)
where the polynomial order of A(s) (denominator of the plant transfer function)
is n.
1. Construct a desired closed-loop characteristic equation A
cl
d
based on design
requirements such as response time and overshoot.
To cancel a stable pole in the plant transfer function through the com-
pensator, just ignore that pole in all calculations (both in compensator
as well as plant).
2. To obtain the compensator C(s) coecients, nd the needed order of P(s)
and L(s).
If the polynomial degree of A
cl
d
is given by n
c
= 2n 1, then A
cl
will exist for a biproper compensator with polynomial degree n
p
=
n
l
= n 1 where n
p
is the polynomial order of P(s) and n
l
is the
polynomial order of L(s).
If the polynomial order of A
cl,d
is given by n
c
= 2n 1 + where is
a positive integer, then we can use the same order of P(s) but we will
have to change the order of L(s) to be n
l
= n 1 +.
If n
c
< 2n1, then we have more equations than unknowns and most
likely there is no solution.
3. Form general equations for P(s) and L(s) in terms of unknown variables and
analytically determine A
cl
from
A
cl
= A(s)L(s) +B(s)P(s). (5.2)
43
5.1. Direct pole-placement
4. Compare the coecients of this polynomial to the coecients of A
cl,d
to
obtain the compensator coecients.
Usually we can determine the compensator by following intuition rather than the
strict rules mentioned above.
Example Consider the system shown in Fig. (5.1) with the plant
transfer function given by
C(s) G(s)
R(s)
+
-
U(s) Y(s)
Figure 5.1: Block diagram of feedback system.
G(s) =
B(s)
A(s)
=
1
s
2
+ 3s + 1
. (5.3)
Find a suitable compensator C(s) = P(s)/L(s) that places the poles
of the closed-loop system at 10, 3 4j.
We follow the steps outlined earlier.
1. Since the desired closed-loop poles are given, the desired closed-
loop characteristic equation is given by
A
cl,d
= (s + 10)(s + 3 + 4j)(s + 3 4j) (5.4)
= s
3
+ 16s
2
+ 85 + 250 (5.5)
2. The orders of P(s) and L(s) are now determined. The order of
A(s) is n = 2, thus n
c
= 2n 1 = 3. Since order of the A
cl,d
is
also 3, the compensator will be biproper with polynomial degree
n
p
= n 1 = 1. Thus, let
C(s) =
P(s)
L(s)
=
b
1
s +b
0
s +a
0
(5.6)
where a
0
, b
0
, b
1
are coecients to be determined. This is usually
the most straightforward choice for a compensator. The com-
pensator is limited to three variables to avoid more unknowns
than equations since A
cl,d
is of order three. This may also be
determined via trial-and-error.
3. Form a general equation for A
cl
using C(s) as specied before
A
cl
= A(s)L(s) +B(s)P(s) (5.7)
= (s
2
+ 3s + 1)L(s) + (1)P(s) (5.8)
= s
3
+ (3 +a
0
)s
2
+ (1 + 3a
0
+b
1
)s + (a
o
+b
0
). (5.9)
44
5.2. Modeling errors
4. Comparing coecients of A
cl
and A
cl,d
3 +a
0
= 15 (5.10)
1 + 3a
0
+b
1
= 85 (5.11)
a
o
+b
0
= 250 (5.12)
which gives
a
0
= 13 (5.13)
b
0
= 237 (5.14)
b
1
= 45. (5.15)
Thus the compensator C(s) that places the poles of the closed-loop
system at 10 and 3 4j is given by
G(s) =
P(s)
L(s)
=
45s + 237
s + 13
(5.16)
5.2 Modeling errors
Let the nominal plant transfer function be given by G
0
(s) and the actual plant
transfer function by G(s). How can we describe the dierence between the nominal
and actual plant model? There are two methods:
The additive modeling error (AME) G

(s) is given in the equation


G(s) = G
0
(s) +G

(s) (5.17)
and is an absolute measure of uncertainty.
The multiplicative modeling error (MME) G

(s) is given in the equation


G(s) = G
0
(s) [1 +G

(s)] (5.18)
and is a scaled (relative to the nominal transfer function) measure of uncer-
tainty.
5.3 Robust stability
If the model used for control design is not the actual transfer function G(s) but
rather a nominal model G
0
(s) (which is usually the case) and we know the stability
properties of the nominal closed-loop system, we can derive a test for the stability
properties of the true closed-loop system.
Assume that the nominal compensator-plant transfer function C(s)G
0
(s) is stable,
i.e. number of unstable poles N = 0. Also assume that the open-loop transfer
functions of both G(s) and G
0
(s) have the same number of unstable poles, i.e.
number of open-loop unstable poles N
OL
is the same for both nominal and true
plant transfer functions.
45
5.3. Robust stability
By the Nyquist stability criterion
N = N
OL
+N
CW
(5.19)
where, in the case of the nominal compensator-plant transfer function, N = 0 and
N
OL
is the same for both nominal and true systems. Thus, to ensure stability of
the true system, it is sucient to ensure that the clockwise encirclements made
by the Nyquist plot of the true compensator-plant transfer function is the same
as the clockwise encirclements made by the nominal compensator-plant transfer
function. In other words, if C(s)G(s) does not make any more encirclements of -1
than C(s)G
0
(s) then the true closed-loop system is stable as well.
Consider the Nyquist sketch of C(j)G
0
(j). Then the maximum uncertainty
at any point in the sketch in terms of the multiplicative modeling error (MME)
G

(j) is given by
[C(j)G
0
(j) C(j)G(j)[ = [C(j)[G
0
(j) G
0
(j) G
0
(j)G

(j)][
(5.20)
= [C(j)G
0
(j)G

(j)[. (5.21)
This can be represented by a circle of radius [C(j)G
0
(j)G

(j)[ around the


Nyquist sketch of C(j)G
0
(j). The distance from the center of the circle
(C(s)G
0
(s)) to the -1 point can be found to be
[ 1 C(j)G
0
(j)[ = [1 +C(j)G
0
(j)[ (5.22)
as illustrated in Fig. (5.2).
Figure 5.2: Plot showing the robust stability condition. Note s = j.
Thus, as long as this distance is more than the radius of the uncertainty circle, the
46
5.4. Robust performance
system maintains the same number of encirclements. This is given by
[C(j)G
0
(j)G

(j)[ < [1 +C(j)G


0
(j)[, (5.23)

(j)
C(j)G
0
(j)
1 +C(j)G
0
(j)

< 1, (5.24)
[T
0
(j)G

(j)[ < 1, . (5.25)


The above boxed constraint is a sucient (but not necessary) condition for robust
stability. An algebraic derivation is available for this as well.
5.4 Robust performance
We can show robust stability as above but what about the performance of a
nominal system compared to the true system? Can we derive a test or measure of
performance robustness?
It can be easily shown that the true sensitivity functions are related to the nominal
sensitivity functions by the following expressions
T = T
0
(1 +G

)S

(5.26)
S = S
0
S

(5.27)
S
i
= S
i0
(1 +G

)S

(5.28)
S
u
= S
u0
S

(5.29)
where S

is known as the error sensitivity function and is given by


S

=
1
1 +T
0
G

. (5.30)
From the expressions for the nominal sensitivity functions, it can be seen that
S

1 implies that the nominal sensitivity functions are close to the true sensitivity
functions. This would in turn lead to true performance matching the nominal
performance since all transfer functions would be roughly equivalent.
It can be easily seen from the expression for S

that as T
0
G

0, S

1.
Thus, for robust performance we require
T
0
G

0 or [T
0
G

[ 1 (5.31)
Since modeling is typically better at lower frequencies, G

0 for low frequencies


is usually true. On the other hand, having a nite bandwidth implies that T
0
0
for some high frequency since T
0
is expected to roll o beyond the bandwidth
frequency. Thus, for a properly designed control system the robust performance
requirement T
0
G

0 is possible even though both T


0
and G

may not be small


at the same time.
This exposes another drawback of having very aggressive control or innite band-
width; that robust performance is not guaranteed at all frequencies.
47
5.5. Internal Model Principle
Bandwidth must be limited based on response of G

to maintain robust
performance: T
0
G

0.
It can also be seen from the above equations that robust performance is a much
stricter requirement than robust stability, conrming intuitive notions.
5.5 Internal Model Principle
Let f(s, 0) represent a function of the initial conditions. Then we can have the
following models of disturbances;
Constant/step disturbance,

d = 0. Then the transfer function of the distur-
bance D(s) is given by
D(s) =
f(s, 0)
s
(5.32)
Sinusoidal disturbance, d(t) = Asin
d
+
d
. Then D(s) is given by
D(s) =
f(s, 0)
s
2
+
2
d
(5.33)
Mixed constant/step and sinusoidal disturbance, d(t) = A
0
+Asin
d
+
d
.
Then D(s) is given by
D(s) =
f(s, 0)
s(s
2
+
2
d
)
(5.34)
The denominator of the disturbance transfer function is called the disturbance
generating polynomial. Assume the closed-loop since is stable. This would imply
that disturbance go to 0 as t .
Steady-state disturbance compensation can be accomplished by including the dis-
turbance generating polynomial in the denominator of the compensator C(s). This
is known as the internal model principle. It must be noted that the roots of the dis-
turbance generating polynomial impose some tradeos on the closed-loop system
as if they were poles in the open-loop plant.
We can use the same idea for robust reference tracking. If we need to track a
reference, we can use the same transfer functions as the disturbances or if we
have another reference to track, we can use another function to derive a transfer
function for the reference. The denominator of this transfer function is then called
the reference generating polynomial. If the closed-loop system is stable, one way
to achieve robust tracking is to include the reference generating polynomial in the
denominator of the compensator.
48
Chapter 6
State-space techniques
6.1 Transfer function to state-space
States are the smallest set of variables such that knowledge of these variables at
some time t = t
0
and input u(t) for t t
0
completely and uniquely determines
system behaviour.
We can obtain an input/output dierential equation as below for any transfer
function
y
n
+a
n1
y
n1
+. . . +a
1
y +a
0
y = b
m
u
m
+b
m1
u
m1
+. . . +b
1
u +b
0
u (6.1)
where the as represent the coecients of the denominator of the transfer function
and the bs represent the coecients of the numerator. The state-space represen-
tation of this system is then given by
_

_
x
1
.
.
.
x
n
_

_ =
_

_
0 1 0 0 . . . 0
0 0 1 0 . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
a
0
a
1
a
2
. . . a
n2
a
n1
_

_
_

_
x
1
.
.
.
x
n
_

_ +
_

_
0
0
.
.
.
1
_

_
u (6.2)
y =
_
b
0
b
1
. . . b
m
. . . 0

_
x
1
.
.
.
x
n
_

_ (6.3)
This is known as the controllable canonical form.
Another state-space representation for the same system is given by
_

_
x
1
.
.
.
x
n
_

_ =
_

_
0 . . . 0 a
0
1 0 . . . 0 a
1
0 1 . . . 0 a
2
.
.
.
.
.
.
.
.
.
0 0 0 1 a
n1
_

_
_

_
x
1
.
.
.
x
n
_

_ +
_

_
b
0
b
1
.
.
.
b
m
.
.
.
0
_

_
u (6.4)
49
6.2. Eigenvalues & eigenvectors
y =
_
0 0 . . . 1

_
x
1
.
.
.
x
n
_

_ (6.5)
This is known as the observable canonical form.
6.2 Eigenvalues & eigenvectors
is an eigenvalue of A R
nn
if [I A[ = 0. Furthermore there exist nontrivial
vectors v C
n
, called eigenvectors, such that (I A)v = 0.
Alternatively, this concept may be explained by the following: Consider a such
that
Av = v = Iv (6.6)
Then
(AI)v = 0 (6.7)
Now if (A I) was invertible (i.e. [A I[ , = 0), then v(A I)
1
= 0 is the
only solution and is trivial. Therefore for a nontrivial v to exist, [AI[ = 0.
If v is an eigenvector of A with eigenvalue , then so is v for any C.
Since A(v) = (v) (A)v = ()v.
Even if A is real, and v can be complex.
Scaling interpretation for Av = v: Consider to be real for now, then it is
a scaling factor for the eigenvector v. Its sign determines the direction and
its magnitude determines length. In this picture, Av = v is nothing but a
vector in the phase plane.
For A R
nn
, [A I[ = 0 will result in a nth-order polynomial with n
possibly repeated solutions. This polynomial is known as the characteristic
equation of A.
If we have n distinct eigenvalues, then we have n distinct eigenvectors. How-
ever, if we have k < n eigenvalues due to repeated solutions of [AI[ = 0,
then we have l n distinct eigenvectors. In general, l ,= k.
The vector space spanned by the eigenvectors of A is called the eigenspace
of A. The closure property for this dened space may be easily conrmed.
Eigenvectors corresponding to dierent eigenvalues are linearly independent.
Thus, the set of distinct eigenvectors of A form a basis (for the eigenspace
of A).
6.3 Solution and stability of dynamic systems
Consider an autonomous linear time-invariant (LTI) system in state-space form
x = Ax (6.8)
50
6.3. Solution and stability of dynamic systems
where an eigenvalue of A is and the corresponding eigenvector is v. We know
Av = v. (6.9)
Now assume a solution to (6.8)
x = e
t
v. (6.10)
We will check this solution to see if it satises (6.8). Taking the time derivative
of our assumed solution
d
dt
x(t) = x = e
t
v. (6.11)
Now substitute (6.10) into (6.8)
x = Ax = Ae
t
v = e
t
Av (6.12)
but from (6.11)
e
t
v = e
t
Av v = Av (6.13)
which we know from (6.9) is true. Thus, this is a correct assumption for a solution.
The above is true assuming we have a nondefective matrix, i.e., we have a full
set of eigenvectors (no repeated eigenvectors). We almost always have more than
one eigenvalue/eigenvector pair for a nondefective matrix, then how is the above
solution expressed in terms of a single eigenvalue/eigenvector pair applicable? In
this case, the solution to the entire system is given by a linear combination of the
distinct solutions corresponding to the dierent eigenvalue/eigenvector pairs. We
illustrate this by the 2 by 2 case.
Consider the system
x =
_
x
1
x
2
_
= Ax =
_
a
11
a
12
a
21
a
22
_ _
x
1
x
2
_
. (6.14)
Let
1
,
2
be eigenvalues of A and v
1
, v
2
eigenvectors of A. The complete solution
to the system is then given by
x =
_
x
1
x
2
_
= c
1
e

1
t
v
1
+c
2
e

2
t
v
2
(6.15)
where c
1
, c
2
R are scalar constants that depend on the initial conditions of the
system x(0) = x
0
. To nd them, set t = 0 in the general solution given above
and equate the resulting expression to x
0
.
Take a closer look at the above solution to the system
x =
_
x
1
x
2
_
= c
1
e

1
t
v
1
+c
2
e

2
t
v
2
(6.16)
= f (t) +g(t) (6.17)
where f (t) : R R
2
= c
1
e

1
t
v
1
and g(t) : R R
2
= c
2
e

2
t
v
2
, i.e., the solution
is the sum of two distinct exponentially time-dependent functions. Thus we can
say that f (t) and g(t) are the fundamental components that make up the response
of the system. They are the two modes of the system. Hence, the response of a
linear time-invariant system is a linear combination of the response of its individual
51
6.3. Solution and stability of dynamic systems
modes or, equivalently, the response of a linear time-invariant system is a sum of
the scaled response of its individual modes.
Modes are a very important tool in the study of the dynamical behavior of systems.
For example, in an aircraft, the dynamic response is comprised of many dierent
and varied modes. They are a key tool in characterizing the stability of an aircraft
for designing controllers. It is essential to have a fundamental and intuitive under-
standing of what the modes of a system are to aid in identifying desired response
characteristics and also to design ecient controllers.
In order to understand modes in a comprehensive manner, we need to be able to
examine the individual response of each mode. This corresponds to a situation
where either c
1
= 0 or c
2
= 0. It turns out that this happens when the initial
condition is an eigenvector of the system. In this case, only the mode corresponding
to that eigenvector will make up the response. If x
0
= v
1
then x(t) = c
1
e

1
t
v
1
.
Similarly, if x
0
= v
2
then x(t) = c
2
e

2
t
v
2
.
The solution to a linear dynamical system can be seen as a sum of eigenvectors.
Notice from the solution to the dynamical system
x =
_
x
1
x
2
_
= c
1
e

1
t
v
1
+c
2
e

2
t
v
2
(6.18)
that c
1
e

1
t
and c
2
e

2
t
are scalar numbers at any given point in time. Letting
k
1
(t) = c
1
e

1
t
and k
2
(t) = c
2
e

2
t
x =
_
x
1
x
2
_
= k
1
v
1
+k
2
v
2
(6.19)
but remember that eigenvectors are not unique and any multiple of an eigenvector
is also an eigenvector. Thus k
1
v
1
and k
2
v
2
are both eigenvectors and the solution
of the system is a sum of its eigenvectors scaled with time. Since eigenvectors are
simply vectors in the phase plane, the solution vector is simply a sum of two scaled
vectors.
Solution via the matrix exponential
When the system matrix A is defective, the previous solution technique is not valid.
We now present a solution applicable for all linear time-invariant systems. First
consider the case when we have a scalar dynamical system given by
x = ax (6.20)
where a R and x(0) = x
0
. Assume a solution of the form x(t) = e
at
. Dieren-
tiating with respect to time
d
dt
x(t) = x = ae
at
= ax (6.21)
which implies that the original solution is valid. Adjusting for the initial condition
gives the solution
x(t) = e
at
x
0
. (6.22)
52
6.3. Solution and stability of dynamic systems
But we do not have a scalar constant a but rather a matrix A. For this we dene
the matrix exponential e
At
e
At
= I +At +
A
2
t
2
2!
+
A
3
t
3
3!
+. . . (6.23)
which is based on the basic denition of the exponential function (from the Taylor
series)
e
at
= 1 +a +
a
2
2!
+
a
3
3!
+. . . (6.24)
The time derivative of the matrix exponential e
At
is given by
d
dt
e
At
= 0 +A+
2A
2
t
2!
+
3A
3
t
3!
+. . . (6.25)
= A
_
I +At +
A
2
t
2
2
+. . .
_
= Ae
At
(6.26)
which is similar to e
at
. It follows that the solution to x = Ax in terms of the
matrix exponential is given by
x(t) = e
At
x
0
. (6.27)
This is a useful in computation and numerical applications but does not provide
much insight into the behavior of the system. Furthermore, we have the problem
of computing an innite series.
Another related useful result arises when we can express the system in terms of a
diagonal matrix. Using appropriate transformations as will be shown in the next
sections, we can represent the system x = Ax equivalently as
z = z (6.28)
where is a diagonal matrix and z is the transformed state vector. It can be
shown that for diagonal matrix , the matrix exponential can be expressed in the
following compact form
e
t
=
_
e

1
t
0
0 e

2
t
_
(6.29)
where
1
and
2
are eigenvalues of . A similar result holds for higher dimension
diagonal matrices. It follows that the solution to the transformed system z = z
is given by
z(t) = e
t
z
0
=
_
e

1
t
0
0 e

2
t
_
z
0
. (6.30)
It must be noted that the previous diagonalization is not possible for defective
matrices and therefore, in this case, computing the matrix exponential remains the
preferred solution method.
Stability via eigenvalues and eigenvectors
Recall the solution to x = Ax
x = c
1
e

1
t
v
1
+c
2
e

2
t
v
2
. (6.31)
53
6.3. Solution and stability of dynamic systems
It is clear from the above that if
1
,
2
< 0, then x(t) has a decaying response to
zero. Also if
1
and/or
2
are greater than zero, the response will exponentially
increase and x(t) will go towards innity. If
1
=
2
= 0, then there is no dynamic
response and x(t) remains at its initial condition for all future time.
From these observations, we can formulate the following stability rules for au-
tonomous systems given by x = Ax
x = Ax is stable if both
1
,
2
< 0.
x = Ax is stable if either
1
< 0 or
2
< 0.
x = Ax is neutrally or marginally stable if
1
=
2
= 0.
Solution of a forced dynamical system
We now consider the solution to the forced dynamical system given by
x = Ax +Bu. (6.32)
Multiply this by e
At
e
At
x = e
At
Ax +e
At
Bu (6.33)
e
At
x e
At
Ax = e
At
Bu (6.34)
where e
At
is the matrix exponential given by
e
At
= I +At +
A
2
t
2
2!
+
A
3
t
3
3!
+. . . . (6.35)
Since by the product rule of dierentiation we have
d
dt
(e
At
x) = e
At
x e
At
Ax (6.36)
and hence
d
dt
(e
At
x) = e
At
Bu (6.37)
Separating variables and integrating the previous between initial time t = 0 and
nal time t = T gives
_
T
0
.d(e
At
x) =
_
T
0
e
At
Bu .dt (6.38)
e
AT
x(T) e
A(0)
x(0) =
_
T
0
e
At
Bu .dt (6.39)
e
AT
x(T) =
_
T
0
e
At
Bu .dt +x(0). (6.40)
Multiplying by a constant e
AT
gives the solution
x(T) = e
AT
x(0) +
_
T
0
e
AT
e
At
Bu .dt (6.41)
x(T) = e
AT
x(0) +
_
T
0
e
A(Tt)
Bu .dt (6.42)
54
6.4. State transformation
which can alternatively be written in a more convenient form as
x(t) = e
At
x(0) +
_
t
0
e
A(t)
Bu .d (6.43)
The output equation is then given by
y(t) = Cx +Du (6.44)
= Ce
At
x(0) +
_
t
0
Ce
A(t)
Bu .d +Du (6.45)
6.4 State transformation
As mentioned earlier, there are an innite number of state-space representations
possible for a given system. Any two of these state-space representations are,
in essence, coordinate transformations of the same underlying dynamical system.
Thus they can be related to each other via a state transformation matrix T. It must
be mentioned that the number of states is unique (the smallest set of variables
that completely describe the system) and therefore the dimension of the state-space
does not change, rather only the states change (hence state transformation).
Let x R
n
and z R
n
represent two state vectors for the same SISO system.
These state vectors can be then be related to each other by T R
nn
as such
x = Tz z = T
1
x (6.46)
The corresponding dynamical systems for the two states are given by
Representation 1: x = Ax +Bu y = Cx +Du (6.47)
Representation 2: z =

Az +

Bu y =

Cz +

Du (6.48)
where A,

A R
nn
, B,

B R
n1
, C,

C R
1n
and D,

D R.
Now we relate the two systems via the state transformation matrix T
x = T z = Ax +Bu = ATz +Bu (6.49)
z = T
1
ATz +T
1
Bu (6.50)
and
y = Cx +Du = CTz +Du. (6.51)
Therefore,

A = T
1
AT

B = T
1
B

C = CT

D = D (6.52)
6.5 Diagonalization
Consider a matrix A with eigenvalues
i
(including repeated eigenvalues) and
distinct eigenvectors v
k
. If i = k, then A is a nondefective matrix. The algebraic
multiplicity of an eigenvalue is the number of times it is repeated and the geometric
55
6.5. Diagonalization
multiplicity of an eigenvalue is the number of distinct eigenvectors associated with
an eigenvalue. If the algebraic multiplicity of the eigenvalues of a matrix is equal
to their geometric multiplicity (not necessarily of the same eigenvalue), then A is
again a nondefective matrix. A nondefective matrix has a full set of eigenvectors;
it has an n-dimensional eigenspace.
For a nondefective matrix A, Av
i
=
i
i = 1, . . . , n and thus
A
_
v
1
v
2
. . . v
n

=
_
v
1
v
2
. . . v
n

1
. . . 0
.
.
.
.
.
.
.
.
.
0 . . .
n
_

_. (6.53)
Now let T =
_
v
1
v
2
. . . v
n

, then
AT = T (6.54)
where is the diagonal eigenvalue matrix
=
_

1
. . . 0
.
.
.
.
.
.
.
.
.
0 . . .
n
_

_ = diag(
1
, . . . ,
n
). (6.55)
But since A is nondefective, v
1
, v
2
, . . . , v
n
are distinct and therefore T is in-
vertible. Then
= T
1
AT (6.56)
Thus, for a nondefective A, there exists a state transformation T that diagonalizes
A. In this case, A is considered diagonalizable.
Example Apply a diagonalizing state transformation to the 3 tank
problem described by
x =
_
_
1 1 0
1 2 1
0 1 1
_
_
x +
_
_
1 0 0
0 1 0
0 0 1
_
_
u (6.57)
The eigenvectors of the system matrix are
v
1
=
_
_
1
1
1
_
_
v
2
=
_
_
1
0
1
_
_
v
3
=
_
_
1
2
1
_
_
(6.58)
and the eigenvalues are
= 0, 1, 3. (6.59)
Dene the state transformation
x = Tz (6.60)
56
6.6. State-space to transfer function
and let
T = [v
1
v
2
v
3
] =
_
_
1 1 1
1 0 2
1 1 1
_
_
T
1
=
1
6
_
_
2 2 2
3 0 3
1 2 1
_
_
.
(6.61)
Now apply the state transformation to the system
z =
1
6
_
_
2 2 2
3 0 3
1 2 1
_
_
_
_
1 1 0
1 2 1
0 1 1
_
_
_
_
1 1 1
1 0 2
1 1 1
_
_
z
+
1
6
_
_
2 2 2
3 0 3
1 2 1
_
_
_
_
1 0 0
0 1 0
0 0 1
_
_
u (6.62)
=
_
_
0 0 0
0 1 0
0 0 3
_
_
z +
1
6
_
_
2 2 2
3 0 3
1 2 1
_
_
u (6.63)
which is consistent with the diagonalization requirements. Notice that
the eigenvalues of the system matrix are on the diagonal of the trans-
formed system matrix.
6.6 State-space to transfer function
We derive an expression to convert a SISO state-space representation of a system
to its corresponding transfer function. This can be used for MIMO systems as well
as long as the input/outputs are are appropriately restricted before applying the
formula.
Consider the state-space representation of a SISO system
x = Ax +Bu y = Cx +Du x(0) = 0 (6.64)
Take the Laplace transform (remember x(0) = 0) of the state equation
sIX(s) = AX(s) +BU(s) (6.65)
(sI A)X(s) = BU(s) (6.66)
X(s) = (sI A)
1
BU(s) (6.67)
Now, substitute the above into the Laplace transform of the output equation
Y (s) = CX(s) +DU(s) (6.68)
= C(sI A)
1
BU(s) +DU(s) (6.69)
= [C(sI A)
1
B +D]U(s) (6.70)
Thus, the transfer function from U(s) to Y (s) is given by
Y (s)
U(s)
= C(sI A)
1
B +D (6.71)
57
6.7. Cayley-Hamilton Theorem
The conversion from state-space to transfer function is not dependent on
the states. This may be veried by carrying out the above derivation using
a transformed state vector x = Tz. Consider the transformed state and
output equations
z = T
1
ATz +T
1
Bu y = Cx +Du = CTz +Du. (6.72)
Then

A = T
1
AT

B = T
1
B

C = CT

D = D (6.73)
and
Y (s)
U(s)
=

C(sI

A)
1

B +

D (6.74)
= CT(sI T
1
AT)
1
T
1
B +D (6.75)
but (c
1
c
2
c
3
)
1
= c
1
3
c
1
2
c
1
1
since for any invertible matrices c
1
, c
2
, c
3
, we
can write the above as
CT(sI T
1
AT)
1
T
1
B +D = C
_
T(sI T
1
AT)T
1

1
B +D
(6.76)
= C
_
TsIT
1
TT
1
ATT
1

1
B +D
(6.77)
= C(sI A)
1
B +D (6.78)
The direct relation between poles and eigenvalues can be seen from the
formula above. Consider the matrix inversion of (sI A)
(sI A)
1
=
adj(sI A)
[sI A[
(6.79)
where adj denotes the adjoint. For a zero direct transmission term, D = 0,
the state-space to transfer function equation becomes
Y (s)
U(s)
= C(sI A)
1
B +D =
Cadj(sI A)B
[sI A[
(6.80)
The solutions of the denominator of the above are clearly the poles of the
transfer function but the expression is also exactly the same as the charac-
teristic equation whose solutions are the eigenvalues of A. Therefore, poles
and eigenvalues of a given system are one and the same.
6.7 Cayley-Hamilton Theorem
Theorem 1. Every matrix satises its own characteristic equation. If
[sI A[ = s
n
+a
n1
s
n1
+. . . +a
0
(6.81)
then
A
n
+a
n1
A
n1
+. . . +a
0
I = 0. (6.82)
58
6.8. Controllability & reachability
Proof. We know
(sI A)
1
=
adj(sI A)
[sI A[
[sI A[I = adj(sI A)(sI A). (6.83)
Now let adj(sI A) = Q
n
s
n
+Q
n1
s
n1
+. . . +Q
0
for some matrix Q
[sI A[I = adj(sI A)(sI A)
(s
n
+a
n1
s
n1
+. . . +a
0
)I = (Q
n
s
n
+Q
n1
s
n1
+. . . +Q
0
)(sI A).
(6.84)
Equate coecients on both sides
Q
n
= 0 (6.85)
Q
n1
= I (6.86)
Q
n1
A+Q
n2
= a
n1
I (6.87)
Q
n2
A+Q
n3
= a
n2
I (6.88)
.
.
. (6.89)
Q
1
A+Q
0
= a
1
I (6.90)
Q
0
A = a
0
I. (6.91)
Solving the above by eliminating the Q
i
terms gives
A
n
+a
n1
A
n1
+. . . +a
0
I = 0. (6.92)
6.8 Controllability & reachability
Controllability is concerned with whether a given system can be steered to the origin
x = 0 within a nite time using the control authority provided given a certain initial
condition x
0
. Steering to the origin is not a very restrictive concept since a simple
coordinate translation transformation can accommodate many dierent types of
origins or reference points leading to the related concept of reachability.
Denition 1. A state vector x
0
is said to be controllable if there exists a nite
interval [0, T] and an input u(t), t [0, T] such that x(T) = 0. If all state
vectors are controllable, then the system is said to be completely state controllable.
Otherwise, it is uncontrollable.
In other words, if the system can be driven from any initial condition to the origin
in a nite time via a control input then it is controllable. The denition of the
closely related notion of reachability is given below.
Denition 2. A state vector x is said to be reachable (from the origin) if, given
x(0) = 0, there exists a nite time interval [0, T] and an input u(t), t [0, T]
such that x(T) = x. If all state vectors are reachable, then the system is said to
be completely reachable. Otherwise, it is unreachable.
59
6.8. Controllability & reachability
For continuous, linear time-invariant (LTI) systems, there is no dierence between
complete controllability and complete reachability. However, dierences between
the two notions do become obvious in some types of other systems such as discrete-
time models.
Since we limit our discussion to continuous LTI systems, controllability will be
used to refer to either notion (or the stronger condition). In this case, an alternate
denition of controllability is convenient.
Denition 3. A system is completely state controllable if there exists an input
u(t), t [0, T] that will transfer the state vector from any x
1
= x(t
0
) to any
x
2
= x(T) in a nite time T.
The restriction of time to begin at t = 0 is not restrictive since we can always
translate the time domain in question to achieve the same notion.
Controllability for continuous LTI systems can be veried using many dierent
techniques. One of the most popular and convenient is through the controllability
matrix,
c
(A, B).
Theorem 2. The n-state system x = Ax +Bu is completely state controllable if
the controllability matrix
c
(A, B) given by

c
(A, B) = [B
.
.
. AB
.
.
. A
2
B
.
.
. . . .
.
.
. A
n1
B] (6.93)
has rank n.
Proof. Let R
T
be the set of all vectors of the form x(T) obtained by evaluating
all possible inputs u(t), t [0, T] in the solution to x = Ax + Bu. Thus, the
system is completely state controllable if R
T
= R
n
.
If rank
c
(A, B) = n, then
c
(A, B) spans R
n
. Thus, it is sucient to show
that R
T
is in the range space of
c
(A, B) for the proof. Hence R
T
= R
n
, implying
complete state controllability.
Recall the general solution to x = Ax +Bu
x(t) = e
At
x(0) +
_
t
0
e
A(t)
Bu()d. (6.94)
Since the matrix exponential e
At
is dened as
e
At
= I +At +
A
2
t
2
2!
+
A
3
t
3
3!
+. . . =

k=0
t
k
k!
A
k
(6.95)
we can write the general solution at the time T where x(T) R
T
as
x(T) = e
AT
x(0) +

k=0
A
k
B
_
T
0
(t )
k
k!
u()d (6.96)
=

k=0
A
k
B
_
T
k
k!
x(0) +
_
T
0
(t )
k
k!
u()d
_
. (6.97)
60
6.8. Controllability & reachability
If a
n1
, . . . , a
1
, a
0
are the coecients of the characteristic equation of A, then
by the Cayley-Hamilton theorem
A
n
= a
n1
A
n1
. . . a
1
Aa
0
I. (6.98)
which implies that every A
k
: k n can be written as a linear combination of
A
n1
, . . . , A, I. It follows that all matrices A
k
B : k n can be expressed
as a linear combination of A
n1
B, . . . , AB, B. Therefore x(T) is in the range
space of the matrix whose columns are A
n1
B, . . . , AB, B since it is a linear
combination of these. This is precisely the controllability matrix
c

c
(A, B) = [B
.
.
. AB
.
.
. A
2
B
.
.
. . . .
.
.
. A
n1
B]. (6.99)
If rank
c
(A, B) = n, then
c
(A, B) is a basis for R
n
and the possible values
for x(T) is the entire space R
n
. That is, all state vectors are reachable and the
system is completely state controllable.
Example Consider the 3 tank system shown in Fig. (6.1) with three
actuators, one in every tank.
Figure 6.1: The 3 tank 3 actuator system.
The system can be described by x = Ax +Bu where
A =
_
_
1 1 0
1 2 1
0 1 1
_
_
, B =
_
_
1 0 0
0 1 0
0 0 1
_
_
. (6.100)
The controllability matrix is given by

c
(A, B) = [B
.
.
. AB
.
.
. A
2
B] =
_
_
1 0 0 . . .
0 1 0 . . .
0 0 1 . . .
_
_
rank[
c
(A, B)] = 3 = n (6.101)
which implies complete state controllability. This is an obvious an
expected result since we have all three of the states independently
actuated. But can we still achieve complete state controllability with
fewer actuators? If we can, where can we place them? This may have
potential benets such as lower actuator costs, higher reliability and
lower maintenance.
61
6.8. Controllability & reachability
Figure 6.2: The 3 tank system with actuators in the rst and second tanks.
Consider the system when we remove the third actuator as in Fig.
(6.2).
The control matrix is then given by
B =
_
_
1 0
0 1
0 0
_
_
(6.102)
and the controllability matrix is

c
(A, B) =
_
_
1 0 1 1 2 3
0 1 1 2 3 6
0 0 0 1 1 3
_
_
rank[
c
(A, B)] = 3
(6.103)
which implies that the third controller is not necessary and we can still
have complelete state controllability with only two actuators.
Now change the locations of the two actuators. Move an actuator
from the second tank to the third tank as in Fig. (??).
Figure 6.3: The 3 tank system with actuators in the rst and third tanks.
The control matrix is then given as
B =
_
_
1 0
0 0
0 1
_
_
(6.104)
62
6.8. Controllability & reachability
and the controllability matrix is given by

c
(A, B) =
_
_
1 0 1 0 2 1
0 0 1 1 3 3
0 1 0 1 1 2
_
_
rank[
c
(A, B)] = 3. (6.105)
Thus, the system is completely state controllable even if we change
the locations of actuators. So are two actuators even necessary? Can
we still have complete state controllability with only one actuator?
Consider the situation where we only have one actuator in this rst
tank as shown in Fig. (6.4).
Figure 6.4: The 3 tank system with only one actuator in the rst tank.
The control matrix is then given by
B =
_
_
1
0
0
_
_
(6.106)
and the controllability matrix is given by

c
(A, B) =
_
_
1 1 2
0 1 3
0 0 1
_
_
rank[
c
(A, B)] = 3. (6.107)
Thus the system is completely state controllable even with only one
actuator! But can the actuator be placed in any tank?
Consider the situation where there is only one actuator in the second
tank as shown in Fig. (6.5).
The control matrix is then given by
B =
_
_
0
1
0
_
_
(6.108)
and the controllability matrix is given by

c
(A, B) =
_
_
0 1 3
1 2 6
0 1 3
_
_
rank[
c
(A, B)] = 2. (6.109)
63
6.9. Controllability gramian
Figure 6.5: The 3 tank system with only one actuator in the second tank.
Thus the system is not completely state controllable if we place the
actuator in the second tank. This nonintuitive result illustrates why
checking controllability is important.
6.9 Controllability gramian
We have proved for a completely state controllable system: there exists a control
u(t), t [0, T] that drives the system to any nal state vector x(t = T) in a
nite time T. The question may then be asked: What is this control vector and
how to compute it? The controllability gramian becomes relevant in this regard.
Denition 4. For a system x = Ax + Bu with x(0) = 0, the controllability
gramian is
X
c
(t) =
_
t
0
e
A
BB
T
e
A
T

d. (6.110)
Theorem 3. Consider a completely state controllable system x = Ax +Bu with
x(0) = 0. The control input that transfers the system from 0 to some vector x(t
1
)
in a nite time T = t
1
is given by
u(t) = B
T
e
A
T
(t
1
t)
X
1
c
(t
1
)x(t
1
) (6.111)
where X
1
c
(t
1
) is the inverse of controllability gramian evaluated at time t
1
.
Proof. Substituting the proposed control input u(t) into the general solution gives
x(t) = e
At
x(0) +
_
t
0
e
A(t)
Bu()d (6.112)
=
_
t
1
0
e
A(t
1
)
BB
T
e
A
T
(t
1
)
X
1
c
(t
1
)x(t
1
)d (6.113)
=
_
t
1
0
e
A(t
1
)
BB
T
e
A
T
(t
1
)
d X
1
c
(t
1
)x(t
1
) (6.114)
=
_
t
1
0
e
A(t
1
)
BB
T
e
A
T
(t
1
)
d
__
t
1
0
e
A
BB
T
e
A
T

d
_
1
x(t
1
) (6.115)
= x(t
1
) (6.116)
64
6.10. Output controllability
The above requires that the controllability gramian be invertible. This will be
shown through contradiction. Assume X
c
(t
1
) is singular (noninvertible) and hence
there exists a nonzero vector v such that X
c
(t
1
)v = 0 due to the linear dependence
of the columns of X
c
(t
1
). This implies that
_
t
1
0
v
T
e
A
BB
T
e
A
T

vd = 0. (6.117)
Since the integrand is nonnegative, it must be that
v
T
e
A
BB
T
e
A
T

v = 0 [0, t
1
]. (6.118)
If y() = B
T
e
A
T

v, the above implies y


T
() = 0 for all [0, t
1
]. Since t
1
> 0,
it must be true that the rst and higher derivatives at = 0
+
must be zero, i.e.
d
k
y
T
d
k
(0
+
) = 0 (6.119)
but from the series expansion of the matrix exponential
d
k
y
T
d
k
(0
+
) = v
T
A
k
B (6.120)
implying that v
T
A
k
B = 0 for all k = 0, 1, . . . , n. The controllability matrix being
nonsingular implies that this is only true for v = 0. But this is a contradiction
since we initially assumed v ,= 0. Thus, the original assumption of singular X
c
(t
1
)
is false and X
c
(t
1
) is proven invertible.
Theorem 4. If the controllability gramian for a system is positive denite for every
t 0 then the system is controllable.
Proof. See (Mackenroth, 2003), pp.104-105.
A state transformation such as x = Tz on a system does not change the con-
trollability characteristics of the system since controllability is an inherent system
property.
6.10 Output controllability
Denition 5. The system x = Ax+Bu is output controllable if an input u(t) exists
that will transfer the output from y(t = t
0
) to any y(t = t
1
) for any t
1
t
0
> 0.
Theorem 5. The system x = Ax + Bu, y = Cx + Du is output controllable if
the matrix given by
[CB
.
.
. CAB
.
.
. CA
2
B
.
.
. . . .
.
.
. CA
n1
B
.
.
. D] (6.121)
has rank m where m is the number of outputs.
Output controllability and state controllability are related but one does not imply
the other.
65
6.11. Control canonical form and controllability
Figure 6.6: The 3 tank system with only one actuator in the second tank.
Example Consider the 3 tank system with one actuator shown in
Fig. (6.6). The state equation of the system is
x =
_
_
1 1 0
1 2 1
0 1 1
_
_
x +
_
_
0
1
0
_
_
u. (6.122)
This system was shown to be not completely state controllable earlier.
For output y = x
2
, is the system output controllable?
For the given output, the output matrix is given by
C = [0 1 0] (6.123)
and the direct transmission matrix D = 0. The output controllability
matrix is then given by
C
c
(A, B) = [0 1 0]
_
_
0 1 3
1 2 6
0 1 3
_
_
= [1 2 6]. (6.124)
The number of outputs m = 1 and thus rank[C
c
(A, B)] = 1 = m
which implies that the system is output controllable. This is an example
of a system that is not completely state controllable but is output
controllable.
6.11 Control canonical form and controllability
Recall the control canonical form for x
c
= A
c
x
c
+B
c
u,
A
c
=
_

_
x
1
.
.
.
x
n
_

_ =
_

_
0 1 0 0 . . . 0
0 0 1 0 . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
a
0
a
1
a
2
. . . a
n2
a
n1
_

_
(6.125)
and
B
c
=
_

_
0
0
.
.
.
1
_

_
. (6.126)
66
6.11. Control canonical form and controllability
where a
0
, . . . , a
n1
are the coecients of the characteristic equation of the system:
[sI A
c
[ = s
n
+a
n1
s
n1
+. . . +a
1
s +a
0
= 0.
The controllability matrix for a system in this form
c
(A
c
, B
c
)

c
(A
c
, B
c
) = [B
c
.
.
. A
c
B
c
.
.
. . . .
.
.
. A
n1
c
B
c
] (6.127)
=
_

_
0 0 . . . 1
.
.
.
.
.
.
.
.
.
a
n1
0 0 1 . . .
0 1 a
n1
. . .
.
.
.
1 a
n1
. . .
_

_
. (6.128)
Since the above has all nonzero pivots/diagonals, it is full rank implying that the
rank of
c
(A
c
, B
c
) is n. Thus, any system that can be written in control canonical
form is completely state controllable. The converse is also true, any completely
state controllable SISO system can be transformed into the control canonical form
by an appropriate state transformation.
The state transformation that transforms a completely state controllable SISO
system x = Ax +Bu to control canonical form x
c
= A
c
x
c
+B
c
u is given by
T
sc
=
c
(A, B)
1
c
(A
c
, B
c
) (6.129)
where

1
c
(A
c
, B
c
) =
_

_
a
1
a
2
. . . a
n1
1
a
2
a
3
. . . 1 0
.
.
.
.
.
.
.
.
.
0 0
a
n1
1 . . . 0 0
1 0 . . . 0 0
_

_
(6.130)
Thus the state transformation x = T
sc
x
c
transfers any completely state control-
lable SISO system x = Ax +Bu to control canonical form x
c
= A
c
x
c
+B
c
u.
Why does this choice of T
sc
work? Consider A
c
and B
c
written in terms of T
sc
A
c
= T
1
sc
AT
sc
(6.131)
B
c
= T
1
sc
B (6.132)
and the following identity that holds for any similar (transformed) matrices
A
2
c
= T
1
sc
AT
sc
T
1
sc
AT
sc
= T
1
sc
A
2
T
sc
A
n1
c
= T
1
sc
A
n1
T
sc
(6.133)
Now by denition

c
(A
c
, B
c
) = [B
c
.
.
. A
c
B
c
.
.
. A
2
c
B
c
.
.
. . . .
.
.
. A
n1
c
B
c
] (6.134)
67
6.12. Stabilizability
implying

c
(A
c
, B
c
) = [T
1
sc
B
.
.
. T
1
sc
AT
sc
T
1
sc
B
.
.
. T
1
sc
A
2
T
sc
T
1
sc
B
.
.
. . . .
. . .
.
.
. T
1
sc
A
n1
T
sc
T
1
sc
B] (6.135)
= [T
1
sc
B
.
.
. T
1
sc
AB
.
.
. T
1
sc
A
2
B
.
.
. . . .
.
.
. T
1
sc
A
n1
B] (6.136)
= T
1
sc
[B
.
.
. AB
.
.
. A
2
B
.
.
. . . .
.
.
. A
n1
B] = T
1
sc

c
(A, B). (6.137)
Therefore

c
(A
c
, B
c
) = T
1
sc

c
(A, B) T
sc
=
c
(A, B)
1
c
(A
c
, B
c
) (6.138)
6.12 Stabilizability
This section deals with systems that are not completely state controllable. Is
controllability possible for any subset of states? And is feedback control possible
for a subset of controllable states while ignoring the uncontrollable ones? These
questions are answered by rst introducing the next theorem regarding the normal
form of a system.
Theorem 6. Suppose
c
(A, B) for x = Ax +Bu has rank r < n. Then there is
a similarity transformation such that the following are true:
The transformed pair has the form

A = T
1
AT =
_

A
11

A
12
0

A
22
_
,

B = T
1
B =
_

B
1
0
_
(6.139)
where

A
11
R
rr
and

B
1
R
rl
. This form is called the normal form of
the system.
The system described by

A
11
and

B
1
is controllable.
(l is the number of inputs, we let l = 1 for our consideration)
Proof. Consider a transformation T = [T
2
.
.
. T
2
] where
T
1
= [B
.
.
. AB
.
.
. . . .
.
.
. A
k1
B] (6.140)
and T
2
is chosen such that T is invertible/nonsingular. Now let T
1
= [S
1
.
.
. S
2
]
T
,
then
I = T
1
T
_
_
S
1
. . .
S
2
_
_
_
T
1
.
.
. T
2
_
=
_

_
S
1
T
1
.
.
. S
1
T
2
. . . . . .
S
2
T
1
.
.
. S
2
T
2
_

_
=
_
1 0
0 1
_
(6.141)
68
6.12. Stabilizability
implying
S
1
T
1
= I (6.142)
S
1
T
2
= 0 (6.143)
S
2
T
1
= 0 (6.144)
S
2
T
2
= I. (6.145)
Now consider the transformed system B

B = T
1
B =
_
_
S
1
. . .
S
2
_
_
B =
_
_
S
1
B
. . .
S
2
B
_
_
. (6.146)
But by inspection of T
1
, it is obvious that B is in the range of T
1
= [B
.
.
. AB
.
.
. . . .
.
.
. A
k1
B],
i.e., B = T
1
K for some matrix K. Then it is also true that
S
2
B = (S
2
T
1
)K (6.147)
but S
2
T
1
= 0, thus S
2
B = 0. Now let

B
c
= S
1
B and it follows that

B =
_
_
S
1
B
. . .
S
2
B
_
_
=
_
_
S
1
B
. . .
0
_
_
=
_
_

B
c
. . .
0
_
_
(6.148)
Consider the similarity transformation T applied to the system matrix A

A = T
1
AT =
_
_
S
1
. . .
S
2
_
_
A
_
T
1
.
.
. T
2
_
=
_

_
S
1
AT
1
.
.
. S
1
AT
2
. . . . . .
S
2
AT
1
.
.
. S
2
AT
2
_

_
. (6.149)
Now
AT
1
= A[B
.
.
. AB
.
.
. . . .
.
.
. A
k1
B] = [AB
.
.
. A
2
B
.
.
. . . .
.
.
. A
k
B] (6.150)
and recall, from the Cayley-Hamilton theorem
A
k
= a
n1
A
k1
. . . a
1
Aa
0
I (6.151)
i.e., A
k
is some function of A, . . . , A
k1
. This implies that AT
1
is in the range of
T
1
, i.e., AT
1
= T
1
L for some matrix L, and hence
S
2
AT
1
= S
2
T
1
L (6.152)
but since S
2
T
1
= 0, it is true that S
2
AT
1
= 0. Let

A
11
= S
1
AT
1
,

A
12
= S
1
AT
2
,
and

A
22
= S
2
AT
2
. Therefore

A =
_

_
S
1
AT
1
.
.
. S
1
AT
2
. . . . . .
S
2
AT
1
.
.
. S
2
AT
2
_

_
(6.153)
=
_

_
S
1
AT
1
.
.
. S
1
AT
2
. . . . . .
0
.
.
. S
2
AT
2
_

_
=
_

A
11
.
.
.

A
12
. . . . . .
0
.
.
.

A
22
_

_
(6.154)
69
6.12. Stabilizability
The benet of this theorem is that we can ensure a separation between states
that can be eected via the control and states that cannot. Therefore if the
uncontrollable states are stable and we can stabilize the controllable states, then we
can ensure the entire system to be stable. As will be shown later, any controllable
set of states can be stabilized via appropriate feedback. The next denition sums
the above.
Denition 6. If the matrix

A
22
in the normal form of the system x = Ax +
Bu has all LHP eigenvalues, then the system is stabilizable. Alternatively, if the
uncontrollable subspace of the system is stable then the system is stabilizable.
The similarity transformation T that yields the normal form of a system is straight-
forward to construct as was shown in the proof of Theorem (6). It is given by
T = [T
2
.
.
. T
2
] (6.155)
where
T
1
= [B
.
.
. AB
.
.
. . . .
.
.
. A
k1
B] (6.156)
and T
2
is chosen such that T is invertible/nonsingular.
Example Is the familiar 3 tank problem below completely state con-
trollable? If not, is it stabilizable?
u(t)
x
1
x
2
x
3
The system is described as
x = Ax +Bu (6.157)
y = Cx +Du (6.158)
where
A =
_
_
1 1 0
1 2 1
0 1 1
_
_
B =
_
_
0
1
0
_
_
C =
_
_
1 0 0
0 1 0
0 0 1
_
_
D =
_
_
0
0
0
_
_
(6.159)
The controllability matrix
c
(A, B) for the system is given by

c
(A, B) = [B AB A
2
B] =
_
_
0 1 3
1 2 6
0 1 3
_
_
. (6.160)
70
6.12. Stabilizability
It can be easily veried that rank[
c
(A, B)] = 2 < n = 3 and therefore
the system is not completely state controllable. However, we do know
that two states are controllable. We determine next if the system is
stabilizable.
Construct the state transformation matrix T = [T
1
T
2
] where
T
1
= [B AB] =
_
_
0 1
1 2
1 1
_
_
(6.161)
and T
2
is chosen such that T is invertible. Let
T
2
=
_
_
1
0
0
_
_
(6.162)
and thus
T =
_
_
0 1 1
1 2 0
1 1 0
_
_
. (6.163)
Applying this transformation as x = Tz gives
z = T
1
ATz +T
1
Bu (6.164)
=
_
_
0 1 2
0 0 1
1 0 1
_
_
_
_
1 1 0
1 2 1
0 1 1
_
_
_
_
0 1 1
1 2 0
1 1 0
_
_
z
+
_
_
0 1 2
0 0 1
1 0 1
_
_
_
_
0
1
0
_
_
u (6.165)
=
_
_
0 0 1
1 3 0
0 0 1
_
_
z +
_
_
1
0
0
_
_
u (6.166)
=

Az +

Bu (6.167)
and
y = CTz +Du (6.168)
=
_
_
1 0 0
0 1 0
0 0 1
_
_
_
_
0 1 1
1 2 0
1 1 0
_
_
z (6.169)
=
_
_
0 1 1
1 2 0
1 1 0
_
_
z (6.170)
=

Cz. (6.171)
It is obvious from the previous that

A
11
=
_
0 0
1 3
_
,

A
12
=
_
1
0
_
,

A
22
= 1,

C
11
=
_
_
0 1
1 2
0 1,
_
_
C
12
=
_
_
1
0
0
_
_
(6.172)
71
6.13. Popov-Belevitch-Hautus test for controllability and stabilizability
and since the eigenvalues of

A
22
are negative, the system is stabilizable.
6.13 Popov-Belevitch-Hautus test for controllability and
stabilizability
Theorem 7. 1. The system x = Ax +Bu is controllable if and only if
rank(AI
.
.
. B) = n C (6.173)
2. The system x = Ax +Bu is stabilizable if and only if
rank(AI
.
.
. B) = n C : Re 0 (6.174)
Proof. See (Mackenroth, 2003), p. 107.
6.14 Observability
Observability is an important property often needed for practical control design. It
deals with the problem of estimating the system states (since they are needed for
feedback control) if only the outputs and the control are known apart from the
system model. Estimation is used for a variety of reasons. In some cases it is used
out of necessity when system states cannot be measured directly. In situations
where sensors are expensive, estimation provides a vastly more cost-eective and
reliable alternative.
Denition 7. The system given by x = Ax+Bu and y = Cx+Du is completely
state observable if every state in x can be uniquely determined from observations
of y and knowledge of the input u(t), over a nite time interval, t
0
t t
1
.
Consider the special case where observability is a trivial notion. Let C be square
(i.e., number of outputs m = number of states n) and of full rank. Then the all
the states can be easily determined given the input u(t)
y = Cx +Du x = C
1
(Du +y) . (6.175)
In all other cases, it is necessary to independently verify the observability of the
system. The observability matrix
o
(A, C) is helpful in this regard.
Theorem 8. The n-state, m-output system given by x = Ax + Bu and y =
Cx+Du is completely state observable if the observability matrix
o
(A, C) given
by

o
(A, C) =
_

_
C
CA
.
.
.
CA
n1
_

_
(6.176)
has rank n.
72
6.14. Observability
Proof. Consider the n 1 derivatives of the output y = Cx +Du
y = Cx +Du (6.177)
y = C x +D u = C(Ax +Bu) +D u (6.178)
y = C(A x +B u) +D u = CA
2
x +CABu +CB u +D u (6.179)
y
(3)
= CA
3
x +CA
2
Bu +CAB u +CB u +Du
(3)
(6.180)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
which we can generalize as follows
_

_
y
y
y
.
.
.
y
(n1)
_

_
=
_

_
C
CA
CA
2
.
.
.
CA
n1
_

_
x+
_

_
D 0 0 . . . 0
CB D 0 . . . 0
CAB CB D . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
CA
n2
B CA
n3
B CA
n4
B . . . D
_

_
_

_
u
u
u
.
.
.
u
(n1)
_

_
.
(6.181)
Let
Y =
_

_
y
y
y
.
.
.
y
(n1)
_

_
, =
_

_
C
CA
CA
2
.
.
.
CA
n1
_

_
,
=
_

_
D 0 0 . . . 0
CB D 0 . . . 0
CAB CB D . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
CA
n2
B CA
n3
B CA
n4
B . . . D
_

_
, U =
_

_
u
u
u
.
.
.
u
(n1)
_

_
(6.182)
then
Y = x +U x = Y U (6.183)
where R
nmn
. All the quantities in the previous equation are known except
x. Thus, if we can ensure that Y U is in the range space of then we have
a solution. Furthermore, for the solution to be unique, the nullspace of must be
empty. This is because a solution to the system is of the form x
r
+x
n
where x
r
is in the range space and x
n
is any element in the nullspace. Thus the solution is
unique only if the nullspace has only one element, 0 (the trivial solution).
In the special case of m = 1 (single output), is square and invertibility is a
necessary and sucient condition for observability. Thus must be of full rank
(rank() = n) for observability.
In all other cases, invertibility is too strong a condition that cannot be met since
will not be square and therefore we test if has a trivial nullspace. If it does,
the system is observable and otherwise it is not. The nullspace is related to the
73
6.14. Observability
column space (range space) of . Thus if the columns of are linearly independent,
then the nullspace only contains the trivial solution and the system is observable.
Since R
nmn
, it is required that rank() = n for observability. Note that
=
o
(A, C).
We only go up to the (n 1)th derivative of y because from the Cayley-Hamilton
theorem, A
k
with k > n 1 can always be expressed as a linear combination of
A, A
2
, . . . , A
n1
. Thus evaluating higher-order derivatives of y does not change
the rank condition of and the previous condition on for observability of x still
holds.
Example Consider the 3 tank example as before with system equa-
tions
x =
_
_
1 1 0
1 2 1
0 1 1
_
_
x +Bu (6.184)
y = Cx (6.185)
where B can be any vector. Since observability is dependent on the
output matrix C we will consider observability for dierent situations.
If all the three tank heights can be measured, the output matrix is
simply the 3 3 identity matrix. It is fairly obvious that the system
is completely state observable in this case because the C matrix is
invertible and it follows that rank[
o
(A, C)] = 3 = m.
If we can measure the height in the rst and last tanks only, the C
matrix is given by
C =
_
1 0 0
0 0 1
_
. (6.186)
Although the rank of C = 2 < n, it does not imply anything about
state observability. Then

o
(A, C) =
_

_
1 0 0
0 0 1
1 1 0
0 1 1
2 3 1
1 3 2
_

_
rank[
o
(A, C)] = 3 = n (6.187)
which means the system is still completely state observable.
If we have only one height of the tank available, would the system
would still be completely state observable? When only the the rst
tank height is available in the output, C is given as
C = [1 0 0] (6.188)
and thus

o
(A, C) =
_
_
1 0 0
1 1 0
2 3 1
_
_
rank[
o
(A, C)] = 3 = n (6.189)
74
6.15. Observability gramian
which implies that the system is still completely observable. This is
an important nding since it means we can nd all three tank heights
based on the height of one of the tanks. Hence, we need only one
sensor as opposed to three.
Now consider the situation where only the height of the second tank
is available as a measurement. The C matrix is then given as
C = [0 1 0] (6.190)
and

o
(A, C) =
_
_
0 1 0
1 2 1
3 6 3
_
_
rank[
o
(A, C)] = 2 < n. (6.191)
Therefore, if the measurement is of the second tank height only then
the system is not completely state observable. This nonintuitive result
underscores the need for observability tests.
6.15 Observability gramian
Theorem 9. The system given by x = Ax +Bu and y = Cx +Du is completely
state observable if the observability gramian X
o
(t) given by
X
o
(t) =
_
t
0
e
A
T

C
T
Ce
A
d (6.192)
is positive denite for each t 0.
6.16 Observable canonical form and observability
Any completely state observable system given by x = Ax+Bu and y = Cx+Du
can be written in observable canonical form: z = A
o
z +B
o
u and y = C
o
z +Du.
The is done using the transformation T
so
given by
T
so
=
1
o
(A, C)
o
(A
o
, C
o
) (6.193)
where
o
(A
o
, C
o
) is given by

1
o
(A
o
, C
o
) =
_

_
a
1
a
2
. . . a
n1
1
a
2
a
3
. . . 1 0
.
.
.
.
.
. . . .
.
.
.
.
.
.
1 0 . . . 0 0
_

_
. (6.194)
The constants a
1
, . . . , a
n2
are the coecients of the characteristic equation of
A.
75
6.17. Detectability
6.17 Detectability
What is a system is not completely state observable? Can we observe some of
the states successfully? The results are similar to stabilizability for controllable
systems.
Theorem 10. Suppose
o
(A, B) for a system given by x = Ax + Bu and y =
Cx +Du has rank r < n. Then there is a similarity transformation such that the
following are true:
The transformed pair has the form

A = T
1
AT =
_

A
11
0

A
21

A
22
_
,

C = CT =
_

C
1
0
_
(6.195)
where

A
11
R
rr
and

C
1
R
mr
. This is another normal form of the
system.
The system described by

A
11
and

C
1
is observable.
Denition 8. The system given by x = Ax+Bu and y = Cx+Du is detectable
if the matrix

A
22
is stable.
6.18 PHB test for observability and detectability
Theorem 11. 1. The system given by x = Ax + Bu and y = Cx + Du is
observable if and only if
rank
_
_
AI
. . .
C
_
_
= n C (6.196)
2. The system given by x = Ax + Bu and y = Cx + Du is detectable if and
only if
rank
_
_
AI
. . .
C
_
_
= n C : Re 0 (6.197)
6.19 Duality between observability and controllability
Theorem 12. Consider a system described by x = Ax +Bu and y = Cx +Du.
Then the system is completely state controllable if and only if the dual system
given by x = A
T
x +C
T
u and y = B
T
x +D
T
u is completely observable.
Proof. This is obvious and can easily be deduced from the observability and con-
trollability matrices.
76
Chapter 7
Control design in state-space
7.1 State feedback design/Pole-placement
We will derive a feedback scheme for the system x = Ax + Bu. We assume
complete state controllability for the system.
The feedback problem can be classied as either state feedback or output feedback.
As the names suggests, output feedback uses the output error signal y y
r
(y
r
is
the reference output) and state feedback uses the entire state error signal x x
r
(x
r
is the reference state vector).
When the reference values x
r
or y
r
are zero and all the states are available in
feedback, the control problem is called output/state feedback regulation. A reg-
ulation problem is not as restrictive as it seems because we can always translate
the state-space system to any nonzero set-point (i.e. not time varying). When x
r
or y
r
are nonzero functions (time-varying in general), the problem is referred to as
output/state feedback reference tracking.
The most basic type of state-space control problem is the state feedback regulator.
The remaining types of control problems may be dealt with using the same frame-
work with some extensions. Thus, we will rst consider a basic state feedback
design technique known as pole-placement (introduced earlier in terms of transfer
functions and SISO systems).
Let the control input u be given by
u = K(x
r
x) = Kx (7.1)
where K =
_
k
1
k
2
. . . k
n

is some vector gain to be determined. The closed-


loop system is then given by
x = Ax BKx = (ABK)x = A
CL
x (7.2)
where the A
CL
= ABK is the closed-loop system matrix. The control problem
is then reduced to choosing K such that the poles of the closed-loop system, i.e.,
the eigenvalues of A
CL
are at their desired values. The desired values of the poles
are determined as discussed in previous chapters.
77
7.1. State feedback design/Pole-placement
Convert the closed-loop system to controllable canonical form using the standard
state transformation x = T
sc
x
c
.
x = (ABK)x (7.3)
x
c
= (A
c
B
c
K
c
)x (7.4)
=
_
_
_
_
_
_
_
_

_
0 1 0 . . . 0
0 0 1 . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 . . . 1
a
0
a
1
a
2
. . . a
n1
_

_
0
0
.
.
.
0
1
_

_
_
k
1,c
k
2,c
. . . k
n,c

_
_
_
_
_
_
_
x
c
(7.5)
=
_

_
0 1 0 . . . 0
0 0 1 . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 . . . 1
(a
0
+k
1,c
) (a
1
+k
2,c
) (a
2
+k
3,c
) . . . (a
n1
+k
n,c
)
_

_
x
c
.
(7.6)
The previous expression allows us to determine the closed-loop poles in terms of
the individual gains k
i
. Thus,
Closed-loop poles = eigenvalues of (A
c
B
c
K
c
) (7.7)
= roots[[sI (A
c
B
c
K
c
)[] (7.8)
= roots[s
n
+ (a
n1
+k
n,c
)s
n1
+. . . + (a
1
+k
2,c
)s (7.9)
+ (a
0
+k
1,c
)] (7.10)
= roots[s
n
+
n1
s
n1
+. . . +
1
s +
0
(a
0
+k
1,c
)] (7.11)
where
0
, . . . ,
n1
are the coecients of the desired closed-loop characteristic
equation based on the desired closed-loop poles. Equating (7.10), (7.11) and
rearranging yields an expression for K
c
K
c
=
_
k
1,c
k
2,c
k
3,c
. . . k
n,c

(7.12)
=
_
(
0
a
0
) (
1
a
1
) (
2
a
2
) . . . (
n1
a
n1
)

. (7.13)
Now apply the inverse state transformation x
c
= T
1
sc
x to the gain matrix K
c
to
obtain K
K = K
c
T
1
sc
(7.14)
=
_
(
0
a
0
) (
1
a
1
) (
2
a
2
) . . . (
n1
a
n1
)

T
1
sc
(7.15)
which we can use in the original system as a feedback gain vector.
The state transformation matrix T
sc
is found as before:
T
sc
=
c
(A, B)
1
c
(A
c
, B
c
) (7.16)
where

1
c
(A
c
, B
c
) =
_

_
a
1
a
2
. . . a
n1
1
a
2
a
3
. . . 1 0
.
.
.
.
.
.
.
.
.
0 0
a
n1
1 . . . 0 0
1 0 . . . 0 0
_

_
. (7.17)
78
7.2. Ackermanns formula
Example Consider the system
x =
_
_
2 1 0
0 2 0
0 0 1
_
_
x +
_
_
0
1
1
_
_
u. (7.18)
Find a state feedback controller u = Kx that yields all closed-loop
poles at -4.
First check for controllability

c
(A, B) = [B AB A
2
B] =
_
_
0 1 4
1 2 4
1 1 1
_
_
(7.19)
rank[
c
(A, B)] = 3 (7.20)
which implies complete state controllability.
The open-loop characteristic equation of system is
[sI A[ = (s + 2)
2
(s + 1) = s
3
+a
2
s
2
+a
1
s +a
0
(7.21)
= s
3
+ 5s
2
+ 8s + 4 (7.22)
and the desired closed-loop characteristic equation is
(s + 4)
3
= s
3
+
2
s
2
+
1
s +
0
= s
3
+ 12s
2
+ 48s + 64. (7.23)
Then
K = [(
0
a
0
) (
1
a
1
) (
2
a
2
)]T
1
sc
(7.24)
= [60 40 7]T
1
sc
(7.25)
and
T
sc
=
c
(A, B)
1
c
(A
c
, B
c
) (7.26)
=
c
(A, B)
_
_
a
1
a
2
1
a
2
1 0
1 0 0
_
_
=
_
_
1 1 0
2 3 1
4 4 1
_
_
(7.27)
Thus, the gain K is given by
K = [60 40 7]
_
_
1 1 0
2 3 1
4 4 1
_
_
= [8 20 27] (7.28)
7.2 Ackermanns formula
Ackermanns formula is a convenient method to obtain the gain K for pole place-
ment that has the benet of avoiding a state transformation, but it still requires a
matrix inversion and possibly tedious matrix algebra.
79
7.2. Ackermanns formula
Theorem 13 (Ackermanns formula). Consider the open-loop system x = Ax+Bu
with characteristic equation
s
n
+a
n1
s
n1
+. . . +a
1
s +a
0
. (7.29)
Then for the closed-loop system given by x = (ABK)x, the gain K is
K =
_
0 . . . 0 1

1
c
(A, B)(A) (7.30)
where
c
(A, B) is the controllability matrix of the system and is the desired
characteristic equation given by
(s) = s
n
+
n1
s
n1
+. . . +
1
+
0
. (7.31)
Proof. By the Cayley-Hamilton theorem, the closed-loop system matrix A
CL
=
ABK must satisfy its own characteristic equation (s)
(A
CL
) = 0 (7.32)
but this is not true for A, i.e., (A) ,= 0.
We will demonstrate the validity of the Ackermanns formula for the case when
n = 3 for clarity but as will be obvious, the same technique can be used to extend
the result to any n. For n = 3
(A
CL
) = A
3
CL
+
2
A
2
CL
+
1
A
CL
+
0
I = 0 (7.33)
but since A
CL
= ABK
A
2
CL
= (ABK)(ABK) (7.34)
= A
2
ABK BKAB
2
K (7.35)
= A
2
ABK BK(ABK) (7.36)
= A
2
ABK BKA
CL
(7.37)
likewise
A
3
CL
= (ABK)(ABK) (7.38)
= (A
2
ABK BKA
CL
)(ABK) (7.39)
= A
3
A
2
BK ANKA
CL
BKA
2
CL
. (7.40)
Substituting the above into (A
CL
) = 0 gives
A
3
A
2
BK ANKA
CL
BKA
2
CL
+
2
(A
2
ABK BKA
CL
)
+
1
(ABK) +
0
I = 0
A
3
+
2
A
2
+
1
A+
0
I = B(KA
2
CL
+
2
KA
CL
+
1
K)
+AB(KA
CL
+
2
K) + (A
2
B)K
(A) = B(KA
2
CL
+
2
KA
CL
+
1
K) +AB(KA
CL
+
2
K) + (A
2
B)K
(A) =
c
(A, B)
_
_
KA
2
CL
+
2
KA
CL
+
1
K
KA
CL
+
2
K
K
_
_
K =
_
0 0 1

1
c
(A, B)(A). (7.41)
The expression given in (7.41) is precisely the Ackermanns formula for a system
with n = 3. With some tedious algebra, this result can be generalized for all n.
80
7.3. SISO tracking
Example Consider the system
x =
_
_
2 1 0
0 2 0
0 0 1
_
_
x +
_
_
0
1
1
_
_
u. (7.42)
Find a state feedback controller u = Kx using Ackermanns formula
that yields all closed-loop poles at -4.
The controllability matrix as before is

c
(A, B) = [B AB A
2
B] =
_
_
0 1 4
1 2 4
1 1 1
_
_
(7.43)
and its inverse is

1
c
(A, B) =
_
_
2 3 4
3 4 4
1 1 1
_
_
. (7.44)
Then
(A) = A
3
+
2
A
2
+
1
A+
0
= A
3
+12A
2
+48A+64I =
_
_
8 12 0
0 8 0
0 0 27
_
_
(7.45)
and the gain K is given by
K = [0 0 1]
1
c
(A, B)(A) (7.46)
= [0 0 1]
_
_
2 3 4
3 4 4
1 1 1
_
_
_
_
8 12 0
0 8 0
0 0 27
_
_
(7.47)
= [8 20 27] (7.48)
7.3 SISO tracking
We will now consider the case when we want the output y to track a given nonzero
time-varying reference signal y
r
= r. In particular, we will discuss to methods to
achieve accurate steady-state tracking: an approach utilizing frequency domain
ideas and an approach using integral control.
7.4 SISO tracking via complementary sensitivity functions
For this, let the control u be given as
u = Kx +K
r
r (7.49)
81
7.5. SISO tracking via integral action
where K is a gain matrix and K
r
is a scalar gain (assuming single output), both
of which are yet to be determined. The closed-loop system is then given by
x = Ax +B(Kx +K
r
r) (7.50)
= (ABK)x +BK
r
r (7.51)
= A
CL
x +B
CL
r (7.52)
where A
CL
= A BK is the closed-loop system matrix and B
CL
= BK
r
is the
closed-loop control matrix. As earlier, the output equation is given by
y = Cx. (7.53)
The gain K in A
CL
is chosen, as before (via the pole-placement method or Ack-
ermanns formula), such that the closed-loop system matrix eigenvalues are at
their desired locations. Next the reference signal gain K
r
is chosen such that
the transfer function T(s) = Y (s)/R(S) from the reference signal to the out-
put is 1 at steady-state, i.e., lim
0
T(j) = 1. The complementary sensitivity
function T(s) can be obtain via previously introduced techniques for converting a
state-space representation to a transfer function
T(s) =
Y (s)
R(s)
= C(sI A
CL
)
1
B
CL
= C(sI A
CL
)
1
BK
r
(7.54)
In this type of controller, we have two degrees of freedom and proper choice of the
gains leads to accurate steady-state tracking and the desired transient response.
7.5 SISO tracking via integral action
An alternative way to incorporate reference tracking is to borrow the idea of integral
action from classical PID control. This can be accomplished in state-space form
using the following steps
1. Augment the state vector with a running integration of the dierence/error
between the reference signal r and the output y
x =
_
_
x
. . .
x
n+1
_
_
(7.55)
where
x
n+1
= y r x
n+1
=
_
(y r).dt =
_
(Cx r).dt (7.56)
since y = Cx.
2. Use a full-state compensator that incorporates x
n+1
along with the other
states x, i.e., feedback using x. Hence, let
u =

K x = Kx k
n+1
x
n+1
(7.57)
82
7.6. Stabilizable systems
where

K = [K
.
.
. k
n+1
]. Substituting this into the state equations gives
_
x
x
n+1
_
=
_
A 0
C 0
_ _
x
x
n+1
_

_
BK Bk
n+1
0 0
_ _
x
x
n+1
_
+
_
0
1
_
r (7.58)
=
__
A 0
C 0
_

_
B
0
_
_
K k
n+1

__
x
x
n+1
_
+
_
0
1
_
r (7.59)
and
y =
_
C 0

_
x
x
n+1
_
(7.60)
Now let

A =
_
A 0
C 0
_
(7.61)

B =
_
B
0
_
(7.62)

C =
_
C 0

. (7.63)
Substituting the previous in the extended state equations gives

x = (

A

B

K) x +
_
0
1
_
r =

A
CL
x +

B
CL
r (7.64)
y =

C x (7.65)
where

A
CL
is the extended state closed-loop system matrix and

B
CL
is the
closed-loop control matrix.
3. Design

K such that
roots([sI A
CL
[) = roots([sI

A+

B

K[) = desired closed loop poles.


(7.66)
The gain on the integral term k
n+1
is the same as the integral gain in a
tradition PI controller.
7.6 Stabilizable systems
The previous results for controller design were all based on assumptions on complete
state controllability, a condition that may not always be satised. We now consider
the case where only k < n states are controllable. Is it possible to design a
controller for such a system? If yes, how can we?
In general, stable controllers can be designed for uncontrollable systems as long
the uncontrollable subspace of the system is stable, i.e. the system is stabilizable
(as dened earlier).
Recall the normal form of x = Ax + Bu obtainable via an appropriate state
transformation
z =
_
z
c
z
nc
_
=
_

A
11

A
12
0

A
22
_
_
z
c
z
nc
_
+
_

B
1
0
_
u, y =

C
_
z
c
z
nc
_
+Du (7.67)
83
7.6. Stabilizable systems
then the controllable subspace is given by the states z
c
and the corresponding
system matrix is

A
11
. The matrix

A
12
corresponds to the uncontrollable sub-
space that aects the controllable subspace. Since the uncontrollable subspace is
assumed stable (i.e., A
22
has only negative eigenvalues), it follows from superpo-
sition that we can independently design a controller for the controllable subspace
and apply it on to the system without aecting its stability properties.
The following are steps to design a controller for a sytem x = Ax + Bu that has
k < n controllable states:
1. Dene a state transformation T such that
T = [T
1
T
2
] (7.68)
where
T
1
= [B
.
.
. AB
.
.
. . . .
.
.
. A
k1
B] and T
2
: rank(T
2
) = n. (7.69)
2. Apply the state transformation x = Tz to get the state equations
z =

Az +

Bu y =

Cz +Du (7.70)
where
z =
_
z
c
z
nc
_
,

A =
_

A
11

A
12
0

A
22
_
,

B =
_

B
1
0
_
,

C = CT (7.71)
3. Let
u =

Kz,

K = [

K
1
.
.
.

K
2
] (7.72)
which results in the closed-loop system
z = (

A

B

K)z =

A
CL
z (7.73)
=
__

A
11

A
12
0

A
22
_

B
1
0
_
[

K
1
.
.
.

K
2
]
_
z (7.74)
where our closed-loop system matrix is

A
CL
.
4. Now choose

K such that the closed-loop are at their desired locations.
Recall we can only control k states, implying that we only select k poles.
Thus nk poles of the desired characteristic equation (s) must correspond
to the eigenvalues of

A
22
(the eigenvalues of the uncontrollable subspace).
The closed-loop characteristic equation may be determined as follows
CL char. eqn. = [sI

A
CL
[ (7.75)
= [sI

A+

B

K)z[ (7.76)
= det
_
sI
_

A
11

A
12
0

A
22
_
+
_

B
1
0
_
[

K
1
.
.
.

K
2
]
_
(7.77)
= det
__
sI

A
11
+

B
1

K
1

A
12
+

B
1

K
2
0 sI

A
22
__
(7.78)
= [sI

A
11
+

B
1

K
1
[ [sI

A
22
[. (7.79)
84
7.6. Stabilizable systems
It can be easily seen from (7.79) that the control gain

K does not aect

A
22
. Moreover

K
2
has no eect on the closed-loop system. It can therefore
take any value we often let

K
2
= 0 for convenience.
The closed-loop poles are then the combination of the roots of [sI

A
11
+

B
1

K
1
[ and the roots of [sI

A
22
[, the latter of which we cannot change
with control action (i.e., the uncontrollable subspace). We then use the
pole-placement method or Ackermanns formula to determine a gain that
places the k poles of a system whose characteristic equation is given by
[sI

A
11
+

B
1

K
1
[ at their k desired locations.
Example Consider the system
x =
_
_
2 1 0
0 2 0
0 0 2
_
_
x +
_
_
0
1
1
_
_
u. (7.80)
Find a state feedback controller that yields all controllable closed-loop
poles at -4.
First nd the rank of the controllability matrix

c
(A, B) = [B AB A
2
B] =
_
_
0 1 4
1 2 4
1 2 4
_
_
rank[
c
(A, B)] = 2.
(7.81)
Since the rank of the controllability matrix k = 2 is less than n = 3,
the system is not completely state controllable. But we do have two
controllable states.
1. Construct the state transformation T = [T
1
T
2
] with
T
1
= [B AB] =
_
_
0 1
1 2
1 2
_
_
(7.82)
and let
T
2
=
_
_
1
0
1
_
_
(7.83)
to ensure invertibility of T. The inverse of T is given by
T
1
=
_
_
2 3 2
1 1 1
0 1 1
_
_
(7.84)
85
7.6. Stabilizable systems
2. Apply the state transformation
z = T
1
ATz +T
1
Bu (7.85)
=
_
_
2 3 2
1 1 1
0 1 1
_
_
_
_
2 1 0
0 2 0
0 0 2
_
_
_
_
0 1 1
1 2 0
1 2 1
_
_
z (7.86)
+
_
_
2 3 2
1 1 1
0 1 1
_
_
_
_
0
1
1
_
_
u (7.87)
=
_
_
0 4 0
1 4 0
0 0 2
_
_
z +
_
_
1
0
0
_
_
u (7.88)
=

Az +

Bu. (7.89)
Since

A
22
= 2 has negative eigenvalues, the system is stabiliz-
able and we can proceed in designing a stable controller.
3. Let
u =

Kz = [

K
1
.
.
.

K
2
]z (7.90)
= [

K
11

K
12
0]z (7.91)
and since x = Tz
K =

KT
1
= [

K
11

K
12
0]T
1
. (7.92)
4. Focus on the controllable subsystem described by:
z
c
=

A
c
z
c
+

B
c
u (7.93)
=
_
0 4
1 4
_
z
c
+
_
1
0
_
u (7.94)
a) The open-loop characteristic equation is given by
s
2
+a
1
s +a
0
= [sI

A
c
[ = s
2
+ 4s + 4. (7.95)
b) Determine the desired closed-loop characteristic equation as
s
2
+
1
s +
0
= (s + 4)
2
= s
2
+ 8s + 16. (7.96)
c) Determine

K = [

K
11

K
12
0]:
[

K
11

K
12
] = [(
0
a
0
) (
1
a
1
)]

T
1
(7.97)
where

T =
c
(

A
c
,

B
c
)
_
a
1
1
1 0
_
=
_
4 1
1 0
_


T
1
=
_
0 1
1 4
_
. (7.98)
86
7.7. State observer design/Luenberger state observer/estimator design
Note that
c
(

A
c
,

B
c
) in this case refers to the controllability
matrix of the controllable subspace of the system and not to
the controllability matrix of the controllable canonical form
of the system.
Then
[

K
11

K
12
] = [(
0
a
0
) (
1
a
1
)]

T
1
(7.99)
= [12 4]
_
0 1
1 4
_
= [4 4] (7.100)
and

K = [4 4 0] (7.101)
d) Transform

K to obtain K:
K =

KT
1
(7.102)
= [4 4 0]
_
_
2 3 2
1 1 1
0 1 1
_
_
= [4 8 4] (7.103)
which gives the closed-loop controller
u = Kx (7.104)
= [4 8 4]x. (7.105)
This controller places two closed-loop poles at -4 and the
third closed-loop pole remains at -2 due to uncontrollability.
7.7 State observer design/Luenberger state
observer/estimator design
Consider the system given by x = Ax + Bu. State observers are used to esti-
mate/reconstruct the states given knowledge of the system matrices A, B, C, the
input u and the output y. State observers and state estimators are used inter-
changeably since they both refer to the same concept.
Let the equation for the state observer be given by

x = A x +Bu +J(y C x) (7.106)


= A x +Bu +J(Cx C x) (7.107)
where y is the measured/actual output and C x = y is the output estimate based
on the state estimates. Since the estimation method is based on a dynamic model,
there is obviously a need for an initial condition. Numerical integration on the
dierential equations then yields the online estimates.
The dynamic model is similar to the systems dynamic model except that it incor-
porates an error term times a gain J, i.e., J(y C x), which goes to zero when the
measured output is exactly the same as the estimated output. In this situation,
we get a dynamic estimation model that is exactly the same as the system model.
87
7.7. State observer design/Luenberger state observer/estimator design
Thus the output error term acts like an estimate correction term in the estimation
model (for a proper choice of J). It can be easily seen that it is desirable that this
term in the estimation model be consistently decreasing and eventually going to
zero, implying asymptotic convergence of the estimates to their true values. This
type of observer/estimator is called a Luenberger observer, named after David G.
Luenberger who in 1963 initiated the theory of observers for the reconstruction of
states of a linear dynamical system.
We will derive results that give better insight into the Luenberger observer and
also help in determining the appropriate value of the gain J. Dene the state error
x as
x = x x. (7.108)
Dierentiating with respect to time and substituting the Luenberger observer equa-
tions gives

x = x

x (7.109)
= [Ax +Bu] [A x +Bu +J(Cx C x)] (7.110)
= (AJC)(x x) (7.111)
= (AJC) x. (7.112)
The estimation error dynamics, which we desire to be stable and have a quick
transient response (i.e., fast convergence), are given in (7.112). Thus, the gain J
is chosen such that the eigenvalues of A JC are at their desired values. This
is similar to pole placement. The observer eigenvalues/poles must all be negative
to ensure stable error dynamics and are usually chosen to be 5 to 10 times faster
than the closed-loop system poles so that estimation lag does not aect system
response signicantly.
To nd J, rst apply a state transformation x = T
so
x
o
to the system to change
it to observable canonical form given by x
o
= Ax
o
+ B
o
u and y
o
= C
o
x
o
. Then
the estimator model is given by

x
o
= A
o
x +B
o
u +J
o
(C
o
x
o
C
o
x
o
) (7.113)
and the estimation error dynamics are given by

x
o
= (A
o
J
o
C
o
) x
o
and x
o
= x
o
x
o
(7.114)
=
_
_
_
_
_
_

_
0 . . . 0 a
0
1 . . . 0 a
1
.
.
.
.
.
.
.
.
.
.
.
.
0 . . . 1 a
n1
_

_
J
o,0
J
o,1
.
.
.
J
o,n1
_

_
_
0 . . . 0 1

_
_
_
_
_
x
o
(7.115)
=
_

_
0 . . . 0 (a
0
+J
o,0
)
1 . . . 0 (a
1
+J
o,1
)
.
.
.
.
.
.
.
.
.
.
.
.
0 . . . 1 (a
n1
+J
o,n1
)
_

_
x
o
. (7.116)
The characteristic equation for this observable canonical form system is
[sI A
o
+J
o
C
o
[ = s
n
+ (a
n1
+J
o,n1
)s
n1
+. . .
+ (a
1
+J
o,1
)s + (a
0
+J
o,0
) (7.117)
88
7.7. State observer design/Luenberger state observer/estimator design
and let the observer desired characteristic equation be given by
(s) = s
n
+
n1
s
n1
+. . . +
1
s +
0
. (7.118)
Equating both expressions yields an expression for the observable canonical form
observer gain J
o
J
o
=
_

0
a
0

1
a
1
.
.
.

n1
a
n1
_

_
. (7.119)
Now what remains is to transform the gain back to the original state-space form
using T
so
, i.e.,
J = T
so
J
o
= T
so
_

0
a
0

1
a
1
.
.
.

n1
a
n1
_

_
. (7.120)
The method to nd J is very similar to controller design using pole placement
but this is not surprising since, from duality, we already know that the concepts of
controllability and observability are closely related.
Example Consider the system
x =
_
0 1
1 1
_
x +
_
0
1
_
u, y = [1 0]x. (7.121)
Find a state observer for this system with two poles at -18.
1. Check for observability:

o
(A, C) =
_
C
CA
_
=
_
1 0
0 1
_
rank[
o
(A, C)] = 2 = n (7.122)
which implies complete observability.
2. The open-loop characteristic equation is given by
[sI A[ = s
2
+a
1
s +a
0
= s
2
+s + 1. (7.123)
3. The desired observability characteristic equation is given by
(s) = s
2
+
1
s +
0
= (s + 18)
2
= s
2
+ 36s + 324. (7.124)
4. The transformation matrix is
T
so
=
1
o
(A, C)
o
(A
o
, C
o
) (7.125)
=
_
1 0
0 1
_ _
a
1
1
1 0
_
=
_
0 1
1 1
_
. (7.126)
89
7.8. Disturbance observers
5. The gain is then given by
J = T
so
_

0
a
0

1
a
1
_
=
_
0 1
1 1
_ _
324 1
36 1
_
=
_
35
288
_
. (7.127)
The observer model is as follows

x = A x +Bu +
_
35
288
_
(y C x) (7.128)
7.8 Disturbance observers
In almost all cases, disturbances are present in the dynamic system and in measure-
ment. In some of these cases, we know the general nature of the disturbance and
can use this knowledge to design an observer robust to these disturbances. This is
done via estimating the disturbance and minimizing its eect. The key to design-
ing an appropriate disturbance observer is to extend the state-space structure with
additional states that describe the disturbance and then designing an observer for
this extended state as before.
When the disturbance d is a constant or approximately constant, we can assume

d = 0 and let the extended state x


n+1
= d which implies x
n+1
= 0. Thus the
state-space form contains an additional line consisting only of zeros.
When the disturbance is a time-varying nonlinear function, the derivation of the
extended states and their rates is more involved. Consider the case when
d(t) = Asin (t +). (7.129)
Dierentiating with respect to time twice gives

d(t) = A cos (t +) (7.130)

d(t) = A
2
sin (t +) (7.131)
=
2
d (7.132)
which we can use to dene the extended states and their rates in linear form to
use in the state-space representation
x
n+1
= d(t) x
n+1
=

d(t) = x
n+2
(7.133)
x
n+2
=

d(t) x
n+2
=

d(t) =
2
d =
2
x
n+1
. (7.134)
Then disturbance eects can be captured by extending the state-space representa-
tion of the system dynamics by the following disturbance subsystem
_
x
n+1
x
n+2
_
=
_
0 1

2
0
_ _
x
n+1
x
n+2
_
. (7.135)
After extending the state-space representation, the robust observer is designed
using the extended state formulation and the usual observer design techniques.
90
7.8. Disturbance observers
m
F
x
1
d(t)
Figure 7.1: A mass-spring-damper system with a disturbance.
Example A mass-spring-damper is shown below. The dynamic
model is given by
x + x +x = F d(t) (7.136)
Let d(t) = Asin (t +) and nd a disturbance robust observer for
this system that estimates x and x.
First reduce the left-hand side of the system equation in state-space
form by dening variables:
x
1
= x and x
2
= x (7.137)
which gives
x =
_
x
1
x
2
_
=
_
0 1
1 1
_
+
_
0
1
_
F +
_
0
1
_
d(t) (7.138)
Dierentiate the disturbance observer twice with respect to time
d(t) = Asin (t +) (7.139)

d(t) = A cos (t +) (7.140)

d(t) = A
2
sin (t +) =
2
d (7.141)
and let x
3
= d(t), x
4
=

d(t) to give
x
3
=

d(t) = x
4
(7.142)
x
4
=

d(t) =
2
d =
2
x
3
. (7.143)
We can use this to get the subsystem
_
x
3
x
4
_
=
_
0 1

2
0
_ _
x
3
x
4
_
(7.144)
which we can use along with (7.138) to obtain an extended state-space
model
x =
_

_
x
1
x
2
x
3
x
4
_

_
=
_

_
0 1 0 0
1 1 1 0
0 0 0 1
0 0
2
0
_

_
_

_
x
1
x
2
x
3
x
4
_

_
+
_

_
0
1
0
0
_

_
F (7.145)
91
7.9. Output feedback control
and since x = x
1
and x = x
2
are the desired outputs to be observed
y =
_
x
1
x
2
_
=
_
1 0 0 0
0 1 0 0
_
_

_
x
1
x
2
x
3
x
4
_

_
. (7.146)
This model is then used in the usual manner to design an observer,
i.e., observability is rst checked, a desired characteristic equation is
specied, the state transformation T
so
is computed and nally an ap-
propriate gain J is determined. The resulting observer robustly esti-
mates not only the two states but also the disturbance x
3
= d(t) and
the disturbance rate of change x
4
=

d(t).
7.9 Output feedback control
As mentioned earlier, output feedback refers to the situation where only the out-
puts y are available for feedback and not the entire state vector x. Since all the
control design techniques introduced so far depend on the availability of all the
states for feedback, we cannot use them directly in designing a controller for a
system that has only outputs available in feedback. But as seen in the design of
observers, if the system is completely state observable, we can estimate all the
states using knowledge of the output. That leads us to the question: Is it feasi-
ble to design an observer to estimate the states and then use these states in an
independently designed state feedback controller to create, in essence, an output
feedback controller?
The answer to the previous question is yes due to what is known as the separation
principle. It deals with an output feedback controller that consists of a combination
of an observer and a state feedback controller. The closed-loop poles of a system
that utilizes such a controller are a combination of the poles of the observer and
the poles specied via the state feedback controller. This implies that we can
independently design the observer and the state feedback controller and if both
are separately stable, then they are also stable in combination. The separation
principle greatly simplies the process of designing an output feedback controller
and allows the design of intuitive controller-observer combinations. It is also only
valid for linear systems but not necessarily for nonlinear systems, which leads to
eorts to design nonlinear observers that have separation principle-like properties.
The separation principle can be easily derived. The observer error is given by
x = x x (7.147)
where x are the estimates of the actual states x. Then, as before, the observer
error dynamics are

x = (AJC) x (7.148)
Consider the state feedback control based on the state estimates
u = K x. (7.149)
92
7.10. Transfer function for output feedback compensator
Substituting this control input into the standard state equations and manipulating
gives
x = Ax +Bu = Ax BK x (7.150)
= Ax BK x +BK(x x) (7.151)
= (ABK)x +BK x. (7.152)
Now extend the state-space form to include the estimated states
_
x

x
_
=
_
ABK BK
0 AJC
_ _
x
x
_
= A
total
_
x
x
_
. (7.153)
Then for the entire system:
poles of closed-loop system = roots([sI A
total
[) (7.154)
= roots([sI A+BK[[sI A+JC[) (7.155)
= roots([sI A+BK[), roots([sI A+JC[).
The expression in (7.155) is precisely a mathematical statement of the separation
principle. Furthermore, we can use the complete closed-loop observer-controller
system equation (7.153) for output feedback design.
7.10 Transfer function for output feedback compensator
We can derive a transfer function represent the output feedback situation. Consider

x = A x +Bu +J(y C x and u = K x. (7.156)


Taking the Laplace transform and simplifying
s

X(s) = A

X(s) +BU(s) +JY (s) +JC

X(s) (7.157)
= (AJC BK)

X(s) +JY (s) (7.158)


(sI A+JC +BK)

X(s) = JY (s) (7.159)


X(s) = (sI A+JC +BK)
1
JY (s) (7.160)
but since u = K x
U(s) = K

X(s) = K(sI A+JC +BK)


1
JY (s)
C(s) =
U(s)
Y (s)
= K(sI A+JC +BK)
1
J. (7.161)
Note that the transfer has a negative sign to indicate negative feedback. If the
negative feedback was already built into the block diagram addition block, the
compensator equation does not need to have a negative sign.
7.11 SISO tracking with output feedback control
As a nal case, consider the situation where we only have the outputs y available
for feedback and we also want to track a time-varying reference signal. The output
93
7.11. SISO tracking with output feedback control
feedback system as before is given by

x = A x +Bu +J(y C x) (7.162)


= (AJC) x +Bu +Jy (7.163)
and let the input u be given by
u = K x +k
r
r (7.164)
where, as before, r is the reference signal and the reference gain k
r
is yet to
be determined. The system gain matrix K is determined as outlined earlier.
The reference gain k
r
is chosen such that there is no steady-state error, i.e.,
lim
0
T(j) = 1.
Let us now derive a transfer function for the closed-loop system and nd T(s).
Taking the Laplace transform of the system
s

X(s) = A

X(s) +Bu +J[Y (s) C

X(s)] (7.165)
= A

X(s) B[K

X(s) k
r
R(s)] +J[Y (s) C

X(s)] (7.166)
= (AJC BK)

X(s) +Bk
r
R(s) +JY (s) (7.167)


X(s) = (sI A+JC +BK)
1
[Bk
r
R(s) +JY (s)]. (7.168)
Substituting (7.168) in the control input equation
U(s) = K

X(s) +k
r
R(s) (7.169)
= K(sI A+JC +BK)
1
[Bk
r
R(s) +JY (s)] +k
r
R(s) (7.170)
= k
r
R(s) K(sI A+JC +BK)
1
Bk
r
R(s)
K(sI A+JC +BK)
1
JY (s) (7.171)
= k
r
[1 K(sI A+JC +BK)
1
Bk
r
]R(s)
K(sI A+JC +BK)
1
JY (s) (7.172)
= H(s)R(s) C(s)Y (s) (7.173)
where H(s) and C(s) are compensators in a two degrees of freedom system. Then
T(s) =
Y (s)
R(s)
=
H(s)G(s)
1 +C(s)G(s)
(7.174)
and we want lim
s0
T(s) = 1 for accurate steady-state tracking.
94
Chapter 8
Basic notions of linear algebra
Prerequisites: Matrix addition/subtraction, matrix multiplication, Gaussian elimi-
nation.
A system of linear equations may be represented by a matrix equation.
Example The system of equations
x
1
+ 2x
2
= 5 (8.1)
3x
1
+ 4x
2
= 12 (8.2)
can be represented as
_
1
3
_
x
1
+
_
2
4
_
x
2
=
_
5
12
_

_
1 2
3 4
_ _
x
1
x
2
_
=
_
5
12
_
Ax = b. (8.3)
Example Similarly
2x
1
+ 5x
2
+ 7x
3
= 13 (8.4)
3x
1
+ 1x
2
+ 5x
3
= 7 (8.5)
can be represented as
_
2
3
_
x
1
+
_
5
1
_
x
2
+
_
7
3
_
x
3
=
_
13
7
_

_
2 5 7
3 1 5
_
_
_
x
1
x
2
x
3
_
_
=
_
13
7
_
Ax = b.
(8.6)
One of the central questions of linear algebra is the existence and uniqueness of
solutions to systems of equations similar to those shown above. The solution set,
or the set of vectors x that satisfy a matrix equation Ax = b, can always be
described by one of the following:
1. The empty set, i.e., there are no vectors x that satisfy the matrix equation
Ax = b and therefore there are no solutions to the matrix equation. The
matrix equation is then also known as being inconsistent or overdeter-
mined.
95
2. A set of innitely many elements, i.e., there are an innite number of vectors
x that satisfy the matrix equation Ax = b and therefore there are an innite
number of solutions to the matrix equation. This does not imply that the
vectors are arbitrary from R
n
. Rather they are specic and structured but
we have an innite number of them. The matrix is then known as being
underdetermined.
3. A set consisting of one unique element, i.e., there is only one vector x that
satises the matrix equation Ax = b. In this case the matrix equation is
said to be uniquely determined.
The type of solution set and its description is closely interconnected with concepts
such as linear independence, invertibility and row/column space. This module will
briey explore some of these concepts at a later stage.
An easy way to check for the type of solution set is to apply Gaussian elimination
to the matrix equation to yield the row echelon form or the reduced row echelon
form. The number of pivots are critical in this situation and the following denition
becomes relevant.
Denition 9 (Rank). The number of pivots k in the row echelon form (or the
reduced row echelon form) of a matrix A R
nm
is called the rank of A. This is
written as rank(A) = k.
Consider the case when A R
nm
, b R
n
and rank(A) = k:
1. If n < m, i.e., we have a fat system matrix A, and there are an innite
number of solution vectors x since there will always be a free variable(s) in
the system (more unknowns than equations).
2. If n m, i.e., we have a tall (n > m) or a square (n = m) system matrix,
If k = m, a solution may exist and if a solution does exist then it is
unique. The existence of a solution depends on the column vector b.
The column vector b must be consistent with the system matrix A for
a solution to exist, i.e., all matrix equation must be valid/consistent
when in reduced row echelon form. If it is, then b is said to be in the
column space or range space or image of A.
If k < m, a solution may exist and if a solution does exist then there
will be an innite number of them. The existence of a solution again
depends on the column vector b.
k m always.
Denition 10 (Linear combination). A vector q R
n
is said to be a linear combi-
nation of vectors v
1
, v
2
, . . . , v
m
R
n
if there exist some constants c
1
, c
2
, . . . , c
m

R such that
c
1
v
1
+c
2
v
2
+. . . +c
m
v
m
= q. (8.7)
A matrix equation Ax = b is an example of a linear combination; the vector b is
a linear combination of the columns of A.
96
Example Consider
Ax = b
_
_
2 1 1
4 6 0
2 7 2
_
_
_
_
x
1
x
2
x
3
_
_
=
_
_
5
2
9
_
_

_
_
2
4
2
_
_
x
1
+
_
_
1
6
7
_
_
x
2
+
_
_
1
0
2
_
_
x
3
=
_
_
5
2
9
_
_
(8.8)
and let
v
1
=
_
_
2
4
2
_
_
, v
2
=
_
_
1
6
7
_
_
, v
3
=
_
_
1
0
2
_
_
. (8.9)
Therefore
b = v
1
x
1
+v
2
x
2
+v
3
x
3
(8.10)
which, since x
1
, x
2
, x
3
are constants, implies that b is a linear combi-
nation of v
1
, v
2
, and v
3
; the columns of A. It can be easily veried
that x
1
= 1, x
2
= 1 and x = 2 are the correct constants to give b.
Denition 11 (Linear independence). A set of vectors v
1
, v
2
, . . . , v
m
R
n
are lin-
early independent if there exist no nontrivial linear combinations of v
1
, v
2
, . . . , v
m
that give the zero vector, i.e., if the linear combination
c
1
v
1
+c
2
v
2
+. . . +c
m
v
m
= 0 (8.11)
is only true for c
1
= c
2
= . . . = c
m
= 0, then v
1
, v
2
, . . . , v
m
are linearly inde-
pendent. The set of vectors v
1
, v
2
, . . . , v
m
are linearly dependent if they are not
linearly independent.
For example, if any one c
i
is nonzero for the above linear combination, the vectors
v
1
, v
2
, . . . , v
m
are linearly dependent, i.e. one vector can be expressed as a combi-
nation of others. This gives us another intuitive description of linear independence:
if any v
i
can be expressed as a combination of the other vectors, then it is a linearly
dependent vector. A set of vectors that includes a linearly dependent vector is a
linearly dependent set of vectors. If that linearly dependent vector is removed and
the remaining vectors are linearly independent, then the set is linearly independent.
Linear independence can also be examined in terms of columns/rows of matrices.
The columns of the matrix
_
_
1 5 8
2 10 17
4 20 2
_
_
(8.12)
are linearly dependent since the second column is ve times the rst column.
Gaussian elimination involves eliminating rows of a matrix that can be expressed
as a combination of other rows. It follows that any nonzero rows (or rows with
pivots) in the row echelon form of a matrix cannot be expressed as combinations
of each other. Therefore, the nonzero rows of a matrix in row echelon form also
represent a linearly independent set of vectors. Since the number of rows with
pivots in the row echelon form of a matrix is called the rank, it follows that the
rank of a matrix equals the number of linearly independent rows in that matrix.
97
Theorem 14. The number of linearly independent rows is equal to the number of
linearly independent columns of a matrix.
Proof. We know that the number of linearly independent rows of a matrix is the
rank of the matrix and the rank of a matrix is the number of rows in row echelon
form with nonzero pivots. Furthermore, the columns of A are the rows of A
T
.
If rank of a matrix A is k and we transpose the row echelon form of the matrix,
it can be easily seen that the rows of the transpose also have k rows with nonzero
pivots. Thus A
T
has rank k or the number of linearly independent rows of A
T
is
k or the number of linearly independent columns of A is k.
Theorem 15. A set of n vectors in R
m
are linearly dependent if m < n.
Proof. Put the set of n vectors as rows of a matrix A R
nm
. Then the vectors
are independent if rank(A) = n which implies that we must have a nonzero pivot
in every row of A. This is not possible since m < n means that we do not have
enough columns to have a pivot in all the rows. Specically, the n m rows at
the end of the matrix would not have enough columns to have pivots.
Example The columns of the following matrix cannot be indepen-
dent
_
1 5 33
7 12 3
_
(8.13)
since these are three vectors in R
2
.
We next begin the fundamental study of vector spaces. Firstly, a generalized
denition of vector addition and scalar multiplication is given.
Denition 12 (Vector addition and scalar multiplication). The operations: vector
addition (+) and scalar multiplication (.) are dened on a set if the following eight
rules are satised for vectors x, y, z and constants c, c
1
, c
2
.
1. x +y = y +x.
2. x + (y +z) = (x +y) +z.
3. There is a unique zero vector such that x + 0 = x for all x.
4. For each x there is a unique vector x such that x + (x) = 0.
5. 1 x = x.
6. (c
1
c
2
) x = c
1
(c
2
x).
7. c (x +y) = c x +c y.
8. (c
1
+c
2
) x = c
1
x +c
2
x.
The generalized denition of vector addition and scalar multiplication helps in
dening and working with more abstract algebraic constructs. We now use this
denition to describe an important concept called closure.
98
Denition 13 (Closure). Consider a set of vectors on which vector addition and
scalar multiplication are dened. If the following hold true
1. x +y = z where z x, y .
2. cx x , c R.
then closure is satised on .
In other words, if any linear combination of vectors in the set produces a vectors
that is also in the set, the set satises closure. We can now dene vector spaces
and correspondingly subspaces:
Denition 14 (Vector space). A set of vectors that satises closure is a vector
space.
Denition 15 (Subspace). A subset of a vector space that satises closure on its
own subset is a subspace of that vector space.
A vector space may be even further generalized if we let vectors refer to any type
of element and not necessarily those in R
n
. This leads to the idea of function
spaces where the vectors are actually functions. These generalized vector spaces
need to satisfy the same conditions for the real vector spaces, i.e., vector addition,
scalar multiplication must be dened such that the conditions in Denition (12)
are satised and linear combinations of vectors in the space must remain in the
space. There are many examples of vector spaces and any set of vectors may be
checked for closure in order to determine if they are vector spaces or not. The
reader is referred to the many textbooks available in the reference list below for
more information.
We now introduce the four fundamental subspaces of linear algebra: the column
space (or the range space or the image for function spaces), the row space (or
the coimage for function spaces), the nullspace (or kernel for function spaces),
and the left nullspace (or cokernal for function spaces). Consider a system matrix
A R
nm
and rank(A) = k.
Denition 16 (Fundamental subspace 1: column space). The column space of A,
denoted C(A), is the space of all linear combinations of the columns of A. It is a
subspace of R
m
.
Example For the matrix
A =
_
_
1 4 7
2 4 3
1 7 9
_
_
(8.14)
the column space C(A) is the space of all the linear combinations of
the vectors
v
1
=
_
_
1
2
1
_
_
, v
2
=
_
_
4
4
7
_
_
, v
3
=
_
_
7
3
9
_
_
. (8.15)
99
It can be easily veried that the closure property is satised. Another
way to appreciate the column space is to see it as the product of a
matrix and a vector
Ax = b. (8.16)
In the previous, b C(A) for any given x. In fact, the entire column
space is dened by letting x = R
n
.
We can generalize the column space notion to non-matrix vectors (e.g., in func-
tion spaces), in which case it is referred to as the range space R(A) or the image
Im(A). Consider a function of x
f(x) = y. (8.17)
Then the range space or the image of f is y, i.e., R(f) = y or Im(f) = y.
We now dene a closely related subspace.
Denition 17 (Fundamental subspace 2: row space). The row space of A, denoted
C(A
T
) is the space of all linear combinations of the rows of A or the columns of
A
T
. It is a subspace of R
n
.
This concept of this space is very similar to that of the column space, since we are
referring to the column space of a transposed matrix.
Example Consider the previous example, for the matrix
A =
_
_
1 4 7
2 4 3
1 7 9
_
_
(8.18)
the row space C(A
T
) is the space of all the linear combinations of the
vectors
v
1
=
_
_
1
4
7
_
_
, v
2
=
_
_
2
4
3
_
_
, v
3
=
_
_
1
7
9
_
_
. (8.19)
As before, it can be easily veried that the closure property is satised.
The row space R(A) for function spaces is called the coimage.
Denition 18 (Fundamental subspace 3: nullspace). The nullspace of A, denoted
N(A), is the set of all vectors x such that Ax = 0. It is a subspace of R
n
.
It can be easily veried that closure is satised on such a set of vectors. The
nullspace can be thought of as all the vectors that render the matrix zero upon
multiplication. The nullspace is usually nontrivial and can be described as a linear
combination of some vectors but when we have rank(A) = n = m, i.e., A is square
and of full rank, the nullspace is trivial. The only vector in the nullspace in this case
is the zero vector. Whenever the rank of A is less than the number of columns of
A, the nullspace is nontrivial. This is because when the rank of A is less than the
number of columns of A, we always have a free variable in the system. Therefore,
that free variable can be arbitrarily assigned for any b and still yield a solution,
implying that the nullspace is nonempty.
100
Example Consider the matrix
A =
_
_
1 0 1
5 4 9
2 4 6
_
_
. (8.20)
It can be easily veried via Gaussian elimination that Ais rank decient,
i.e. rank(A) = 2 < n = 3. Thus, although A is square, it still has
a nontrivial nullspace. By solving Ax = 0, the nullspace is given by
linear combinations of the vector
v
1
=
_
_
1
1
1
_
_
. (8.21)
Since we only have one vector, linear combinations only implies mul-
tiples of v
1
, i.e., N(A) = c v
1
where c R.
When we have non-matrix vectors, the nullspace of A is referred to as the kernel
of A, ker(A). For a function f, ker(f) is all x such that
f(x) = 0. (8.22)
Denition 19 (Fundamental subspace 4: left nullspace). The left nullspace of A
is the set of all vectors x such that A
T
x = 0
The left nullspace is closely related to the nullspace since it is also a nullspace but
of a matrix A
T
. Closure, obviously, follows. For non-matrix vector spaces, the
left nullspace is referred to as the cokernel of A, coker(A).
In the previous introduction to vector spaces and discussion of dierent vector
spaces, a recurring theme was that the dierent vector spaces were determined as
linear combinations of a set of vectors v
1
, v
2
, . . . , v
m
. This motivates the next
denition.
Denition 20 (Spanning set). If a vector space V consists of all linear combina-
tions of a set of vectors = v
1
, v
2
, . . . , v
m
, then it said that is a spanning
set for V or the vectors in span V .
It is clear that every vector in V is some combination of the vectors in . Using
this terminology, we can redene the column space of A as the space spanned by
the columns of A. Similarly the row space of A can be redened as the space
spanned by rows of A or the columns of A
T
.
Example The column space of the matrix
A =
_
_
1 2 1
2 4 7
3 6 11
_
_
(8.23)
is spanned by the vectors
v
1
=
_
_
1
2
3
_
_
, v
2
=
_
_
2
4
6
_
_
, v
3
=
_
_
1
7
11
_
_
. (8.24)
101
But notice for the previous example that the rank of A = 2 < n = 3 which implies
that the columns are linearly dependent. It is clear that v
1
and v
2
are linearly
dependent since they are simply multiples of one another, v
2
= 2v
1
. Therefore,
we have an extra redundant vector in the spanning set that is not needed to describe
the vector space. The next denition is relevant in this regard.
Denition 21 (Basis). A linearly independent set of vectors that spans a vector
space V is called a basis for V .
Example From the previous example, a basis for the column space
of A is given by
v
2
=
_
_
2
4
6
_
_
, v
3
=
_
_
1
7
11
_
_
. (8.25)
We achieved this basis by simply eliminating the linearly dependent
vector(s) (v
1
).
From the denition, the two requirements for a set of vectors to be a basis are
1. The vectors in a basis must be linearly independent.
2. These vectors must also span the vector space V .
Note that a basis for a vector space is not unique. In fact, as an example, any set
of n independent vectors in R
n
span R
n
and thus also form a basis for R
n
.
The number of independent vectors in a basis for a given space is an important
(and also invariant) property.
Denition 22 (Dimension). The number of vectors in a basis for a vector space
V is called the dimension of the vector space V or dim(V ).
Example From the previously example where a basis for V was given
by
v
2
=
_
_
2
4
6
_
_
, v
3
=
_
_
1
7
11
_
_
(8.26)
then the dimension of V is 2 or dim(V ) = 2.
The dimension of a space is an invariant property and is the same regardless of the
basis chosen. If
v = v
1
, v
2
, . . . , v
n
(8.27)
and
w = w
1
, w
2
, . . . , w
m
(8.28)
are two dierent, distinct bases for a vector space V then m = n.
The above discussion and examples lead us to some intuitive conclusions regarding
bases and spanning set: Any spanning set for a vector space V can be reduced to
a basis by removing linearly dependent vectors in the set. Conversely, any linearly
102
independent set of vectors in V can be made a basis by adding a sucient number
of linearly independent vectors to the set. In this context, a basis is both a maximal
independent set since it cannot be made larger without losing linear independence
and it is also a minimal spanning set since it cannot be made smaller and still span
V .
Problems
1. Find the rank of the matrix
A =
_
_
1 3 7
2 4 8
9 6 11
_
_
(8.29)
2. Judge for the existence and uniqueness for the system Ax = b where
a)
A =
_
_
1 2 3
4 5 6
9 8 7
_
_
(8.30)
b)
A =
_
_
1 2 3
4 5 6
9 17 7
_
_
(8.31)
c)
A =
_
15 7 12
6 11 23
_
(8.32)
d)
A =
_

_
1 2 3
4 5 6
9 17 7
14 3 5
_

_
(8.33)
e)
A =
_

_
1 2 3
2 4 6
10 20 30
14 3 5
_

_
(8.34)
3. Express q = [5 7]
T
as a linear combination of the vectors v
1
= [2 3]
T
, v
2
=
[1 1]
T
, v
1
= [0 2]
T
.
4. Are the vectors v
1
= [2 3]
T
, v
2
= [1 1]
T
, v
1
= [0 2]
T
independent?
If not, choose a linearly independent set of vectors from these vectors and
express q = [5 7]
T
as a linear combination of this set.
5. Are the columns of the following matrices linearly independent? If not,
choose a linearly independent set of vectors from the columns.
103
a)
A =
_
_
1 2 3
4 5 6
9 8 7
_
_
(8.35)
b)
A =
_
_
1 2 3
4 5 6
9 17 7
_
_
(8.36)
c)
A =
_
15 7 12
6 11 23
_
(8.37)
d)
A =
_

_
1 2 3
4 5 6
9 17 7
14 3 5
_

_
(8.38)
e)
A =
_

_
1 2 3
2 4 6
10 20 30
14 3 5
_

_
(8.39)
6. Which of the following sets of vectors is a subspace? Check for closure and
clarify your work.
a) The set of all vectors with real elements.
b) The set of all vectors in the form v = [k
1
k
2
0]
T
with k
1
, k
2
R.
c) The set of all vectors in the form v = [k
1
5 0]
T
with k
1
, k
2
R.
d) The set of all vectors with odd elements.
e) The set of all polynomials of degree 3 only.
f) The set of all polynomials of degree 3 or less.
g) The set of all functions that are dierentiable once or more.
h) The set of all second-order polynomials with real roots.
7. Determine a set of vectors that span the column space and a set of vectors
that span the row space of the following matrices. Furthermore, nd a basis
for both the spaces from their spanning sets. What are the dimensions of
the spaces?
a)
A =
_
_
1 2 3
4 5 6
9 8 7
_
_
(8.40)
b)
A =
_
_
1 2 3
4 5 6
9 17 7
_
_
(8.41)
104
c)
A =
_
15 7 12
6 11 23
_
(8.42)
d)
A =
_

_
1 2 3
4 5 6
9 17 7
14 3 5
_

_
(8.43)
e)
A =
_

_
1 2 3
2 4 6
10 20 30
14 3 5
_

_
(8.44)
8. Decide whether the nullspace of the following matrices is trivial or not by
nding a nontrivial vector in the space. If nontrivial, what is the dimension
of the nullspace? Also, determine a basis by nding a sucient number of
additional linearly independent vectors in the space.
a)
A =
_
_
1 2 3
4 5 6
9 8 7
_
_
(8.45)
b)
A =
_
_
1 2 3
4 5 6
9 17 7
_
_
(8.46)
c)
A =
_
15 7 12
6 11 23
_
(8.47)
d)
A =
_

_
1 2 3
4 5 6
9 17 7
14 3 5
_

_
(8.48)
e)
A =
_

_
1 2 3
2 4 6
10 20 30
14 3 5
_

_
(8.49)
105

You might also like