Vous êtes sur la page 1sur 62

Helsinki University of Technology Control Engineering Laboratory

Espoo 2000 Report 121

FUZZY GAIN SCHEDULING OF MULTIVARIABLE


PROCESSES

Matteo Cavazzutti

TEKNILLINEN KORKEAKOULU
TEKNISKA HÖGSKOLAN
HELSINKI UNIVERSITY OF TECHNOLOGY
TECHNISCHE UNIVERSITÄT HELSINKI
UNIVERSITE DE TECHNOLOGIE D´HELSINKI
Helsinki University of Technology Control Engineering Laboratory
Espoo September 2000 Report 121

FUZZY GAIN SCHEDULING OF MULTIVARIABLE


PROCESSES 1

Matteo Cavazzutti

"La Sapienza" University of Rome


Engineering Faculty
Electronic Engineering Department

Abstract: The intense and increasing interest of industry on Automation Technologies claimed
deep researches in this field. Emerging techniques like Fuzzy Logic has been studied and
successful applied to process control.

Traditional control methods, e.g. PID-based, have poor performances when applied to modern
processes whose models are strongly non-linear and multivariable-based. Fuzzy logic controllers
might provide better results through advanced methodologies like gain scheduling, for example.

In this thesis, multivariable non-linear systems have been considered. To perform the control of
the process, multivariable PI controller has been used. A fuzzy gain scheduler has been
developed to allow the controller producing the optimal control action at different operating
points. An algorithm has been used to execute the off-line tuning in each of operating point, and
a fuzzy sub-system performs a fine tuning.

In that way the system works as follow: as changes in operating points are detected, the
scheduler, which behaves as a supervisor, sets new parameters for the controller. Then, the
fine-tuning provides the performances to achieve the desired results. The parameters of the gain
scheduler are stored in a fuzzy system, based on linearization at different work points of the
process. Thus a mathematical model of the process is not required, and necessary data for
process study could come simply from on-field experiments.

An example has been considered and the proposed method has been applied on it.

Keywords: fuzzy gain scheduling, multivariable control, non-linear control, PI controller, fuzzy
logic

Helsinki University of Technology


Department of Automation and Systems Technology
Control Engineering Laboratory

1
A re-edition of a Master’s Thesis work, September 2000.
Distribution:
Helsinki University of Technology
Control Engineering Laboratory
P.O. Box 5400
FIN-02015 HUT, Finland
Tel. +358-9-451 5201
Fax. +358-9-451 5208
E-mail: control.engineering@hut.fi

ISBN 951-22-5281-3
ISSN 0356-0872

Picaset Oy
Helsinki 2000
Acknowledgements

The thesis has been entirely developed in the Control Engineering Laboratory of
the Helsinki University of Technology.

I want to express my personal gratitude to Professor Heikki Koivo for his proficient
support during my work. His marvelous leadership, oriented to build cooperation and
friendship within the Laboratory Staff, has represented always an excellent reference
in my improvements.

I also wish to thank all the Control Engineering Laboratory Staff for their
acquaintance and for the motivating work environment in which I found myself
working.

I am deeply thankful to Professor Alessandro De Carli from the Computer and


System Science Department of “La Sapienza” University of Rome, who gave me the
possibility to experience this work.

Finally, but not at least, I want to thank my family for their extraordinary
encouragement and patience in bearing me.

I cannot avoid spending a few words about the country in which I have lived for six
months: Finland. Looking on the globe somebody might see it’s not so far from my
own country, Italy. But between those nations people and habits, as it appeared to me,
are in general quite dissimilar. I had an unforgettable life experience because just the
different culture I discovered here made me growing-up. The day I will leave (“I left”
to the reader) Finland will be (“was”) sad and pleased at the same time: “Sad”
because I will leave friends, habits that I successfully enjoyed, and my own life I built
day by day. “Glad” because I will keep the memory of all the life teachings I learnt
here.

Helsinki, September 2000

Matteo Cavazzutti
Contents

Chapter 1 _________________________________________________________ 1
Introduction ____________________________________________________ 1
1.1 – Historical Background ______________________________________ 1
1.2 – Gain Scheduling and multivariable processes_____________________ 2
1.3 – Thesis organization _________________________________________ 4
Chapter 2 _________________________________________________________ 5
Basics on Fuzzy Logic ____________________________________________ 5
2.1 – Looking over fuzzy world____________________________________ 5
2.2 – Fuzzy sets ________________________________________________ 6
2.3 – Fuzzy operations and relations ________________________________ 7
2.4 – Fuzzy rules _______________________________________________ 9
2.5 – An example: washing machine fuzzy control system ______________ 12
Chapter 3 ________________________________________________________ 16
PID control ____________________________________________________ 16
3.1 – General aspects of PID controller _____________________________ 16
3.2 – Implementation ___________________________________________ 18
Chapter 4 ________________________________________________________ 20
Fuzzy controller design __________________________________________ 20
4.1 – Overview ________________________________________________ 20
4.2 – Parameters design _________________________________________ 21
4.3 – Reliability _______________________________________________ 25
Chapter 5 ________________________________________________________ 26
Multivariable feedback control____________________________________ 26
5.1 – Generalities ______________________________________________ 26
5.2 – Problem definition_________________________________________ 27
5.3 – Pettinen-Koivo tuning method _______________________________ 28
Chapter 6 ________________________________________________________ 31
Gain Scheduling ________________________________________________ 31
6.1 – Overview ________________________________________________ 31
6.2 – Problem definition_________________________________________ 33
Chapter 7 ________________________________________________________ 36
Case study _____________________________________________________ 36
7.1 – Presentation ______________________________________________ 36
7.2 – The process ______________________________________________ 38
7.3 – The fuzzy gain scheduler ___________________________________ 40
7.4 – The fuzzy fine-tuning ______________________________________ 41
7.5 – Trial and error: manual adjustments ___________________________ 46
7.6 – Simulation and results ______________________________________ 47
Chapter 8 ________________________________________________________ 51
Conclusions ____________________________________________________ 51
Bibliografy _______________________________________________________ 52
Chapter 1

Introduction

1.1 – Historical Background

Although advanced controllers are currently available in process control, most


industrial methods utilize well-known proportional, integral, derivative (PID)
controllers. It has been estimated [33], that in 1996 at least 90% of controllers
employed in the industry are PIDs or PID-based. The success of PID controllers is due
to the following simple reasons:

Its straightforward structure makes relations between its parameters and the system
response to be clear. This means that the plant operators acquire a deep knowledge
about how to tune controller parameters.
The tuning task is nowadays fairly straightforward and deterministic. Popular
tuning algorithms are widely used, e.g. Ziegler-Nichols or Internal Model Control
(IMC) method.
The overall performance obtained is, generally speaking, considered satisfactory
with respect to the relative quickness and low cost of implementation.

In recent years new alternative methods have been explored, like, for example,
genetic algorithms, fuzzy logic and neural networks. They have been introduced
successfully into control theory in many different ways. For example, a large field is
oriented in projecting the so-called PID-like controllers. They can be considered
implementations of standard PID, using those different mathematical methods. Other
studies investigated supervising PID-controlled systems, introducing techniques like
self-tuning and scheduling. The aim is to continue using simple PID- based controllers,
since they are demanded by industry, but supporting them with more advanced control
strategies.
All those investigations set sights on improving controllers where PID shows lack
of acceptable performance. For example, when one has to deal with strong process
non-linearities, or when switching between several operating points, as this could lead
to the necessity of controller tuning at each step. Moreover, in some industrial
processes it is not possible to use conventional control methods, because of the scarcity
of a sufficient number of data regarding the input-output plant relations. In

1
multivariable system, additionally, experience shows that PID controllers, by
themselves, are not sufficient to perform the control action.

In 1965 Zadeh introduced the concept of fuzzy logic for the first time [47]. Nine
years later the first Fuzzy Logic Controller (FLC) was introduced by Mamdami [19].
From that time FLC technique, that might be defined as “rule-based control theory
able to emulate the human expert’s knowledge” [27], has been used in a significant
amount of industrial applications, like for instance, in paper machine control [42],
water quality control [6], transmission control [6], elevator control [8]. Studies and
researches in fuzzy control have been growing up quickly, as the interest of researchers
and scientists have been turned more and more on that subject.
The success of FLC is connected to the undeniable advantage of providing a way of
converting a linguistic control strategy, based on human expert skill, into an automatic
control strategy.
In fact fuzzy logic ability is in connecting human nature and mathematical models.
In that sense, the core of a FLC is a set of linguistic rules, built with the simple
consequence if-then logic connected by implications and inferences. Linguistic rules
arise from the practice, the knowledge and the know-how of expert operators and
designers, who do not form mathematical models for decision-making and control.
Long lasting experiences show that the FLC frequently yields better results than
those gained by conventional controllers. At not last, personnel supposed to handle
with FLC, is usually not required to have high educational background.

On the other hand, a designer has to take into consideration that there are not yet
systematic and straightforward procedures to manage the development of a FLC. The
most commonly used ways to proceed are still founded on trial-and-error methods.
Furthermore, usually fuzzy systems contain redundancies, that is, a FLC has more
parameters than the conventional equivalent; and this could introduce more trouble in
managing all of them than in the other case. Since the number of rules grows quickly
with the number of inputs, inputs variables have to be restricted, say to two or three.
The performance of fuzzy systems is strictly related to the ability and experience of
the designer. As a result, stability and robustness of FLC are not achieved
automatically and they need usually an ad hoc investigation.

1.2 – Gain Scheduling and multivariable processes

Since realistic models of engineering systems are nonlinear, the dynamic behavior
of the system to be controlled changes with the operating point. A common approach
to this problem is to apply the notion of gain scheduling.
Gain scheduling was introduced during the 1950s with particular reference to flight
control systems [23]. It can be considered a kind of adaptive control technique: the
original idea was to evaluate auxiliary variables (other than the plant outputs) that are
strongly correlated with the changes in process dynamics [34]. In such a way there is
no need of system parameter estimation; thus control variables can be changed as soon
as changes in system dynamics are observed by the auxiliary measurement. This means

2
that change of the controller parameters depends on how quickly the operating
conditions are measured.
The conventional scheduling procedure is first to linearize the system model about
different operating points. Then linear design methods are employed to the linearized
models in order to compute local controller parameters, as they are supposed to work
just within linear regions. The last step is the development of the real gain scheduler: it
has to deal with changes in operating conditions. At its simplest level it means, that it
behaves like a switch between the operating points, forcing new control parameters as
it detects modifications in the set point. This implies that the gain scheduler together
with linear controllers handles non-linearity. In the area between two linearized
regions, the control system has to compute kind of interpolation between the control
parameters related to the close regions. The principle is shown in Fig. 1.1.

Gain Scheduler

Input Output

Controller Plant

Figure 1.1: Example of Gain Scheduling. In this scheme the input variables
to the scheduler are the current operating point and the reference signal.

Moreover, if the linearization task is not sufficiently accurate, inducted errors can
be big enough to produce instability, and therefore the failure of the control action.
In such a context, it is easily understood that fuzzy logic has been widely applied to
gain scheduling, at least for its ability to smooth sharpness, and the intuitive approach
to non-linearity.
Multivariable plants models are nowadays getting more and more studied because
many industrial processes need to be modeled with more than one variable. Fuzzy gain
scheduling techniques haven’t yet applied to multivariable systems. In this thesis the
problem of control of a 2 × 2 process is considered. A multivariable fuzzy gain
scheduler has been built to control the process.

3
1.3 – Thesis organization

The thesis is organized as follows:


