Sensitivity In Control Systems
Introduction
Sensitivity
Problems
You are at:  Analysis Techniques - Performance Measures - Sensitivity
Click here to return to the Table of Contents
Why Sensitivity?

        When you design a control system you need to account for all eventualities.  The most likely problem you will have is that the system you are controlling - an airplane, a furnace, a motor, etc. - will not stay the same.  There are numerous reasons for change.

        Every system you ever try to control will have changes.  If you design for some nominal case and don't account for the variability of the system, you could have a system that is unstable for some commonly encountered situation.  Then your reputation will suffer, but that won't be your primary worry because you won't have a job either.

        In this lesson we begin to examine how changes in systems affect your designs and you begin to learn how to predict some of those effects.


System Sensitivity

        As a way of beginning to understand the problem, let's examine a simple feedback control system.  Here is the block diagram for the system we will examine.  We will assume the following for the system.


        Now, let's assume that you have some performance specifications for the closed loop system.

Given the transfer function, you can compute the closed loop transfer function (so you can do the design analytically for this case) and you get the following closed loop transfer function.

GCL(s) = KGDC/(st + 1 + KGDC)

The requirement on SSE means that the closed loop DC gain has to be .98, so you get:

KGDC/(1 + KGDC) > 0.98

KGDC > 49

K > 9.8

Then, you check to see if the closed loop time constant meets the spec.  The closed loop time constant is given by:

tCL = t/(1 + KGDC)

tCL = .06

That meets the specification, so you have a good design choice with K = 0.98,  What could possibly go wrong?

        Although the design seems simple and straight forward, there are any number of things that could go wrong.  Let's look at what we assumed.  We started off with the following assumption.

We have to question this assumption.  How do you know what the transfer function is?  Let's look at how you might have gotten that information. In all of these approaches you make a lot of assumptions. When you get a model for a system, you are always sure that the model is not a perfect model of the system.  You hope that your model is good enough, but you do not have a 100% guarantee of that.

        Besides the possibilities mentioned above, there are other possibilities that could affect your design.

Now, knowing all this, maybe you want to reconsider your gain value of 9.8 for K.  Would you like to use a value of 20?  How large is enough?  Or, should it be smaller?  How much do things change when K changes?  How much do thing change when the time constant is different, or the DC gain is different.

        You begin to see the problem.  We need to build an understanding of how systems change when things inside them change.  We'll begin that in the next section.


Sensitivity of Closed Loop Parameters

        In our first order closed loop system, we found that the closed loop DC gain was given by:

GDC,CL = KGDC/(1 + KGDC)

Now, the first question is "How much does the closed loop DC gain change when the open loop DC gain changes?"  This is really a question about accuracy.  then the open loop DC gain is larger, the closed loop DC gain is approximately 1.0, and the steady state error (SSE) is small.  You will want the SSE to be small, and you will want the closed loop DC gain close to 1.0 in this system configuration.

        Since this is a question about change, we're going to get into taking derivatives.  The first thing you are tempted to look at is the derivative of the closed loop DC gain with respect to the open loop DC gain.  That's not a bad place to start, but we will use a more sophisticated measure of change later, but we will start by computing this derivative.

dGDC,CL/ dGDC

That derivative is given by:

dGDC,CL/ dGDC = K/[1 + KGDC]2


Example

E1  For our example system, GDC is 5.  When K = 9.8, the derivative above is given by:

dGDC,CL/ dGDC = K/[1 + KGDC]2
dGDC,CL/ dGDC = 9.8/[1 + 49]2
dGDC,CL/ dGDC = .00392

That means that if the open loop DC gain, GDC , changes fro 5 to 5.5 (a 10% change), we would estimate the change in the closed loop DC gain to be .00392x 0.5 = .00196.  However, remember that the closed loop DC gain is:

GDC,CL = KGDC/(1 + KGDC)
GDC,CL = 49/(1 + 49)
GDC,CL = 0.98

So, we would estimate the closed loop DC gain to change to about 0.984 when the open loop DC gain changes by 10%.  We would also estimate the closed loop DC gain to change to about 0.976 when the open loop DC gain changes by -10%.



        Considering this example you can see that a relatively substantial change (from 5 to 5.5, i.e. 10%) in the open loop DC gain leads to a relatively small change in the closed loop DC gain (from 0.98 to 0.984, i.e. 0.4%).  That says that the gain change is much smaller in the closed loop gain, and also that the percentage gain in the closed loop DC gain is much smaller.  In that situation, we want to say that the system is not very sensitive to changes, or that the closed loop DC gain is not very sensitive to changes in the open loop DC gain.  To make sure that you understand what happens, we have a simulator that will show the responses for both cases.