In Chapter 2 the basics on Fuzzy Logic are presented. This is required to give the
reader a summary of the main notions about Fuzzy Logic. An example is also
explained to familiarize with the subject.
Chapter 3 deals with PID controllers. General aspects about PID are explained and
the problem of implementation is shortly considered.
In Chapter 4 the design of fuzzy controllers is taken into account. When designing a
fuzzy system many parameters are available and different procedures exist to manage
them. This chapter highlights the main concepts and suggestions to keep on mind
during designing.
An approach to multivariable systems control is the subject of Chapter 5. These
systems are very difficult to be controlled because the knowledge on how parameters
affect the system is hardly understandable. Automatic tuning methods are therefore
needed. The Pettinen-Koivo tuning algorithm is described. This algorithm is then
utilized in the case study, in Chapter 7.
Gain scheduling techniques are illustrated in Chapter 6. The evolution of this
methods is presented and advantages and disadvantages of the gain scheduling are
investigated.
Conclusions and suggestions for future works are reported in Chapter 8.

4
Chapter 2

Basics on Fuzzy Logic

2.1 – Looking over fuzzy world

In 1961 Lofti A. Zadeh felt that new kinds of mathematic theories were required to
support recent research developments [46]:

“We need a radical different kind of mathematics, the


mathematic of fuzzy or cloudy quantities which are not
described in terms of probability distributions [..]”

A few years later, with the first publication on fuzzy logic, the connection between
shadowy nature and computers world was built. Since that moment fuzzy logic has
been studied, developed and applied to many different fields; nowadays it is possible
to find a huge amount of literature dealing with fuzzy logic. Nevertheless, if someone
asks what is fuzzy logic, it’s not simple and straightforward to answer, at least because
a rigorous definition of fuzzy logic doesn’t exist. It is commonly accepted that there
are two way of meaning fuzzy logic: the first one is motivated by the necessity to
overtake difficulties encountered in analyzing or developing analytically complex
systems. The second comes from the observation that human knowledge and concepts
have not sharp boundaries.
According to the former approach every mathematical field can be fuzzified
changing its native set by a fuzzy set; whereas the latter requires fuzzy logic to work
with vague concepts and shaded theories.
Both of these meanings make fuzzy logic to be a natural bridge between the
quantitative and the qualitative world.
In fact fuzzy logic essence stays in its ability to develop a connection between
human nature and mathematical models. Human language is not made of digits or
formulas, but it’s… fuzzy: it’s built on ideas, opinions and, why not, fantasy.
Depending on them, words like “a bit”, “a few”, “a lot”, “many” etc. are definitely not
numbers, but everyone can get the idea of what his interlocutor means using those
words. A computer can’t, if it doesn’t have a rigorous definition of each word. Thus
fuzzy logic can be thought as an interface between approximate and inexact nature of
real world on one side, and the planet of numbers and bits on the other.

5
With the same mentioned view points it’s clearly understandable the double
reasonings that made fuzzy logic widely used in control theory: on one side there is the
approach to manage, for example, plants models (e.g. with their non-linearities), on the
other the ability to transfer human know-how in the controllers, and to make them
easily usable by operators.
The following paragraphs do not pretend to be a handbook on fuzzy logic: the
development of such a work would be as hard as unnecessary. Fuzzy logic theory is
mainly based on some central concepts, e.g. fuzzy sets, fuzzy rules and inference. In
this contest, we only want to draw reader’s attention on some principles of fuzzy logic
theory.

2.2 – Fuzzy sets

Classical set theory define the membership of an element x to a generic set A as


follows:

0 ⇔ x ∉ Α
µ A ( x) =  (2.1)
1 ⇔ x ∈ Α

The nature of the universe in which such a definition acts is black and white type,
that is every element can only belongs or not to a set. On the other hand a fuzzy set
element can partially belong to a set, and the border of its belonging is shaded. With
this guideline we could give the following [44]:

Definition 2.1: (membership function). Let X be a nonempty set (e.g.


X ⊆ † n ), and be called the universe of discourse. A fuzzy set A ⊆ X is
characterized by the membership function:

µ A : X → [ 0,1] (2.2)

Membership functions are in general related to fuzzy subsets.


Such a definition represents a generalization of the concept of membership, since it
includes the classical set theory as a special case, in fact: {0,1} ∈ [ 0,1] .
For instance, let’s consider, as universe of discourse X, the set of real number
included in the interval [ 0,1] . The following figures show how two membership
functions, µ A and µ Β , of sets A, B ⊂ X could be represented geometrically in the
classical and fuzzy cases:

6
1 1

µΑ µΒ

0 0
0
x1 x2 x3 x4 x5 x6 x7 x8 1
x
0
x1 x2 x3 x4 x5 x6 x7 x8 x9 1 x

Figure 2.1.a Figure 2.1.b

In classical set theory (Figure 2.1.a) elements x1 , x2 , x5 , for example, belongs to the
set A. In fuzzy set theory (Figure 2.1.b) the same elements belongs to the set B as well,
but with a certain rate, whose value is given by the corresponding value of
membership function. This means that any element partially belonging to a fuzzy set is
also a partial member of its complement. Note that the membership function of Figure
2.1.a can be even thought as a particular fuzzy membership function, coherently with
the fact that fuzzy set theory is an extension of classic theory.
The most common properties of traditional set theory, like commutativity,
associativity, distributivity, identity etc. can be directly applied to fuzzy theory, but
one should note that it is not true, in general, that, given a set A ⊂ X , then Α ∩ Α = ∅
(law of contradiction) and Α ∪ Α = X (principle of excluded middle). This is actually
another way to see how the essence of fuzziness lies in the lack of distinction between
Α and Α .
Nevertheless, the last two mentioned principles keep their validity when fuzzy sets
are crisp.
Lastly, we called X ⊆ † n universe of discourse. Such a name seems to fit to fuzzy
logic better than, for example, a domain, if we mean fuzzy logic as an approach to
generic problems instead of a mathematical discipline.

2.3 – Fuzzy operations and relations

The notions of intersection and union are extended and generalized in fuzzy set
theory with the concepts of T-norm and S-norm operators. In particular:

Definition 2.2: (generic norm operators). Let’s consider a generic function


F :[0,1] × [0,1] → [0,1] with the following properties

F ( x, y ) = F ( y , x ) (Symmetry) (2.3)
F ( F ( x, y ), z ) = F ( x, F ( x, y )) (Associativity) (2.4)

7
if x ≤ z and y ≤ v then F ( x, y ) ≤ F ( z , v) (Monotonocity) (2.5)

An operator T having these properties, and, also, such that:

T ( x,1) = x (One identity) (2.6)

is called T-norm operator.


In the same way, an operator S is called S-norm operator if, additionally to
properties (2.3-5), it is also:

S ( x, 0) = x (Zero identity) (2.7)

The functions Min and Max are examples of T-norm and S-norm operators,
respectively, and they can be used to easily characterize how fuzzy set operations
affect membership functions, as proposed by Zadeh:

Definition 2.3: (fuzzy set operations).

∀x ∈ X : µ A ( x) = 1 − µ A ( x) (Complement) (2.8)
∀x ∈ X : µ A∪ B ( x) = max(µ A ( x), µ B ( x)) (Union) (2.9)
∀x ∈ X : µ A∩ B ( x) = min(µ A ( x), µ B ( x)) (Intersection) (2.10)

Figure 2.2.a: intersection membership function Figure 2.2.b: union membership function

Fuzzy relations characterize how fuzzy sets are combined with classic operations.
They extend the conventional notion of relation into a matter of degree: in general a
membership function obtained combining fuzzy sets belonging to X i ( i = 1,.., n )
universes of discourse is defined as: µ R : X 1 × .. × X n → [0,1] . In classical theory the
same definition would have had, as co-domain, the set {0,1}. Fuzzy relations are
simply kinds of fuzzy subset (i.e. membership functions) over a base set [13].
Thus generalizing the definition of Cartesian product it is possible to directly obtain
fuzzy relations from membership functions:

8
Definition 2.4: (Cartesian product). Given Ai ⊂ X i ( i = 1,.., n ) fuzzy
subsets, the Cartesian product is:

µ A1×..× An ( x1 ,.., xn ) = min(µ Ai ( xi )) (2.11)


i =1,.., n

The next two definitions are needed to provide fuzzy logic with operators: in other
words, given the space in which fuzzy logic lives, it’s now missing the ability to
process fuzzy information, that is, for example, how to perform arithmetic operations
between fuzzy numbers.
Definition 2.5: (composition). The composition of two relations R o S is
defined as a membership function in X × V :

µ RoS ( x, y ) = sup v T (µ R ( x, v), µ S (v, y )) (2.12)

where: R, S : X × V → [0,1] , x ∈ X , y ∈ Y ,and T is a T-norm.

Definition 2.6: (extension principle). Given a function


f : X 1 × .. × X n → X C operating between crisp sets X i , X C ( i = 1,.., n ), let
Ai ⊂ X i to be fuzzy sets, the fuzzy extension is a membership function defined
as:

µ F (ν ) = sup min[µ A1 (u1 ),.., µ An (un )] (2.13)


u1 ..un ∈ f −1 ( v )

The importance of the last definition is that it allows extending every punctual
operation to the fuzzy equivalent, with the fundamental property that the classical
operation is a particular case of the fuzzy correspondent. Formally µ F is simply an
extended mapping of f .

2.4 – Fuzzy rules

In fuzzy logic variables are called linguistic variables. In order to assume fuzzy
values they are characterized by the parameters listed below. As an example, within
parenthesis there are values for the variable “velocity”:
a symbolic name (velocity);
the set of linguistic values they can take (slow, medium, fast);
the numeric domain in which the linguistic values take numerical values
syntactic (and the semantic equivalents) rules which defines the values.

9
Velocity
slow medium fast

degree of membership

0
0 40 100 160 200

Figure 2.3: Example for linguistic variable “Velocity”

Fuzzy rules associate a certain linguistic input variables with an output. In our
contest the input is connected to a process state, whereas the output represents a
control action. A set of parallel fuzzy rules defines a fuzzy rule base; it can be seen as
a function that maps the output space as from rules.
In order to give consistency to the fuzzy system, the rule base has to be complete
(i.e. any combination of inputs results in an appropriate output) and consistent (i.e.
there can’t be two or more rules with the same antecedent and different consequences).
The structure of the rules is:

IF ( x1 is A1j AND .. AND xn is Anj ) THEN ( y is B j ) (2.14)

Variables xi are the inputs to the fuzzy system, y is the output. Ai j and B j are
fuzzy sets. B j can be also a singleton. Note that, in general, membership functions of
an input variable should cover the entire input space, which is the universe of
discourse, whereas the output membership functions have not such a kind of
restriction.
When a new input value enters in a fuzzy system, it has to be evaluated by the fuzzy
system to produce the appropriate output, with respect to the involved rule. This task is
called fuzzy inference.
First, for each input the degree of membership to the correspondent fuzzy set has to
be estimated. For example, with reference to Figure 2.3 a velocity of 60 Km/h is said
to be (approximately) 80% “slow” and 20% “medium”. This step is often called
matching step, e.g. in [46].
With multiple input conditions rules (e.g. rules with OR and AND conditions) a
fuzzy conjunction operator has to be used to combine the matching degree of each
condition. Commonly used operators are, for example, Min and the product: the
former works cutting off (clipping) the top of membership function whose value is
higher than the matching degree. The latter performs scaling the membership function
proportionally to the matching degree.

10
Then output membership functions are evaluated with respect to the calculated
matching degrees. This will produce the conclusion that is the weighed consequent of
each rule.
Usually rules have partially overlapping conditions: a particular input involves
more than one fuzzy set to have a non-zero matching degree. This means that the
conclusions have to be combined (aggregation). A frequently involved fuzzy operator
is, for that purpose, the max function.

µ A1 ( x1 ) µ A1 ( x)
µ B1 ( y )
1 2

µ B ( y)

µ A2 ( x ) µ A2 ( x )
2 µ B2 ( y )
1

x1 x2

min(µ A1 ( x1 ), µ A1 ( x2 )) max(µ B1 , µ B2 )
1 2

Figure 2.4: Fuzzy inference. This is an example on how inputs and rules affect the
output membership function. The numbering introduced in (2.11-12) is used, and the
min() and max() operators are applied aggregate rules and clip fuzzy sets. On the last
“shape” on the right a defuzzification method, like center of gravity for instance, has to
be applied.

Finally, the output of a fuzzy system is very often requested to be a number. That is
to say that there is need to translate fuzzy sets in crisp sets. The procedure that converts
the fuzzy output in a numeric format is called defuzzification. There are many methods
to perform this step; probably the best known is the center of gravity technique. It
works evaluating the center of gravity of a mass whose shape comes from the clipped
or scaled output membership functions. The definition of center of gravity is the
following:
∫ µ B ( y ) ydy
cog ( B) = Y (center of gravity) (2.15)
∫ B
µ
Y
( y ) dy

Note that the mentioned property of completeness of rule base finds here its
analytical interpretation since an output not included in any membership function will
produce an indetermination in calculating (2.15).

11
Observe, at last, that the defuzzification is requested even if the output membership
functions are singletons. In that case the center of gravity coincides simply with the
arithmetic mean.

2.5 – An example: washing machine fuzzy control system

The control problem in this example is about the automatic selection of cycles for a
washing machine. The reasons for choosing such a kind of weird problem, at least
from a theorist point of view, are mainly two. The first is that the involved human
knowledge to be fuzzified is easily understandable due to the fact that it is a day-life
problem. The second is that it is a “historical” application, since in 1990 such a type of
fuzzy washing machine was actually developed and put on the market. It was one of
the first examples of using fuzzy logic to design consumer-oriented products.

Problem statement: We want to build a fuzzy system that optimizes automatically


the laundry washing, by a decision-making task of washing cycles. A housewife could
observe that the temperature of the water is another important output to be considered
in optimizing washing quality, but the example achieves its target easily with only one
output.

Proposed solution: In order to reach the desired result we will proceed through the
following steps:

Linguistic variables are identified and fuzzified. This means that also membership
functions, fuzzy sets with their ranges are chosen;
Fuzzy rule base is built;
Outputs are aggregated;
Finally, output is defuzzified to produce the conventional numeric format output.

Step 1:
As it is demanded, the output of the fuzzy system is the intensity of the washing
cycle. In order to choose the optimal value for the output let’s assume, as input
variables, the laundry quantity and the laundry softness. To describe the inputs by
fuzzy sets, we can simply use the words we would probably use from the actual know-
how of daily experience. In that way, for example, we can associate to the laundry
quantity the fuzzy sets: “small”, “medium” and “large”. With respect to the laundry
softness it’s reasonable to relate it with the words “hard”, “normal” and “soft”. A more
precise description (that is: to add others fuzzy sets) might be done, for instance,
calling the intermediate fuzzy sets “hard normal” and “hard soft”. This is actually a
designer choice. It’s, in that sense, a trivial example, but it shows how design skills and
experience are combined.
For the output variable, the washing cycle, let’s consider four fuzzy sets: “delicate”,
“light”, “normal” and “strong”.

12
Note that numeric values for these variables make sense only when the project is
physically built, and they come from the technology involved.
Let’s consider the gaussian membership functions for input variables, and triangular
for the output. The real variables ranges, which are the universes of discourse, come
from the specific implementation that one wants to use. For fuzzy ranges let’s use,
through an adequate normalization, the interval [ 0,1] .

Small Medium Large Soft NormalSoft NormalHard Hard


1 1
Degree of membership

Degree of membership
Quantity Softness

0 0

0 0.2 0.5 0.8 1 0 0.2 0.5 0.8 1

Figure 2.5: Membership functions for input variables

Delicate Light Normal Strong


Degree of membership

0 1
Cycle
Figure 2.6: Membership function for the output variable “washing cycles”

Step 2:
As it will be mentioned in Chapter 4 with reference to Fuzzy Controllers, the
construction of the rule base is an essential task and it might present some difficulties.
Concerning our example the whole rule base is shown in Table 2.1. In every box there
is the result (the output) of the corresponding inputs. Two rules are listed below, as
examples:

IF the Laundry Quantity is Large AND the Laundry Softness is Hard THEN
Washing Cycles is Strong;

13
IF the Laundry Quantity is Normal AND the Laundry Softness is Normal Hard
THEN Washing Cycles is Normal;

Once more the human experience is widely employed. Heuristic conjectures take
place and the rule base construction “derive benefit” from them.

Laundry
Quantity
SMALL MEDIUM LARGE
Laundry
Softness
SOFT DELICATE LIGHT NORMAL

NORMAL SOFT LIGHT NORMAL NORMAL

NORMAL HARD LIGHT NORMAL STRONG

HARD LIGHT NORMAL STRONG

Table 2.1: Fuzzy rules

Step 3:
Operators min-max are used to aggregate rules. An example of the inference task is
shown in Figure 2.4.

Step 4:
The defuzzification is based on center of gravity method, thus it follows Equation
2.15. In Figure 2.7 a surface graph is drawn: for each set of input values it gives the
final defuzzified output values according to the designing choices.

14
0.7
Cycle

1
1
0.5 0.6

Quantity 0
Softness
0
Quantit Softnes

Figure 2.7: With The MATLAB Fuzzy Toolbox it is possible to display the relation
between output and input variables.

For instance, let’s suppose to have, as it is shown, a Softness fuzzy value of 0.183,
and a Quantity of 0.809. These are values that “live” in the normalized universe of
discourse. The reasoning produces the output value equal to 0.529.

15
Chapter 3

PID control

3.1 – General aspects of PID controller

As already mentioned, PID controller is the most commonly used control algorithm.
Generally speaking it has some important functions: it can be used in feedback
systems, it has the ability to eliminate steady state error through integral action and it
can anticipate the future with the derivative action (e.g. [49]). The “theoretical”
equation that summarizes its behavior is, with reference to Figure 4.1:

 1
t
de(t ) 
u (t ) = K  e(t ) + ∫ e(τ)d τ +Td  (3.1)
 Ti 0 dt 

where: u (t ) is the control variable and e(t ) is the control error given by:
e(t ) = ysp (t ) − y (t ) .

C ontroller P lant
y sp ( t )
u(t) y (t )
G c (s) G p (s)
e(t)

F igu re 3 .1 : A gen eric fe edback controlled


syste m and its n o m en cl atu re

The different components of PID controller can immediately be recognized in the


correspondent order: the P-term (proportional to the error), the I-term (proportional to
the integral of the error), and the D-term (proportional to the derivative of the error).
The terms K , Ti and Td are gain parameters. That means that the I-term, for example
is proportional to the integral of error through the term K / Ti . Sometimes [31], in order

16
to emphasize the values of parameters that have to be set in tuning the controller, the
Equation (3.1) is presented in the form:

t
de(t )
u (t ) = K p e(t ) + K i ∫ e(τ)d τ + K d (3.2)
0
dt

so that, for example K d = K ⋅ Td . In the Laplace domain the corresponding equation


is given by:

 1 
U (s) = K  E (s ) + E ( s ) + sTd E ( s )  (3.3)
 sTi 

where U ( s ) and E ( s ) denote the L-transformations of control variable and error.

K p ysp (t )
n1 n2
ysp e
y(t)
Kp Kπ
u
Controller Plant

Figure 3.2: Simplified closed loop system for static considerations

The idea of PID control is that integral and derivative actions compensate lack of
performances of the simple proportional action. In order to get this point by simple
static remarks, let’s consider the model in Figure 3.2. Both the controller and the plant
are assumed to be modeled by a pure proportional action, that is:

u = K p ( ysp − y ) + ub (3.4)
yπ = K π (u + n1 ) (3.5)

The parameter ub represents a bias or a reset value. When the control error is zero,
the control variable assumes the value u (t ) = ub . Inputs n1 and n2 are disturbances.
It can be easily figured out that the relation between the plant output and inputs is:

K p Kπ Kπ
yπ = ( ysp − n2 ) + (n1 + ub ) (3.6)
1 + K p Kπ 1 + K p Kπ

If we assume n2 = 0 and ub = 0 then the loop gain (i.e. K p K π ) should be high in


order to make yπ ≈ ysp as close as possible. In that way the system is also insensitive

17
to load noises n1 . On the other hand, if n2 ≠ 0 then n2 influences the system as much
as the set point does. To avoid this effect the loop gain should be not too high.
Moreover the bias ub ≠ 0 affects the system as n1 does. Therefore the only
proportional action can’t satisfy all these requests simultaneously. This feature can be
interpreted also in terms of available freedom degrees of a generic system in order to
satisfy a certain number of conditions: each freedom degree usually can satisfy only
one request. Moreover we argued based only a static model: dynamics also sets limits
(upper bound) on how large a loop gain can be . These questions show that the P-
action is not sufficient
An integrative action is usually thought to reduce the steady state error, and this is
easy to understand: if the control error is, for instance, positive, it will produce an
increasing of the control signal, whereas a negative error will generate a decreasing
control signal.
The derivative action is used to improve closed loop performances in term of
stability, that is to say: to satisfy phase margin requests. In fact instability can occur
because of process dynamics: a control action change can’t be immediately seen in the
process output because of propagation times. As a result, the control action is always
late in correcting errors. The derivative action performs (in “co-operation” with the
proportional action) being proportional to the predicted process output, where the
prediction is made by approximating the error at the next step with its Taylor series
expansion stopped at the first order:

de(t )
e(t + Td ) ≈ e(t ) + Td (3.7)
dt

Thus the control signal is proportional to an estimation of the control error at time
Td . In that sense the D-action is said to predict the process output.

3.2 – Implementation

The standard algorithm shown in Equation (3.1) rarely occurs in practical


implementations because many variations with better performances have been
developed. Finally, a question arises about physical feasibility of that equation.
The so-called characteristic equation of a system as shown in Figure 3.1 is defined
as:

1 + G c (s)G p (s) = 0 (3.8)

This equation, which corresponds to the denominator of the closed-loop system


response in the Laplace domain, allows determining stability characteristics of the
system and also the transient response of the control system. Design methods usually
are based on this equation.

18
In the derivative path of a PID a problem occurs: the gain of this part increase as
frequency increases. This means that a fast change in the input signal can make the D-
action being very strong: for instance, a step signal has an infinite derivative. A real
step signal can’t have, of course, an infinite slope; nevertheless it can generate values
too high for the system stability, in fact the measurement noise would benefit by all the
available gain.
Thus very often the derivative transfer function (i.e. in Laplace domain) is
approximated, in order to reduce the gain [16], by:

sTd
sTd ≈ (3.9)
sT
1+ d
N

where N is a parameter to be chosen. At low frequencies the approximation can fit


well depending on the tuning of N ; at high frequencies the gain is limited to N . From
a control theory point of view in the second member of Equation (3.9) we simply
added the pole ω = N / Td to limit the gain, in the Bode magnitude diagram, at high
frequencies.
In designing of industrial processes, derivative action is frequently not used. As a
general rule one can assume that: if the step response of the process seems to belong to
a first-order system, than PI control is enough. This takes place, being more precisely,
when the Nyquist curve lies only in the first and fourth quadrant. Nevertheless, even if
the process doesn’t look like a first-order system, it is commonly accepted that if the
process does not require tight control a PI controller is still adequate: in these cases the
main targets are related only to steady-state error (I-action) and transient response (P-
action). Note that a PI controller cannot obtain good results when it is applied to a non-
linear system and set point changes are involved. In fact it behaves in the same way
trough the different operating conditions even if the controller is non-linear (PI-like).
In this case other tools that recognize set point changes are required.