Simulator

        Here is a simulator that will let you compare the response for two different systems.

Click here to get the simulator in a separate window.  Then do the following.


Sensitivity Continued

        In the material above we calculated variations in closed loop DC gain, but those calculations did not really give a clear idea of sensitivity because the open loop DC gain was approximately 5, and the closed loop DC gain was close to 1.  In many cases it may be better to have the answer to this question.

That kind of information gives you information that most people consider to be more meaningful and easier to interpret.  We're going to examine the answer to that question next.

        First, we have to consider what a percentage change is.  If we have some quantity, X, that changes by an amount DX, the percentage change in X is given by:

Percentage change in X = 100[DX/X]

However, we will be dealing with small changes in most quantities, so we will look at incremental changes (dX).  For example, if we want to get the sensitivity of the closed loop DC gain to changes in open loop DC gain, we define that sensitivity as:

SGdc,clGdc = Sensitivity of closed loop DC gain to changes in open loop DC gain

SGdc,clGdc = [dGdc,cl/Gdc,cl]/[dGdc/Gdc]

SGdc,clGdc = [dGdc,cl/dGdcGdc,cl]/[Gdc,cl/Gdc]

        If we take our example system, we already have the derivative indicated above.  That derivative is:

dGDC,CL/ dGDC = K/[1 + KGDC]2

And, we also have the other terms in the expression for the sensitivity.

Gdc,cl = KGdc/(1 + KGdc)

so, the sensitivity becomes:

SGdc,clGdc = [K/[1 + KGDC]2]/[KGdc/(1 + KGdc)Gdc]

SGdc,clGdc = 1/[1 + KGDC]


Example

E2  In our example system, we can compute the sensitivity as:

SGdc,clGdc = 1/[1 + KGdc]

SGdc,clGdc = 1/[1 + 9.8*5]

SGdc,clGdc = 1/[1 + 49]

SGdc,clGdc = 0.02

So, a 1% change in the open loop DC gain causes a .02% change in the closed loop DC gain.  Or, a 5% change in the open loop DC gain would cause a .1% change in the closed loop DC gain.

        Note that the percentage change in the closed loop DC gain is substantially smaller than the percentage change in the open loop DC gain.  That's one reason feedback control is used so often.


        Closed loop DC gain is not the only parameter we might consider.  Since we have a first order system, there aren't going to be a lot of other parameters.  Still, there are more than you might think.  There are two categories of parameters - open loop parameters, which can vary independently, and closed loop parameters, which vary depending upon changes in open loop parameters.

        Open loop parameters include the following.

Closed loop parameters include the following. To move this further, consider the closed loop time constant.  The closed loop time constant is given by:

tcl = t/[1 + K*Gdc]

We can get the sensitivity of the closed loop time constant to changes in the open loop DC gain.  We define the sensitivity as:

StclGdc = [dtcl/tcl]/[dGdc/Gdc]

StclGdc = [dtcl/dGdc]*[Gdc/tcl]

Take the indicated derivative:

dtcl/dGdc = -Kt/[1 + KGdc]2

 Insert that result into the expression for the sensitivity and we get:

StclGdc = [-Kt/[1 + KGdc]2]*[Gdc/tcl]

Now, use the expression above for the closed loop time constant (in the last term) and we get:

StclGdc = [-Kt/[1 + KGdc]2]*[Gdc/(t/[1 + K*Gdc])]

StclGdc = [-Kt/[1 + KGdc]]*[Gdc/(t)]

StclGdc = [-K/[1 + KGdc]]*[Gdc]

StclGdc = [-KGdc/[1 + KGdc]]


Example

E3  For the running example system, we can compute a numerical value for the sensitivity.  Using our previous values (K = 9.8 and Gdc = 5) we get:

StclGdc = [-KGdc/[1 + KGdc]]

StclGdc = [-49/50] = -0.98

What this means is that if the DC gain of the system increases 1%, the time constant will decrease almost 1%.


        We can use the simulator used earlier to illustrate how the closed loop time constant changes.