19
Chapter 4

Fuzzy controller design

4.1 – Overview

We assume a Fuzzy Logic Controller to be a system that is used to perform a


generic control on a target process. By “generic control” we mean that a fuzzy
controller can be thought not only as a traditional cascade-connected controller, but
also as a supervisor in feedback systems.
In design a FLC, first, input and output variables have to be selected. They of
course depend on which kind of FLC is going to be implemented. The next step is the
choice of the rule base; finally the shape of membership functions is decided and a
tuning of the controller is done “moving” and shaping membership functions within
the variables range, which represent the universe of the discourse, as seen in Chapter 2.
A general way to represent a FLC is as follow:

u (k ) = F (e(k ), e(k − 1),..e(k − ς), u (k − 1), u (k − 2), u (k − ς)) (4.1)

where F is the fuzzy control law. This equation has not to be considered as a
difference equation: it indicates only that the FLC can use information from previous
steps over the last one. This means that information about rate of change in variables is
available, since we can write, referring to e(k ) , for instance:

∆e(k ) = e(k ) − e(k − 1) (4.2)

When input variables are chosen it has to be considered that every new input will
add anything but a negligible contribution to increment number of rules. In fact the
number of rules grows exponentially with number of inputs. For instance, if we assume
to use two membership functions for inputs, then covering all the occurrences will
cause rules growing at least proportionally to 2nx , where nx is the number of input
fuzzy sets. This is a rough evaluation, but practice reveals that in real applications the
number of inputs is seldom greater than three or four.
The choice of variables to use is demanded by the class of fuzzy controller. Since
the target of a control system is to keep the error e(k ) small, usually the change of
error, defined in Equation (4.2), is considered, besides the real error, obviously. It

20
gives information about the derivative of error. Therefore it can be used to figure out
how quickly the error is changing, and if it is decreasing or not. Additionally, input
(i.e. operating point) or output to the system ought to be employed in order to notify
the controller about changing in operating point. In fact one should note that providing
the controller with information only about error and its changes, it will make the
controller behaving in the same way at different operating points, as the error is
interpreted to be the same (in a fuzzy set sense), no matter if the plant is, as always it
is, non-linear.
If the fuzzy controller is designed as a cascade controller, then its output is a control
variable that is forcing the plant. Otherwise, if the fuzzy controller is a supervisor then
its output is a general parameter (eventually a set of parameters) that will drive the real
controller.

4.2 – Parameters design

Input and output variables of the fuzzy controller must be expected to belong to
certain intervals. These intervals have to be specified in the fuzzy controller. In fact,
with regards to input variables: every possible input value should be fuzzified, thus
fuzzy sets have to cover all the range of varying. Given the error e(k ) = ysp (k ) − y (k ) ,
its range is defined by the maximal and minimal values of variables that identify it. It
is reasonable to assume that set point and the measurement fluctuate in the same
interval. Hence, if ysp (k ), y (k ) ∈ [ ymin , ymax ] then e(k ) ∈ [emin , emax ] , where:

emin = ymin − ymax (4.3)


emax = ymax − ymin (4.4)

In the same way, the change of error ∆e(k ) belongs to the range [∆emin , ∆emax ] ,
with:

∆emin = emin − emax (4.5)


∆emax = emax − emin (4.6)

It is common procedure to normalize intervals (that are the universe of the


discourse), introducing scaling factors. These factors are basically functions that map
the real measured values into the new intervals.
A mapping function is f : I → I * where I = [imin , imax ] is the true interval, and
I * = [imin
* *
, imax ] is the new, desired, interval. A general linear mapping is, thus:

*
imax − imin
*
x* = f ( x ) = ( x − imin ) + imin
*
(4.7)
imax − imin

21
where x* represents the new normalized variable.
(*)
If the ranges are taken symmetric with respect to the origin: imax = −imin
(*)
= i (*) then
i*
Equation (4.7) becomes: x* = x . Therefore we define:
i
i*
ki = (4.8)
i

as a general scaling factor. The reasoning mechanism in the fuzzy controller applies
to the normalized values. The scaling factors are applied also to output variables. It’s
obvious that the simplest shape of the scaling factor given by Equation (4.8) can be
used if the input variable interval is (almost) symmetric. Otherwise, if this interval is
non-negative (or non-positive) then Equation (4.7) has to be considered. However the
normalized interval is chosen by the designer, thus it can always be taken symmetric.
The choice of the number of fuzzy subsets is another important task: when a
number has to be evaluated, it can be said to be only small, medium or large (with
respect to certain implicit estimation criteria), but a more accurate assessment could be
done adding intermediate sets like quite small and quite large. Thus it’s plain that
accuracy might be improved unlimitedly: the course of the fuzzified variable could be
classified in several fuzzy sets and a very thorough fuzzy description will be achieved.
An upper bound to the amount of fuzzy sets is given by the growth of the number of
rules: having a large amount of sets will increase the number of rules, in order to keep
completeness of the fuzzy system. To clarify this aspect if we consider, for instance, a
fuzzy system with two inputs, then a new fuzzy set added in one of those inputs, will
make rules number rising, by completeness, as much as the number of sets of the other
variable.
A good remark is that it is not necessary to have the same shape and dimension (i.e.
areas) for fuzzy sets. Therefore it follows that different dimensions of sets can be
selected. This technique is useful to deal with non-linearities: where strong non-linear
behaviors are handled, a local thick set of membership functions could increase
performances. On the other hand, linear-like might need less sets, thus rules number
can be kept locally small. However, this is not a straightforward way to proceed,
because a fuzzy system introduces by itself non-linearities.
The rule base choice depends, as already pointed out, on input and output variables
and fuzzy subsets; but its roots are, above all, in the designer approach, skill and know-
how. It is surely the most difficult and crucial aspect in outlining a fuzzy controller.
The construction of the rule base can follow basically two methodologies [44]. The
former is based on the concept of template: when a fuzzy controller is designed
starting from a template it indicates that common and well-known knowledge coming
from designers is applied. The templates should be meant as general guidelines in
developing the rules. A very general template rule base is for example the Mac Vicar-
Whelan’s. It can be used to build problem-oriented rule bases for PID-like fuzzy
controllers, by modifying, add or excluding its rules. Such an approach is
recommendable, for example, when an a priori knowledge of the rules is not available:
from a template some rules can be extracted to provide a reasonable starting point.
The latter method is based on intuitive knowledge and experience. The fuzzy
controller is, in that sense, thought as an expert system. The rule base source can be
expert operator’s experience and a good knowledge of the problem to solve. This

22
method probably is more strictly related to the original interpretation of fuzzy logic
than the previous one. In the first method, fuzzy logic is a mathematical approach to
implement handbook rules. The second provide the connection between human
experience and heuristic strategies on one side, and the controller on the other one.
The combination of both of these ways can be also an interesting alternative: first a
controller could be designed as a “handbook prototype”, following principles of a
template. Then, test and incoming experience can improve and personalize the
effectiveness of the rule base.
Considerations on the kind of rules should be done: the rule type shown in Equation
(2.14) is said to be a Mamdami rule type. Its main characteristic is that the
consequence is a fuzzy proposition, as the antecedents are. Another kind of rule is
commonly adopted, the Sugeno rule type. The general form of this kind of rule has, as
a consequence, a function of the controller inputs.
A set of Sugeno rules can be seen as a set of local controllers, each one with its own
set of controller parameters. Thus different controller parameters for different input
combinations are defined. It acts as a sort of gain scheduler, if the consequences
functions are linear. Although the ideas in Mamdami’s and Suogeno’s rules come from
different reasoning, it can be shown that in practical implementations rules can be
equivalent. This occurs when in Sugeno reasoning the output functions (i.e. the
functions adopted as rules consequences) are constant.
A practical consideration takes place in choosing which of kind of rules to apply. In
fact, actual implementations of standard PID controllers are very different from the
textbook version and, above all, more complicated. This means that Sugeno type rule
results to be more problematic because every time the fuzzy system has to produce an
output, there is a function to be evaluated in each rule, possibly also non linear, with
different parameters. Therefore when gain scheduling technique is invoked Mamdami
rules are simpler and more efficient to apply.

1
input1
Degree of membership

0 0.3 0.5 0.7 1

Figure 4.1: Fuzzy sets can be chosen thicker in regions of strong non-linearity.

23
Once the rule base has been written down reasonably, a tuning step of the fuzzy
controller is required. In fact rule base is made trying to lead to an expected control
action, and this task is only the framework of the controller.
It’s worthwhile to emphasize that for our purpose the tuning task in this Chapter is
referred to the fuzzy controller meant as a generic fuzzy system. Therefore it deals
with general aspects of the controller that are not connected with the controlled
process. Tuning with respect to the process is discussed in Chapter 5.
The tuning of a fuzzy controller is a significantly sophisticated phase, especially if
we compare it with the tuning of a conventional controller. In fact a fuzzy controller,
being a fuzzy system, is extremely flexible; its behavior is determined by a copious
number of parameters. These parameters come from, for example, defining
membership functions, fuzzy subsets and the inference procedure.
A few organized tuning methods have been presented in literature, but they mostly
are concerned about specific problems (see, e.g. [30]). This lack of available methods
makes the tuning to be performed usually by trial and error methods.
Tuning by trial and error can be executed by introducing scaling factors, varying the
position, within the borders, and the shape of membership functions. “Shape” is here
meant as a general varying of the area, keeping the same kind of membership function:
for instance if we are handling a triangular membership function, then moving the
peaks (making them sliding) of the figure is a “shaping” actions, and the nature of the
membership function is not modified. A graphic example of this concept is, for
example, Figure 4.1.
The scaling factors are an essential aspect of tuning. They change the normalized
interval of input and output; therefore they operate a transformation of the space state,
as inputs are error and change of error. In general, high values of the scaling factor
e*
related to error, ke = , improve responsiveness of the system but they increase the
e
overshoot and thus the stability might be compromised. Moreover a fast convergence
∆e*
is bounded by high values of both ke and k∆e = that is the scaling factor of the
∆e
change of error.
When insufficient results are obtained locally, that is: the system does not reach the
expected performance into certain subintervals of the universes of the discourse of
input variables, then fuzzy subsets are “moved” into the prescribed range as already
mentioned above. The same tuning can be done for output variables, but if the output
membership functions are singletons then this task is easier, because a change in the
value of a singleton will affect only the support of the corresponding rules.
The choice of the kind of membership function (e.g. triangle, trapezoid, gaussian
etc.) might be also a designing task. But, at least in control theory, it is seldom taken
into consideration because suitable results are usually achieved using very simple
membership functions.

24
4.3 – Reliability

When building a controller the designer always encounters problems at least


because designing is supposed not to be related to trivial tasks. Obviously the project
of a fuzzy controller meets difficulties, as well. It is not true that overall performances
of a fuzzy controller are much better than those achieved by traditional controllers.
As it has been shown above, the design of a fuzzy controller has many parameters
to take into consideration, and managing all of them is not a negligible work. Non-
linearities are involved, and the connection between the adjustment of one parameter
and the generated consequence is often not clearly understandable.
Stability and robustness of the system are not easily achievable and predictable, and
there are not systematic procedures to lead to them. They are still deeply studied, and
even if big efforts have been put on finding connections between non-linear control
theory and fuzzy control theory, much needs to be done.
What we want to highlight is that the project of a controller by means of fuzzy logic
is only a different way to tackle the control problem. Designing difficulties threaten
whatever path the designer chooses to follow. The power of fuzzy logic in control
theory takes place mainly in two different aspects: the first is the likelihood to develop
advanced control strategies without a specific and deep knowledge of complex
theories. The second is that a fuzzy controller can be understood, and thus maintained,
by personnel whose education level is not as high as it is required for complex ordinary
controllers.

25
Chapter 5

Multivariable feedback control

5.1 – Generalities

The task of tuning a multivariable controller with respect to the involved process is
considered. In a multivariable process the design of the controller must take into
consideration interactions between process variables. This is not a trivial problem.
The simplest way to proceed is to have scalar controllers, each one of these is
forcing a control action only on one channel. However, if the interactions are enough
strong so that a scalar approach is not sufficient, then a multivariable controller has to
be used. If we focalize our attention on PID controllers, then for a generic n × n
process the controller has n × n × 3 parameters to tune. Geometrically, tuning such a
controller corresponds to search a point or a set of points in the n × n × 3 space.
A difficulty in that case is that in multivariable control the relations between
modifications in control parameters and response of the system are not straightforward
to be figured out. Practically it means that parameters that in the scalar case have a
predictable action on the process, in the multivariable case they simply have not.
Therefore desired performances and robustness characteristics of the system are not
easily achievable. This means that it’s almost impossible to adjust parameters for a
multivariable controller by trial and error. Automatic tuning methods are required. In
literature many tuning methods have been presented and tested. The choice of the best
method is usually related to the specific purpose.
Moreover if using a fuzzy system, the number of parameters increases quickly and
is even greater than in the traditional approach. While a big number of parameters
gives more degrees of freedom in designing, it becomes harder to keep a general
outlook of the system.
A first alternative is to consider a PI controller, thus the derivative action is not
used. A smaller number of parameters is therefore involved. The feasibility of this
choice has been considered in Chapter 3. Several methods have been proposed to
facilitate the tuning of multivariable PI controllers [30].

26
5.2 – Problem definition

Let’s consider a linear system model in a transfer function matrix form:

Y(s)=G(s)U(s) (5.1)

where Y(s) and U(s) are, respectively, the vectors of transfer functions of output
and input signals. In this context we assume the number of elements of each vectors to
be two. Thus the matrix G(s) is 2×2 .
A conventional MIMO PI controller is described by a transfer function matrix:

 1
U(s)=  K p +K i  E(s) (5.2)
 s

where E(s) is the vector of the transfer functions of measured errors and:

 k11i k12i   k11p k12p 


Ki =  i i 
K p=  p  (5.3)
 k21 k22   k21 k22p 

are the gain matrixes of the proportional (P) and integral (I) parts of the
multivariable controller. Terms on the main diagonals of the matrices correspond to the
direct action of one channel on itself. While terms on the secondary diagonals
represent the cross control actions. Therefore control scalar variables are, in the
Laplace domain:

1 1
u1 ( s ) = (k11p + k11i )e1 ( s ) + (k12p + k12i )e2 ( s )
s s
1 i 1
u2 ( s ) = (k21p + k21i )e1 ( s ) + (k22p + k22 )e2 ( s )
s s

With this representation we highlight how each channel interferes the other one. A
PI scalar controller has two parameters to set. With a simple 2 × 2 PI controller (that is
actually the simplest multivariable controller) the number of parameters has become
eight. With a 3 × 3 PI controller eighteen parameters would have to be adjusted. When
vector approach is used, and interferences are taken into account, number of
parameters grows very quickly.
Another thing to be considered is that when a step occurs in one of the input
variables, there is a fast and big change in the system conditions. At the beginning the
output is far from the set point because the controller has still to act. This means that
the control parameters are changing, as it is expected. Therefore if we consider, for
instance, the channel “number one”, a change in ysp1 (t ) will affect, immediately, e1 (t )
and ∆e1 (t ) . The new inputs to the controller will force changes in control parameters.
It can be seen, by Equations (5.4) and (5.5) that even if e2 (t ) and ∆e2 (t ) are not
changing (or at least if they are changing because of previous adjustments, without any

27
regard about the last step change) the control variable on this channel, u2 (t ) , changes.
And it is not exaggerated to say that probably the change is important. In fact e1 (t ) is
big and its coefficients k21p and k21i come from the previous evaluation. Hence
everything changes.
One could think to set equal to zero coefficients of secondary diagonals in K p and
K i matrices. Actually this is a simpler way to develop the controller, and it
corresponds to the scalar case. The number of control parameters is half of the
previous case. However, in this case interferences inside the process cannot be taken
into consideration because the controller parameters on each channel vary only
depending on the correspondent variable. Moreover fewer parameters are involved and
this could give less autonomy in designing.

PI
U1 PI
PI controller 2 Y1
PI controller 1

PI controller 3 PI controller 4
Y2
U2 PI PI

Figure 5.1: Structure of a 2x2 PI controller.

5.3 – Pettinen-Koivo tuning method

The present tuning method has been developed for multivariable PI-controllers and
can be seen as an improved extension of the Davison’s method. Davison proposed to
take the tuning matrices both for proportional and integrative part. They differ only for
a fine tuning parameters. Davidson tuning matrices are:

K p = δG −1(0)
Ki = εG −1(0)

This method aims to decouple the system at low frequencies. Pettinen and Koivo
modified this method in order to achieve decoupling at high frequencies as well.

28
It has been found out in [20] that their method can achieve good performances,
even if no general rules exist to state if one method is better than others for every
application.

Given the state space representation of the system model:

&
 x=Ax+bu
 (5.4)
 y=Cx

then the transfer function matrix G(s) can be expanded in series:

CB CAB CA2 B
G(s)= + 2 + 3 + ... (5.5)
s s s

The method suggests to use the first term of the series expansion as a rough tuning
matrix for the proportional part of the controller:

K p = δ ( CB )
−1
(5.6)

The reason for such a kind of choice originates from evaluating the limit of the
transfer function with the Laplace variable. In fact, since:

CB
G(s) → as |s| → ∞ (5.7)
s

then

I
G(s)K p → δ as |s| → ∞ (5.8)
s

This selection of K p aims to decouple the system at high frequencies.


Following the same reasoning, for the integral part of the controller, we remark that
the steady state gain matrix is:

G (0) = C (− A)−1 B (5.9)

therefore its inverse is used as a rough tuning matrix for the integral part K i :

K i = ε(C (− A) −1 B )−1 (5.10)

The parameters δ and ε are intended to be for fine-tuning. Often they can be
selected to be equal. Usually tight controller tuning can be achieved by selecting large
values for these parameters, whereas smaller values produce looser tunings.

29
A problem arises when the matrix CB is not invertible. In that case [29] the tuning
matrix should assumed to be:

K p = δ ( CB + CAB )
−1
(5.11)

The matrix CAB is taken from the second term of the series expansion of Equation
(5.5), so that the essence of the method is kept.
If one element of G(s) is such that the degree of the element’s denominator is two
or more greater than the degree of its numerator, then the corresponding element in
matrix CB is zero. Thus the matrix CB will be singular if all elements of G(s) have
this property. An approach to that problem is to reduce the model order before
computing the tuning matrices. Therefore in this case, firstly all elements of G(s) are
reduced into first order transfer functions. Then the method is applied to the reduced
model.
This method has been originally developed for tuning of multivariable PI
controllers. If an extension to the PID case is needed, one possibility might be to
assume for the derivative part the same tuning matrix as for the proportional part.
Note that the method, as long as it has been presented based on a linear system (see
Equations: (5.4), (5.6), (5.10)), would presume a linear model of the process to be
available. However Equations (5.6) and (5.10) can be computed even from step
response experiments, without any assumption of linearity on the process.

30
Chapter 6

Gain Scheduling

6.1 – Overview

Realistic models of engineering systems often are non linear. One consequence is
that the dynamic behavior of a system to be controlled changes with the operating
region. The notion of gain scheduling is widely applied to such a kind of situation. A
definition has been proposed in [12]:

Gain Scheduling: a linear parameter varying feedback regulator whose


parameters are changed as a function of operating conditions.

Historically the roots of gain scheduling come after the Second World War, when
aviation technology started dealing with jets and supersonic airplanes. Gain scheduling
was applied to autopilot systems. Other fields of applications are automotive engine
control, for example: gains scheduling came as a response to de demand of fuel
economy and exhaust reductions. In power electronics gain scheduling has been
applied for instance to control systems for switch-mode AC/DC converters [5] or for
Load Frequency Control [36].
How to apply gain scheduling? The first step is to linearize the model about some
operating points. The linearization can be based mainly on two different approaches:
the evaluation of the Jacobian is probably the most common and well-known way.
Another method is the quasi-linear parameter varying scheduling (or simply quasi-
LPV scheduling). It is based on the idea of rewriting a process model in which non-
linear terms have been replaced with time-varying terms that are then included in the
scheduling variable.
Then linear design methods are applied to the linearized model at each operating
point, in order to arrive at a set of linear feedback control laws that perform
satisfactorily when the closed-loop system is operating near the respective operating
points. What one should have is, therefore, a set of linear controllers corresponding to
the different linearizations.
The gain scheduling is then intended to handle non linear aspects of the design
problem. The basic idea involves interpolating the linear control law designs at
intermediate operating conditions. That is: a scheme is devised for changing

31
(scheduling) the parameters (gains) in the linear control law structure based on the
monitored operating condition.
Many types of gain scheduling methods have been experimented. Usually the
model is arranged so that the operating condition is specified by the values of one or
more variables of the process, and the gains are scheduled according to the
instantaneous values of these scheduling variables.
As probably it is already clear to the reader, the main advantage of the gain
scheduling approach is that linear design methods are applied to the linearized system
at each operating point. The wealth of linear control methods, performances measures,
design intuition and computational tools can be brought to support control design for
general, multivariable non linear processes. For example frequency domain notions
can be used in specifying performances, while this tool is much less understood in an
explicit non linear process. Moreover, methods of robust control for linear systems can
be applied to counter uncertainty in the plant parameters in order to obtain robustness
in the final gain scheduled system. Another advantage is related to the fact that a gain
scheduled control system has the ability to rapidly respond to changing in operating
conditions. This means also that it is crucial to choose the scheduling variables that
reflect the process dynamic so that changing in the operating conditions are
immediately notified.

X
Figure 6.1: Gain scheduling based on a series of local approximations: the global controller is
obtained by patching the overall model by a series of local controllers associated with the
linearization of the model.

Gain scheduling does not require strict assumptions on the plant model, thus it can
be used also without an analytical model of the process. This is indeed an interesting
feature because industrial applications need very often to deal with databases, i.e.
inexact models.
On the other side some difficulties can slightly compensate this advantages. One
difficulty is the selection of appropriate scheduling variables. General proposals have
not yet reached and rules of thumb mainly show the way to the designers. Practice
shows that scheduling variables selection usually is based on the “physics” of the
situation, and on particular characteristics of the process.
Perhaps the major difficulty in gain scheduling design is the selection of the
scheduling procedure, which is the control law that varies gains changing as a function

32
of the scheduling variables. This aspect is actually seldom discussed in literature, and it
appears that scheduling is currently an art, and simple curves-fitting approaches are
used. On the other hand it is also true that as complexity increases, scheduling become
much more difficult to be managed satisfactory with not general methods.
Another aspect of gain scheduling is that the overall performances of the control
system must be checked by deep simulation studies. This is a consequence of the local
use of linear design methods. However, one should note that in real application most of
non linear methods are local as well.
When stability has to be studied it is difficult to perform an overall analysis.
Usually stability can be guaranteed only locally and with slow time variations.
However gain scheduling has become a popular reality in many applications. Rugh
wrote [32]: “Machines that walk, swim, or fly are gain scheduled”.
Gain scheduling has been studied also on multivariable systems [16]. However, up
to now, none of these control design studies have led to implementation of such
multivariable control laws to operational and running processes. One of the difficulties
with implementing the gain scheduled multivariable control laws is the complexity of
these control laws, due to the large number of controller parameters that need to be
scheduled.
With the evolution and increase of studies on gain scheduling many ideas have been
investigated. For a long time gain scheduling appeared mainly to be a point of view to
approach control problem instead of a branch of control theory. Only in the last ten
years gain scheduling has been much more considered a real design methodology for
non–linear control, e.g. in [1] and [3]. Nevertheless literature doesn’t exhibit yet
uniform analytical treatments.