Simulator

        Here is a simulator that will let you compare the response for two different systems.

Click here to get the simulator in a separate window.  Then do the following.


        There are other system parameters that we need to consider.  Thus far, we have examined the effect of changing the open loop DC gain on the closed loop DC gain and the closed loop time constant.  In this section we will examine the effect of changing the open loop time constant.  Here is the block diagram for the system we have been - and will be - examining.

        We know the closed loop transfer function is given by:

Gcl(s) = KGdc/(st + 1 + KGdc)

Now, examine the sensitivity of the closed loop DC gain to changes in the open loop time constant.  We know the closed loop DC gain is given by:

Gdc,cl = KGdc/[1 + KGdc]

The closed loop DC gain does not depend upon the open loop time constant, so when the open loop time constant changes, the closed loop DC gain does not change.  Therefore, we have:

SGdc,clt = 0

The sensitivity is zero if the closed loop DC gain does not change when the time constant changes.

        We don't always get such nice neat results, and we may be tempted to draw some incorrect conclusions from this result.

        Let's represent the original system a different way.  Consider this.

G(s) = GDC/(st + 1) = Ga/(s + a)

In other words, instead of using the DC gain and the time constant, we rewrite the transfer function of the controlled system - the plant - to show the open-loop pole explicitly.  Now consider getting the sensitivity of the closed loop DC gain to changes in the pole location.  We want to compute:

SGdc,cla = [dGdc,cl/da]/[Gdc,cl/a]

And, we know:

Gdc,cl = KGa/[1 + KGa/a]

Now, notice that the closed loop DC gain depends upon the pole using this representation and that clearly implies that the sensitivity will not be zero.

        To compute the sensitivity, we first take the derivative of the closed loop DC gain with respect to the pole, a.  That derivative is given by:

dGdc,cl/da = -KGa/[(a + KGa)3]


Example

E4  Consider a situation with these parameters

These parameters give a DC gain of 5 in the transfer function:

G(s) = Ga/(s + a)

If we wanted to design for 2% SSE, we would require a total DC gain of 50, so we need

That means that the derivative we calculated above would yield:

dGdc,cl/da = -KGa/[(a + KGa)2]
dGdc,cl/da = -10*10/[(2 + 10*10)2]
dGdc,cl/da = -0.0096 ~= -0.01

This expression would allow us to compute the change in closed loop DC gain for a change in a.  For example if a change from 2.0 to 2.01, the closed loop DC gain changes from 0.9804 to .9803.  We would estimate exactly those changes, i.e.

Change in CL DC gain ~= -.01*.01 = -.0001


        If we move to examining the sensitivity, we would have:

SGdc,cla = [dGdc,cl/da]/[Gdc,cl/a]

SGdc,cla = -KGa*a*[1 + KGa/a]/[(a + KGa)3]*[KGa]

SGdc,cla = -a/[(a + KGa)2]


Example

E5  Continuing the example above, with these parameter values:

The sensitivity is calculated as:

SGdc,cla = -a/[(a + KGa)2]

SGdc,cla = -2/[(2 + 100)2] = -.00019

or, in other words, a 1% change in a will produce a -0.00019% change in the closed loop DC gain.  The actual values - from Example E4 - are:


Summary

       Now, let's summarize what we've learned in this lesson.

Sensitivity of any closed loop parameter to any open loop parameter can be defined, and we investigated a few.  In the cases we investigated, we can see a common factor:

[1 + KGa/a]

or

1/[1 + KGdc]

or, in general

1/[1 + KG(s)]

The general form is 1 divided by 1 added to the open loop gain (DC or a function of s).  Many texts refer to this as the "Sensitivity Function".  It does turn up in many of the sensitivity functions you will calculate and has indeed turned up in all of the sensitivity functions we have calculated thus far.


Some Generalizations

        In this lesson we have used a first order system as a working example.  However, consider the expression we derived for the sensitivity of the closed loop DC gain to changes in open loop DC gain.  That expression is reproduced below.

SGdc,clGdc = 1/[1 + KGDC]

This expression depends only upon the expression for the closed loop DC gain, given below.

GDC,CL = KGDC/(1 + KGDC)


Problems
Links To Related Lessons Other Design Lessons


Send us your comments on these lessons.