6.2 – Problem definition

We shortly show a formalism proposed by Rough [32], as it appears the best one
that summarizes exhaustively many years of studies gain scheduling oriented.
Given the non-linear plant:

 x& = a ( x, u, w, v )

 z = c1 ( x, u, w, v ) (6.1)
 y = c ( x, w, v )
 2

where: x is the state, u is the input, z denotes an error signal to be controlled, and
y is a measured output available to the controller. Both v and w denote exogenous
inputs to the plant. They may be easily confused, but v represents external signals like
references, disturbances etc. The linearization is computed with respect to v , while w
represents the parametric dependence of the plant on exogenous variables.
A plant equilibrium point ( xe , u , ue , we ) is a point such that:

a ( xe , ue , we , ve ) = 0 (6.2)

33
Let’s consider σ a scheduling variable. It is function of w and y . We then affirm
that:

Definition 6.1 (equilibrium family): the functions xe (σ ) , ue (σ ) , we (σ )


and ve (σ ) define an equilibrium family on the set S for the process described
by Equation (6.1) if:

a ( xe (σ ), ue (σ ), we (σ ), ve (σ )) = 0 σ ∈S (6.3)

Associated with this equilibrium family there is the error equilibrium family:

ze (σ ) = c1 ( xe (σ ), ue (σ ), we (σ ), ve (σ )) σ ∈S (6.4)

and the measured equilibrium family:

ye (σ ) = c2 ( xe (σ ), we (σ ), ve (σ )) σ ∈S (6.5)

For example, if the target is that z (t ) tracks a constant reference input r with zero
steady state error, then we should have:

a ( xe (σ ), ue (σ ), we (σ ), ve (σ )) = 0
ze (σ ) = 0

and σ should include r . Note that σ = g ( y (t ), w(t )) . The variable σ is treated as


a parameter throughout the process design, and then it becomes an input signal to the
gain scheduler due to the mentioned dependence: σ = g ( y (t ), w(t )) . Here stays the
main trick of the gain scheduling techniques. It is clear that the definition of
equilibrium points and the selection of scheduling signals depend on the particular
problem to be solved.
Corresponding to an equilibrium family there is a plant linearization:

 x&δ   A(σ ) B1 (σ ) B2 (σ )   xδ 
 z&  =  C (σ ) D (σ ) D (σ )   z  σ ∈S (6.6)
 δ  1 11 12  δ 
 y&δ  C2 (σ ) D21 (σ ) 0   yδ 

with, for example:

∂c1
A(σ ) = ( xe (σ ), ue (σ ), we (σ ), ve (σ )) (6.7)
∂x
∂c
D12 (σ ) = 1 ( xe (σ ), ue (σ ), we (σ ), ve (σ )) (6.8)
∂u

and with the deviation variables defined as:

34
xδ (t ) = x(t ) − xe (σ ) , uδ (t ) = u(t ) − ue (σ ) . (6.9)

Thus, for each fixed σ , Equation (6.6), that is the linearization, describes the local
behavior of the non-linear model of Equation (6.1), about the corresponding
equilibrium.
Given a set of equilibrium values σ 1 ,..,σ K of the equilibrium family σ ∈ S , let’s
assume to have evaluated a linear controller for each value according to the
specifications. Thus we describe a linear controller family as:

 x&δc   F k G (σ )   xδ 
c

 c =  k   k = 1,.., K (6.10)
u&δ   H E k  uδc 

then, the linear parameter-varying controller is based on the set of controllers of


Equation (6.10). Usually interpolation between indexed controllers is done, with
respect to σ .
Based on Equation (6.10), we need a controller of the form:

x& c = f ( x c , y, w) , u = h ( x c , y , w) . (6.11)

At the equilibrium, Equations (6.1), (6.2) and (6.10) show that there must be a
function x& c (σ ) so that:

f ( xec (σ ), ye (σ ), we (σ )) = 0 (6.12)
ue (σ ) = h( xec (σ ), ye (σ ), we (σ )) (6.13)

these equations require, for example, that:

u = H (σ )[ x c − x c (σ )] + E (σ )[ y − ye (σ )] + ue (σ ) ,

h ( xec (σ ), ye (σ ), we (σ )) = E (σ ) σ ∈S (6.14)
∂y

The most direct way to satisfy these equations is to consider the following
controller:
x& c = F (σ )[ x c − x c (σ )] + G (σ )[ y − ye (σ )] ,
u = H (σ )[ x c − x c (σ )] + E (σ )[ y − ye (σ )] + ue (σ ) . (6.15)

A real implementation of Equation (6.15) is simply achieved by replacing


σ = g ( y (t ), w(t )) . Thus we obtain the gain scheduled controller:

x& c = F ( g ( y , w))[ x c − x c ( g ( y , w))] + G ( g ( y , w))[ y − ye ( g ( y , w))] , (6.16)


u = H ( g ( y , w))[ x c − x c ( g ( y , w))] + E ( g ( y , w))[ y − ye ( g ( y, w))] + ue ( g ( y , w)) .

35
Chapter 7

Case study

7.1 – Presentation

A multivariable, non-linear model of a plant has been studied. A proposed control


scheme, based on fuzzy gain scheduling is presented. Let’s consider Figure 7.1. The
overall control system is supposed to work as follow.
From the system model different linearizations have been calculated, in
correspondence to a certain number of points. These points are, hence, work points.
We need to specify that we use the term “work point” to indicate a point on which
the linearization is computed, while with “set point” we refer to the operating
conditions of the system.
The choice of work points has been led by the non-linearities of the process. This
means that characteristics at steady state and relationships between input and output
have been evaluated from a generic linear approximation of the model. Since the
linearizations are supposed to approximate the non-linear behavior, where strong non-
linearities have been found the layout of work point has been chosen to be thicker.
Therefore every work point has a range of “validity” in which the difference
between the real characteristic and its approximation is small, with respect to the
involved values. The bigger is the number of these intervals (i.e. more work points are
chosen), the more the approximations match the real model.
The number of linear pieces cannot be expanded indefinitely as one could think to
do in order to gain an even better approximation, in fact a problem arises in the
conjunction between intervals, as it is explained below.
For those ranges of linearity control parameters have been calculated using a tuning
algorithm. In the roughest way to mean gain scheduling technique, we can state that: as
long as the set point stays within a certain range, control parameters are kept the same.
When a set-point change is detected, the scheduler switches from one work point to
another, in the way that the new set point belongs to the range of the new work point.
These “switching action” are strongly non linear and they are sources of troubles.
In fact two events occur simultaneously: one is the change in the set point, and the
other is the subsequent change of the “linear” control parameters, due to the fact that
the new set point resides in the range of another work point.

36
Kp
Ki
Fuzzy Scheduler

ε
In1 Fuzzy Tuner
δ Out1
1 1

2 2

In2
PI Controller Process Out2

Figure 7.1: General control scheme overview.

These control parameters are optimized for the work point, which reasonably
corresponds to the middle point of each interval. Thus, when the set point moves from
one range to a neighborhood range, the system is in the worst operating condition (that
is the distance between the work point and the real set point is the largest, relatively to
the interval length).
Another consideration that one should keep on mind, is that the process we are
handling is not linear. Therefore better or, more realistically, even worse occurrences
can take place, depending strictly on the local non-linearity in the process.
Fuzzy logic is used in the scheduler to deal with these non-linearities. The idea is
that best control parameters cannot be obviously the same for the whole interval in
which they are defined. Moreover the conjunctions between intervals might need some
specific evaluations. In fact, the error of the linearization, i.e. the difference between it
and the real value can be relatively high.
Nevertheless note that the different derivatives that two linearizations have in the
border point between two intervals do not affect the possible hitch that can be found in
that point. In fact the parameters concern only the work points. Therefore the fuzzy
scheduler works modifying in a fuzzy way parameters between intervals, so that the
ability of fuzzy logic to fit non-linear functions is widely involved.
Thus, when the input signal changes, that is a new set point is defined, the fuzzy
scheduler receives a new input. This input is then processed in the fuzzy system so that
the output is proposed.
The controller chosen is a multivariable PI controller. Its control parameters are the
two gain matrices, K p and K i .
As those matrices are defined (Pettinen-Koivo method), parameters for fine-tuning
have to be calculated. Experimentally it can be seen that usually a stronger control
action is achieved by choosing high values of fine-tuning parameters, while small
values trigger weaker actions.

37
In fact, the gain scheduling, even being fuzzy, needs an additional tuning, because
of the linearization, whose implications we already pointed out. Furthermore, the
presence of two different interfering channels makes the control even harder. In the
proposed solutions those fine-tuning parameters have been made variable with the set
points through a fuzzy system. They are supposed to take care of the real fine-tuning of
the system. They have been chosen to be equal, because it was figured out that
different values could engender oscillations and instability.
A fuzzy system has been developed for optimizing the choice of their values
depending on the requested control actions.
The whole development of the control system is based on linearization of the
involved process. Therefore a mathematical model of the process is not actually
demanded. The data source can be only experimental information, and from them a
linear model can be developed. This feature is remarkable because it shows the way to
use multivariable fuzzy gain scheduling techniques in industrial applications.

7.2 – The process

The considered process is governed by the following equations system:

 x&1 (t ) = x2 (t ) − u1 (t )
 x& (t ) = [4.75 − 4.5 x (t )]u (t ) − 0.7[ x (t ) − u (t )] − 0.25 x (t )
 2 1 2 2 1 1
 (7.1)
 1y (t ) = x1 (t )
 y2 (t ) = x2 (t )

where ui (t ) are inputs, yi (t ) are outputs and xi (t ) are state variables. A feasible
block-type representation is shown in Figure 7.2.
The generic linearization, is:

 x&1   0 1   x1   −1 0   u1 
 x&  =  −4.5u − 0.25 −0.7   x  + 0.7 4.75 − 4.5 x  u 
 2  20  2  10   2 

 y1  1 0  x1 
 y  = 0 1   x  (7.2)
 2   2

xi 0 and ui 0 are points in which the linearization is computed.


At steady state, i.e. x&1 = x&2 = 0 , it comes out that:

 x2 = u1

 4.75 − 4.5 x10 (7.3)
 x1 = 4.5u − 0.25 u2
 20

38
4.5

4.75-4.5x1 1 x1
s
4.75

.25
Input 1 x1’ Output 1

.7(x2-u1)
Input 2 .7 .25x1 Output 2
1
x2
s
(4.75-4.5x1)u2 I

Figure 7.2: Studied process, represented in Matlab.

The linearization of x1 = f (u2 ) has been achieved through five linear pieces, as it is
shown in Figure 7.3.

1.4

1.2

0.8
x1
0.6

0.4

0.2

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
u2
Figure 7.3: Proposed linarization for x1 = f (u2 )

Not all elements of gain matrices are varying with the work points, but this is
strictly related to the process. In Table 7.1 are represented the values assumed by gain
matrices elements in different intervals of linearity.

39
Zone 1 Zone 2 Zone 3 Zone 5 Zone 5

k11p 1 1 1 1 1
k12p 0.2662 0.3965 0.6691 1.2471 2.429
k21p 0.1996 0.3418 0.5711 0.9922 1.9582
k22p 0.28513 0.4883 0.8159 1.4174 2.7975
k11i 0 0 0 0 0
k i
12
1 1 1 1 1
k i
21
0.10015 0.2869 0.8208 2.4368 9.7758
k i
22
0.0651 0.1224 0.4155 1.3409 5.0175

Table 7.1: Values of gain matrices elements for each interval (“Zone”) of linearity

7.3 – The fuzzy gain scheduler

The gain scheduler detects the input signal, i.e. the set point, and it produces, as
output, the values for elements of gain matrices of the PI multivariable controller.
Therefore it has, as input signals, the set points of the system. As output, it has the
mentioned matrices K p and K i . A representative scheme is shown in Figure 7.4.

kp11
kp12
Set 1 In1 Out1 kp21
Point 1 kp22
DeNormalization 1
Set 1
In1 Out1 ki11
Point 2
ki12
Fuzzy Logic
DeNormalization 2 ki21
Gain Scheduler
Mux Demux ki22

Figure 7.4: Fuzzy gain scheduler

The wires between logical boxes are vector-cables.


In that figure there are normalization blocks. This is due to a design choice. In fact,
for each matrix, the parameters are calculated in the same way. Thus the normalized
interval [0,1] has been chosen as the fuzzified universe of discourse. Then a de-
normalization step is required to obtain the real values. Consequently Equation (4.7)
has been applied to each parameter.

40
Thus: since control parameters come from a linear model, which is the generic
approximation of the system, and since the tuning equations are linear, it follows that
the relationships between set point and parameters are linear.
Therefore normalizations blocks contain the implementation of Equation (4.7), with
[0,1] being the normalized interval, and with maximum and minimum of output values
corresponding to the equivalent values taken into consideration in the set point.
Note that a fuzzy system is non-linear, but it doesn’t affect the linear mapping from
an interval to another one.
Membership functions of the scheduler are shown in Figure 7.5. The rule base is
simply a correspondence between intervals (fuzzy sets) and control parameters.

m f1 mf2 m f3 m f4 m f5
1
Degree of membership

0 .8

0 .6

0 .4

0 .2

0 0 .1 0 .2 0 .3 0 .4 0.5 0 .6 0 .7 0 .8 0 .9 1
Ys p
Figure 7.5: Membership function for input variable in the fuzzy scheduler

7.4 – The fuzzy fine-tuning

The control parameters turned out by the scheduler are supposed to present their
best effects during set point changes, like steps signals. The choice of the parameters
comes from the Pettinen-Koivo algorithm. For this algorithm the more the frequency
of the signals is high, the more one could expect good performances. Therefore during
input step signals the fuzzy scheduler is expected to work properly. However, due to
approximations from the non-linear model, the parameters cannot achieve optimal
results. The scheduler, as it has been concerned in this work, takes as inputs only the
set points. Therefore the presence of a fine-tuning system is compulsory.
The fine-tuning parameters δ and ε are the choice as output of the fuzzy tuner. As
inputs, set points and measured errors are considered.

41
1

1 1
e1 Discrete Filter
Ysp1
2
1-z -1 de1
Y1 1

Discrete Filter
1

1 d,e
1 Fuzzy Logic
3 Tuner
e2 Discrete Filter
Ysp2
4 de2
1-z -1
Y2 1

Discrete

Figure 7.6: Fuzzy tuner

A rule base has been developed and successfully applied to the systems.
Experimentally it was discovered that δ and ε performed better if taken of the same
value. Thus a common rule base had to be studied. Difficulties in choosing rule-base
were related mostly to the fact that contrasting actions can be needed sometimes. This
means, for instance, that the tuner could have to manage opposite control situations. A
problem, in this case, arises in selecting which action the controller should prefer.
If the knowledge on the system is not enough deep, there is no way to be sure that
the action the controller is acting will be, in the best case, the right one. The risk is to
generate, with a strong and incorrect action, oscillations and possibly the failure of the
control.
An alternative is what we might call a “do nothing” procedure. The idea starts from
the hardest case, which is when the two channels need opposite kinds of action. The
central consideration is that the system is already going, or at least we presume it, to a
stable situation, due to the scheduling. “Do nothing” means: “wait, and see how the
overall system behave”. In fact the tuning algorithm, by itself is supposed to be
enough.
When something changes (i.e. the derivative of one error is going to zero or, even
better, it changes sign, that is the correspondent error is decreasing), and the worst
situation is running out, the controller may start “doing something” that is: changing
the parameters.
When the two channels still require different actions, but one of them needs a softer
action, it has been chosen the control action to prefer more the demand of the channel
that needs more control.

42
When measured errors are going in the same “direction”, that is they have similar
relative bigness, and derivative, obviously there is no doubt in choosing the control
action, because there is not ambiguity.
Therefore let’s summarize the inspiring guidelines for the tuner:
If the errors need strongly opposite control actions, then “do nothing”;
If the errors need opposite actions but not heavily, then perform a soft action that is
a mid point between the requests;
If the errors are coherent, then perform the action, as it is demanded.
Note that even for coherent control actions there could be a problem with the
requested power. We apply the same rule as for “weak” contradictories actions, That
is: evaluate a medium action, softly moderated, to avoid instability warning.
For the fuzzy system, as we already mentioned, inputs are errors and their changes.
The output is a normalized gain. After the normalization it represents the values of δ
and ε .
The fuzzy rule-base has been practically developed as follow: firstly the need of
every channel has been fuzzified individually. Then the two rule-tables have been
combined following the principles shown above, obtaining one 7 × 7 table. Therefore
39 rules have been imposed.

BB=”big-big” SB=”small-big”
Abbreviations: BM=”big-medium” SM=”small-medium”
BS=”big-small” SS=”small-small”
U=”unitary” DC=”Do nothing”

∆e(t )
Positive Zero (Z) Negative
e(t ) (P) (N)

Positive (P) BB BM BS

Zero (Z) U U U

Negative SB SM SS
(N)

Table 7.1: Rule base of each single variable

43
SS SM SB U BS BM BB

SS SS SM SM SM SM SB DC

SM SM SM SB SB SB DC BS

SB SM SB SB DC DC BS BM

U SM SB DC DC DC BS BM

BS SM SB DC DC BS BS BM

BM SB DC BS BS BS BM BM

BB DC BS BM BM BM BM BB

Table 7.2: Combination of two rule-bases in one table.

SS SM SB U BS BM BB

0 1
Figure 7.7: Correspondences between linguistic set and numerical values.

1
z e ro
n e g a tiv e p o s itiv e
0 .8
Degree of membership

0 .6

0 .4

0 .2

-1 -0 .8 -0 .6 -0 .4 -0 .2 0 0 .2 0 .4 0 .6 0 .8 1
e rro r 1

Figure 7.8: Membership function for e1 (t ) in the fuzzy tuner

44
1 zero
negative positive
Degree of membership
0.8

0.6

0.4

0.2

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1


derr1
Figure 7.9: Membership function for ∆e1 (t ) in the fuzzy tuner

1 zero
negative positive
0.8
Degree of membership

0.6

0.4

0.2

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1


err2
Figure 7.10: Membership function for e2 (t ) in the fuzzy tuner

1 zero
negative positive
0.8
Degree of membership

0.6

0.4

0.2

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1


derr2
Figure 7.11: Membership function for ∆e2 (t ) in the fuzzy tuner

45
7.5 – Trial and error: manual adjustments

During simulation good performances haven’t been reached immediately. We


would certainly have been disappointed if the contrary happened.
Fuzzy systems parameters needed a not negligible adjustments phase. For the fine-
tuner our main attention was pointed on the fuzzy sets that characterize the values of
errors, changes in errors and on the normalization of the output fine parameters, as in
an ordinary procedure.
Nevertheless, additionally manual settings have been done: each element of the
matrices K p and K i have been inspected and varied to find out their influence on the
closed loop system. This means that, given the closed loop system SCL , the following
dependence has been investigated:

SCL = SCL (kijx ) (7.4)

where kijx (with x = p, i ) denotes the generic element of matrices K p and K i .


For this purpose, a sensitivity function:


SCL (7.5)
∂kijx

can be considered. This task is strictly related to the particular process under control
and no general rules are applicable. Therefore analytical evaluations could be given for
example in terms of step response, i.e. rise time, overshoot, settle time etc.
Obviously, the fact that the process is multivariable and non linear is an enormous
obstacle in performing such kinds of analysis, because the influence of an element can
be extreme in some operating points and negligible in others. Therefore the uncertainty
in obtaining useful results doesn’t justify an analytical investigation. For that reason
trial and error is still the most reasonable procedure.
What might be found out in this way is that the overall system performs better if
some elements of gain matrices K p and K i are multiplied by constant values, which
can be greater or smaller than the unit.
With regard to the gain scheduler, what is mainly important is that the linearization
is enough detailed, that is: the maximal error between process and its approximation is
small. If the fine-tuning doesn’t make available satisfactory results it is requested to
revisit the linearization. We would highlight that this task is anything but easy:
interferences between variables are often unpredictable.

46
7.6 – Simulation and results

In order to test the system performances, random sources has been put as inputs on
both of the variables. Those sources vary within the whole range of scheduling.
Moreover no limits have been put in the height of the steps. In that way they could
be very affecting the system, so that the system had to work in all possible and hard
operating conditions.
It’s worth to put our attention on Figure 7.13. Sometimes the output seems to have a
spikes type of behavior. As it is possible to see comparing Figures 7.13 and 7.14, those
spikes take place when a big change, that is what sort of “long” step, in the value of the
other variable, occurs. Thus they are only consequences related to the non-linearity of
the process. In fact in these singletons the rise time (or the slope time, if the singleton
points downwards) is just about zero, while the slope time (rise time in the second
case) is greater and it corresponds to the system reaction.
In order to have a comparison for the present results with other controllers we
developed a fuzzy gain scheduler based on a simpler and less accurate linearization. In
this case, in fact, only three linear pieces have been used. Thus the fuzzy scheduler has
three work points to manage. Performances decrease, due to the fact that the control
parameters are less accurate. Figures 7.15 and 7.16 show the same input sequences
applied to the simplified scheduled system.
Another comparison has been made excluding the fuzzy fine tuner from the control
system. The results, as it is viewable in Figures 7.17 and 7.18, are very clear: the fine
tuning parameters are fundamental in achieving reasonable performances. Without any
fine-tuning the step response keeps oscillations for a longer time, and those oscillations
are much more wide than in the proposed solution.

0.9

0.8

0.7

0.6

x10.5

0.4

0.3

0.2

0.1

0
0 0.2 0.4 0.6 0.8 1
u2
Figure 7.12: Less accurate linearization

47
1.2

0.8

0.6
y1
0.4

0.2

-0.2
0 50 100 150 200
time
Figure 7.13: Random step signal response for input y1 (t )

1.2

0.8

y2 0.6

0.4

0.2

0
0 50 100 150 200
time
Figure 7.14: Random step signal response for input y2 (t )

48
1.2

0.8

0.6
y1
0.4

0.2

-0.2
0 50 100 150 200
time
Figure 7.15: Output y1 (t ) : the same input sequence applied to a simplified fuzzy gain scheduling
scheme.

1.2

0.8

y2 0.6

0.4

0.2

0
0 50 100 150 200
time
Figure 7.16: Output y2 (t ) : the same input sequence applied to a simplified fuzzy gain scheduling
scheme.

49
1.4

1.2

0.8

y1 0.6

0.4

0.2

-0.2
0 50 100 150 200
time
Figure 7.17: Performances obtained excluding the fuzzy fine-tuner ( y1 (t ) )

1.2

0.8

y2 0.6

0.4

0.2

0
0 50 100 150 200
time
Figure 7.18: Performances obtained excluding the fuzzy fine-tuner ( y2 (t ) )

50
Chapter 8

Conclusions

An innovative fuzzy gain scheduler has been designed for a multivariable 2 × 2


non-linear system. In order to control a non-linear multivariable process, a
conventional scalar controller is not sufficient because it doesn’t know interactions in
the process.
Interferences between the two variables have to be taken into consideration,
therefore an advanced control strategy is required, and the scheduler needs a tuning
algorithm. In the proposed solution, a rough tuning is built off-line in scheduler, and a
fine-tuning is performed by another fuzzy system. The combination of those fuzzy
systems allows the overall system to work properly.
Experience and intuition of the designer are strongly involved for at least two
reasons: the former is that fuzzy logic essence recalls the human know-how; the latter
is that this branch of control theory is being developed in these years, and systematic
procedures don’t exist yet. Future works in this field are, nowadays, limited only by
the brainpower of designers.
The final target of those systems is an implementation in industrial processes. In
fact, the use of linearized model of the original process for building the controller, suits
sublimely with the lack of rigorous industrial process models, especially when those
industrial processes are strongly non-linear. Super visioning the control systems
therefore usually guarantees stability and performances. Fuzzy logic helps in this task
because it gives an intuitive interface between human operators and the controllers.
This means also that possibilities for future works, besides improving gain scheduling
techniques, can be oriented in investigating thoroughly stability analysis.
The results, as it has been found out in this work, are encouraging.

51
Bibliografy

[1] P. Apkarian, R. Adams. Advanced gain scheduling techniques for uncertain


systems. IEEE Transactions on Control System Technology, 6(1), pp. 21-32, 1998.
[2] J. G. Balachen. The stability of 2X2 multivariable control systems. IEEE
Transactions on Modeling, Identification and Control, Vol. 11, No. 2, pp. 97-108,
1990.
[3] G. Balas, I. Fialho , L. Lee, V. Nalbantoglu, A. Packard, W. Tan, E. Wemhoff,
G. Wolodkin, F. Wu. Theory and application of linear parameter varying control
techniques. Workshop notes: American Control Conference, June 1997.
[4] P. J. Campo, M. Morari, C. N. Nett. Multivariable Anti-Windup and Bumpless
Transfer - A General Theory. Proceedings of 1989 American Control Conference,
Pittsburgh, PA.
[5] P. Carbonell, G. Garcerà, A. Hilario. Fuzzy Gain Scheduling Control of Swicht-
Mode AC/DC Converters. IEEE Transactions on Power System., ISIE’99 Conference,
Bled, Slovenia.
[6] C. Chien Lee. Fuzzy Logic in Control System: Fuzzy Logic Controller – Part 1.
IEEE Transactions on System, Man, and Cybernetics. Vol. 20, No 2, March/April
1990.
[7] S. Chiu. Using fuzzy logic in control applications: beyond fuzzy PID control.
Application Notes, IEEE Transactions on Control Systems. October 1998.
[8] D. Driankov, R. Palm, U. Rehfuess. A Takagi-Sugeno fuzzy gain scheduler.
IEEE 0-7803-3645, March 1996.
[9] F. Fujitec. FLEX-8800 Series Elevator Group Control System. Fujitec Co., Ltd.,
Osaka, Japan, 1988.
[10] Garg, S. A Simplified Scheme for Scheduling Multivariable Controllers. IEEE
Control Systems Magazine, August 1997, pp. 24-30.
[11] P. G. Gonsalves, G. L. Zacharias. Fuzzy logic gain scheduling for flight
control. IEEE, 0-7803-1896, October 1994.
[12] A. Helmersson. Methods for Robust Gain Scheduling. PhD Thesis, Linköping
University, 1995.
[13] R. Jager. Fuzzy Logic in Control.
[14] J. S. R. Jang, N. Gulley. Gain scheduling based fuzzy controller design. IEEE
Transactions, 0-7803-2125, pp. 101-105, January 1994.
[15] K. H. Johansson, B. James, G. F. Bryant, K. J. Åström. Multivariable
controller tuning. Proceedings of the American Control Conference. Philadelphia,
Pennsylvania, June 1998.
[16] Kapasouris, P., Athans, M., and Spang, H.A. Gain-Scheduled Multivariable
Control for the GE-21 Turbofan Engine Using the LQG/LTR Methodology.
Proceedings of the 1985 American Control Conference, Boston, MA., pp. 109-118.

52
[17] H. N. Koivo. Soft computing: unified approach to fuzzy logic and neural
networks. Helsinki, 1997.
[18] F. Leung. A simple gain scheduled PID controller with stability consideration
based on a grid- point concept. ISIE’97, Guimaraes, Portugal. IEEE Catalag Number:
97TH8280. 1997.
[19] H. X. Li, H. B. Gatland, and A. W. Green. Fuzzy variable structure control.
IEEE Transactions on System, Man and Cybernetics-Part B: Cybernetics, vol. 27, No 2
April 1997.
[20] J. Lieslehto. An Expert System for Multivariable Controller Design.
Doctorate’s Thesis, Tampere University of Technology, publication No. 116, Tampere,
1993.
[21] U. M. Maciejowski. Multivariable feedback design.
[22] The Mathlab Works Inc. Simulink.
[23] D. Mc Lean. Automatic Flight Control System.
[24] H. T. Ngdyen, M. Sugeno, R. Tong, R. R. Yager. Theoretical aspects of fuzzy
control.
[25] A. Nissinen, H. N. Koivo, T. Huhtelin. Multivariable PI control of industrial
paper machine headboxes. IFAC, 13th Triennal World Congress, San Francisco, USA,
1996.
[26] A. Ollero, J. Aracil, F. Gordillo. Stability analysis of MIMO fuzzy control
system in the frequency domain. IEEE Transactions on Control System, October 1998.
[27] W. Pedrycz. Fuzzy Control and Fuzzy System. Research Studies Press,
England, 1993.
[28] W. Pedrycz, J. F. Peters. Hierarchical fuzzy controllers: fuzzy gain scheduling.
IEEE, 0-7803-4053, January 1997.
[29] A. Peltomaa, H. N. Koivo. Tuning of Multivariable Discrete Time PI controller
for Unknown Systems. International Journal of Control, No.38, pp.735-745, 1983.
[30] J. Pettinen. H. N. Koivo. Multivariable Tuning Regulators for Unknown
Sysetms. Automatica, No. 16, pp. 393-398, 1980.
[31] C. Phillips, R. D. Harbor. Feedback control Systems.
[32] W. J. Rough, J. S. Shamma. Research on Gain Scheduling. Automatica 36, pp
1401-1425, 2000.
[33] M. Santos, J. M. de la Cruz, S. Dormido, A. P. De Madrid. Between fuzzy-PID
and PID-conventional controllers: a good choice. Fuzzy Information Processing
Society, 1996. NAFIPS. 1996. Biennial Conference of the North American , 1996 , pp:
123-127.
[34] S. Sastry, M. Bodson. Adaptive Control.
[35] F. G. Shinskey. Process control systems.
[36] J. Talaq, F. Al-Basri. Adaptive Fuzzy Gain Scheduling for Load Frequency
Control. IEEE Transactions on Power Systems, Vol.14, No.1, February 1999.
[37] A. M. Trooper. Linear Algebra.
[38] R. J. Vaccaro. Digital control.
[39] P.Viljiamaa, H. N. Koivo. Fuzzy logic in PID gain scheduling. Third
European Congress on Fuzzy and Intelligent Technologies EUFIT’95. Aachen,
Germany, August 28-31, ELITE-foundation, Vol. 2, pp. 927-931, 1995.
[40] P.Viljiamaa, H. N. Koivo. Tuning of multivariable fuzzy logic controller.
Intelligent Automation and Soft Computing, Vol. 1, No. 1, pp. 15-28, 1995.

53
[41] P.Viljiamaa, H. N. Koivo. Tuning of multivariable PI-like fuzzy logic
controller. Proceedings of the 3rd IEEE International Conference on Fuzzy System
FUZZ-IEEE’94. Orlando, FL, USA, June 26- July 2, IEEE Vol. 1, pp. 388-393.
[42] P. Viljamaa, H. Peltonen, H. N. Koivo. Target Value Computing in Paper
Machine Grade Changes by Fuzzy System. The 9th IEEE International Conference on
Fuzzy System FUZZ-IEEE 2000. San Antonio, Tx, USA, May 7-10, IEEE, Vol. 1, pp
105-109.
[43] B. Wu, X. Yu. Evolutionary design of fuzzy gain scheduling controllers. IEEE
Transactions on Control System, pp. 2139- 2144. September 1999.
[44] R. R. Yager, D. P. Filev. Essentials of Fuzzy Modelling and Control.
[45] O. Yagishita, O. Itih, M. Sugeno. Application of Fuzzy Reasoning to the Water
Purification Process. Industrial Application of Fuzzy Control, M. Sugeno Ed.
Amsterdam: North-Holland, 1985, pp.19-40.
[46] J. Yen, R. Langari. Fuzzy Logic.
[47] Zadeh. Fuzzy set.
[48] Z. Zhao, M. Tomizuka, S. Isaka. Fuzzy gain scheduling of PID controllers.
IEEE Transactions on System, Man and Cybernetics. Vol 23, No. 5,
September/October 1993.
[49] K. Åström, T. Hägglund. PID controllers: theory, design and tuning.
[50] K. Åström, B. Wittenmark. Computer controlled System.

54
HELSINKI UNIVERSITY OF TECHNOLOGY CONTROL ENGINEERING LABORATORY

Editor: H. Koivo

Report 108 Ojala, P.,


Design and Control of the Piezo Actuated Micro Manipulator. December 1997.

Report 109 Niemi, A. J., Berndtson, J., Karine, S.,


Automatic Control of Paper Machine by Dry Line Measurement. December 1997.

Report 110 Ylén, J-P, Nissinen, A. S.,


Sumean logiikan sovelluksen kehistysprosessi ja sen soveltaminen fuzzyTECH-ohjelmiston evaluointiin.
December 1997.

Report 111 Hyötyniemi, H.,


Mental Imagery: Unified Framework for Associative Representations. August 1998.

Report 112 Hyötyniemi, H., Koivo, H. (eds.),


Multivariate Statistical Methods in Systems Engineering. December 1998.

Report 113 Robyr, S.,


FEM Modelling of a Bellows and a Bellows-Based Micromanipulator. February 1999.

Report 114 Hasu, V.,


Design of Experiments in Analysis of Flotation Froth Appearance. April 1999.

Report 115 Nissinen, A. S., Hyötyniemi, H.,


Analysis Of Evolutionary Self-Organizing Map. September 1999.

Report 116 Hätönen, J.,


Image Analysis in Mineral Flotation. September 1999.

Report 117 Hyötyniemi, H.,


GGHA Toolbox for Matlab. November 1999.

Report 118 Nissinen, A. S.


Neural and Evolutionary Computing in Modeling of Complex Systems. November 1999.

Report 119 Gadoura, I. A.


Design of Intelligent Controllers for Switching-Mode Power Supplies. November 1999.

Report 120 Ylöstalo, T., Salonen, K., Siika-aho, M., Suni, S., Hyötyniemi, H., Rauhala, H., Koivo, H.
Paperikoneen kiertovesien konsentroitumisen vaikutus mikrobien kasvuun. September 2000.

Report 121 Cavazzutti, M.


Fuzzy Gain Scheduling of Multivariable Processes. September 2000.

ISBN 951-22-5281-3
ISSN 0356-0872

Vous aimerez peut-être aussi