Вы находитесь на странице: 1из 565

PREFACE

This book is devoted to the study of Fuzzy Reasoning as applied to decision making and
control processes. It contains a collection of important contributions covering a wide weU-
selected range of topics within the field. The first pioneering work on fuzzy sets and fuzzy
logic was published in 1965 by Zadeh. This work, which has broken down the classical two-
valued logic, was not very much appreciated until Zadeh has published his subsequent
papers in 1971, 1972 and 1974. These works are now considered as the foundation of fuzzy
reasoning and have inspired numerous researchers to work in the field. The first noticeable
practical application of fuzzy logic was done at Queen Mary College of London by
Mamdani. This work concerns the control of a pilot scale steam engine, and has shown for
the first time that fuzzy logic offers the right tool for the construction of a linguistic model
of a given process on the basis of the operators' experience. From that point on, fuzzy logic
theory has found a tremendous attention with a plythora of theoretical and practical
accomplishments.
Today one can distinguish five main areas of research on fuzzy reasoning, namely:
analysis of relational systems (Ostergaad, Rutherford, Perdrycz), fuzzy optimization /
decision making (Gupta, Willaeys), design of fuzzy controllers (Kickert, Mamdani), and
mixed fuzzy logic - neural network techniques (Kosko, Keller, Yager). Most of the current
work on fuzzy sets and applications is currently conducted in Europe and Asia (China,
India, Japan).
TTie present book contains twenty one chapters, written by thirty four distinguished
contributors and divided in the following five parts:
Part 1: General Issues
Part 2: Neuro-Fuzzy Systems
Part 3: Fuzzy Controllers
Part 4: Fuzzy Reasoning and Estimation
Part 5: Applications

Part 1 involves four chapters providing background material together with useful
techniques for the validation of fuzzy knowledge bases and the software representation of
fuzzy sets and fuzzy logic. Part 2 presents an overview of neuro-fuzzy expert systems along
with an important case study, and a neural network model which is suitable for fuzzy
reasoning. Part 3 presents the state of art of fuzzy controllers, including design and
implementation aspects. This part starts with a chapter on the demystification of fuzzy
control and includes critical evaluations of fuzzy controllers, along with new types of fuzzy
controllers such as the sliding mode fuzzy controller. Part 4 involves a chapter on fuzzy
parameter and state estimation, which is of fundamental importance in a variety of
applications, a chapter on fuzzy reasoning as used in rule-based systems, and a chapter on
computing the multivariable shape of an n-D pattern class. Finally, Part 5 presents six
important applications dealing with industrial robotic systems, mechanical systems,
manipulators with artificial rubber muscles, Petri nets, biomedical engineering, and
nondestructive fruit collection.
Although the literature on fuzzy sets and fuzzy logic theory and applications is now
very rich, the editors feel that the present book provides an important addition, since it
presents new angles of attack and includes many new topics and results not available in
other books. Each chapter is self-contained and in many cases involves fresh results and
how-to-do issues. The book would not have been possible without the enthusiastic support
of the contributors. The editors are indebted to all of them for their up-to-date
contributions, and to Kluwer's (Dordrecht) editorial staff members for their care
throughout the editorial and printing process. The editors also express their gratitude to
the Natural Sciences and Engineering Research Council of Canada for support through an
international scientific exchange award which made possible the preparation of their own
contributions.
The book is suitable for the researcher and practitioner, as well as for the teacher
and student in related Master and Doctoral courses.

Spyros Tzafestas
Anastasios Venetsanopoulos
CONTRIBUTORS

BARTOLINl G. Univ. of Genova, Geneva, Italy


BINAGHI E. IFCTR-CNR, Milano, Italy
BRUIJN P. Delft Univ. of Technology, Delft, The Netherlands
CHEN S.-M. Natl. Chiao Tung Univ., Taiwan
DE MEYER M. Univ. of Louvain, Louvain-la-Neuve, Belgium
DUBOIS D. IRIT, Univ. Paul Sabatier, Toulouse, France
FERRARA A. Univ. of Genova, Genova, Italy
GILLK. Univ. of Leeds, Leeds, England
GOREZ R. Univ. of Louvain, Louvain-la-Neuve, Belgium
HATZIVASSILIOU F. Natl. Tech. Univ. of Athens, Athens, Greece
HENDERSON M. Univ. of Leeds, Leeds, England
HIROTA K. Hosei Univ., Tokyo, Japan
JAGER S. Delft Univ. of Technology, Delft, The Netherlands
JIN S. Saga Univ., Saga, Japan
KALTSOUNIS S. Natl. Tech. Univ. of Athens, Athens, Greece
KAWAMURA H. Kobe Univ., Nada, Kobe, Japan
KUNG C.-C. Tatung Inst, of Technology, Taipei, Taiwan
LIN S.-C. Tatung Inst, of Technology, Taipei, Taiwan
LOONEY C. Univ. of Nevada, Reno, USA.
MANDAL D. Indian Statist. Inst., Calcutta, India
MITRA S. Indian Statist. Inst., Calcutta, India
MURTHY C.A. Indian Statist. Inst., Calcutta, India
PALS. Indian Statist. Inst., Calcutta, India
PEDRYCZW. Univ. of Manitoba, Manitoba, Canada
PRADE H. IRIT, Univ. Paul Sabatier, Toulouse, France
RAYK. Indian Statist. Inst., Calcutta, India
STAMOU G. Natl. Tech. Univ. of Athens, Athens, Greece
TANI A. Kobe Univ., Nada, Kobe, Japan
TERZAKIS S. Nad. Tech. Univ. of Athens, Athens, Greece
TZAFESTAS S. Natl. Tech. Univ. of Athens, Athens, Greece
VENETSANOPOULOS A. Univ. of Toronto, Toronto, Canada
VERBRUGGEN H. Delft Univ. of Technology, Delft, The Netherlands
YAMAMOTO S. Matsushita Electric Ind. Co., Osaka, Japan
WATANABE K. Saga Univ., Saga, Japan
This page intentionally blank
PART 1

GENERAL ISSUES
CHAPTER 1

FUZZY SETS AND FUZZY REASONING:


AN INTRODUCTION

S.G. Tzafestas(*), A. N. Venetsanopoulos^**) and S. T e r z a k i s O

(*) Intelligent Robotics and Control Unit


National Technical University of Athens
Zografou Campus, Zografou 15773, Athens, Greece
(**) Department of Electrical Engineering
University of Toronto, Toronto, Ontario, Canada M1551A4
1. I N T R O D U C T I O N

Fuzzy set theory was initiated by Zadeh in 1965 [1] and permits the treatment of vague,
uncertain, imprecise and ill defined knowledge and concepts in an exact mathematical way.
Throughout the years this theory was fully studied and used for the analysis, modelling and
control of technological and nontechnological systems [2-21]. Actually, our life and world
obey the principle of compatibility of Zadeh, according to which "the closer one looks at
a 'real' world problem, the fuzzier becomes its solution". Stated informally, the essence of
this principle is that, as the complexity of a system increases, our ability to make precise
and yet significant statements about its behaviour diminishes until a threshold beyond
which precision and significance (relevance) become almost exclusive characteristics.
Fuzzy controUers and fuzzy reasoning have found particular applications in
industrial systems which are very complex and cannot be modelled precisely even under
various assumptions and approximations. The control of such systems by experienced
human operators was proved to be in many cases more successful and efficient than by
classical automatic controllers. The human controllers employ experiential rules which can
cast into the fuzzy logic framework. These observations inspired many investigators to work
in this area with result being the development of the so called fuzzy logic and fuzzy rule-
based control [3, 8, 9, 14, 18, 20].
The purpose of this chapter is to provide a short account of fuzzy set and fuzzy
reasoning theory in order to help the unfamiliar reader to study and understand easier the
rest of the book. The reader who is familiar with the fuzzy sets can probably find here a
ready-to-use material for his(her) applications. Section 2 presents the basic concepts and
definitions of fuzzy sets. Section 3 reviews the three fundamental fuzzy logic operations of
Zadeh and section 4 provides a set of other fuzzy operations and relations. Section 5
presents a generalization of the three fundamental operations, and section 6 introduces the
concept of hypercube as used in fuzzy theory. Section 7 presents the representation
theorem, discusses the fuzzy functions (domain of definition and domain of values) and
states the fuzzy extension principle that helps in the fuzzification of mathematical concepts
and laws. Section 8 provides a brief discussion of categories and lattices in the framework
of fuzzy sets, and section 9 examines the theory of fuzzy reasoning (linguistic variables,
3

S.G. Tzafestas andA,N. Venelsanopoulos (eds.)


Fuzzy Reasoning in Information, Decision and Control Systems, 3—29.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
linguistic modifiers, generalized modus ponens rule, max-min composition rule, and
estimation of the membership function). Finally, section 10 gives a quick look at fuzzy or
linguistic control.

2. F U Z Z Y SETS: BASIC CONCEPTS

The concept of "set" plays a fundamental role in mathematics. Actually one cannot define
in a rigorous unique way what is a set, what is number or what is a straight line [10]. These
concepts can be understood better not via definitions but via examples [11].
Let X be a classical set and x an element. Then one of the following holds (how
much this holds will be discussed soon): The element x belongs to X (symbolically xeX)
or X does not belong to X (xtX). This is the so called principle of dichotomy. By
disputing dichotomy, the classical (crisp) set theory breaks down and the fuzzy set theory
naturally emerges [12].

2.1. Definition of Fuzzy Sets


Let us start by the following paradoxes of logic.
i) Pythagoras' School (400 A.C.): Question: Does the Cretan philosopher tell the
truth when it asserts that "All Cretans lie" ? The classical reply is that this assertion
includes a contradiction. The fuzzy response is that the philosopher does and does
not tell the truth !!
ii) Russel's Paradox 1: Question: Does or doesn't exist the set of all sets that are not
members of themselves ? Classical reply: The assertion involves a contradiction.
Fuzzy reply: The set does and doesn't exist !!
iii) Russel's Paradox 2: The barber of a village gives a haircut only to those who do
not cut their hair off themselves. Question: Who cuts the barber's hair off?
Classical reply: The assertion involves a contradiction. Fuzzy reply: The barber
cuts and doesn't cut his hair off !!
The above paradoxes are due to the fact that the human word (reason) exceeds very
much the capabilities of the mathematical notation and formalism [13]. Thus in classical
set theory it is safer to describe a set by its elements, e.g. A = {1,2,3,4,5} than to describe
the set through a common property of its elements.
Let X= {Xj , Jf2 , Xj , x^ , Xj } be a classical (crisp) set which is called reference
super set (universe of discourse). Now let A = {Xj, Xj, Xj } be a crisp subset of X. The set
A can be equivalently described by A = {(xj,l), (xj.O), (x^A), (x^fi), (^5,1)}, i-e. as a set of
pairs (x,|U^(x)), where x is the element of interest and /U^(x) is the membership function
of X in the subset A, where

f 1 if xeA

The question now arises whether fi^{x) can take only the values 0 and 1 or any value
between 0 and 1. In other words, why ju^:A-»{0,l} and not ^^-•[0,1] ? This question was
firstly examined by L. Zadeh and is the starting point for the development of fuzzy sets [1].
Definition 2.1
Let X be the reference superset and A a subset of X. Then A is said to be a fuzzy subset
of X if and only if
A = {ix,fi^{x)) I xeX,Ai^U):X-[0.1]}

It is obvious that in the special case where we have {0,1} instead of [0,1] the fuzzy subset
A degenerates to the crisp subset A.
Pictorially a fuzzy set A has the representation of Fig.l.
fuzzy subset A

crisp subset A

Fig. 1. (a) Representation of crisp and fuzzy subset of X


(b) A possible shape of the membership function li^Cx).

If A is finite then it is also denoted by

^ = I^A(^)/^I + •• -^ M/iU„) An = Ei"=i /^A(^/)/^- and if it is not finite by

A = \uj^(x)/x where the symbols" + ", "Z", "J" denote union and the symbol"/" does

not denote division.

Definition 2.2
Let ^ be a fuzzy subset of the reference superset X. Then
(a) The crisp subset Supp(/1) of X is called support of A if and only if
Supp(-4) = { x e X : / i ^ ( x ) ^ 0 }
with Supp(/4)cX.
(b) The crisp subset L^ of X is called a-cut of A if and only if
L^A = {xeX : n^(x)ia}
with L ^ c X .

Definition 2.3
The fuzzy subset A of X is called
(i) convex if and only if (see Fig.2):

(ii) norma] if and only if there exists at least one element xeX for which n^(x) = \.

\if.W ,, fVW i

(a) (b)

Fig. 2. (a) convex fuzzy set


(b) nonconvex fuzzy set

Definition 2.4
Let A he a fuzzy subset of the reference superset X. Then
(i) The quantity | A | = Y,^gx I^Ai'') ^^ '^^^^^ ^^^ cardinality of A

(ii) The quantity |A|=|A|/|X1 is called the relative cardinality of A.

The cardinality measures in a certain way the "size" of a fuzzy set. Using the cardinality one
can compare fuzzy sets that have the same reference superset.

Example 2.1
(a) Let X=N and "A = integers near to 10". Then one possible A is the following:
A = {(7,0.1) , (8,0.5) , (9,0.8) , (10,1) , (11,0.8) , (12,0.5) , (13,0.1)}
= 0.1/7 + 0.5/8 + 0.8/9 + 1/10 + 0.8/11 + 0.5/12 + 0.1/13
and has the pictorial representation of Fig.3.
(b) Let X=R and "A = real positive numbers near 10". Then one possible A is
^2^-ll

and has the representation of fig.4.


^(x)

7 8 9 10 11 12 13 X

Fig. 3. Pictorial representation of the example's fuzzy set A.

liXx) i

Fig. 4. Pictorial representation of A

(c) For A in (a) we have


Supp(>i) = {7,8,9,10,11,12,13}
L(jA = {7,8,9,10,11,12,13}
^0 5^ = {8,9,10,11,12}
Lo8A = {9,10,ll}
L^A = {\Q}
For A in (b) we have
Supp(A) = R"'
Lo5/4 = {A-eR+ : l/[\ + {x-\Qif]i0.5}
(d) For A in (a) we have
|A I =0.1 + 0.5 + 0.8+1 + 0.8 + 0.5 + 0.1 =3.8
|X|=7
H i = 3.8/7
3. T H E T H R E E F U N D A M E N T A L OPERATIONS O F Z A D E H

The three fundamental operations of fuzzy sets are based on the use of the membership
function [1].

Definition 3.1
Consider the fuzzy subsets A and B of the reference superset X. Then the section and
union of A, B are defined as

Section: C = ADB = I.(X,IJQ(X)) | xeX , ^c(^) = '^^'^{V-Ai^) > ^^BC-*^)}}

Union: C = ADB = l(x,/j(--(x)) \ xeX , n^^x) = miix{\x^{x) , \ig{x)}\

and the complement A'^ oiA as A' = Ux,Hj^,{x)) \ xeX , A'^c(Jt) = l-\x^{x)\

Example 3.1.
Let X = {apartments with 1,2,..., 10 rooms},
A = {apartments suitable for 4-member families},
B= {apartments with large space}.
The sets A and B are fuzzy subsets of X. Suppose that
A = 0.2/1 + 0.5/2 + 0.8/3 +1/4 + 0.7/5 + 0.3/6 and
B=0.2/3 + 0.4/4 + 0.6/5 + 0 . 8 / 6 + l / 7 + l / 8 .
Then
C=Ar\B= {apartments suitable for 4-member families and with large space}
= 0.2/3 + 0.4/4 + 0.6/5 + 0.3/6
D = /\u_B= {apartments suitable for 4-member families or with large space}
= 0.2/1-1-0.5/2 + 0.8/3+1/4-1-0.7/5 + 0.8/6+1/7-1-1/8
A'^= {apartments not suitable for 4-member families}
= 0.8/1 + 0.5/2+0.2/3 + 0.3/5 + 0.7/6
B*-= {apartments with smaU area} = 1/1+1/2+0.8/3 + 0.6/4 + 0,4/5 + 0.2/6

Remark: The fundamental axioms of the Aristotelian logic do not hold in fuzzy logic, i.e.
in general AnA'^^0 and AuA'^^X . This can be easily seen from Fig.5.

4. G E N E R A L OPERATIONS OF F U Z Z Y SETS A N D F U Z Z Y RELATIONS

4.1. Fuzzy Operations


Here we define some important operations of fuzzy sets.

Definition 4.1.
Let A and B fuzzy subsets of X. Then we define the following:
(i) Algebraic sum A + B
A+B = [Cx,iJ^^g(x)) I xeX , I^^.BM = fxjx) + n^U) - n^(x)\ig{x)]
Fig. 5. Membership functions of A and A*^.

(ii) Algebraic product AB


AB= \(x,tij^gix)) I xsX , /i^g(x) = n^ix)-Hg{x) \
(iii) Bounded sum A«B
A®B = { (x,fj^Qg(x)) I xeX , fi^^g(x) = m i n { l , p ^ U ) + fig(x)] ]
(iv) Bounded product A °B

AoB = { (x,fi^,gM) I x€X , MA.BM = vaax{0,n^(x)-Hg(x)} }


(v) Left square ^A

^A = { U . / i . ^ ( x ) ) I x^:x€X , A«=^(x^) = /i^(*) }


(vi) Convex combination AcB
AcB = { {x,^iJ^^g^x)) I xeX , UACB(X) = ^I^AM + H'Z/'BW , ^,+^2=1]

(vii) Ordering of A and B


>4cfl - / i ^ ( x ) i / i U ) VxeX

Example 4.1
Let X= {1,2,3,4,5,6,7} and A = 0.8/3 + 1 / 5 + 0.6/6 , B= 0.7/3 +1/4+0.5/6.
Then
>iuB=0.8/3 + 1 / 4 + 1 / 5 + 0.6/6
/ i n B = 0.7/3+ 0.5/6
A''= 1/1+1/2+0.2/3+1/4 + 0.4/6
AB=0.56/3+ 0.3/6
>i2 = ^ s ^ = 0.64/3+ 1/5 + 0.36/6
A«J3=l/3+l/4+l/5+l/6
v4oB=0.1/3+1/5 + 0.1/6
2/1 = 0.8/9+1/25+1/36
10
4.2. Fuzzy Relations and Fuzzy Cartesian Product

Definition 4.2
Let Xj , X2 , ... , Xj, be reference supersets and A^, Aj , - , A^^ respective fuzzy subsets
of them. Then as a fuzzy relation f{A^ , ... , A^) we define the fuzzy set:
/ M l . A ) = { i(x^,...,xj , fifi4„.A.)(^t, ,xj ) I (x^,...,xJeX^x xX^ ]
where

A crisp and a fuzzy relation are shown in Fig.6.


^L li^X,.X^

crup relacion R
f(x.x^=0

Fig. 6. Geometric representation of crisp and fuzzy relations.

Definition 4.3
Let Xp...,X^ be reference supersets and Ap...^„ respective fuzzy subsets of them. Then the
Cartesian product of A^,...yA^ is defined to be the fuzzy set
g(A^,...,A^) = { ((AC,,...,J:J . ^tg^A^,,^/x^,...^^)) | (x^,...,x^)eX^x•••xX^ }
where
fg(A,....A,)(^i'-'''n) = niin{/i^(x,),.„,/i^(xj)

Figure 7 shows a crisp and fuzzy Cartesian product. One can see that the crisp Cartesian
product is 2-dimensional but the fuzzy one is 3-dimensional.
11

^ J (lAlxAl (X1,X2)
'^

fuzzy A 2
cnip

xi

fuzzy Ai

\ '' \ /

fuzzy A-xAo

Fig. 7. Geometric representation of crisp and Cartesian product.

Example 4.2
Let Xi = X2=(2,4,6) , Ai = 0.5/2+1/4 + 0.6/6 and ^^2= V2 + 0.6/4. Then
AixA2=0.5/(2,2) + 1/(4,2) + 0.6/(6,2) + 0.5/(2,4) + 0.6/(4,4) + 0.6/(6,4)

5. GENERALIZATION OF THE THREE FUNDAMENTAL OPERATIONS

The families of T-operators provide suitable generalizations of Zadeh's three fundamental


operations max(»,»), min(«,»), l-(») for the union, section, and complement, respectively.
We have three kinds of T-operators, namely T-norms, T-conorms and N-negation functions.
The definitions of them are as follows.

Definition 5.1
The function T:[0,l]x[0,l]-»[0,1] is called T-norm if and only if Tpossesses the following
properties for all x,y^€[0,l]:
1. ^x,y) = ^y^)
2. T{x,y)i'Jlx,z) yy^z
3. T{x,T{y,z)) = TXTix,y)^)
4. T{x,l) = \
12

Definition 5.2
The function T :[O,l]x[0,l]-*[O,l] is called T-conorm if and only if T possesses the
following properties for all x,y,2e[0,l]:
1. r{x,y) = r{y,x)
2. T (x,y)iT (x,z) \iy<.z
3. 'f{xX{y,zy)-'f{'f{x,y)^)
4. T(x,0) = 0

Definition 5.3
The function N;[0,l]-*[0,1] is called negation function if and only if N possesses the
following properties for all x,ye[0,l]:
1. N(0)=1 , N(1) = 0
2. N{x)<N{y) Vx^y

Throughout the years there have been proposed several T-operators. Some of them are
listed in Table 5.1.

Table 5.1. A set of T-operators


N TfA^,y) T^'i^.y) N(x) Researcher
1. min{x,y) max{x,y) l-x Zadeh
2. x-y x+y-x-y 1-x Gogeuen
3. max(x+y-l , 0) mm{x+y, 1) l-x Giles

x-y x+y-2-x-y
4. x + y-x-y 1 -x-y \-x Bandler

\-x-y A-(x + y)+Ar-7-(l-2-A)


5. 1 - ( 1 - A ) - ( X + 7 - A : •y) A + ;r-y(l-A) l-x Hamaster

xy j_ (\-x)-il-y)
6. max{x,y,X) max(l --V, l - y , A ) l-x Dubois

Actually, not any single triple of T-operators is the best in all decision making problems.
The simplest triple is the one suggested by Zadeh, but it is not the most suitable in many
cases. For a detailed discussion of T-operators the reader is referred to [15].

6. THE FUZZY SETS AS HYPERCUBES

6.1. The Hypercube Geometric Representation


The definition of fuzzy sets as sets of pairs and their representations as curves possess
some drawbacks with re.spect to their utilization. An alternative easy to use geometric
13
representation is based on the concept of hypercube, i.e. fuzzy sets are represented as
points in hypercubes.

Definition 6.1
Let A = [ (x,fi^(x)) ( xeX , p^(jc):>4-[0,l] } be a fuzzy subset of the finite reference

superset X. Then the vector (/i^(A:j),^^(jCj),...,/i^(x^)):X-[0,l]'' is called the (fuzzy


unit) fit vector of the fuzzy set A.

Clearly, the fit vector contains (gives) all the information that is provided by the set theory
approach. Also, the pair (X,[0,1]") defines a basic metric space in the fuzzy theory.
TTie set [0,l]"=[0,l]x...x[0,l] is called unit/j_>j3erci;be of dimension n, and forn=l,
n = 2 and /j = 3 has the geometric representation shown in Fig.8.

(0.1,1) (1.1.1)

(0.1) (1,1) (0.1,0) / (1.1,0)

L _ (1.0.1)
/
kL
(0.0) (1.0) (Pfl,0) (1.0,0)

[0,1] [0,1] [0,1]

Fig. 8. Hypercubes of dimensions n= 1,2,3.

Using the concept of hypercube one can represent both the crisp sets as their
vertices, and the fuzzy sets as internal points.
The above can be clarified by the following example. Let X= {x^,X2} be a reference
superset, and P(x) the set of all subsets of X, i.e. P(x)= {0,{x^^2}'{^i}>{^2}}- Now consider
the following fuzzy subset of X: i4 = {(Xj,l/3), (Ar2,3/4)}. The fit vectors of P{x) are as
follows:
i) The set e> or {(x^fi), (^2,0)} has fit vector (0,0).
ii) The set {^1,^2} or {(Xpl), (^2'0} ^^^ ^^ vector (1,1).
iii) The set {Xj} or {(.yj,!), (%0)} has fit vector (1,0), and
iv) The set {;r2} or {(x^O), (x^j-^)} ^^^ ^^^ vector (0,1).
v) The fit vector of the fuzzy set A is (1/3, 3/4).
Let us now represent the above fit vectors in the hypercube [0,1]^ (here n = 2 since
X has two elements). This is shown in Fig.9. One observes that the crisp sets are
represented at the vertices, and the fuzzy sets at internal points of the hypercube.
14

(X2l=(0.1) Xi.Xi=(l,l)

fuzzy subset A
A=((Xi, 1/3) , (X ,23/4)1

O=(0.0) ix,i=(l,0)
Fig. 9. Representation of the fit vectors in the hypercube [0,1]^.

6.2. Relations Among A, A^ AnA*^ and AuA"^.


With the aid of the hypercube concept the "symmetric in space" relation of A, A'^, ArA'^
and AuA'^ can be easily revealed. To this end, consider the fuzzy set yl = (l/3, 3/4). Then
^ ' ' = (3/4,1/3), >\04"^ = (1/3,1/3) and AuA'' = (2/4,3/4). These fuzzy sets are represented in
the hypercube [0,1]^ as shown in Fig.lO.

(0,0) (0,1)

Fig. 10. Geometric representation of A, A^ ArvV^ and AuA'^.

From Fig.lO it is now obvious that the sets A, A^, AnA*^ and AuA"^ occupy symmetric, with
respect to the centre M, positions in the hypercube. If A = (0,1), then A'^ = (1,0),
AnA'^ = (0,0) and AuA'^ = (l,l), i.e. the sets A, A^, AnA"^ and AuA^ coincide with the
vertices of the hypercube. If A = M=(l/2,l/2), then ^"^=(1/2,1/2), AnA'' = (1/2,1/2) and
^uy\*^=(l/2,l/2), i.e. the sets A, A'^, AnA^ and AuA'^ all lie at the centre of the hypercube.
Thus for minimum uncertainty (i.e. 0,1) the four sets coincide with the hypercube vertices,
and for maximum uncertainty (i.e. 1/2) the four sets coincide with the centre M.
15

The centre M of the hypercube behaves in a singular way since it possesses the
paradox property: M=M^=MnM^=MuM^ !!! Thus the centre M is considered as the
"black hole" of the fuzzy set theory. In other words, at the midpoint of a hypercube nothing
is distinguishable, while at the vertices everything is distinguishable. Actually, one can
easily verify that the logic paradoxes discussed in Sec.2.1 which according to the classical
logic contain contradictions are solvable with the fuzzy logic and geometrically lie at the
centre of the hypercube [16]. Indeed in these cases, if S is a proposition and S^ is its
complement we have S='S^ and S^=*S i.e. S'^S^. Now, if t{S) is the truth value of 5 then in
the classical logic we have t(S) = 1(8*^ i.e. 0 = 1 (contradiction). But in the fuzzy logic we
have t(S) = t(S^) or f(S) = l-f(S^) whence t(S) = t(S^= 1/2. Thus S and S^ are half true and
half false and the paradox ceases to exist.

6.3. How Big And How Fuzzy Is A Fuzzy Set ?


A basic measure of the size of a fuzzy set is its cardinality (see Definition 2.4):

Ml = E A ' . W
which coincides with the Hamming-distance and measures the distance of the fuzzy set A
(in the hypercube) from the vertex (0,0) as shown in Fig. 11.
(X2)=(0,l) lx,x^=(l,l)

fuzzy subset A
A=((x,,l/3),(x^/4))

O=(0,0) ix,)-,.,-,
F*ig. II. Geometric representation of the cardinality.

Definition 6.2
The generalized distance of order p ^ l of two fuzzy sets A and B is defined by

L''{A,B) = EIM^.)-/'B(*<)K
16
For p=2 the distance L\A,B) is the fuzzy Euclidean distance between A and B, and for
p= 1 the distance 0(A,B) is the fuzzy Hamming distance between A and B. In the special
case where A is a fuzzy set and B=« (the empty set), then

L'(^.B=0) = "£ |P^(x,.)-M,(x,)|


(.1

i'l (=1 (=1


= \A\
Now, let us consider the question of measuring the fuzziness of a fuzzy set. To this end, the
entropy concept will be used and the problem will be dealt with geometrically.
Definition 6.3
Consider the fuzzy set in the hypercube L" = [0,1]" and let a = L^(AA„eaT) ^ 'he Hamming-
distance of A from the nearest vertex iA„g^), and b=L^(AyAf^j.) be the Hamming distance
of A from the farest vertex (Af^j). Then as fuzzy entropy of A we define the quantity

E(A)

The quantities a and b are geometrically shown in Fig. 12.


(X2i=(0,l) {x^jt^=(l,l)
,,_ (

• fuzzy set A
A=((x,,l/3),(x ^/4))

II 1 ^1
O=(0,0) |x,|=(l,0)
Fig. 12. Geometric representation of L'(A,Apgj,f) and L^(A,Aj-3j).

Theorem 6.1
The fuzzy entropy E{A) of the fuzzy set A is equal to

EiA) - l^^-^^l
IAUA^I
17

Proof
The proof will be given with the aid of the hypercube concepts. For simplicity we use n=2
(Fig. 13). By definition E(A) = a/b. Due to the symmetric position of the fuzzy sets A, A'^,
AnA^, AuA'^ one can see that a = a'and b=b', i.e. a'= |>\rL4'^| and b'= \AuA'^\. Thus

J5(A) = £ = i ! = l^^^'^l
b hi \A\JA'

Remark: \{ A is a crisp set then obviously Ar\A'^=0, i.e. |>4n4'^|=0 and A<JA'^=X, i.e.
|>\uA'=|=n and £(A) = 0/n = 0.
(1.0) (1,1)

— b

Fig. 13. Quantities for the computation of the fuzzy entropy

7. SOME BASIC THEOREMS AND PRINCIPLES

7.1. The Representation Theorem


The possibility of approximating a fuzzy set by a crisp set is a fundamental topic of fuzzy
set theory. Dominating role for this approximation plays the concept of a-cut (see Def.
2.2). This is so because the a-cut is a crisp set that approximates the fuzzy set with
"accuracy or". We recall that the a-cut of a fuzzy set A is the set

A first idea is to approximate the fuzzy set with a sequence of a-cuts where Osa^l. Then
it is obvious that LQA=X and a s ^ •• L ^ ^ ^ .
The approximation problem is formulated as follows. Let A, B, C,... fuzzy sets and
L^, L^, L^C,... their a-cuts. As a first step in the approximation one works with L„A,
L^, L^C,... which are crisp sets, and from them produces a set, say ^ , for some ae[0,l].
This is repeated many times, and so from the given families of the a-cuts L^, L^, L^C,
... a sequence of results ^ is produced for all a, ae[0,l]. The question now arises: Does
there exist a fuzzy set Z which would give the above family of sets ^ for all a, Osasl in
the a-cut sense? The answer to this question is positive as stated in the following theorem.

Theorem 7.1
Let ^ , Osasl be the family of crisp sets with the following properties:
i)oZ=X
ii) a s ^ - ^ i ^
CO

iii) Oji...sa^ , lima^ = a -* ^Z = fl Z


n-oo n=l ^
Then there exists a unique fuzzy set Z such that L^=^.

For the proof the reader is referred to [17].

7.2. Fuzzy Functions: Domain of Definition and Domain of Values


Let us first consider two crisp sets X and Y and the classical (crisp) function f:X-+Y. Then
P{X) = {A\A^X) and P(y)={B I BcY} are the sets of all subsets of X and Y, respectively.
If AcXi.e. A£P{X) and BcYi.e. BeP{Y), then we define the domain of values of
f a s the set f{A) = {yeY \ 3x6>4, y=f{x)) : A-*f{A). TTie domain of definition of f is
defined as r\B) = {xeX \ f{x)eB} , f^: f-\ByB i.e. f:PiX)^P(Y) and f-hP(B)^P(A).
Now consider the fuzzy case. Let X and Y two crisp sets and f.X-*Yii crisp function.
We define F(X) to be the set of all fuzzy sets on X and F( Y) to be the set of all fuzzy sets
on Y. We use the crisp function f:X-*Y to define the fuzzy definition domain ( s:F(X) )
and the fuzzy domain of values ( cF( Y) ). Let
X = {{x,^ixix)) I x€X , fixix) : X-[0,1]€F(X)}
Y= {(y,My(7)) ]yeY.^ly{y) : Y-[0,l]eF(Y)}

Determination of the domain of values: To find where an arbitrary x is mapped


through f we apply the following algorithms. For an arbitrary y:
(a) If *•=/" (y) is not defined (i.e. f{x) possesses a singularity at the point of concern
or f'^(y) = 0), then we set /iy(y) = 0.
(b) If x=f'^(y) exists, then we find all other points /that give the same x. Among these
points y we select the one for which the corresponding x maximizes the function
/j_j({Ar), and set this quantity as jUy(y). Thus
y= {(y.Fy(7)) \y^Y,^lxiy):Y^[Q,\] }
where

sup fjj^(x) , /-'(jr)#0


f^rW
0 . r'(jf)=0
Clearly, the above procedure gives the image of X via f. It should be emphasized here that
f is used as a crisp function, i.e. it is applied to xeX to give yeY.
19
Determination of the domain of definition: To find from which fu2zy set X, a given
fuzzy set y has resulted via /, one uses the following scheme. Let Y€F( Y). Then, obviously,
f "^(Y) = XeF(X). For any y=fix) it suffices to find /iy(/(;r)) and then
lif-i^r)M = Py(/(*)) - It is clear, that given Y, this scheme provides the fuzzy set X.
Again, / is used as crisp function.

7.3. The Fuzzy Extension Principle


The extension principle helps in the fuzzification of mathematical laws, and thus plays a
dominant role in the fuzzy set theory.

Definition 7.1 (Extension Principle)


Let Xp X2, ..., X^ be reference supersets; X=XjxX2x...xX^ their Cartesian product; A^
A^, —rA^ respective fuzzy subsets; and /:XjxX2x...xXj-» Ywith y=t{Xy...^^ a crisp function.
Then the extension principle transfers the fuzziness of Ap ..., A^ into a fuzzy set B of Y
where
B = {(y,^B(y)) I y=f(.X^,-,Xr) , (Xi,...,X^)€XiX...xX^ }
and

sup minlA*. (x)....,A«^ (x)} , f'Hy)*B


f'ECy) =
0 , f-Hy) = <^>

For n= 1 the extension principle coincides with the concept of "image of a fuzzy set" (see
sec.7.2) i.e.
y= {iy,^iYiy)) I y ^ " ^ . M;f(y):"5^-[o,i] }
where

sup Pjf(x) . f'Hx)*0


fifiy} =•
0 . /-'(x) = 0
The extension principle allows a crisp function f, with definition domain the crisp set X,
to change its definition domain to, say, certain fuzzy subsets of X (instead of X itself). For
example if A is a fuzzy subset of the crisp set X, and f is a crisp function defined on X,
then the extension principle shows how the function f can be applied upon the fuzzy set A.
In particular if y4=ju^(xj)/jfj + ...+ju^(x„)/Af„ , then

It is noted that / i s always applied upon the elements of the crisp set X.
20

8. CATEGORIES A N D LATTICES

8.1. Categories
Category is a complex mathematical concept which consists of (i) a class of objects <£, and
(ii) a set of morphisms from A to B, for every two objects A,Be^ (symbolically (it{A,B) ).
The object of class ® may be sets, groups, topological spaces and so on. In the special case
where the objects are sets, the category consists of; (i) the class ® of sets, and (ii) the set
of aU possible functions from A to B (symbolically &iA,B) or f:A-*B) for every two sets
A,Be^. The following table shows a sample of objects and their respective morphisms and
structures.

Objects Morphisms Structure


Sets Functions Points
Groups Homomorphisms Multiplication
Vector Spaces Linear mappings Linearity
Topological Spaces Continuous functions Nearness
Metric spaces Metric functions Distance
Fuzzy sets ? 7

8.2. Lattices
The interval [0,1] and its properties plays a central role in the concept of fuzzy set.

Definition 8.1
Lattice is defined to be a partially ordered set L that is associated with an ordering
operator possessing the properties of reflexivity, antisymmetricity and transitivity and for
which for every two elements a,beL there exist two new elements (aAb), (aVb) eL, which
are called minimum and maximum respectively, such that a/\b<.a, b^aVb.

The set [0,1] is a lattice according to the above definition under the ordering
operation <. and the usual min and max concepts.

Definition 8.2
Let L be a lattice and X a crisp set. Then as L fuzzy set we define the set
A = {(Ar,^^(x)) \xeX,fi^{x):A^L }

Clearly, the L-fuzzy set is a generalization of the standard fuzzy set where the lattice
i s L = [0,l].
21

Definition 8.3 [17]


The category set (L) consists of (i) objects {X,U) where X is a crisp set and U:X-*L in a
fuzzy subset of X on the lattice structure, (ii) a morphism-function f:X-*Ysuch that v°/iu.

At this point a generalization of the fuzzy set concept at higher level will be
provided [18].
Consider a fuzzy subset of X, namely
A = { (x,p^(x)) I x€X , ^iAix):A^[0,l] }
The main issue is that the fuzzy set is fully characterized by the membership function [ipfiC)
which for every xeX returns a number.
An obvious generalization would be to assume that fi^(x) has the form ^^(x):X-*S
where S= {set of sets}, i.e. the standard //^(x) returns a number from the point set [0,1]
whereas the generalization /i^(x) returns a set from S.

Definition 8.4
The set A is called C-fuzzy set (or type-2 fuzzy set) if and only if
A = { (x,ju^(x)) I xeX , p^(x):A-^S={set of sets} }

Example 8.1
We are given that: "The number 3 is small with degree of membership 'about 0.8'". Here
there is uncertainty not only on the elements Xj but also on the degrees of membership
^^(A-y), because the statement 'about 0.8' is a fuzzy set.

9. FUZZY REASONING

9.1. Linguistic Variables


From the previous discussion one can see that the adherence in the extension of classical
mathematical concepts (like the number, the matrix, the determinant, etc.) to fuzzy logic
faces many difficulties and in some cases makes the situation more complex than what
actually is. Thus to overcome these difficulties one has to resort to knew concepts. A new
concept which plays a basic and dominant role in fuzzy logic and reasoning is the concept
of linguistic variable. Zadeh justifies the introduction of linguistic variables as follows: "...
The motivation for the use of words or sentences rather than numbers is that linguistic
characterizations are, in generaljess specific than numerical ones ..."

Definition 9.1
Linguistic variable is a variable the values of which are not numbers but words or sentences
or propositions in a natural or artificial language.

More formally the linguistic variable is defined as follows.


22

Definition 9.2
Linguistic variable is the quintuple <x,T(x),U,G,M> where x is the name of the linguistic
variable, T(x) is the set of its values {term set), U is the reference hyperset upon which
T(x) is structured (recall that the values of a linguistic variable are fuzzy sets), G is a
syntactic rule that generates the names x, and M is a semantic rule that gives sense
(meaning) to the names.

Example 9.1
Consider the linguistic variable X-"age" with T(x) = { very young, not very young, pretty
young, a little old, pretty old, not very old, very old }. Then a meaning of the fuzzy set "old"
is M„,d={(u, t x „ , » ) , ue[0,100]}, where

, «e[0,50]
f^ou("^ =
1+
^r , «e[50.100]

The linguistic variable "age" and its values are pictoriaUy depicted in fig. 14.
linguistic variable

values of the
linguistic varial

15 20 25 30 35 40 45 50 55 60 65 70 75 80
reference superset
Fig. 14. Linguistic variable "age" and its "linguistic values".

Definition 9.3
A linguistic variable x is said to be structured if its set of values T^x) and the set of
meanings M(x) that are given to them can be determined algorithmically.

Example 9.2
Consider the linguistic variable "truth" with the following set of values: T(truth) = {true, not
true, very true, not very true, false, not false, very false, not very false}. It is clear that TJx)
can be determined algorithmically, and so the variable "truth" is a structured variable.
23

9.2. Linguistic Modifiers


Linguistic modifier (hedge) is an operator which when applied to a value (fuzzy set) of a
linguistic variable changes the meaning of the value. For example, if .4 is the term set, then
when the linguistic modifier m is applied to the elements of A, it produces the new term
set B=m(A).
Some linguistic modifiers are the following:
(i) f^con(A)(") = (P^("))^ Concentration
(ii) ^^dil(A)(") = (^Ai")y' Dilation
[ 2(/i^(«))2 , /i^(tt)e[0.0.5]
(iii) f'uu.J'*) - \ , ,,, , ,,, , , ,„, „ Contrast Intensification
[1-2(1-//^(K))^ , ii^(,u) e[0.5,l]

Example 9.3
Let A be an element of the term set of a linguistic variable. Clearly, A is fuzzy set. Then
the most common linguistic modifiers applied upon A are:
i) very(A) = con(>\)
ii) more or less (^) = dil(yi)
iii) slightly(^) = Int[(y4) and not (very (A))]

The grammatical correspondence of linguistic modifiers are the adverbs and some
adjectives. Classical examples are the following: very, very much, pretty, nearly pretty, not
at all, almost not at all, etc.

9.3. Generalized Modus Ponens


It is well known taht in the classical logic the proof process is based entirely on the "logical
tautology" concept. The main classical tautologies are:
Modus Ponens: {A/\(A->B)}-^B
Modus ToUens: {{A^B)h-B)^A
Chain syllogism: {(A-»B)A(5-»C)}-(A-C)
Logic Inversion: {A-'B)-*(~B-^~A)
Any other tautology can be reduced to one of the above. In this section we shaU generalize
the modus ponens (MP) rule such that to be applicable in an uncertain environment.
To this end, let us start with an illustrative example. The MP rule is written in the
following general form:
Fact: A
Implication: IF A THEN B
Conlclusion: B
For example
Fact: Tomato red
Implication: IF (Tomato red) THEN (Tomato mature)
Conclusion: Tomato mature
We observe that, in order for the rule to apply and draw a conclusion, the fact nust
coincide with the antecedent (left hand side) of the implication.
24

Let us now permit the fact not to coincide with the antecedent of the implication,
but to be "alike". For example
Fact: Tomato very red
Implication: IF (Tomato red) THEN (Tomato mature)
Conclusion: ?
Of course a conclusion can be drawn by a strict application of the MP rule, but it is a real
life conclusion that now the tomato is very mature, something which does not strictly
coincide with the conclusion, but it is "alike" the MP conclusion. On the basis of the above
observation one can state a Generalized Modus Ponens (GMP) rule as:
Fact: A'
Implication: IF A THEN B
Conclusion: B'
where now A', A, B' and B are fuzzy sets.
It is true that the GMP rule mimics much better the human type of reasoning than
the classical MP rule, since it can work not only under idealy identical conditions but also
under general conditions of similarity (alikeness). This is very useful! since reduces very
much the number of rules that are required to have in the knowledge base of the
application.

9.4. The Max-Min Compositional Inference Rule


The max-min compositional rule was introduced by Zadeh in 1973 as a way of reasoning
under uncertainty [19].

Definition 9.4
Let A be a fuzzy set on X, B a fuzzy set on Y, and R a fuzzy relation on XxY, i.e.
A = { (x,fiAix) I xeX , ^ ^ ( x ) : A - [ 0 , l ] }

B= { {y,^B(y) |yey,^B(y):5-[o,i] }

R = { ((^.y).M/?(^.j)) I ix,y)€X€Y , p^(x,y) = min{^^(x),^£(y)} }

Then, given A and i?, B is found as B=A»/?, /^^(y) = max{min{/i^(x),jU^(x,y)} }

where "»" is the symbol of the max-min composition operator.

Example 9.4
Consider the foUowing: (a) X={1,2,3,4}, (b) A = "x smaU"={(l,l), (2,0.6), (3,0.2), (4,0)},
(c) R = "x nearly equal to y with matrix
25

R X

1 2 3 4

1 1 0.5 0 0
2 0.5 1 0.5 0
3 0 0.5 1 0.5
y
4 0 0 0.5 1

It is desised to find what happens with the variable y, i.e. to determine the fuzzy set B="y'.
To this end, use of the max-min composition rule of inference is made, i.e.
B=A°R, where

M B ( 7 ) = msx{min{^A{x),Hji{x,y)} } = { ( 1 , 1 ) , (2,0.6), (3,0.5), (4,0.2) } .


X

Thus, IF "x smaU" and "x nearly equal to y THEN "y nearly small".

9.5. Estimation of the Membership Function: Defuzzification


The estimation of the membership function which leads to defuzzification can be done in
several ways that are arbitrary.
The membership function /U^(jf) that is mostly used is the triangular one which
possesses a maximum value (usually 1) in the most representative and characteristic value
of the fuzzy variable x. Thus in this case the defuzzification leads to the value of maximum

Five other more systematic methods of defuzzification (estimation of /i^(x)) are


the following.

(j) Average guess method


In this method we calculate the average value of the values of /i^(;if) that are suggested by
experts. This is used as the best estimate of H^ix). The corresponding value of x is the
required deffuzified value of x.

(ii) Distance function method


Initially we compute a distance d{x).oi the arbitrary point x from the fuzzy set A under
consideration. For the elements that belong to A this distance is obviously zero. For those
X not belonging to A this distance takes some maximum value say supd. On the basis of
the above the membership value is given by

d(£)
PA(^) = 1
supd

(Hi) Intuitive relation method


It is intuitively true that the rate of change of /u^(^) must increase when the belief that x
belongs to the fuzzy set A is strengthened. Analytically this is expressed by the relation
26

d/i^(x)
X/z^(x)[l-/i^(x)]
dx
which upon integration gives the membership function

1 + exp(a-bx)
The constants a and b are determined by the other data of the problem.

(iv) Binary polling method


In this method we form a group of experts and ask them whether "x belongs to the set A'.
Their reply should be binary, i.e. yes or no. Then the value of iu^(x) is estimated by:

, V _ number of positive replies yes


total number of replies

(v) Relative preference method


Let Abe Si discrete fuzzy set
A = { {x,^iJ^{x)) I x e X , ix^{x) : ^ - [ 0 , 1 ] }
As relative preference otx^ with respect to X: is defined the quantity

_ MA(^I)

We now form the matrix P=[Py] which possesses the following three properties:
•P«=landp^.= l / p . .
• All eigenvalues of P are zero except one which is equal to the cardinality n of A.
• The eigenvector w that corresponds to the nonzero eigenvalue n has as its
elements the values of the membership function corresponding to the elements of
A, i.e. w=\ii^{x;)\ = \ii^{x{) ... iiA{x„)V-
Of course, this method is applicable to discrete finite fuzzy sets, not to continuous fuzzy
sets that have an infinite number of elements.

10. A LOOK AT FUZZY OR LINGUISTIC CONTROL

Here a brief description of the structure of the basic fuzzy control loop will be provided.
Fuzzy control uses linguistic variables (this is why it is sometimes called linguistic control)
and mimics the human action more closely than traditional control. For comparison, Fig. 15
depicts the architecture of both the traditional and the basic fuzzy control loop.
The problem in the traditional control loop is to design a controller which will
accept the error e=r-y as input and will give an output (control signal) u such that the
output y of the overall system follows the set point (reference input) r as nearer as
possible.
27

r ^ Controller Process

(a)

Rule Base

inference mechanism
(b)
terms terms

defuzziflcation fuzziflcation

Z^ Process

Fig. 15. (a) Traditional control loop


(b) Basic fuzzy control loop

The problem in the fuzzy control loop is to design an inference mechanism (fuzzy
controller) which will mimic the human type of syllogism and will ensure a desired
performance of the overall system. The fuzzy control loop involves the following blocks: a
rule base, an inference mechanism and the fuzzification/defuzzification blocks. The
fuzzification/defuzzification blocks have been discussed earlier. The fuzzy knowledge base
contains the rules that are to be used for the control of the process. These rules are usually
the result of interviews with the expert operators (very rarely come out of mathematical
analysis or simulations) and have the form IF-THEN. In the general case the rules have
many inputs and many outputs (MIMO). However, it can be shown [20] that a set of
MIMO rules can be transformed to a set of MISO (multiple input - single output) rules.
As an example here we consider rules with two inputs and one output, i.e. rules of
the form
Rji IF "x is A{ and "y is B{ THEN "z is C{
A rule of this type has two assumptions (premises) 'x is A{ and "y is B{ which are
defined on the cartesian product t/xV. The whole rule constitutes a fuzzy relation in the
fuzzy Cartesian product [/xVxW, i.e. fi^^ = /'(^^^a, nwi c,/"'^-^) where U, Vand
W are the respective fuzzy sets.
An easy to use method for the calculation of the relation R makes use of the min
operator, namely
28

t^R^ = f^(A^ and B,- then q)^"'''''*') = niin{/\y(u),B,.(v),C;(lv)}


If the knowledge base contains a total of n rules (Rj , /=l,2,...,n) then it can be
regarded as a unique relation R where

R= U Rj

Suppose now that at a certain instant of time we have observed in the process that 'x is
A" and "/ is B". The problem is to combine this fact with the rules of the knowledge
base such that to produce a suitable control y. To this end one must use the max-min
composition scheme, i.e.
n n
(A',B')O U /?,- = U (A',B^)'>RI
j=l /=I

The right hand side of the above identity suggests that instead of applying the fact (A',B')
n
to the knowledge base U Rj as a whole, one can apply {A',B') to each rule Rj of the
1=1

knowledge base separately. The proof of the validity of the above identity can be found in
[20]. In this way, for each input, one can evaluate the individual contribution of each rule
to the final result. This facilitates very much the control process, reduces considerably the
computational load and helps to have a better monitoring which rules are fired and how
much are fired.

11. CONCLUSIONS

Scientists and engineers recognise the fact that "fuzziness" is inherent everywhere in the
real human life. This is particularly true whenever the human factor has a direct and active
effect (social issues, economical issues etc.) Actually, the effort to solve uncertain problems
by classical (deterministic) mathematical theory may lead to "deadends". In general,
mechanistic type systems can be treated by quantitative analysis, while humanistic type
.systems are too fuzzy to be amenable to such exact mathematical methodologies. An
elegant approach to handle such uncertain situations is the fuzzy set theory which has now
arrived at a very mature state of expansion and application.
In this chapter an effort was made to give within a strictly limited size an
appreciation of fuzzy set and fuzzy logic theory. Further concepts and developments can
be found in the references and in the rest of this book.

REFERENCES
1. L.A. Zadeh: Fuzzy Sets, Inform, and Control, vol.8, pp.338-353 (1965)
2. L.A. Zadeh: Fuzzy Algorithms, Inform, and Control, vol.11, pp.323-339 (1969)
This page intentionally blank
29
3. S.S.L. Chang and L.A. Zadeh: On Fuzzy mapping and Control, IEEE Trans. Sys.
Man Cybern., vol. SMC-2, pp.30-34 (1972)
4. L.A. Zadeh: Outline of a New Approach to the Analysis of Complex Systems and
Decision Processes, IEEE Trans. Sys. Man. Cybern., vol. SMC-3, pp.28-44 (1973)
5. L.A. Zadeh: A Computational Approach to Fuzzy Quantifiers in Natural
Languages, Comp. & Maths., vol.9, pp. 149-184 (1983)
6. L.A. Zadeh: Fuzzy Logic and Approximate Reasoning (In Memory of Grigore
Moisil), Synthase, v.30, pp.407-428 (1975)
7. L.A. Zadeh: Commonsense Knowledge Representation Based on Fuzzy Logic,
Computer, pp.63-65, Oct. 1983.
8. R.M. Tong: A Control Engineering Review of Fuzzy Systems, Automatica, vol. 13,
pp.559-569 (1977)
9. P.M. Larsen: Industrial Applications of Fuzzy Logic Control, Int. J. Man-
Machine Studies, vol.12, pp.3-10 (1980)
10. M. Black: Reasoningwith Loose Concepts, Dialogue, vol. 2, pp.1-12 (1963)
11. R. Bellman and M. Giertz: On the analytic Formalism of the Theory of Fuzzy
Sets, Information Science, vol.5, pp.149-156 (1973)
12. B. Gain: Precise Past - Fuzzy Future, Intl. J. Man-Machine Studies, vol.19,
pp. 117-134 (1983)
13. S. Haack: Do we Need Fuzzy Logic?, Intl. J. Man-Machine Studies, vol.11,
pp.437-445 (1979)
14. R.M. Tong: Analysis and Control of Fuzzy Systems Using Finite Discrete
Relations, Int. J. Control, vol.32, (1977)
15. M.M. Gupta: Theory of T-norms and Fuzzy Inference Methods, Fuzzy Sets and
Systems, vol.40, pp.431-450 (1991)
16. B. Kosko: Neural Networks and Fuzzy Systems: A Dynamical Systems Approach
to Machine Intelligence, Prentice Hall, 1992.
17. C.V. Negoita and D.A. Ralescu: Simulation, Knowledge-Based Computing and
Fuzzy Statistics, Van Nostrand Reinhold, 1987.
18. C.V. Negoita and D. Ralescu: Applications of Fuzzy Sets to Systems Analysis,
Birkhauser Verlag, Basel 1975.
19. L.A. Zadeh: Fuzzy Lo^c, IEEE Computer, pp.83-93, April 1988.
20. CC. Lee: Fuzzy Logic in Control Systems: Fuzzy Logic Controller (Part I),
IEEE Trans. Syst. Man Cybern., vol. SMC-20, n.2 (1990)
21. T. Takagi and M. Sugeno: Fuzzy Identification of Systems and Its Applications
to Modelling and Control, IEEE Trans. Syst. Man Cybern., vol. SMC-15, pp. 116-
132 (1985)
CHAPTER 2

ON THE VALIDATION OF FUZZY KNOWLEDGE BASES

Didier Dubois and Henri Prade

Institut de Recherche en Informatique de Toulouse


Universite Paul Sabatier
118 route de Narbonne, 31062 Toulouse Cedex, France

Abstract

Roughly speaking, a knowledge base is "potentially inconsistent" or incoherent if there


exists a piece of input data which respects integrity constraints and which leads to
inconsistency when added to the knowledge base. In the paper we use the framework of
possibility theory in order to discuss this problem for fuzzy knowledge bases. More
particularly we consider the case where such bases are made of parallel fuzzy rules. There
exist several kinds of fuzzy rules : certainty rules, gradual rules, possibility rules. For each
kind, the problem of "potential consistency" appears to be different. Only certainty and
gradual rules pose serious coherence problems. In each case we caracterize what conditions
parallel rules have to satisfy in order to avoid inconsistency problem with input facts. The
expression of a fuzzy integrity constraint in terms of impossibility qualification is
discussed. The problem of redundancy, which is also of interest for fuzzy knowledge base
validation, is briefly addressed for certainty and gradual rules.

1 - Introduction

Consistency is a key concept in classical logic. In fuzzy set-based logics, consistency


becomes a matter of degree. Zadeh (1979) has defined the consistency of a fuzzy set A' with
respect to another fuzzy set A, supposed to represent the available knowledge about a
variable X (namely "X is A"), as the height of the intersection (pointwisely defined by the
min operator) of A and A'. In other words, the degree of consistency refers to the existence
of an interpretation (here a possible value of X) compatible with the available knowledge

31
S.G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 31-49.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
32

and compatible with the statement "X is A'". The fuzzy set representing the available
knowledge is interpreted as a [0,l]-valued possibility distribution which restricts, in an
elastic way, the more or less possible values of a variable, or more generally of a tuple of
variables. If this possibility distribution is not normalized, it means that the available
knowledge is (partially) inconsistent by itself since there does not exist any fully possible
interpretation (i.e. possible at the degree 1). For instance, in possibilistic logic (Dubois,
Lang and Prade, 1989, 1991b), the complement to 1 of the height of the possibility
distribution representing the whole knowledge base defines the degree of inconsistency of the
knowledge base. Although inference under partial inconsistency can still be performed in
possibilistic logic, checking the consistency of a fuzzy knowledge base remains an
important issue for validating the base. The validation of fuzzy knowledge bases has received
little attention until now, with the exceptions of Hall et al. (1988), Yager and Larsen
(1990), Larsen and Nonfjall (1989,1991), Turksen and Wang (1992), Kinki6ia6 (1992), and
Dubois and Prade (1991b).

In this paper, we more particularly consider the problem of the "coherence" of a


collection of fuzzy rules, where "coherence" means that there does not exist any input fact,
in agreement with the integrity constraints, that together with the base of rules leads to a
partially or totally inconsistent knowledge base. We thus extend to the fuzzy case ideas
discussed by Nguyen et al. (1985, 1987), Ayel and Rousset (1990) among others for rule-
based expert systems. Coherence conditions are given in Section 3 for different kinds of
fuzzy rules which capture the ideas of graduality, certainty, and possibility of fulfilment of
properties respectively. The issue of redundancy is also briefly discussed for fuzzy rules in
Section 4. First, Section 2 gives the necessary background on the fuzzy set-based approach
to approximate reasoning, extends the idea of coherence with respect to input data to fuzzy
knowledge bases, and discusses the representation of integrity constraints which are stated in
terms of impossibility qualification.

2 - Approximate Reasoning in Possibility Theory and Coherence

2.1 - Possibilistic Approach to Approximate Reasoning

In the possibilistic framework, each piece of knowledge is represented by a possibility


distribution K[. A possibility distribution expresses a (fuzzy) restriction on the possible
values of tuples of variables. For instance, the pieces of information "X is A", "if X is B
and Y is C then Z is D", where A, B, C and D denote subsets which may be fuzzy, are
represented by the possibility distributions Vu, nx^*^) ~ ^ A ( " ) ' ^""^ ^ " ' ^' *•
Kx Y z("'^'*) ~ (^^B(") * Mc(^)) ~^ I^DM (where * and —> are respectively conjunction
and implication operators to be determined according to the intended semantics). Thus a
piece of knowledge is represented by a possibility distribution on the Cartesian product of
the domains of the involved variables ; see (Dubois and Prade, 1991a) for an overview and a
bibliography on fuzzy set-based approximate reasoning. A knowledge base ^ made of n
33

pieces of knowledge represented by the possibility distributions Ttj, i = 1 ,n, is associated


with the possibility distribution ;c% obtained as the conjunction of the Ttj's, i.e.

7C^ = mini=l^n7ti. (1)

This is Zadeh (1979)'s combination principle, which is followed by a projection of ;r^6^, in


order to compute the induced restrictions on the variables of interest. Namely if Tc^r
involves the variable Xj, ..., X^, i.e. Tt^r, = 7Cxi,...,X > ^^^ '^ ^"^ ^ ^ ' ' ° compute the
existing restriction bearing on a subset ?6 <z {Xj,..., X^) of k variables, say Xj,..., Xj^,
we compute

tX("l "k) = Proj(7t^ ; ^ ) ( u i Uk) =


s"Puj:Xj^X J^Xi Xj xj^l "m)- (2)

2.2 - Coherence and Integrity Constraints

Let J^ be a base made of pieces of knowledge represented by possibility distributions


defined on the Cartesian products of the domains of the involved variables. This set of
variables is supposed to be partitioned into input variables X j , ..., Xjj, and non-input
variables Yj, ..., Y^. The input variables are those variables about the value of which
information may be received, this information being added to ?v in order to deduce new
possibility distributions restricting variables of interest. The min-combination of all the
pieces of knowledge in ^ leads to the definition of the global possibility distribution

' ' ^ = ''Xi Xk,Yi Y^

which represents the contents of fK-. Then by projecting TT^ over X j , . . . , Xj,, we obtain
the restriction (if any) which is induced by n^ on the input variables ; this is called
"reflecting on the input" by Yager and Larsen (1991). The knowledge base fPO will be said
to be coherent with respect to input data if this projection does not induce any genuine
restriction on the value of the input; namely, ^ is said to be coherent if

Vui, ..., Vuk, supvj . .v^ 'txj Xk, Yi Y / " 1 . •••' "k- ^l- •••. v^) = 1. (3)

Indeed, if (3) does not hold, it means (in case of finite or bounded domains that there exist
input data (u^j u \ ) such that TCX, Xu. Y, YA(U^1 " \ ' ^ 1 ' •••> v.?) < 1,
Vvj, ..., Vv^, i.e. that there exist input data that together with 7i<j^ make a partially
inconsistent knowledge base, since the corresponding possibility distribution is no longer
normalized. Note that (3) entails that, for each X,, proj(7t^,Xj) is the possibility
34

distribution uniformly equal to I on the domain of X;; but the converse is false, it is not
sufficient to have the property for each projection on Xj, i = 1 ,n to insure (3).

In practice, any tuple of input values is not always allowed. For instance, let us imagine
that the variables Xj, ..., Xj^ pertain to the description of people, e.g. Xj = age, X2 =
weight, then the data Xj < 1 year, X2 > 20 kg are not feasible. For detecting input data
which would not be meaningful, integrity constraints describe the tuples of values which
can be encountered and accepted. Let IC be the subset, defined on the Cartesian product of
Xj, ..., X|(, of the tuples of values which are acceptable. Let us assume first that IC is an
ordinary subset. Then the coherence of ^ with respect to input data which satisfy the
integrity constraints is naturally expressed by modifying (3) into

V (ui u^) e IC, supvj„..v^ JtXi X^X»l "k- ^i, ••-, v^) = 1. (4)

It may be natural to allow for flexible integrity constraints, which enables us to distinguish
between input data which are completely possible from input data which are not completely
impossible but are more exceptional, letting IC be a fuzzy set. Then we may think of
extending (4) in two different ways :

- by requiring that (4) holds for all tuples {\i\,.... uj^) belonging to the support of IC, i.e.

Vui,...,Uk, Hic(ui,...,Uk) > 0 ^ supvj,...v^ 'tXi,...,Xk("l'--- "k-Vb--. v^) = 1. (5)

In this case, the introduction in ^ of input data, even if they are almost (but not totally)
impossible according to IC, will not create any inconsistency, but the fuzziness of IC is
not taken into account by (5). However the fuzzy nature of IC may still be used for
making clear to the user how much the input looks exceptional and has to be checked ;

- by using the standard fuzzy set inclusion, namely

Vul,...,u,^,^lIC(ul Ufc) < supvj^ v^ ^Xi XfcCui. •••. Uk' ^ i . . . - v^). (6)

With this condition, which is weaker than (5), it is allowed that the low level of
possibility of encountering some tuple of input data can be already acknowledged by JK
itself provided that the level of possibility induced by X is at least equal to the one
given by the integrity constraints. However, with (6) there may exist input data with a
non-zero degree of membership to IC which make ^ partially inconsistent (when added
to^).
35
2.3 - Impossibility Qualification for Specifying Integrity Constraints

The (fuzzy) set IC can be obtained as the result of the logical conjunction (using min
operation) of elementary integrity constraints. Usually elementary integrity constraints are
Slated in terms of impossibility rather than in terms of what is possible, like for instance,
"X is A is forbidden, is impossible", or more generally "X is A is almost impossible"
(where X is a variable or a vector of variables).

The integrity constraint C "X is A is impossible to the degree a" can be translated as a
constraint on the induced possibility distribution Jt;;^ describing the allowed values of X (the
conjunction of such possibility distributions leading then to the definition of m^).

Let us first consider the case where A is an ordinary set

n(A) = supyg \ Jto(") S l - o t < = > V u 6 A, 7t(^,(u) ^ 1 - a

i.e. (when a = 0 there is no constraint on ir^ and when a = 1, all the values in A are
excluded as expected)

When A is a fuzzy set, two interpretations may be considered :

i) we understand "X is A is almost impossible" as "X is A is almost certain" (where A


denotes the (fuzzy) complement of A). Then, we can apply the results about certainty
qualification (Dubois and Prade, 1991a), which yield

jr(;(u) = max(n;^(u), 1 - a) = max(l - \i.xi^), 1 - a) = 1 - min()U;s^(u), a). (7)

The result is pictured on Figure 1.

ii) starting with the usual definition of the possibility of a fuzzy event leads to write

n(A) = supu min(HA(u), 7t'c,(u)) < 1 - a

i.e. Vu, min(^y^(u), 7i'(^(u)) < 1 - a

i.e. Vu, 7:'c(u) < [HA(U) -»(I - «)] with a - ^ b = ( ' ' f ^ - ' '
lb if a > b.
Allowing the greatest possibility degrees compatible with this constraint yields the
possibility distribution Jt't; pictured by a dotted line in Figure 1, i.e.

't'c=I^A^(l-")• (8)
36

When a = 1, n'l^ is nothing but the complement of the support of A (the set of
elements with non-zero membership grades)

1-a

* • X

ijtc

Figure 1

Figure 1 exhibits the difference between n^= I - min((iy^, a) andrt't^= n^^ —> (1 - a).
In the translation of "X is A is almost impossible" by n'l^, the gradual nature of A is
lost (even if n't;^ does not correspond to the membership function of an ordinary subset
when 0 < a < 1) ; Tt'i; corresponds to a rather drastic solution which relates the
(ordinary) subset concerned by the impossibility to the level of impossibility a, via n^.
We may thus prefer, to K'I^, the first interpretation n^, which reflects the gradual nature
of A.

3 - Validation of a Base of Fuzzy Rules

3.1 - Different Kinds of Fuzzy Rules

In Dubois and Prade (199la) a typology of fuzzy "if... then..." rules of the form "if X is
A then Y is B", where A and/or B are fuzzy sets has been proposed. A distinction is made
between

- gradual rules whose intended meaning is of the type "the more X is A, the more Y is B"
and which are represented by a possibility distribution Kyix obeying the inequality

Vu, Vv, min()iA(u). tYlx("'V)) ^ M^B(V)


37

whose greatest solution is expressed by means of so-called GOdel implication (this


possibility distribution allocates the greatest possible possibility degrees and thus does
not reduce the range of possibilities arbitrarily)

.v«(v.«)..A<.)-.B(v).!;;'(i:fr^B':> m
- certainty rules whose intended meaning is of the type "the more X is A, the more certain
Y is B" and which are represented by a possibility distribution JCyiX

'tYIX(v.u) = max(^iB(v), 1 - RA(")) (10)

which indeed expresses that "Y is B is |iA(u)-certain" (according to the result already
applied in (7));

- possibility rules whose intended meaning is of the type "the more X is A, the more
possible Y is B" and which are represented by a possibility distribution Ttyix obeying the
inequality
rtYix(v,u) > min(^A("). M-B(V)) (11)

which indeed guarantees, for any input UQ, that the possibility that Y = v for all the
values V such that \i^(y) = 1 is at least equal to HA("O)-

We now study the coherence of a knowledge base ^ made of a collection of parallel


rules of the same kind, "if X is Aj then Y is Bj", i = 1 ,n in the case of certainty rules, and
in the case of gradual rules. There is no coherence problem with possibility rules (which is
intuitively natural for rules whose conclusions express only things which are possible/
feasible). Indeed possibility rules have to be combined disjunctively due to (11) (see Dubois
and Prade, 1991a), and then if the Bj's are normalized

supv 7CYix(v.u) >• supv maxj^i n min(p.Aj(u), [iB^(y)) = maxj=i_n HAJ^")-

Thus, we can never establish that (3) does not hold (i.e. that 3u, supy 7tYix(v>u) < 1)-

3.2 - Coherence ofparallel certainty rules

For simplicity, we first consider the case of two parallel rules of the form "the more X
is Aj, the more certain Y is Bj", i = 1,2. We have

itxCU'V) = min[max(l - |.IAJ(U), U B I M ) . max(l - lJi/>^^(u), ^ 6 2 ^ ) ] -


38

Then

proj(%;X)(u) = supvmax(min(l -^lAl("). 1 -^A2("))'"''"(' -t^Ai(")'I^B2W).


'"•"(' - I^A2(")> t^Bi^)' min(HBj(v), |LIB2(V)))
i.e.
proj(X ; X)(u) = maxd - H A J ( U ) , 1 - HA2(")' cons(Bi,B2)) (12)

provided that B j and B2 are normalized (i.e. supy llg. (v) = 1 = supy [I'Q^iy]) and where

cons(B 1,82) = supv min(H3 j(^)' ^lB2(^)) (' ^)

estimates the con.sistency of B | and 82-

Applying the coherence principle (3) to (12) we get

proj(X ; X)(u) = 1, Vu <=> cons(Bi,B2) = 1 or Vu, min(Hy^ (u), H;s^^(u)) = 0


<=* cons(Bj,B2) = 1 or cons(Aj,A2) = 0- (14)

The necessary and sufficient condition of coherence (14) for two rules can be equivalently
written
core(B j) n core(B2) ^ 0 or support(A j) n support(A2) = 0 (14A)

with supporl(Aj) = (u, 1x^(1) ^ ^) ^nd core(Bj) = (v, |1B.(V) = 1}. It expresses that the
condition parts of the rules have to be completely disjoint or the conclusion parts of the
rules have to be fully consistent. It can also be expressed as : whenever the supports of A j
and A2 intersect, the cores of B j and B2 should intersect too.

A simple example of certainty rules are rules expressed by possibilistic formulas (see,
e.g. Dubois, Lang and Prade, 1989) of the form "if p then q with certainty a" where p and q
are classical propositions. Such a certainty rule is represented by the possibility dismbulion
Tt on the set of interpretations 9,

V 1 6 3- 't(l) = 1 if I is a model of —ip v q


= 1 - a if I is a model of p A -iq
= max(HM(-,pvq)(l). 1 - a) = max(l - HM(p)(I), |iM(q)(^)' 1 - «)

where 1J.M(') denotes the {0,1) -characteristic function of the set of models of a proposition.
Thus a possibilistic certainty rule is a particular case of a fuzzy certainty rule, identifying
l^M(p) ^ ' * I^A 3"d fn3x(|J.f^^(q\, 1 - a) with jig. Then for two rules "if pj then q; with
39

certainty a;", the condition (14) only holds as soon as M(pj) n M(p2) ^^ 0 entails M(q]) n
M(q2) * 0. For instance the two rules "if p then q with certainty a" and "if r then —iq with
certainty 3" cannot be coherent together as soon as p and r are not mutually exclusive since
then cons(Bi,B2) = niax(l - a, 1 - p) < 1 (except if min(a,3) = 0).

Let us now consider the case of a knowledge base % made of n parallel rules. Then

proj(^ ; X)(u) = supv min;^] „ max(l - |iA,("). V^^f"^))


= supv maxj^l[i,nI,0<IJI<n "iin(l - maxi^ j \i.p^Xu), minj-g j HB|^(V))
= maxo<j<n maxji^j min(l - maxig j |LtAj(u), supv minj^^ j |UB|^(V))

= max[minj_ J n 1 - M-^Xu), max; min(minj^j 1 - H A - W ' •'^"PV l^B-W)'

maxjk min(mini^j i^)( 1 - VL^^M), supv min(^B (v), IIB^CV))), •.,


max; min(l - HAJ^")- ^uPy "I'lj^ii t^BjW)- ^uPv "i'"i=l,n ^iBiM^
= max[1 - ^Aiu...uAn("). "^a^j min(l - n y . A.(U), hgt(Bj)),
maxj k min(l - ^Uj^j j ^ ^ Ai("). hgt(Bj n B^))
max, min(l - 11AJ(U), hgt(nj;ii Bj)), hgt(Bi n...(^ B^)] (15)

with hgt(F) = supv JIF(V), and obviously hgt(F n G) = cons(F,G).

Let P be the partition induced on the domain of X by the supports of the Aj's, i = 1 ,n.
Each subset in the partition is of the form (Hie j support(Ai)) o (Rig i support(Aj)) where
I c [l.nl. Thus if we consider an element u belonging to such a subset, we have

u e rijg 1 support(Aj) => \i\j ^U\x) = 0 =>


min(l - txy.^ JAJW. hgt(nie I ^i)) = hgt(nie I Bj). (16)

Moreover, noticing that 1 - IIAUFC") = I => 1 - HA(") = ' ^ ^ that hgt(B) > hgt(B n G),
VG, it can be checked that the only way to have proj(% ; X)(u) = 1 for
u e (Hie I support(Ai)) n (Djg I support(Aj)) is to have hgtdHie I ^i) = 1- Indeed in order
to have (15) equal to 1, we only have to consider the terms such that 1 - \i.[\. J A ( " ) = ^
which entails that the index set J is a subset of f, the complement of I in CI ,nl, but these
terms are of the form

min(l - n y . ^ jAi(u). hgtCflkg J B^)) <min(l - u y , ^ JAJC"). hsKflie I Bj)) = hgt(ni£ J Bi),
40
using (16). Thus we have the following proposition.

Proposition : A necessary and sufficient condition for a base of parallel certainty rules of the
form "if X is Aj then Y is Bj", i = l,n to be coherent is that

V I ^ , (flie I support(Ai)) n (fljg i support(Aj)) 5* 0 => hgKflie i Bi) = 1.

This proposition provides a simple procedure for checking the coherence of a family of
parallel certainty rules.

More explicit conditions can also be given when n is sufficiently small. For instance,
forn = 3, (15) writes

proj(^ ; X)(u) = max(l - ltAiuA2uA3(")> •"'"(! - liAjuA2(")< hgt(B3)),


min(l - HAiuA3(")' hgt(B2)), min(l - 11A2UA3("). hgt(B,)),
min(l - H A I ( " ) . H^2 <^ B3)), min(l - HAJ^")- hgi(Bi n B3)),
min(l - ^A3(")' hgt(Bi n B2)), hgt(Bi n B2 n B3)).

Then it can be checlced that % is coherent if and only if

hgt(Bi 0 8 2 0 8 3 ) = 1
or hgt(Bi o B2 o 83) < 1, hgt(Bi o B2) = hgt(B2 o B3) = hgt(Bi o B3) = 1,
A] o A2 o A3 = 0
or V i #j 9t k, hgt(Bi o Bj) = hgt(Bj o Bj^) = 1, hgt(Bi o Bj^) < 1, Aj o Aj^ = 0
or V i ^ j ;* k, hgt(Bi o Bj) = 1, hgt(Bj o Bj^) < 1, hgt(Bi o B|^) < 1, hgt(Bi(^) = 1,
(A; u Aj) o Ajj = 0
or V i ^ j ^ k, hgt(Bi o Bj) = 1, hgt(Bj o Bj^^) < 1, hgt(Bi o B^.) < 1, hgt(Bij) < 1,
Ak = 0
or hgt(Bi o B2) < 1, hgt(B2 o B3) < 1, hgt(Bi o B3) < 1, hgt(Bi) = hgt(B2) = hgt(B3) = 1,
(Aj u A2) o (A2 u A3) o (A) u A3) = 0
or V i 5* j ;i k, hgt(Bi) = 1, hgt(Bj) = I, hgt(Bi o Bj) < 1. hgt(Bk) < 1,
(Aj o Aj) u Aj^ = 0
or V i ^ j * k, hgt(Bi) = 1, hgt(Bj) < 1, hgt(Bk) < 1, Aj u Aj^ = 0

where fuzzy set intersection and union are defined using min and max respectively. As we
can see the condition is already much more complicated than in the case n = 2, even if it can
be made simpler with the natural hypothesis that the Bj's are normalized, i.e. Vi,
41
hgt(Bj) = 1. Namely, in the nonnalized case, the above condition expresses that if the cores
of 81,62,83 have not a common part (hgt(Bi 0 8 2 1 ^ 83) * 1), the three parallel certainty
rules are coherent if and only if Aj n A2 n A3 = 0 , and as soon as hgt(8j n B^^) < 1,
Ajpi Aj. = 0 holds, Vj, Vk, or if we prefer, ni=i,3 support(A;) ^0=» ni=i,3 core(Bi) *
0 and support(Aj) n support(A|j) * 0 => coreCBj) n core(Bi^) * 0. We recognize the above
Proposition applied to three rules.

3.3 - Coherence of Parallel Gradual Rules

Coherence condition (3) writes for gradual rules

Vu, supv minj^i n lifi,A.a) -^ HgjCv) = 1 (1T>

with |iA-(u) -* M.Bj(v) = 1 if VLA^^) ^ \^Bi<y) ^nd ^lAj(u) -> ^Bi(^) = I^Bi(v) otherwise.
Thus (17) is equivalent to

Vu, 3v, V i e I*u, \iA-(u) < HB/V) (18)

with I*y = [i, HA(U) > 0}- T^'S 'S still equivalent to

VJcIl,nl,Vaie(O,l].niej(Ai)ai^0=*niej(Bi)aj#0 (19)

where A^, B^^ denote the a-cuts of the fuzzy sets A and 8 (AQ( = {u, ^ A ( " ) - "D- These
coherence conditions have been ateady pointed out in (Dubois et al., 1988).

Easy-to-establish consequences of (18)-(19) are

V i e J. J c Il,nl, hgKriieJ Ai) < hgt(nie j 8;). (20)

This is a necessary condition for coherence (already suggested in Dubois and Prade (1982)).
However it is not sufficient as shown on Figure 2.

In Appendix, it is shown in the case of triangular membership functions that (20)


becomes a necessary and sufficient condition, when the slopes of the decreasing and
increasing parts of the Aj's are proportional to the ones of the corresponding parts of the
8j's. This encompasses the case where all the Ai's are symmetrical and identical up to a
translation and the same condition holds for the Bj's. A well-known particular case of
coherence is encountered in practice in fuzzy control when triangular membership functions
42

such thai Vi=l,n-1, Vu, ^ A ( " ) "•• l^A- i(") = ^ (which entails hgtCAj n Aj^j) = 1/2) are
used on the domain of X and the Bj's make a similar fuzzy partition.

Figure 2 : Condition (18) does not hold : {v I (0.3 (v) > IIAI (")) '^ t'^' l^Bj^"^) - M-A7(")l = 0

The case where the Aj's and the Bj's have monolonically increasing (or decreasing)
membership functions is much simpler. If ^y^ , ji^^, jig , and lUg, are all increasing, then
the two corresponding gradual rules are coherent (provided that the Bj's are normalized). Let
us consider the situation where JJ-AI > M-B > I^Ao ^ ^ increasing while jig^ is decreasing. In
this case hgt(Ai n A2) = I if Aj and A2 are normalized. Then due to (20) it is necessary to
have hgt(Bi n B2) = 1 in order to have the coherence, this is also sufficient to insure (18)
here, as it can be easily checked. Indeed the two rules "the larger X, the larger Y" and "the
larger X, the smaller Y" can be coherent only if Y increases and decreases in different
subdomains.

4. Redundancy

Redundancy is a drawback which is less important than inconsistency for a knowledge


base. However, it may have bad consequences from a computation point of view, even if
redundancy can make some consequences of the knowledge base explicit in it. Given a
collection ^ of n pieces of knowledge represented by possibility distributions rtj, i=l,n, a
piece of knowledge represented by a possibility distribution 7t will be said to be redundant
with respect to ^ if and only if

j r ^ = mini=,i u7ri<7r. (21)


43

Indeed if (21) holds, we have min(minj_2 ^ TIJ, n) = TC^ and thus n brings nothing new to
% . Moreover if % is coherent in the sense of (3), the addition to ^ of a redundant piece
of knowledge leaves the knowledge base coherent obviously. Let us examine the meaning of
(21) in case of knowledge bases made of parallel certainty, or of parallel gradual rules.

4.1. Certainty Rules

First, consider the case of the redundancy of one certainty rule "the more X is A, the
more certain Y is B", with respect to the other certainty rule "the more X is Aj, the more
certain Y is Bj". (21) writes

Vu, Vv, max(l - ^Al(u). PiBi(v)) ^ max(l - HA(U). UBC^)) (22)

i.e. Vu, Vv,


1 - HAI(U) ^ •"ax(l - HA.(U). IJ-B(V))
and
liBj(v) < max(l - \i/^(u), J I B M )

and then, provided that A is normalized, we get ^ 3 - < p-g and provided that 3v, |a.B(v) = 0,
we get lO-A - HAI • ^-^^ redundancy is, as expected, equivalent to A c Aj and B | c B. If
infy Hg (v) = X > 0, the redundancy conditions write Bj c B and (1^1 - m'n(UA'' " ^)'
or equivalently, n ^ ^ (1 - ' ' • ) - * M^Ai ^^^ a - > b = l i f a < b and a ^ b = b otherwise.

Let us now consider the redundancy of a certainty rule with respect to a set of two other
certainty rules, i.e. (21) writes

Vu, Vv, mini=i_2 max(l - HAJ(U), |iBj(v)) ^ max(l - n^Cu), PB(V))- (23)

Applying distributivity, it is equivalent to

Vu, Vv 1 - HAIUA2('^) - '"^''(^ - M " ) ' ^LB(V))


and min(l - HAJC"). ^iB2(v)) ^ ^ " ( 1 - ^^A(u)• liB(v))
and min( 1 - HA2(")' ^B J (V)) < max(l - PA(U). HBC^))
a^ I^BinB2W - ""^^(^ - M " ) ' ^lB^))•

Then, if A is normalized, redundancy entails Bj n B2 c B, and if 3v, |IB(V) = 0, it also


entails Aj u A2 3 A. Hence if Bj n B2 ^ B, or if A| u A2 ^ A (if infy HgW - 0)'
44

we are certain that the rule is not redundant. Besides, if the rule is already redundant with
respect to one of the rules in the base, the rule is obviously redundant with respect to the
base. Moreover the two rules "the more X is A;, the more certain Y is Bj", i=l,2, entail, on
the one hand, that "the more X is Aj and A2, the more certain Y is B j and B2", and on the
other hand, that "the more X is Aj or A2, the more certain Y is Bj or B2", since it can be
easily proved using distributivity and obvious boundings that

•"'"1=1,2 '"ax(l - liAi(u).tiBi(v)) ^ min[max(l - |iAinA2(")' l^BinB2(^))'


rnaxd -HAluA2•^lB,uB2W)]•

Thus, if the rule "the more X is A, the more certain Y is B" is redundant with respect to one
of the two above rules which are consequences of the knowledge base, the rule will be
redundant with respect to the base (by transitivity of <).

Thus the redundancy of a certainty rule with respect to one of the two certainty rules in a
knowledge base, or with respect to the rules generated from this base (either by intersection
of the conditions and of the conclusions, or by their union), entails the redundancy of the
certainty rule with respect to the knowledge base in the sense of (23). However the converse
is generally wrong. The situations is better for rules with non-fuzzy condition pans. Indeed
if A J and A2 are crisp subsets, the content of the knowledge base is represented by

liBinB2(v)''""e Ai 0A2
, , ,UBi(v) ifuG Ai nA2
JtX(u.v)= \ -7- ^
mB2(v) if u e Ai n A2
U if u 6 Ai n A2 .

Assume moreover that A is normalized and M.B(V) = 0 for some v. Redundancy writes Vu,
Vv, 7t:^(u,v) < max(l - HA(U)' l^B^^)) ^"'^ ^^^^ '' imp'ies A c A] u A2. Let us assume
that A is normalized. Thus, i) if A c A] n A2 redundancy implies B | n B2 c B, ii) if A c
Aj and A 5^ A] n A2, i = 1 or 2, it implies Bj c B, and iii) if A c Aj u A2 but A ^ A^,
i=l,2, then Bj u B2 £ B provided that 3 u' e A] n A2, |iA("') = ^ ^^^ ^ u" e A] n A2,
|J.A(U") = 1- In this case, the rule is redundant with respect to one of the two rules "if X is
Aj, then Y is Bj", or with respect to one of the two other rules obtained from the two
previous rules via intersection or union operations. But it may happen that either u' or u"
does not exist, i.e., 0 < supyg ATOAT I^A(") "^ I^A(" ) *- ^ ^'^^ instance ; then we only
obtain Vv, [13 j(v) < H B W ^nd [i^^'^'^) < max(l - |aA(u"), HB(V)). '•£• liBiuB2 ^ ^ " 0 -
|JA(U "). HB)- ^ " ' ^^^^ '^'' ^^^y special situation.
When Aj or A2 are fuzzy, the redundancy with respect to the base is not equivalent to
the redundancy with respect to one the four rules mentioned above (those of the base or
45

those generated via intersection or union). Indeed, let us consider the case where B j and B2
are ordinary subsets. For a fact X = UQ, the knowledge base yields Tty =
min(max(n3 1 -ttAi("o))' "i^xCja-g-, 1 - HJI^JUQ)). Suppose that for instance ^ A I ( " O ) -*
IIA^CUQ) > 0. Then clearly ny < max (jig , ^ 3 ^ , 1 - ji^^(uo)) in general, the upper bound
being the result obtained by means of the rule, "the more X is Aj n A2, the more certain Y
is Bj n B2". Thus, as soon as the rules have fuzzy conditions, there does not always exist a
rule which is redundant with respect to a rule base and which can produce the same
conclusion as the rule base for a given input.

4.2. Gradual Rules

In order to make a first step to the redundancy checking of gradual rules, let us examine
conditions under which a rule of the form "the more X is A, the more Y is B" is redundant
with respect to another gradual rule. A necessary and sufficient condition is given by
applying (21), namely

Vu, Vv, ^Aj(u) -^ ^Bi(v) 5 liA(u) -^ liB(v)- (24)

It is easy to check that a—»b>c-^d<=> ( a < b ) o r ( a > b and b > c ^ d) for Godcl
implication. Hence (24) is equivalent to

Vu.v, ifnA,(u)<HBi(v)then)iA(u)<^B(vX (25)


if H A I ( " ) > l^Bi(v) then HA(U) S HB(V) or HB(V) ^ ^Bl(v)• (26)

• HA(") - I^B(^)' ^u>v, implies that B = V (the whole domain of v) since A is normalized.
This is the trivial rule "if X is A, then Y is V" which is redundant with anything ;
• The other condition leads to ^B(V) - I ^ B I ( ^ ) ' ^ ^ ^^'^^ ^^^' >M^Bi(^)' choosing u so that
^iA](u)=l-

Moreover, (25) implies that V v £ core(Bi), HB(^) - ^"Pu 1^A(")' '•^- I^B(^) = 1 ^'"'^'^ ^ •**
normalized. So (25), (26) imply that B 3 Bj. Now, given A, Bj and B 3 B], (25) implies

Vu, JXA(U) ^ inf{|iB(v) / ^lBl(v) ^ ^lAl(u)l• (27)

When B = BJ, (27) leads to Aj 2 A, which is a rather expected result. So, the rule "the
more X is A, the more Y is B" is redundant with respect to the rule "the more X is Aj, the
more Y is Bj" if and only if B a Bj and A satisfies (27).
46

The case of redundancy with respect to a set of two gradual rules is more tricky and left
for further research.

5. Concluding Remarks

This paper presents preliminary results on the coherence of knowledge bases made of
parallel fuzzy certainty rules or parallel fuzzy gradual rules. The study of more general
knowledge bases would require a detailed study of the "transitive chaining" of fuzzy rules,
i.e. the generation of new rules through chaining. However in the particular case of so-called
possibilistic knowledge bases made of weighted classical logical formulas (which
encompasses the case of certainty rules with non-fuzzy conditions and weighted conclusions
(i.e. Jig. = max(p.3'., 1 - a) with B'j non-fuzzy)), the coherence problem corresponds to the
research of "no goods" in a possibilistic Assumption-based Truth Maintenance Systems,
where assumptions are the input literals; see (Dubois, Lang and Prade, 1991a ; Benferhat et
al., 1992). This enables us to extend coherence checking procedures available in the case of
classical logic knowledge bases (e.g. Beauvieux and Dague, 1990 ; Mcseguer, 1991 ;
Loiscau, 1992) to possibilistic knowledge bases.

Appendix : Coherence of gradual rules with triangular membership


functions

Let us consider a collection of fuzzy gradual rules of the form "the more X is Aj, the
more Y is Bj" where the Aj's and Bj's have triangular membership functions. Let a; (resp.:
b[) denote the peak and [a'i.a'j] (resp.: [b'i, b'j]) the support of A; (resp. : Bj). Sec Figure 3.

32 "1 U 91 a2 J3'2bl b2 b'l

Figure 3
47

We further assume that g'i ^a'i+i anda'j ^a'i+i.h'i S h'j+j and b'j < b'j^] (i.e. a fuzzy
set only overlaps with its immediate neighbours). Then the necessary and sufficient
condition for coherence (18) writes

Vi=l,n-1, Vu, 3v, |iiAi(u) ^ ^ ^ 8 ; ^ ^n^ HAi+i(") ^ ^^8;+] W

or equivalently
Vi, Vu. (Bi)^^,(„) n (Bi+i)^^^^^(„) ^ 0.

For convenience we make i = 1, i + 1 = 2 in the following. Introducing the slopes «] =


1 / (ai - 1 ' i ) < 0, a2 = 1/ (32 - a'2) > 0, Pi = 1 / (bi - b'l) < 0, P2 = 1/ (b2 - b'2) > 0-
we have for u as in Figure 3, HAI(U) = " I ( U - 3'l)> I^AoW = ^2(^ " 32) which leads to the
coherence condition

^ u - Fi) + b'l > ^ u - a'2) + b'2


Pi §2
i.e.

(«L_|2U|2^.2-^'l+b-,-b'2>0. (A)

This condition should hold for any u in the interval [max(aj,a'2). niin(a2^'i)]- Moreover the
necessary condition for coherence hgt(Ai n A2) S hgt(B j n B2) writes

hgt(Ai n A2) = "^ " ^ ^ ( a ' 2 - a ' l ) < ^^ P^(b'2 - b'l) = hgt(Bi n B2). (B)
a2-«i fc-Pi
Then it can be easily checked that hgt(Ai n A2) 5 hgt(Bj n B2) becomes a sufficient
condition for coherence if _
tt) _ a 2

since then conditions A and B coincide. This expresses the respective proportionality of the
slopes of the increasing and decreasing parts of the Aj's with the ones of the Bj's. A
particular case where this latter condition holds is when cTi = - a j and Pi = -p2. ie- when
the Aj's have symmetrical and identical membership functions, and a similar condition is
satisfied by the Bj's; this situation is in agreement with the idea that Aj models "close to
48
a^", which entails the symmetry and the identity of shapes of the Aj's if we want to have the
same modelling of the notion of closeness everywhere.

References

Ayel M., Rousset M.C. (1990) La Coherence dans les Bases de Connaissances. Cepadues-
Edilions, Toulouse, France.
Beauvieux A., Dague P. (1990) A general consistency (checking and restoring) engine for
knowledge bases. Proc. of the 9th Europ. Conf. on Artificial Intelligence (ECAr90)
(L.C. Aiello, ed.), Stockholm, Sweden, Aug. 6-10, 77-82.
Benferhat S., Dubois D., Lang J., Prade H. (1992) Hypothetical reasoning in possibilistic
logic : basic notions, applications and implementation issues. In : Advances in Fuzzy
Systems : Applications and Theory Vol. I (P.Z. Wang, K.F. Loe, eds.), to appear.
Bourrelly L., Chouraqui E., Portafaix V. (1992) Les topoi pour la validation structurclle
d'une base de connaissances. Joum6e Francophone de la Validation et de la Verification
des Systfemes h Bases de Connaissances, Dourdan, France, Apr. 16.
Dubois D., Lang J., Prade H. (1989) Automated reasoning using possibilistic logic :
semantics, belief revision, and variable certainty weights. Preprints of the 5th Workshop
on Uncertainty in Artificial Intelligence, Windsor, Ont., 81-87. Revised version in IEEE
Trans, on Data and Knowledge Engineering, to appear.
Dubois D., Lang J., Prade H. (1991a) A possibilistic assumption-based truth maintenance
system with uncertain justifications, and its application to belief revision. Proc. of the
ECAI Workshop on Truth-Maintenance Systems (J.P. Martins, M. Reinfranck, eds.),
Stockholm, Aug, 6, 1990, Lecture Notes in Computer Sciences, n° 515, Springer
Verlag, Berlin, 87-106.
Dubois D., Lang J., Prade H. (1991b) Fuzzy sets in approximate reasoning — Part 2 :
Logical approaches. Fuzzy Sets and Systems, 40,203-244.
Dubois D., Martin-Clouaire R., Prade H. (1988) Practical computing in fuzzy logic. In :
Fuzzy Computing (M,M. Gupta, T. Yamakawa, eds.). North-Holland, Amsterdam,
11-34.
Dubois D., Prade H. (1982) Towards the analysis and the synthesis of fuzzy mappings. In :
Fuzzy Sets and Possibility Theory — Recent Developments (R.R. Yager, ed.),
Pergamon Press, New York, 316-326.
Dubois D., Prade H. (1991a) Fuzzy sets in approximate reasoning — Part 1 : Inference with
possibility distributions. Fuzzy Sets and Systems, 40, 143-202.
Dubois D., Prade H. (1991b) A note on the validation of possibilistic knowledge bases.
BUSEFAL (IRIT, Univ. P. Sabatier, Toulouse, France), 48, 114-116.
This page intentionally blank
49

Dubois D., Prade H. (1992) Gradual inference rules in approximate reasoning. Information
Sciences, 61(1,2), 103-122.
Hall L.O., Friedman M., Kandel A. (1988) On the validation and testing of fuzzy expert
systems. IEEE Trans, on Systems, Man and Cybernetics, 18, 1023-1028.
Kinki61cl6 D. (1992) Detection des incoherences potentielles dans les bases de connaissances
floues : vers un modele conceptuel. Presented at "leres Rencontres Nationales des Jeunes
Chercheurs en Intelligence Artificiclle", Rcnnes, France, Sept. 7-9.
Larsen H.L., Nonfjall H. (1989) Modeling in the design of a KBS validation system. Proc.
of the 3rd Inter. Fuzzy Systems Assoc. (IPSA) Congress, Seattle, Aug. 6-11, 341-344.
Larsen H.L., Nonfjall H. (1991) Modeling in the design of a KBS validation system. Int. J.
of Intelligent Systems, 6, 759-775 ; Erratum : 7, 1992, p. 391.
Loiseau S. (1992) Refinement of knowledge bases based on consistency. Proc. of the 10th
Europ. Conf. on Artificial Intelligence (ECAr92) (B. Neumann, ed.), Vienna, Austria,
Aug. 3-7, 845-849.
Meseguer P. (1991) Verification of multi-level rule-based expert systems. Proc. of the 9th
National Conf. on Artificial Intelligence (AAAI'91), July 14-19, 323-328.
Nguyen T.A., Perkins W.A., Laffery T.J., Pecora D. (1985) Checking an expert systems
knowledge base for consistency and completeness. Proc. of the 9th Inter. Joint Conf. on
Aruficial Intelligence (IJCAI'SS), Los Angeles, CA, 375-378.
Nguyen T.A., Perkins W.A., Laffery T.J., Pecora D. (1987) Knowledge base verification.
AI Magazine, 8(2), 69-75.
Turksen I.B., Wang Q. (1992) Consistency of fuzzy expert systems with interval-valued
fuzzy sets. Proc. of the Abstracts and Summaries of the 1st Inter. Conf. on Fuzzy
Theory and Technology (FT&T'92) (P.P. Wang, ed.), 225-230.
Yager R.R., Larsen H.L. (1991) On discovering potential inconsistencies in validating
uncertain knowledge bases by reflecting on the input. IEEE Trans, on Systems, Man and
Cybernetics, 21,790-801.
Zadeh L.A. (1979) A theory of approximate reasoning. In : Machine Intelligence,
Vol. 9 (J.E. Hayes, D. Michie. L.I. Mikulich, eds.), Elsevier, New York, 149-194.
CHAPTER 3

SOFTWARE REPRESENTATION OF FUZZY SETS


AND LOGIC

Sozo Yamamoto

Central Research Laboratories


Matsushita Electric Industrial Co., Ltd.
3-1-1, Yagomo-Nakatnachi, Moriguchi, Osaka 570, Japan

Abstract
Problems and their solutions in representing fuzzy sets and logic in software sys-
tems are discussed in this article.
Fuzzy set theory is getting to be widely used as a tool for managing uncertainty
in complicated systems. Interactions of fuzzy set theory and information processing
is called 'fuzzy information processing', where software representation of fuzzy sets
and logic is an important subject. Fuzzy information processing is an important
area of research but is not fully investigated. This is because it has some problems.
For one thing, a fuzzy set can be represented with various kinds of complicated
d a t a structures. Another problem is that there are effectively infinite number of
operations defined on fuzzy sets.
Some fuzzy logic based systems have been proposed, like fuzzifications of Pro-
log, fuzzy control shells, and specially designed languages for fuzzy set processing.
But they are not fully acceptable as a uniform platform of fuzzy information pro-
cessing. T h e trade-off of flexibility, convenience and performance remains.
Object-orientation can be a key to solve these problems. Because object-
orientation has the ability of d a t a abstraction and information hiding, it is suitable
for fuzzy information processing which needs manipulation on complicated data
structures. An object-oriented fuzzy set manipulation system named F O P S was
developed on such ideas. Two basic classes for fuzzy sets, ArrayedFuzzySet and
PairedFuzzySet, are provided and they can be used interchangeably. W i t h its
support for fuzzy logic and development environment, F O P S can serve as a good
starting point of fuzzy logic based software. Outline of the system and internal
d a t a structures are discussed in this article.
51
S.G. Tzafeslas and A.N. Venelsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 51-68.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
52

1. Introduction
Great progresses have been made in the application of fuzzy set theory and fuzzy
logic. Most remarkable area of application is 'fuzzy control', where fuzzy logic
was first applied to plant control systems and its use is expanding to consumer
products. Most of fuzzy control systems uses fuzzy inference with max-min or
max-product composition, similar to the algorithm that first used by Mamdani
in 1970s. Some algorithms are developed to refine fuzzy controls systems but the
main part of algorithm stays the same.
Triggered by the success of fuzzy control systems, other ways of applying fuzzy
set theory are also investigated. They are usually referred t o as 'fuzzy expert sys-
t e m s ' , and their purpose are to combine the idea of fuzzy theory with AI based
approach toward knowledge processing. These approaches can be more generally
viewed as 'fuzzy information processing', t h a t is to bring fuzzy idea into informa-
tion processing systems.
These systems have variety of algorithm and each of t h e m are built on some
software basis like Lisp or C language. But if a system is based on fuzzy set theory
or fuzzy logic, the system must have some part t h a t is implementing fuzzy set
representation and fuzzy logic. So there will be a need for a concrete basis for fuzzy
information processing, which enables users to treat fuzzy sets or fuzzy concepts
in the same manner with other components without implementing software for
processing fuzzy set. Notations of floating point numbers like '1.23E4' or '5.6e-
7' are understood by most of common computer languages. Likewise, if fuzzy
sets can be treated conveniently in programming languages, it will help software
development and researches related to fuzzy logic.
In this article, methods of representing fuzzy sets in software are discussed and
a brief survey is made on software systems for fuzzy knowledge processing and fuzzy
set representation. After t h a t , F O P S , which is an object-oriented software for fuzzy
set manipulation, is introduced to show the effectiveness of object-orientation for
fuzzy set processing and fuzzy information processing.

2. Fuzzy Sets and Logic in Software


Fuzzy sets can be described in various kinds of d a t a structures. A fuzzy set is
basically a mapping from some universe of discourse to unit interval [0,1]. A fuzzy
set A on an universe of discourse U can be defined as,

A^ I fiA{u)/u (1)

where pL^ : U -^ [0,1] is the membership function of fuzzy set A. So a fuzzy


set is expressed with a shape in two-dimentional space with grade and universe
axis, which typically is triangular, trapezoidal, or bell-shaped. To describe this
information, there are several ways.
53

Fuzzy sets in functions(Fig. l-(a)) One simple way is to describe the fuzzy
set in a function which express the membership function fi^. For example, a
membership function for bell-shaped fuzzy set can be expressed as

1 + p{u — ay
This method is achieved with less memory than other ways of representation, but
is less general because the result of operation can not necessarily be represented
in the same manner.
Pointwise Definition(Fig. l-(b)) Another approach is to describe a fuzzy set
with a polygonal line, giving ea<:h bending point with an element in universe of
discourse and corresponding grade of membership. A fuzzy set with triangular
membership function can be described a^

{0/0-0/2.5-1/4-0/5.5-0/10} (3)

where its universe of discourse is [0,10] interval.


Linear interpolation is normally supposed to assure that grade of membership
can be obtained for every element in the universe of discourse. This method has
the same problem with description in functions. Results of operations can not
necessarily be represented in pointwise description.
Vector Representation(Fig. l-(c)) More general and most widely used ap-
proach is to represent a fuzzy set in a vector of grades. If the universe of discourse
is defined and discretized by 0.5 step, the previous fuzzy set is expressed with a
vector
[0,0,0,0,0,0,0.33,0.67,1,0.67,0.33,0,0,0,0,0,0,0,0,0,0]. (4)
In this method, operations on fuzzy sets are easier than previous two meth-
ods. Fuzzy set operations such as union or intersection can be executed simply as
element by element operations between two vectors, and their results are in the
same form. This kind of fuzzy set representation is often used in expert shells for
fuzzy control for other fuzzy inference based systems. For fuzzy control systems,
universes of discourse are usually fixed range in numeric scale, and operations
needed for fuzzy inference are variations of union and intersection. Moreover, con-
trol shells usually need fast execution of inference. Fuzzy set operation in vector
representation is suitable for this purpose.

Paired Representation(Fig. l ) - ( d ) ) Most general type of fuzzy set represen-


tation is this paired representation, vector representation does good if universes
of discourse are fixed ranges in numeric scale, but fuzzy sets in general are not
restricted by definition. For example, a fuzzy set of beautiful women can be
{0.8/'Ann', 0.6/'Beth', 0.9/'Cathy',-• •}, though its universe of discourse cannot
be determined. Another case happens when the universe of discourse consists of
54

fuzzy sets. This kind of fuzzy set is called 'level-2' fuzzy set and is difficult to be
described in ottier ways.
In paired representation, fuzzy sets are described like,

yl = / z , / u i + / / 2 / W 2 + ••• + /'r,/«n (5)

or more generally,
n
A = Ylnilui. (6)
This method is flexible enough to permit almost all kinds of fuzzy sets.

Q Level Sets Representation(Fig. l - ( e ) ) An a level set of a fuzzy set A\s a.


crisp set defined as

A^ = {u\iiA{u)>a,ueU) (0<Q<1). (7)

And a fuzzy set can be represented with a family of these a level sets as

A / ccA, (8)
^ €>€(0,ll
(0,1]

and if the fuzzy set is convex, each a level set becomes an interval in U. So a fuzzy
set are described with a set of numeric intervals.
With this representation, fuzzy number operations can b e handled in a simple
way. For example, a two operand operation * between two fuzzy sets A and B can
be executed as
A*B=I {A-kB)c= I A^*Ba (9)
•^ae(o,il -'oe(o,i]
and the right hand side can be computed as operation on intervals.

3. A Brief Survey on Fuzzy Logic Based Softwares


Here a brief survey is made about software systems based on fuzzy set theory and
fuzzy logic. Many systems have been proposed and they can be clcissified in three
categories.

3.1 S o f t w a r e for M a n a g e m e n t of U n c e r t a i n t y
T h e first category is software systems for management of uncertainty. One of the
earliest works is PRUF[1] which was proposed by Zadeh. T h e main aim of P R U F
was to represent the uncertainty in natural language in a formal manner. P R U F
has its hash on possibility distribution rather than t r u t h value. Uncertainty or
vagueness in natural language is represented in terms of possibility distributions
and fuzzy propositions. T h e main interest in this system was the representation
of natural language on computer systems, using fuzzy logic as a tool for managing
uncertainty.
55

(a) In Function (b) Pointwise

<1
• • • I•
• • • ; : ;•
• • • ; ; I ! !•
• ! ! ! : ! : • •

T '1'l»»»<
U
(c) Vector Representation (d) Paired Representation

• •

(e) a level sets

Figure 1: Several Types of Fuzzy Set Representation


56

L.P.L. language[2, 3] is also a system for managing uncertainty in programming


language. It has the ability of treating fuzzy predicates and control structures
with fuzzy notion. These control structures help to build linguistic and fuzzy
algorithmic procedures.
Another approach toward management of uncertainty wa.s to introduce fuzzi-
ness in Prolog language. As Prolog is based on the first order predicate calculus, so
fuzzified Prologs are based on fuzzy logic. There are several levels of fuzzification.
Most fundamental level is to allow fuzzy value(in [0,1] interval) for truth values of
clauses and predicates. This type can be extended to more flexible systems that
allow fuzzy values for all Several systems are such a.s FS-Prolog[5] and Fprolog[4].
There are also some expert systems that have the notion of fuzziness in certainty
factor or in degree of confidence. FL0PS[6, 7, 8] is one of these systems. FLOPS
allows 'fuzzy' values for confidence of data and relation between left hand side and
right hand side of rules. This approach can be compared to CF(certainty factor)
in expert systems like MYCIN.
Other parts of expert systems, such as condition part of rules or data itself,
can also have fuzziness. For example, a rule "If X is rather tall then • • •" or a fact
"Peter is short" are admitted in some expert systems. System Z-II[9] can handle
this kind of uncertainty using fuzzy set theory and certainty factor.
3.2 Fuzzy Control Shells
Many control shells have been proposed to support the development and execution
of fuzzy inference used for fuzzy control systems. Most of them consist of graphical
user interface for editing fuzzy rule base and membership functions and sometimes
a simulator or knowledge acquisition tools, working as development tools. Some
systems are equipped with dedicated hardware for high-speed processing of fuzzy
inference, as fuzzy control needs high speed execution for some applications.
Fuzzy-C Compiler system[10] is one of the most refined systems of this kind.
Bcisically Fuzzy-C Compiler is a translator from Fuzzy Programming Language(FPL)
to C language, which is oriented toward fuzzy control systems and there are tools
for building fuzzy control systems. The most distinct feature of this system is that
hardware solution is also provided. There are specially designed chip for fuzzy
inference. Unlike other fuzzy logic chips, the chip(named FC-110) works with a
machine language which provides not only fuzzy inference but also other fuzzy
logic related instruction.

3.3 Fuzzy Set Representation


The last category is software systems designed for fuzzy set processing in general.
They are usually based on some standard programming language, taking fuzzy set
processing into account. These systems are motivated by the needs for flexibly
manipulating fuzzy theory based systems with software.
One of the earliest works Wcis FSTDS (Fuzzy Set Theoretic Data Structure)
57

system[ll]. FSTDS is an extension to Fortran and can represent and manipulate


fuzzy sets in general. It has a pointer-connected data structure and the data
structure is using the 'paired representation'. By providing 'tuple area' for elements
and grades, this system realized the representation of complicated fuzzy sets like
L-fuzzy sets or type-n, level-m fuzzy sets.
A Lisp based "Fuzzy Set Manipulation System in Lisp" [12] was designed later
by the same research group. This system is provided as an extension to Lisp
and represent fuzzy sets in paired style. By using tuple for representing grades
of L-fuzzy sets and elements of relations, general representation of fuzzy sets are
achieved. This system also provides a simple way to describe fuzzy sets in ordinally
Lisp programs. Another Lisp based system FLISP[13, 14] provides similar data
structure for fuzzy sets.

4. Object-Orientation in Fuzzy Software


Many software systems have been designed for fuzzy information processing, as
described in the previous section. But these systems have limited capabilities
in the sense they are internally representing fuzzy sets in a single type of data
structure. Fuzzy sets can be represented in many ways and each representation
ha^ different characteristics in its abilities in representation and costs for memory
and computation. So it is very difficult to represent every kinds of fuzzy sets in
one specified method, and the integration of various fuzzy set representations are
required.
In addition, operations on fuzzy sets heis wide variety. Representation of fuzzy
sets requires complicated manipulation over data-structures. Because a data-
structures and procedures for them are described separately in many procedural
languages, the corresponding procedures must be described separately for each
data-structure. It is therefore difficult to ensure the consistency of descriptions of
a data structure and accompanying procedures.
Object-oriented paradigm, or object-orientation, is a framework in software
engineering. The essence of object-oriented paradigm is to represent elements in
systems as 'objects' that know how to act themselves, and to execute a program
by sending messages to objects. By representing fuzzy sets as objects, the demand
for integrating fuzzy set manipulation and numerical or symbolic processing is con-
sidered to be solved; thus fuzzy set processing is integrated with other information
processing techniques.
On such idea, a software system named FOPS was developed. This system is
based on the Smalltalk[15] language and intended to be a prototype of an object-
oriented software for fuzzy information processing. This system is to demonstrate
the effectivities of object-oriented approaches to fuzzy set manipulation, serving
as an experimental tool for fuzzy information processing.
58

5. FOPS: a Fuzzy Set Manipulation System


F0PS[16] is a system for manipulating fuzzy sets and it provides a way to rep-
resent and manipulate fuzzy sets on programming language basis. FOPS is con-
structed on Smalltalk system which is a representative object-oriented language.
T h e Smalltalk system is said to be an environment as well as a language, with its
a b u n d a n t class libraries and sophisticated development environment. By adding
the functions for fuzzy set manipulation on it, an environment suitable for exper-
imental implementations of information processing with fuzziness is realized.
F O P S is designed to satisfy following demands;

• Easy description of fuzzy sets,


• Versatile representation of fuzzy sets,
• Representation of fuzzy relations,
• Choice of internal representation and their integration.
To represent fuzzy sets in systems satisfying these demands, some classes are
defined which deals with creation and manipulation of objects t h a t represent fuzzy
sets. Also, some tools are built, like inspectors (tools for looking into objects)
specialized for fuzzy sets.
Changes in original system are small, except for the change in parser for fuzzy
set description and system defined methods of max: and min: for class Number,
preserving the benefits of Smalltalk system.

5.1 R e p r e s e n t a t i o n of F u z z y S e t s
I n t e r n a l R e p r e s e n t a t i o n s Two basic classes. ArrayedFuzzySet and PairedFuzzy-
Set, and other derivations are provided to represent fuzzy sets in F O P S .

ArrayedFuzzySet(AFS) ( F i g . 2 - ( a ) ) This class is for fuzzy sets with arrayed


representation. This class realizes a method of fuzzy set representation that keeps
grades of membership in an array, which is in general a n-dimensional array in
n-ary fuzzy relation. Its universes of discourse are represented with a sequence
of indexable collections (SequenceableCollection). this representation is effective
in such cases that universes of discourse can be specified or greater portion of
elements have non-zero grade.
It is also effective when universes of discourse are intervals of number, with the
compact representation of intervals. Another class specialized for linguistic truth
values are defined as LinguisticTruthValue(LT\/) as one of its subclcisses.

PairedFuzzySet(PFS) ( F i g . 2 - ( b ) ) This class is for fuzzy sets in paired repre-


sentation. In this class, fuzzy sets are represented with a linear list of pairs, each
pair hold an element in universe of discourse and corresponding grade. This rep-
resentation is effective when universes of discourses can not be specified or small
59

Universe of Discourse Array of Membership Values


(universes) (gradearray)

0 0.3 0.7 0.5 0 1

0 0.3 0.7
0.5 0 1

{0.3/Ca'a.&5), 0.7/('a'&&7), 0.5/Cb-&&3), 1/Cb'&&7)


from: #('a' 'b') to: (3 to: 7 by: 2)}
(a) Arrayed Fuzzy Set

0.3 0.7 0.5


'a'&&5 r - ^ ' a ' S S 7 'b'fi£3 'b'Sfi7

1 2
a'l 5

{0.3/('a'&&5), 0.7/Ca'&&7), 0.5/Cb'&&3), 1/Cb'&&7)}

(b) Paired Fuzzy Set

Figure 2: Fuzzy Set Representation in F O P S

ratio of elements have non-zero grade.


In each representation, elements in universe of discourse and grades are repre-
sented by objects as well as the fuzzy sets. In plain fuzzy sets (grades and elements
are not fuzzy), elements and grades are numbers like Integer or Float, but they can
also be fuzzy sets, yielding type-2 fuzzy sets and level-2 fuzzy sets. More general
fuzzy sets are produced with recursive application of this step.

D e s c r i p t i o n of F u z z y S e t s Fuzzy sets are described with following form of


expression in F O P S .
Segments of text enclosed by ' { ' and ' } ' are interpreted as 'fuzzy set expression',
in which binary methods ' / ' and ',' are interpreted as separator between grade and
element and summation operator in fuzzy set, respectively, syntax for fuzzy set
description is shown in Figure 3.
60

primary variable name


Vw.
literal

block

s<(>.4 expression K>>-"


^•({V-^ fuzzy set expression "*Vi)—

fuzzy set
expression empt'i
\ • grade — ^ v / y ~ ^ elements -<

O
uraverses

^-^ ON: - ^

' y-Hltv:| 7 • step

> from: — • universes — • t o : - • universes y

fr universe

«£

elements ^ element

W^-^ element

fi£ a -H)

grade, element, universe, step: primary

Figure 3: Syntax for fuzzy set description


61

An expression is internally expanded into a sequence of message expression,


the result falls into an object whose class is either of AFS, PFS or LTV. Expres-
sions without description about universes of discourse yield PFS, expression with
on;, ON: or from:to: yield an AFS (with fromito:, the result is a fuzzy relation).
Expression with Itv: or LTV: yield an LTV.
With message in capital letters (ON: and LTV:), linear interpolation are done
in object creation.
5.2 O p e r a t i o n s on Fuzzy Sets
Operations on fuzzy sets are executed by sending messages to fuzzy sets. They
are implemented as 'methods' of classes. It will be confusing if each of the various
kinds of classes has different way of manipulation, or if they are not compatible in
operations. Conversion between classes are supported to solve this problem.
PFS has no information about its universe of discourse and its structure is more
flexible than AFS. So it can not be converted into AFS without information about
its universe of discourse. Message like on: or fronn:to: is used to give information
about universe of discourse.
AFS has more information than PFS and can be converted into PFS without any
additional information. This conversion can be explicitly executed with a method
asPairedFuzzySet. PFS is also used as a intermediate form for input/output of AFS
or LTV.
The notion of 'generality' in Smalltalk is used to make such conversion auto-
matically. This indicates how universal the class is, an instance of a class of smaller
generality can be converted into one of larger generality. When a operation is ex-
ecuted between two fuzzy sets of different kinds of representation, messages for
conversion(coercion) is issued to fuzzy set with smaller generality. After the two
fuzzy sets get to be of the same type, appropriate operation is executed. These
steps are the same with the way Smalltalk system handles the subclasses of Num-
ber, that is one of the reasons that fuzzy sets defined here can be treated in the
same way with system defined number objects. Some samples of coercion are
shown below.
3+{0/l, 1/2, 0/3 ON: (1 to: 3 by: 0.5)}.
" {(l/2)/4.5, 1/5.0, (l/2)/5.5 on: (4.0 to: 6.0 by: 0.5)}"
Integer and ArrayedFuzzySet."
2 * {0.3/0.8, 1/1.3, 0.6/1.6}.
" {0.3/1.6, 1/2.6, 0.6/3.2}"
Integer and PairedFuzzySet."
{0.4/0.3,1/0.4,0.5/0.5} union: {0/0.5,1/0.8 LTV: 0.1}.
" {0.4/0.3, 1/0.4, 0.5/0.5, (l/3)/0.6, (2/3)/0.7, 1/0.8, 1/0.9, 1/1.0}"
PairedFuzzySet and LinguisticTruthValue"
62

5.3 Linguistic Truth Value


Linguistic truth values are widely used in fuzzy theoretic information processing.
It is a kind of fuzzy sets, so it can be represented by either of AFS or PFS. But
linguistic truth value has some characteristics in particular, namely, their universe
of discourse is confined to [0,1] interval and some special operations are defined.
Then a class LTV is defined as a subclciss of AFS. They have fixed universe of
discourse([0,1]) and methods are re-defined in LTV to keep their universes of dis-
course of the result of operations.
A sample is given in which type-2 fuzzy sets are described with linguistic truth
values.
small := {1/0, 0/0.4 LTV: 0.1}.
middle := {0/0.1. 1/0.5, 0/0.9 LTV: 0.1}.
large := {0/0.6, 1/1 LTV: 0.1}.
fsetl : = {large/'a', large/'b' on: # ( ' a ' 'b')}.
fset2 : = {middle/'a', small/'b' on: # ( ' a ' 'b')}.
"fsetl intersection: fset2.
•• {{(l/4)/0.2, (l/2)/0.3, (3/4)/0.4, 1/0.5, (3/4)/0.6,
(l/2)/0.7, (l/4)/0.8 Itv: 0.1}/'a', {1/0.0, (3/4)/0.1,
(l/2)/0.2, (l/4)/0.3 Itv: 0.1}/'b' on: # ( ' a ' 'b' )}"
5.4 Fuzzy Relations
A fuzzy relation is a fuzzy set whose universe of discourse consists of a Cartesian
product of collections. A notion of Sequence is used to describe the dimensions in
universes of discourse. Fuzzy relations are represented by making a Sequence be
the universes of discourse (and elements in them).
Logical operations are valid for fuzzy relations, and some relational operations
such as composition, projection, cylindrical extension are supported.
Samples of fuzzy relational operations are as follows,
fsetl := {0.1/'a',0.3/'b',0.5/'c'}.
frell := {0.2/('a'«i&l),0.5/('a'A!Si3), 0.9/('b'.!^&l),0.3/('c'&&2)}.
"fsetl compose: frell
" {0.3/1, 0.3/2, 0.1/3}"
frel2 := {0.4/(li^&l),0.6/(l&&2),0.7/(l<!^i^3),l/(l&&4),
0.9/(2&A!l),l/(2&&2),0.1/(2&&3) from: (1 to: 2) to: (1 to: 4)}.
frel3 := frel2 cylindricalExtension: 2 with: (1 to: 3).
"frel4 := frel3 projection: 2 &i&i 3.
" {0.9/(l&&l),l/(l&&2),0.7/(l&&3),l/(I&&4), 0.9/(2&&l),
l/(2&&2),0.7/(2&&3),l/(2&&4), 0.9/(3&&l),l/(3&&2),
0.7/(3&&3),l/(3&&4) on: (1 to: 3) kk (1 to: 4)}"
63

Figure 4: Tools in FOPS

5.5 Tools for Interface


Many software development tools, such as browsers and debuggers, are provided in
Smalltalk system. Tliey can also be used on FOPS and provide a. good program-
ming environment. Furthermore, some tools specialized for fuzzy sets are provided
like inspectors(Figure 4). An inspector is a tool for seeing and changing the inter-
nal states of objects. Two inspectors are implemented reflecting the structures of
AFS and PFS as fuzzy sets.
Fuzzy set objects have printOn: method which gives character base description
of the object. The printOn: method for fuzzy sets are implemented to give strings
in the form of 'fuzzy set expression', which can be evaluated by the Smalltallc
Compiler.
AFS has a primitive but useful methods for graphical interface. Fuzzy sets can
be graphically presented on display. A class FuzzySetMonitor is prepared to display
64

fuzzy sets in windows (views). By evaluating an expression


FuzzySetMonitor open: H^NameOfMonitor
a new view is opened. And by evaluating
NameOfMonitor monitor: fuzzySet
the monitored fuzzy set is displayed in the view. Multiple monitors can be opened
and can be referred to by different names.
5.6 Extensions t o t h e S y s t e m
Defining O p e r a t o r s on Fuzzy Sets Many kinds of operations are used on
fuzzy sets. Just for intersection of fuzzy sets, infinite number of operators are
proposed. As it is impossible to support all the operators, implementation is
limited to distinguished operators, leaving other operators open to user's definition.
The definitions of new operations can be easily done with the use of a method
performBlockToGrade:with:. For example, to add a method for bounded difference
to AFS, a new method, say bDif: can be defined cis follows.
ArrayedFuzzySet methodsFor: 'logical operations'
bDif: fuzzySet
"self performBlockToGrade:
[:a :b I (a — b) abs] with: fuzzySet

O t h e r T y p e s of Fuzzy Set As stated before, the two kinds of fuzzy set repre-
sentation are ready for use in the system, but other ways of representation can be
easily added on to the system.
Newly created cla^ss should suffice following conditions;
1. Is one of subclasses of ArithmeticValue,
2. Operations are executable between two objects in that class,
3. Have coerce: method to convert into fuzzy set representations with higher
generality,
4. Objects with lower generality can be converted into instances of the class.
For example, to define a fuzzy set whose membership function is given by a func-
tion, it can be represented as a object that consist of universes of discourses and
a block for the function.
Some special kinds of fuzzy sets can be represented by assigning some specific
class of objects to grades, because operations on grade values are interpreted by
each objects representing grades. For example, representation and operations of
L-fuzzy sets can be accomplished by defining a class for partially ordered objects
(like tuples) and assigning them to grade values of fuzzy sets. Also, assigning
interval values to grades makes the fuzzy sets can be applicable to fuzzy interval
logic or inverse problems of fuzzy relations.

In summary, FOPS has following features:


65

1. Easy and flexible description of versatile fuzzy sets


2. Integration of multiple internal representations
3. User-friendly interface
FOPS is now working on ParcPlace Smalltalk systems (Version 2.5 and Release
4) on Sun workstations.

6. Comparison of Representation Methods


A simple performance test was made on FOPS system to evaluate the real dif-
ference in the amount of computation between representation methods. Memory
capacity and computation cost depend on the ways of representation. But it is
not so easy to evaluate the difference of computation cost, because it also heavily
depends on implementation. In operations on fuzzy sets, it sometimes takes much
computation to get or store back a grade of membership for a given element. Then
the load of computation does not depend only to the number of operations between
grades of membership.
In FOPS, there are two basic types of fuzzy set representation, namely arrayed
representation and paired representation. Actual running times were measured
on a real implementation, which will show the general characteristics of the rep-
resentations. Three operations were picked up as illustrations of three kinds of
operations.
(a) fsetl intersection: fset2
(b) fsetl min: fset2
(c) fsetl compose: frell
where, fsetl and fset2 are fuzzy sets like,
AFS; {0.5/1, 0.5/2, 0.5/3, 0.5/4 on: (1 to: 4)}
PFS: {0.5/1, 0.5/2, 0.5/3, 0.5/4}
for 'number of element' — 4. Fuzzy relation frell is like
AFS: {O.S/{liiSil). 0.5/(l&&2), 0.5/(2&&l), 0.5/(2&&2)
from: (1 to: 2) to: (1 to: 2)}
PFS: {0.5/(l&&l), 0.5/(l&&2), 0.5/(2&&l), 0.5/(2&&2)}
for 'number of element' = 2.
Intersection operation was taken an illustration of two operand fuzzy set oper-
ations. The result is shown in Figure 5-(a), which shows that AFS is about 4 times
faster than PFS. This is because there is no need to make calculation for elements
in universe of discourse.
Figure 5-(b) is the result of min: operation, that is the illustration of operation
based on extension principle. The difference is not so evident but PFS is a little
faster. This is because grade operation is needed for all combinations of elements
in such operations, regardless of the representation method.
66

- Time (msec) -

10.00-! >
;
yii'"'

; 5^

2 4 8 16 32 64 126 2S6
Nuntier of elBments '

© AFS A Pf S

(a) Fuzzy Set Operation (b) Extension Principle

(c) Fuzzy Relation

Figure 5: Comparisons of Operation Speed

Most evident difference is in the result of compose: operation. It is the compo-


sition operation between unary and binary fuzzy relations. Relational operations
can be treated as matrix operation, so arrayed representation scores higher speed.
In Figure 5-(c), PF5 is 10 times faster than PFS at 32 elements, and this difference
is greater at more number of elements.
This result may not be fair to PFS, for it is assumed that all elements in
universe of discourse have non-zero membership. In some cases, some elements in
universe of discourse have zero for grade of membership and can be omitted from
PFS. Amount of memory and computation depends on the number of elements
with non-zero membership, where it depend on the whole number of elements in
universe of discourse for PairedFuzzySet. So PFS gives better performance if large
portion of elements have zero membership.
67

7. Conclusion
Software for fuzzy information processing is a important but not sufficiently in-
vestigated area of research. Its need is indicated with the fact that each system
that is based on fuzzy set theory is implementing diiferent set of codes for fuzzy
set processing. Some systems have been developed, but most of fuzzy set based
software are still built on conventional computer languages.
It is a natural way to treat fuzzy sets as d a t a types, as with other compo-
nents in software. Fuzzy set manipulation system F O P S was aimed to utilize the
merits of object-oriented paradigm for fuzzy set manipulation. By integrating
two different types of fuzzy set representation and treating fuzzy sets as numbers,
treatment of fuzzy sets in programming language became much clearer. Two fuzzy
set representations, ArrayedFuzzySet and PairedFuzzySet, are implemented and
interchangeably used in F O P S . These two have different characteristics in memory
usage and computation load, so users can choose appropriate d a t a structure for a
given application.
It is expected that such fuzzy set representations are standardized into some
form and get to be included in many computer languages, to promote researches
in fuzzy information processing or fuzzy knowledge processing.

This work was performed in part at the Laboratory for International Fuzzy Engineer-
ing Research(LIFE). The author wishes to thank Dr. Seiji Yasunobu and Mr. Yoshifumi
Inoue for their collaboration at LIFE and Professor Umano of Osaka University for
helpful discussions.

References
[1] L. A. Zadeh: " P R U F - A Meaning Representation Language for Natural
Languages", Intl. J. of Man-Machine Studies, 10, 395-460(1978).
[2] J. M. Adamo: "L.P.L. A Fuzzy Programming Language: 1. Syntactic As-
pects", Fuzzy Sets and Systems, Vol.3, 151 - 179(1980).
[3] J. M. Adamo: "L.P.L. A Fuzzy Programming Language: 2. Semantic Aspects
", Fuzzy Sets and Systems, Vol.3, 261 - 289(1980).
[4] T.P. Martin, J . F . Baldwin, B.W. Pilsworth: "The Implementation of
F P R O L O G - A Fuzzy Prolog Interpreter", Fuzzy Sets and Systems, Vol.
23, 1 1 9 - 129(1987).
[5] M. Umano: "Fuzzy-Set Prolog", Preprints of 2nd IFSA Congress, 750-
753(1987).
[6] W. Siler: " F L O P S : A Fuzzy Expert System Shell", Preprints of Second IFSA
Congress, 848-850(1987).
68

[7] J. J. Buckley, W. Siler: "Managing Uncertainty in a Fuzzy Expert System.


Part 1: Combining Uncertainties", Preprints of Second IFSA Congress, 737-
739(1987).
[8] W. Siler, J. J. Buckley: "Managing Uncertainty in a Fuzzy Expert System.
Part 2: Truth Maintenance System", Preprints of Second IFSA Congress,
744-746(1987).
[9] K. S. Leung, W. Lam: "Fuzzy Concepts in Expert Systems", Computer
Magazine, IEEE, Vol. 21-9, 43-58(1988).
10] J. Teichrow, E. Horskotte, M. Togai: "The Fuzzy-C Compiler: A Soft-
ware Tool for Producing Portable Fuzzy Expert Systems", Proc. 3rd IFSA
Congress, Intl. Fuzzy Systems Association, 708-711(1989).
11] M. Umano, M. Mizumoto, K. Tanaka: "FSTDS System: A Fuzzy-Set Ma-
nipulation System", Information Sciences, 14, 115-159(1978).
12] M. Umano: "Fuzzy-Set Manipulation System in Lisp", Preprints of 2nd
IFSA Congress, 840-843(1987).
13] Z. A. Sosnowski: "FLISP - A Language for Processing Fuzzy Data", Fuzzy
Sets and Systems, Vol.37, 23 - 32(1990).
14] Z. A. Sosnowski: "Data Structures for Representing and Processing of Fuzzy
Information in Lisp", Computers and Artificial Intelligence, Vol. 10, No. 6,
561-571(1991).
15] A. Goldberg, D. Robson: "Smalltalk-80: The Language", Addison Wes-
ley(1989).
16] S. Yamamoto, Y. Inoue, S. Yasunobu: "Object-Oriented Fuzzy Set Manipu-
lation - Internal Data Structures -", IFSA '91 Brussels, AL218-221(1991).
CHAPTER 4

FUZZY DYNAMIC SYSTEMS: ANALYSIS, CONTROL


AND IDENTIFICATION

A.N.Venetsanopoulos(*) S.G.Tzafestas<**), and S.Terzakis(**)

(*)
Department of Electrical Engineering
University of Toronto, Toronto, Ontario, Canada M1551A4
(**) Intelligent Robotics and Control Unit
National Technical University of Athens
Zografou Campus, Zografou 15773, Athens, Greece
1. INTRODUCTION

This chapter deals with fuzzy dynamic systems paying attention to three important issues,
namely analysis, control and identification. Analysis is concerned with the study of input-
output descriptions which are based on fuzzy relational equations. One of the models that
played a central role in the analysis of classical (crisp) dynamic systems is the state-space
model. This model can be extended to cover the case of fuzzy dynamic systems, and is
studied in the present chapter. Control is concerned with the problem of determining a
control sequence which brings the system state, in one or more time steps, from the present
fuzzy value Xj^ to a desired final fuzzy value Xp This problem is equivalent ot solving the
relevant equation Xj-= UjpXjpR with respect to l/^. The fuzzy system identification
problem solved here consists in estimating the system fuzzy relational matrix R from a
given set of fuzzy input-output pairs (X,-,y,), i= 1,2,...,JV. The no-noise case is considered,
since the case where noise is present is stiU a challenging open problem. An algorithm is
provided for determining good upper and lower bounds that confine R. Also, the state
prediction problem of fuzzy state space models is considered. The chapter closes with a
review of three practical fuzzy controllers which have been applied with success to several
industrial systems. These controllers are: (i) the fuzzy self-organized controller (SOC), the
fuzzy PID supervisor, and the fuzzy PID incremental controller.

2. DETERMINISTIC, STOCHASTIC AND FUZZY SYSTEMS

To understand what actually inspired and pushed L-Zadeh to initiate fuzzy system theory
through his pioneering article of 1965 [1] one must resort to his earlier studies. In one of
them Zadeh introduces the concept of abstract object in order to define what is a system.
In his own words «... A system is designed as a collection of ordered pairs, representing
inputs and outputs, and defining abstract objects. This way, one may treat various systems
as a whole by their causal relationships only, thus dealing with a large variety of problems
in a unified way». The next step is of cource to locate an input-output relation with the
69
S.G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision ami Control Systems, 69-96.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
70

property that it generates input-output pairs characterizing the system. From that point the
problem falls within the framework of the classical systemic approach and leads to the
development of concepts like the transfer function, frequency response, state space model,
etc. Tliroughout the above arguments it was tacitly assumed that the inputs and outputs of
the system can be measured quantitatively (nunierically). This is true for technological
systems which do not involve the "hum.an" as part of them. However this ceases to be true
when the "human" is entered as a component of the system control loop. This is because
the human accepts stimulations (inputs) and replies with responses (outputs) that are
expressed better by words (e.g. adjectives) than by numbers.
The above are best illustrated by the following example, where the human acts as
a controller that regulates the proportion of hot and cold water in order to achieve a
desjred warm water. For Convenience it is assumed that the flow of water remains constant
and only the relative proportion of hot and cold water is changed through a valve. The
control rules of the example are:
IF "water very hot" THEN 'Valve pretty right"
IF "water a little hot" THEN "valve a little right"
IF "water warm" THEN "do nothing"
IF "water a little cold" THEN 'Valve a little left"
IF "water very cold" THEN "valve pretty left"
In input - output pair form the above rules are written as:
(very hot, pretty right)
(a little hot, a little right)
(warm, do nothing)
(a little cold, a little left)
(very hot, pretty left)
It is clear that in this case, one cannot find a suitable function that produces the input -
output pairs, since these pairs are no more numeric but linguistic (here adjectives).
According to Zadeh [2] the linguistic description of a system is much more effective, but
less specific, than the mathematical (numerical) description.
The modern systems theory has been structured and developed around the concept
of state space. A system is described by three quantities: input, output and state, (i) If the
present state and input determine exactly the system output, then the system is called
deterministic, (ii) If the next state and the output (given the present state and input)
cannot be described exactly but only through their probabilistic and statistical properties,
then the system is called stochastic. (Hi) If for the next state and output (given the present
state and input) the only that can be said is that they are elements of a set with fuzzy
bounds then the system is called fuzzy.
A system acts as a mathematical operator, i.e. as a mathematical function that maps
inputs to outputs. In the triad (input, system, output) the system participates with its
mathematical model. Thus, in principle, knowing any two of them one can find the third.
Fuzzy systems and neural systems are mainly used in estimation problems. They possess
an important common advantage over the classical statistical estimation mechanisms and
the adaptive control techniques, respectively. Th^y are model free estimators. That is, fuzzy
and neural systems can find how an output depends on the input without the need to use
a mathematical model. Instead, they use an alternative approach, namely they learn from
examples. If X is the input space, Y is the output space, then the pair (Xj, jy) con.stitutes
71

an element of the Cartesian product XxY. In neural systems the sample (Xj, 7,) is a pair of
numbers (e.g. (1, 5)), whereas in fu2zy systems this sample is a pair of fu2zy sets (e.g. (fast
motion, more green) or (hot water, valve shiightly left)).

3. ABOUT FUZZY RELATIONAL EQUATIONS

3.1 Definition of Fuzzy Relational Equation


Let:
U, V: Reference supersets
F{U), F(V): Sets of all possible fuzzy subsets of U, V respectively
UKV: Cartesian product of U, V
F{U\V): Set of all possible fuzzy subsets of UxV
XGF{U): Fuzzy subset of U
YeF{V): Fuzzy subset of V
ReF(UxV): Fuzzy relation
TTie relational equation among X, Y and R is defined as:

y = Xo«
where "o" is Zadeh 's compositional rule of inference (max-min composition) [see Ch. 1,
Section 9.4].
Using the membership functions n^x), /iy(y) and jU^(jf,y) of X, Y, R respectively
the above relational equation takes the form
My(y) = max{mm{n xix),tiif{x,y))
A more general relational equation results if the operator max is replaced by the
operator sup and the operator min by a T-norm (see Ch.l, Sec. 5}, namely
^ y ( y ) = sup{^^(Ar)T/ij?(jf,7)}

3.2 Fuzzy System Input - Output Description via Relational Equations


A fuzzy system accepts fuzzy sets as inputs and produces other fuzzy sets as outputs. The
fuzzy system cannot be described by a classical mathematical model but by a linguistic
model, i.e. by a set of rules.
Let R be a relation produced by the set of rules that govern the system, X be the
fuzzy input set an Y the fuzzy output set. Then an input - output description of the fuzzy
system is provided by the relational equation
y = XoR
For the classical systems the corresponding description is via differential or
difference equations.
Given the relational equations of a fuzzy system one faces two possible problems:
i) Design (Synthesis) Problem: Given Xand y find R, i.e. knowing the input and output,
find the system.
72

ii) Measurement Problem: Given Vand R find X, i.e. Knowing the output and the system,
find the input.
To precisely formulate the above two problems a new operator "«" is required
which plays the role of the Inverse T-norm used in Zadeh 's composition rule. This need
can be understood by the following argument. From the relational equation Y=XoR one
can see that the operator "o" is similar to the operator "•" of the matrbc multiplication.
This is so since the operator "o" produces Y (a vector) from the product of X (a vector)
and R (a matrix). However, it possesses the fundamental difference that it does not allow
the definition of the inverse, i.e. if Y=XoR then it is not true that X= YoR'^. Therefore
it is absolutely necessary the introduction of an operator"«" which is the inverse of the T-
norm used in the operator "o".
Definition 3.1
An operator (function) «:[0,l]x[0,l]-»[0,l] is defined to possess the properties:
i) X " max(y,z) > x«7, x^z
ii) X « (xTy) < y
iii) X « (x^y) > y
For Zadeh 's T-norm i.e. the operator "min" the corresponing "-operator is
Operator «: a«b=l or b if asb or a>b
The operator « can be applied both between two fuzzy sets X and Y, and between a fuzzy
set y and a fuzzy relation R. In the first case:

In the second case:


R'-Y : Hji^ri^) = min(;i^(x,y)«/iy(y))
We are now ready to formulate the above measurement and synthesis problems.
Measurement Problem: The measurement problem of a fuzzy system is stated as
follows: Given the system R and its output Ycompute the input such that Y=XoR. This
problem is not exactly solvable in the sense that from the pair (Y, R) one can compute only
the largest fuzzy set Xsuch that Y=XoR. This does not preclude to exist other fuzzy inputs
X' smaller than X, i.e. X's:X that satisfy the relation Y=X'oR. The largest fuzzy input
X is computed from the pair {R,Y) with the aid of the operator «. More specifically X is
given by
X = R^Y V fixix) = min(/iR(Ar,7)«jUy(7))
Synthesis Problem: The synthesis problem is: Given the fuzzy sets X (input) and
Y (output) compute the fuzzy relation R that describes the fuzzy system. This problem is
also not exactly solvable in the sense that from the pair {X,Y) one can derive only the
largest relation R that satisfies the equality Y=XoR. This does not preclude the existence
of other smaller relations R' i.e. R'^R for which the relation Y=XoR' holds. The largest
fuzzy relation R is computed from (X,Y) through the relation:
/? = X « y or tijt(x,y) = ^^(;(r)«/iy(y)
73

4. FUZZY DYNAMIC SYSTEMS

As we have already seen, fuzzy systems are described by fuzzy relational equations. Our
purporse here is to introduce the concept of fuzzy state equations on the basis of fuzzy
relational equations. We shall describe fuzzy systems of first and higher order, and discuss
the relation of relational equations with the classical difference equations.

4.1. State Space Models of Fuzzy Systems


TTie concept of state space possesses a central position in modern control theory where the
state equations are derived using the classical models of differential and difference
equations. Here we shall borrow from the classical state space methodology to develop and
apply the concept of fuzzy state space.
Let X, U and V be discrete reference supersets for the state, the control and the
output variables of the system, respectively. For convenience the corresponding fuzzy state,
control and output sets are assumed to be finite, i.e
X = {xp X2, ..., Xjj} fuzzy state set
U = {i/j, U2, ..., u^} fuzzy control set
^ = {/!« Vi' •••' yq} f"2zy output set
Then, the state space description of a dynamic fuzzy system via the use of relational
equations is:

^k*p = ^k*p°^
where
o: Zadeh 's compositional rule of inference
t/j^: fuzzy control variable at time instant k
^k+p' ^k+p-i<-' ^k- fuzzy state variable at times k+p, k+p-l,...,k
R, ^ fuzzy relations that characterize the dynamics of the system and
are defined as: p
R : UxXx...xX •* [0,1]
S : XxY - [0,1]
The first equation is the state equation that combines the fuzzy state at time Jt+p with the
fuzzy states at times k+p-l,...,k and the fuzzy control at time k. The second equation is the
output at time k+p with the fuzzy state at the same time instant.
The above model is of order p and can be considered as a generalization of the
difference equation model of order p. In the following discussion it will be assumed that
X= Y (the outputs coincide with the states) and that the relation 5 is diagonal. Thus
without loss of generality we can work only with the first equation.

4.2 First-Order Fuzzy Systems


A first-order fuzzy system is described in state-space by a fuzzy relational equation of the
type
74

where Uf^ Xj^ and R have the usual meaning. In terms of membership functions the above
equation takes the form

^^k.i " '^^'"»"('"^(")>'"^['"i"(/^A;,(^)'M/?(""^'>'))])j

The pth-order fuzzy state space model can be converted to a set of Ist-order equations by
setting

R' - ^k.\'^k.2'-'^k.p-l'R

^ k*p = ^A+p

s' = s
where R' is the fuzzy relation R':UxXx...X-^[0,l] and S' the fuzzy relation 5':Xxy-*[0,l].
The resulting Ist-order fuzzy model is:

Thus one can work with a fuzzy state-space of 1st order without any loss of generality.

4.3 Relation with Difference Equations


Finite difference equations constitute a very useful and extensively applicable class of
equtaions for the description of discrete dynamic systems and the solution of differential
equations. It can be shown [3] that the relational equations are a direct extension of
difference equations, when the input and state variables do not take particular numerical
values but they constitute fuzzy sets.
To see how this is done consider the difference equation

where a, b, Xj^, Xj^^j and Uj^ take real values. These values can be regarded as fuzzy
numbers with the following membership functions:
M[/ (") = 1 if U = Uj^; =0 otherwise
i"x (^) ~ ^ if X = Xj^; =0 otherwise
Hjf{x,y,u) = 1 if y = ax+bu; =0 otherwise
Thus if we consider the quantities t/^, X^, X^ +j and R to be fuzzy ones, one can form the
relational equation:
75

which in terms of membership functions is written as:

MXk^,(y) = max|min|Ai^(u),;i;^i^(x),^^(Y,y,u))|
Introducing the respective substitutions we find that here
MA" (y) ^ ^ if y = aXj^ + bU]^ ; =0 otherwise
The above veriiy (at least in this example) that the relational equations constitute an
extension of the usual concept of difference equations when the variables involved are fuzzy
sets.

5. CONTROL OF FUZZY DYNAMIC SYSTEMS

Let us now consider a first-order fuzzy system Xi^= Uf^oXfOR which has the block diagram
shown in Fig. 1. For this system we shall discuss here three particular fuzzy control
problems, namely:
i) One step control without or with constraints.
ii) Multistep control.
iii) Construction of the controller relational equation.

5.1 One-Step Control


No constraint case: This is the simplest possible case and is formulated as follows.
Given: The fuzzy system Xi^^.i=Uj^oX^^oR and a final state Xf,
Find: The control Uf^ which brings the system in one step from the present state
X;t to the final Xf.
This problem is equivalent to solving the relational equation Xf= U^oX^^oR with
respect to Uj^. Writing this equation as Xf= UjpEj^ where E^ = Xi^oR one can solve it with
the aid of the « operator. The solution is

U\ = E,^X,^{X,OR)«X,

Fig. 1 Block diagram of a fuzzy system of order 1


76

where t/j^'is the largest from all possible controls (if they exist) that satisfy the equation
Xj.= 140X1,0/?.
If a solution does not exist, i.e. if the abvoe solution gives to some point of l ^ '
negative membership value, then one can use some distance criterion and try to find a
control Uj^ that brings the quantity L/^oXj^o/? as near as possible (with respect to this
criterion) to the desired final state X/.
In this case the problem is to find a Uj^' such that the fuzzy distance d{Uj^oX^^oR,
Xf) is minimized, i.e.

U'\ : d{U"j^'>x^cR,Xf) = min cy( l/j^oX^oR,X/.)

where e.g. d may be Hamming fuzzy distance (See Ch. 1, Sec. 6.3).
A measure of "how good" is the control U^.' is provided by the e-reachability
concept which is defined as follows.

Definition 5.1
Let e{Uf^") be the quantity

e{U'\) = diU'\'>x^oR,Xf)/supd{U^oX^''R,Xf)
where d is the Hamming fuzzy distance.
Then X^is said to be EQ-reachable from Xj^, if e{Ui^")<Eg. Clearly, if e^=0, then
the state Xf is exactly reachable from Xj^.

Constraint case: Tliis problem is still open.

5.2. Multi-step Control


This problem is formulated as follows (the no-constraint case is assumed).
Given: The Ist-order system Xj^.^ 1=140X^^0/?, with initial state X^, and a final
state Xp
Find: The control sequence U^, U^, ..., C/„ j that brings the system (in p steps)
from the initial state X^ to the final state Xf.
To solve this problem we apply respectively the system equation starting from X^,
namely:
Xi = U^oX^oR

X j = t/joXjoft = Ui'>(U^oX^oR)oR

= t;,ot;„=x„oj?2

Xf=Xp= Up,,oUp_2^...oUioU^oX^oRP

Setting U= U ^oU 2°-°^i°^o ' " "^^ '^^^ equation we get


77

Xf= Uo(XgoRP)

which is solved for U as in the one-step control, i.e.

U' = {X„oRP)o.Xf

5.3. Construction of the Controller Equation


The system under control: Xj^+j =1^0X^0/? has the block diagram of Fig. 1. If the
controller 's equation is L'j,=X|.oG, then it has the block diagram of Fig.2.

X, U,

Fig. 2 Block diagram of the controller G

The closed-loop system has the relational equation (Fig. 3):

= X^^X^^RoG
The control problem for the closed-loop system is to find the fuz2y relation G of
the controller such that one can apply to it (i) single step and (ii) multi-step control.

Fig. 3 Block diagram of fuzzy closed-loop system


78

Clearly, the closed-loop equation can be written as Xj^^^ = CoG which has exactly
the same form as the equation Xf= Uj^oE^ of the single step control. Thus, the one step
solution is readily applicable here too.

6. IDENTIFICATION OF FUZZY DYNAMIC SYSTEMS

The identification problem of fuzzy systems consists in estimating the relation R that
describes the system, from fuzzy input- output pairs (X,, V,), / = 1,2,..., N. Here this problem
will be treated in the no-noise case. The case where some kind of noise is present needs
the introduction of two additional concepts, namely the probabilistic sets and the fuzzy
clustering, and will not be considered here.

6.1. Estimation of the Fuzzy Relation R


Consider a fuzzy system described by the equation Y=XoR, where X, Y, R are assumed
finite, i.e.

with respective membership functions

/^x = >[^x(^/)].
• •
A'' y =' [^• r(y,)j.
' '
P R• = [f^Ri^vYi)]'' . , ' ""'
j=i,z,...,m

Using these membership functions the system equation is written as

Fy(7j) = max|min(/j;y(.v,),^;j(;yy,7;))|
Then the problem of estimating R is formally stated as follows:
Given: The fuzzy vectors \}i)^x>i\, lJUy(y,)].
Find: The fuzzy matrix [}iji{Xj, y)].
The information contained in the input - output pairs (X,-, Vj), i= \,2,...,N is not sufficient
for the unique determination of the relation /?, but only for the determination of a lower
and an upper bound {R, R respectively) such that

These bounds can be found by using the operators « and « of Sanchez [4].

Theorem 6.1 _
An upper bound R of R is given by the formula:

f^ni^i'yj) = Mx(^i)"i"y(y,)
1. MA-C-*',) ^ t^yiyj)
79
Theorem 6.2
A lower bound 5 of R is given by

• P^Y(yj)^ MxC^i) > M y ( 7 j ) > ^f^x(^k)


^Ri^i^yj) = i^xi^d'^i^Yiyj)
0, otherwise
The property K s R c ^ implies that

The upper bound /? satisfies the relational equation Yj=XjOR, which is not satisfied by
the lower bound, i.e. XpR^Yj.
An algorithm for the estimation of the fuzzy relation R (i.e. an upper and a lower
bound for it) is the following:
Initialization: Put
UpperR*-\, LowerR*0
Counter fc<-l
Number of Iterations N
Step 1: Read the fuzzy input - output sets X, and Yj
Step 2: Compute X;« Y, and X;« Y,
Step 3: Update the UpperR and LowerR as
UpperR*- UpperRriXj« Yj)
LowerR'^LowerRu(Xj^ Yj)
Step 4: If k<N then increase the counter by \: k+ l*-i and go to step 1. Otherwise
terminate the algorithm.
Clearly, at the end of this algorithm R will be confined between LowerR and
UpperR. Taking as R one of the above bounds UpperR or LowerR, respectively, we make
an error. A measure of this error is the distance between R and its estimator UpperR or
LowerR which is defined as

When r= 1 this distance reduces to the well known Hamming distance (Ch. 1, Sec. 6.3).

6.2. State Prediction of Fuzzy Systems


The prediction problem of future fuzzy states is stated as follows:
Given: The fuzzy system Xj^^j = Xj|,oG and the fuzzy state X^^ at time k.
Find: The fuzzy state at time i + m, m > 1. To solve the problem we apply repeatedly
the system equation for k=k, k+l, ..., k+m (it is assumed that the fuzzy relation G is
known), i.e.
80

^ku.') = ^^*1 °<J = Xi,oG°G = Xu°G

^k*m
m
Suppose that the fuzzy state at time A^ has yi^ =[0,...,0,1,0,...,0] where the 1 appears at

the jth position. Then a normalized measure of the uncertainty of the fuzzy state X^^. j is
(Ch. 1, Def. 2.4):

Using n^ =[0,...,0,1,0,...,0] , the fuzzy relational equation X^^j = XjjOG, and the
quantity rj, = max/ij^(xy^;), one can compute IXj^ + il and find

l^jt.il =[E/^G(^i.^y)]/'-o

Thus the normalized measure of fuzziness of X^^.j is greater than that of Xjj. Similarly the
fuzziness measure for X^^.2 is greater than that of Xj^^j, and so on. Thus after a certain
number of time instants the prediction is no more useful.

6.3. Illustrative Examples

Example 6.1.: Estimation of R


Consider the following fuzzy relation

1 0.8 0.9 0.6 0.5 0.7


0 0.3 0.5 1 0.2 0
0.7 0.9 1 0.8 0.6 0
R=
0.2 1 0.7 0.5 0.4 0.2
0 0 0.1 0.2 1 0
0 0.2 0.3 0.5 0.6 1

It is desired to find an estimate of R on the basis of the following fuzzy input - output
pairs
81

1 0.3 0.2 0.1 0 0 ] 1 0.8 0.9 0.6 0.5 0.7


0.3 1 0.2 0.1 0 0 ] 0.3 0.3 0.5 1 0.3 0.3
0.2 0.3 1 0.1 0 0 ] 0.7 0.9 1 0.8 0.6 0.2
0.1 0.2 0.3 1 0 0 ] 0.3 1 0.7 0.5 0.4 0.2
0 0.1 0.2 0.3 1 0 ] 0.2 0.3 0.3 0.3 1 0.2
0 0 0.1 0.2 0.3 1 ] 0.2 0.2 0.3 0.5 0.6 1
Applying the upper / lower bound estimation algorithm of Sec. 6 gives the following
sequence of fuzzy relations for UpperR and LowerR:
0.8 0.9 0.6 0.5 0.7

UpperR =

Hamming (t/pper/?,J?) = 17.1

1 0.8 0.9 0.6 0.5 0.7


0.3 0.3 0.5 0.3 0.2
1 1 1 1 1
UpperR =
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1

Hamming {UpperR,R) = 13.8

1 0.8 0.9 0.6 0.5 0.7


0.3 0.3 0.5 1 0.3 0.2
0.7 0.9 1 0.8 0.6 0.2
UpperR =
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1

Hamming (L/pperi?,/?) = 11.9


82

1 0.8 0.9 0.6 0.5 0.7


0.3 0.3 0.5 1 0.3 0.2
0.7 0.9 1 0.8 0.6 0.2
UpperR =
0.2 1 0.7 0.5 0.4 0.2
1 1 1 1 1 1
1 1 1 1 1 1

Hamming (L/pper/?,/?) = 9

1 0.8 0.9 0.6 0.5 0.7


0.3 0.3 0.5 1 0.3 0.2
0.7 0.9 1 0.8 0.6 0.2
UpperR
0.2 1 0.7 0.5 0.4 0.2
0.2 0.2 0.3 0.3 1 0.2
1 1 1 1 1 1

Hamming (UpperR,R) = 5.2

1 0.8 0.9 0.6 0.5 0.7


0.3 0.3 0.5 1 0.3 0.2
0.7 0.9 1 0.8 0.6 0.2
UpperR
0.2 1 0.7 0.5 0.4 0.2
0.2 0.2 0.3 0.3 1 0.2
0.2 0.2 0.3 0.5 0.6 1

Hamming {UpperR,R) = 1.9

1 0.8 0.9 0.6 0.5 0.7


0 0 0 0 0 0
0 0 0 0 0 0
LowerR =
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0

Hamming (R,LowerR,) = 12.9


83

1 0.8 0.9 0.6 0.5 0.7


0 0 0.5 1 0 0
0 0 0 0 0 0
LowerR =
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0

Hamming {R,LowerR,) = 11.4

1 0.8 0.9 0.6 0.5 0.7


0 0 0.5 1 0 0
0.7 0.9 1 0.8 0.6 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0

Hamming (R,LowerR,) = 7.4

1 0.8 0.9 0.6 0.5 0.7


0 0 0.5 1 0 0
0.7 0.9 I 0.8 0.6 0
LowerR =
0 1 0.7 0.5 0.4 0
0 0 0 0 0 0
0 0 0 0 0 0

Hamming {R,LowerR,) = 4.8

1 0.8 0.9 0.6 0.5 0.7


0 0 0.5 1 0 0
0.7 0.9 1 0.8 0.6 0
LowerR =
0 1 0.7 0.5 0.4 0
0 0 0 0 1 0
0 0 0 0 0 0

Hamming {R,LowerR,) = 3.8


84

1 0.8 0.9 0.6 0.5 0.7


0 0 0.5 1 0 0
0.7 0.9 1 0.8 0.6 0
LowerR =
0 1 0.7 0.5 0.4 0
0 0 0 0 1 0
0 0 0 0.5 0.6 1

Hamming {R,LowerR,) =1.7

Hanunlng(UpperR,R)

Hamming(R,LowerR)

20 4-

Fig. 4 Variation of the Hamming distances d{UpperR,R) and d{Lower,R) versus


iteration number k
85

Pictorially the sequences of the upper and lower bounds are shown in Fig. 4 where
their Hamming distances from R are depicted.
Example 6.2: Fuzzy state prediction
Consider the system X;t+i=^ik°<^*ith'^Jt = n 0-2 0.1 0 0 0] and
1 0.8 0.6 0.5 0.3 0.1
0.9 1 0.8 0.7 0.4 0.2
0.7 0.9 1 0.8 0.5 0.2
G = 0.7
0.6 0.7 0.9 1 0.8
0.4 0.5 0.7 0.8 1 0.9
0.2 0.3 0.5 0.7 0.8 1
Carrying out the prediction calculations one finds the following sequence of future fuzzy
states:
Time horizon
1 ^k*l ° [[1 0.2 0.1 0 0 0]
2 ^k*2 = [[1 0.8 0.6 0.7 0.5 0.5]
3 ^k.3 = [[1 0.8 0.8 0.8 0.7 0.7]
4 ^k*4 ° [[1 0.8 0.8 0.8 0.8 0.7]
5 ^k*5 " [[1 0.8 0.8 0.8 0.8 0.8]
6 ^k*6 = [[1 0.8 0.8 0.8 0.8 0.8]
Fuzzy state A
Sets X 1 i

Reference superset
Fig. 5 Pictorial representation of the fuzzy states Xj^+i- ^Jt+2> ^Jt+3' ^Jt+4' -^A+5' ^"'^
^k\6
86
These fuzzy states are represented pictorially in Fig. 5.
The size (normalized measure of fuzziness) versus prediction time horizon of the
state X^. {k = k, k+ 1, ..., k+6) has the form shown in Fig. 6.
"Size" of .
fuzzy sets X ' '
6 •

4 5 6
Prediction time horizon
Fig. 6 Size of predicted fuzzy states X versus prediction time horizon

7. THREE SOPHISTICATED FUZZY CONTROLLERS

7.L Self-Organizing Fuzzy Controllers (SOC)


This is a fuzzy controller which is an improved version of the basic fuzzy controller and has
more intelligency in the sense that it is capable to measure its own performance, and
modify the control rules according to a measure of deviation of each output from the
trajectory p(kT) where
p(kT) = 0{e{kT),c{kT)} 0)
and 0(e(/c7), c(kT)} represents the performance decision look-up table (relational matrix)
used [5]. The structure of the SISO fuzzy SOC has the form of Fig. 7.
The performance decision look-up table in [5] is given in Table 1. In this table, zero
entries indicate no correction. The further away from desired trajectories the output is, the
greater the required control corrections are in one or the other direction.
In order to implement this SOC controller which is a kind of fuzzy adaptive
cotroller, we need to have an incremental model relating input changes to output changes.
For a system with state equation x=f(x,u) the incremental model matrix M is given by:
M = TJ (2)
where / is the system Jacobian matrix J= df/du and T the sampling period. Thus, if an
output correction p{kT) is needed, then the required control rule correction is determined
87

e(kT)
incremental r ( k T )
Hertorinance
meausure ., _ , Model

Ruxe mcxii-
fier
Contro]
GE
Set i(kT
p.oint<i>r Output
Process -r*
TICK^ u
Gi:

Fig. 7 SISO fuzzy self-organizing control loop

by solving the equation p(kT) = Mr(kT) as

rikT) = M-^p{kT) (3)


The operation of this controller is now obvious from Fig. 7. The performance measure (1)
and the incremental model (3) connstitute the higher level of the SOC which coordinates
the simple fuzzy controller of the lower level. The control input correction is fed to the rule
modifier which modifies the linguistic rules such that future control actions lead to the
appropriate output improvement.
Some key features of this controller are:
The model matrix R is related to the system Jacobian which for SISO
systems consist of a single coefficient (usually normalized to unity).
For linear MIMO systems the model matrix R involves constant elements
(which, if normalized, lie between -1.0 and + 1.0)
For nonlinear or nonmonotonic systems the model matrix elements depend
on the system state.
The incremental model required is much simpler than the exact (possibly nonlinear)
model of the system, but it requires the knowledge of the Jacobian J which in many cases
is difficult to obtain on-line. To overcome this difficulty one can compute / at the
beginning of each control period keeping it constant throughout, and leave to the learning
process the balance of any inaccuracies. The controller is always initiated by an initial set
of control rules, which are usually crude and are obtained from existing experience. These
rules are then iteratively corrected through the rule modification process.
The control rule modification procedure involves the following:
a) Fuzzification of uncorrected and corrected control input along with the error and
change in error, i.e.
E{kT-mT) = F{e(kT-mT)} (error)
88

TABLE 1: Performance Measure Look- up Table

Change in error e(kT)


Towards set-point Away from set -point
-6 -5 -4 -3 -2 -1 0 +1 +2 +3 +4 +5 +6
-6 0 0 0 0 0 0 6 6 6 6 6 6 6
-5 0 0 0 2 2 3 6 6 6 6 6 6 6
-4 0 0 0 2 4 5 6 6 6 6 6 6 6
Below
set-point -3 0 0 0 2 2 3 4 4 4 4 5 5 6
-2 0 0 0 0 0 0 2 2 2 3 4 5 6
-1 0 0 0 0 0 0 1 1 1 2 3 4 5
-0 0 0 0 0 0 0 0 0 0 1 2 3 4
Error e(kT)
+0 0 0 0 0 0 0 0 0 0 -1 -2 -3 -4
+1 0 0 0 0 0 0 -1 -1 -1 -2 -3 -4 -5
+2 0 0 0 0 0 0 -2 -2 -2 -3 -4 -5 -6
Above +3 0 0 0 -2 -2 -3 -4 -4 -4 -4 -5 -5 -6
set-point
+4 0 0 0 -2 -4 -5 -6 -6 -6 -6 -6 -6 -6
+5 0 0 0 -2 -2 -3 -6 -6 -6 -6 -6 -6 -6
+6 0 0 0 0 0 0 -6 -6 -6 -6 -6 -6 -6

C(kT-mT)=F{c(kT-mT)} (change-in-error)
U(kT-mT) = F{u(kT-mT)} (uncorrected control)
U{kT-mT) = F{u{kT-mT)+iikT)} (corrected control)
where F{-} represents the fuzzification process, mT is the time interval between successive
control corrections, and r(kT) is the control correction given by (3).
b) Determine the uncorrected and corrected (modified) relation matrices R' and
R" from the corresponding implications
E{kT-mT) -* C{kT-mT) -* U(kT-mT)
E{kT-mT) -* C(kT-mT) •* U{kT-mT)
That is
R\kT) = E{kT-mT)>^C{kT-mT)y^U{kT-mT)
R'(kT) = E(kT-mT)xC(kT-mT)xU'(kT-mT)
c) Express the control relation matrix modification linguistically, i.e.
89

R{kT+T) = {R{kT) but not R'{kT) else R"{kT)} ('*)


where R(kT) is the current controller relation matrix and R(kT+ T) is the modified one.
In terms of the set operations "n" and "u", equation (4) takes the form:

R{kT+T) = {R{kT)C\~R'(kT)}\JR"ikT) (^)


The above results for SISO SOC controller can be easily extended to the
multivariable case.

7.2. Fuzzy PID Supervisor


This type of control was introduced by van Nauta Lemke and Dezhao [6] and consists of
a conventional PID controller whose settings are adjusted by a fuzzy supervisor as shown
in Fig. 8(a,b). The fuzzy supervisor is designed on the basis of the intuition and knowledge
of an experienced human operator such that to improve the performance of the resulting
overall supervised PID controller. The architecture of the fuzzy supervisor has the form of
Fig. 8b, involving as usual a fuzzifier, a set of fuzzy rules and a deffuzifier. The supervisor
accepts the error e and the change-in-error de/dt and adjusts the proportional (P), integral
(i) and derivative (D) settings according to the relations

P = Po + ^P, I = ^0+^^' ^ = ^o*^^


where P^, /„ and D^ are
re the initial settings of the controller, and AP,
Af AI and AD are their
adjustments (corrections).
ins). As shown in Fig. 8b five scaling factos (i(gains) are used in the
supervision namely K^, K^ , Kp, Kj and Kjj which are defined by

AP = KpPf, AI = Kjlf, AD = K^Df


with |r|=0.1 for-0.1<r<0.1.
The relative error x and its derivative x are used in place of e and e, in order to
obtain an acceptable performance for a wide range of values of the reference input. The
fuzzifier determines the fuzzy regions for the inputs, and after the implementation of the
rules of these regions, the resulting fuzzy subset is defuzzified to modiiy the settings of the
controller by AP, AI and AD. The defuzzification rule applied is the weighted-sum rule:
m m

/=! 1=1

where Vy is the geometric center of the component lif^{v) in the membership function
m

1=1
90

(a)

1
e K i. ^^©^16—P
'uzzi- De
fier fuzzi-
_e__ Fier

(b)

Fig. 8 (a) Supervised PID controller, (b) The architecture of the supervisor

Other defuzzification rules that en be used are the "center-of-gravity" rule and the
"equal-surface" rule [6].
The performnace index is in line with the human judgment, and uses the rise time
T^ the overshoot h and the ITAE criterion to qualify the overall performance of the
controlled system as bad, satisfactory, good and excellent. The selected fuzzy subsets for
T^ h, ITAE, and the overall performance index (P/) are shown in Fig. 9 from which the
following linguistic rules are obtained:

0 10 15 20 25 2 3 4 5 P.I.
ITAE {V.sec^} Performance Index
Fig. 9 Fuzzy subsets for h, ITAE, T^ and performance index
Rl: Jf h is big OR ITAE is big
THEN the performance is bad
R2: If h is medium AND ITAE is medium
THEN the performance is satisfactory
R3: If /j is medium AND ITAE is small AND T, is big
THEN the performance is satisfactory
R4: If /i is small AND /TA£ is medium AND T^ is NOT big
THEN the performance is good
R5: If h is medium AND /TAH is smaW AND T^ is NOT big
THEN the performance is good
R6: If h is small AND ITAE is medium AND T^ is NOT b/g
THEN the performance is good
R7: If b is sma/i AND ITAE is smaii
THEN the performance is excellent

As usual, the performance index is computed by the fuzzy cartesian product of the
above linguistic rules and the weighted sum defuzzifier rule.

7.3. Fuzzy PID Incremental Controller


This controller [7] is based on the same basic philosophy as the fuzzy PID supervisor
presented in Sec. 7.2. The difference is that the controller parameter changes are
determined using MacVicar-Whelan 's table [8]. The PID controller settings are initially

Slx-
H. -M -S -0 +0 + S +M +1.

+ u iO +S -M -L -L -u -1. -L

•fM +s -0 -S -M -M -M -u -L

+S +M +s -0 -S -S -S -M -U

+ 0 4M •IM +s +0 -0 -S -M -M
Jf*o
-0 -fM +M +s +0 -0 -s -M -M

-s +L >M +s •t-S +s +0 -5 -s
-M +L +L +M 4U +M +s +0 +0

-L +L +L +L +u +L -fM +0 +0

Fig. 10 MacVicar-Whelan fuzzy matrix


92
determined by some standard nonfuzzy technique such as the Ziegler-Nichols technique,
the analytical technique, the Kalman digital technique, etc. [7]. The idea is to slightly
change these settings during the system transient so as to improve the step response
characteristics.
MacVicar-Whelan [8] has observed that the fuzzy control matrices of King and
Mamdani [9] were not complete. There are situations where the action to be taken is not
defined. That is, there is not always agreement about just what value the dependent variable
should take for a given value of the independent variable (i.e. the error) and its derivative.
The fuzzy control matrix proposed by MacVicar -Whelan is shown in Fig. 10 and
is based on the Following principles:
a) If the output has the desired value and the error derivative is zero, then we keep
constant the output of the controller.
b) If the output diverges from the desired value, then our action depends on the
signum and the value of the error and its derivative. If the conditions are such that the
error can be corrected quickly by itself, then we keep the controller output constant or
almost constant. Otherwise we change the controller output to achieve satisfactory results.
Most human controllers act by folowing the philosophy of this matrix. The logic of
this matrix approaches the human logic more closely than other fuzzy control matrices. This
matrix also shows something very fundamental. The designer, prior to designing a fuzzy
controller, should study the actions of the human controller, in order to be able to give to
the fuzzy controller a more realistic behavior. Note that if we project the policy of the
matrix on an axis perpendicular to the main diagonal, then we will see clearly the form of
the policy. One can increase the resolution of the matrix by a factor of 2. This increases

Fig. 11 Increasing the control resolution by a factor of 2


93

the number of the projected parts and reduces the fuzziness of the control policy (Fig. 11).
The analysis of the projections of the boundaries can be regarded as a study of the variance
of the neutral point and the amplitude of the fuzzy function /u^. MacVicar-Whelan has
asserted that using this analysis one can predict the resolution of the projections of the
boundaries. An alternative solution would be to start with a small resolution and slowly
increase it until we get the desired performance.
This matrix was not used by others, probably because it implements the fuzzy
controller in a direct way, and so for each particular case with special requirements it
should be varied. Another drawback is the small number of quantization levels used.
However, we believe that the logic and structure of this matrix are valuable, and thus we
used it for improving existing analog and digital PID tuning procedures as described in the
following.
The rules used for shlightly changing the controller parameter settings during
transient are empirical and are involved in a fuzzy 14x14 control matrix. Th eproblems
which must be faced refer to stability, computation time, cost, quantization, and
generality of the approach.
The main issues of our control rules are as follows:
a) since the integral term is responsible for the overshoot, shlightly decreasing it
at the moment when the system response exceeds the value 1, one can reduce considerably
the overshoot. On the other hand, a small increase of the integral term during the rising
of the response, leads to a 10-20% improvement of the rise time.

-6 -5 1 ""*1-^ -1
! • '
-0 +0
1-1 +2 + 3 + 4 +5 +6
-6 -6 -6 -5 -5 -4 -4 -3 -3 -2 -2 -1 -1 0 0
-5 -6 -5 -5 -4 -4 -3 -3 -2 -2 -1 -1 0 0 0
-4 -5 -5 -4 -4 -3 -3 -2 -2 -1 -1 0 0 0 +1
-3 -5 -4 -4 -3 -3 -2 -2 -1 -1 0 0 0 +1 +1
-2 -4 -4 -3 -3 -2 -2 -1 -1 0 0 0 +1 +1 +2
-1 -4 -3 -3 -2 -2 -1 -1 0 0 0 +1 +1 +2 +2
-0 -3 -3 -2 -2 -1 -1 0 0 0 +1 +1 +2 +2 +3
+0 -3 -2 -2 -1 -1 0 0 0 + 1 + 1 +2 +2 +3 +3
+1 -2 -2 -1 -I 0 0 0 +1 + 1 +2 +2 +3 +3 +4
+2 -2 -1 -1 0 0 0 + 1 + 1 +2 + 2 + 3 + 3 +4 +4
+3 -1 -1 0 0 0 + 1 + 1 +2 +2 +3 +3 +4 +4 +5
+4 -1 0 0 0 + 1 + 1 +2 + 2 + 3 + 3 +4 + 4 +5 +5
+5 0 0 0 +1 + 1 +2 +2 +3 + 3 + 4 +4 + 5 +5 +6
+6 0 0 +1 +1 +2 +2 +3 + 3 + 4 +4 + 5 + 5 +6 +6

Fig. 12 The present fuzzy PID control matrix


94

b) Since the derivative term is responsible for the flatness of the step response, a
small increase of it during rising and in the steady state eliminates the small oscillations
that usually occur.
c) Increasing the proportional term leads to reduced rise time and increased
oscillations. Thus finally this term should be decreased to avoid oscillatory behavior.
All these issues are experential observations of human controllers. Our problem was
to accomodate them into a matrbc and find the criteria of actually carrying out these
changes. The amount of increase / decrease of the proportional, integral and derivative
terms is expressed by three coefficients k^ k^ and k^
The fuzzy PID control matrix is shown in Fig. 12. The basis for the control rules is
the error E=X^-X {X^ is the desired and X the actual system output) and its derivative
AE=A(Xg-X). The sampling of E and AE should be made at small time interavals of the
order 0.1-0.2 sec.
This table involves 14 quantization levels for both E and AE. This ensures a closer
follow-up of the unit step response.
The linguistic code is
+ •» positive change - — negative change
6 •• extra large 4 •• big 1 — extra small
5 •• large 3 •» medium 0 •» zero (null)
2 •• small
The changes of the three terms, which showed good success, are given by the
expressions:
P = P*CV{E^E} X ^1 (Proportionar)
I = I + CV{EAE} X k2 (Integral) (13)
D = D + CV{EAE} X k^ (Derivative)
The parameters k^, k2 and k^ play an important role in the whole procedure, since
they determine the range of variation of each term. For example, if some tuning method
ensures very small rise time and large overshoot, then the integral term should have a large
range of variation, whereas the other terms can remain unchanged. This range of variation
should be matched with the stability interval in order to guarrantee stability. Thus the
values of Jtj, k2 and k-^ are determined from both the stability analysis and the particular
characteristics of the closed-loop response. In general the parameters k^ /cjand k-^ provide
large flexibility and can be used in conjunction with all available PID tuning algorithms. We
have also used the fuzzy control matrix of Fig. 13. The only difference with the matrix of
Fig. 12 is that here the Neperian logarithm of \CV{E, AE] \ is used. This ensures greater
stability around the set point and smoother transition from one value to another. The
results obtained using this table are also satisfactory, but the values of /cj, Aj and k^ are
found to be larger.
The stability can be tested by various techniques. In our studies we used Routh 's
table in the continuous-time case and the corresponding table, obtained through the
bilinear transformation z=(w+l)/(w-l) in the discrete-time case. The most serious
problem faced in our experiments was that of quantization. The right quantization of E and
AE ensures a good evaluation of the controller performance. We found the logarithmic
quantization to be most successful. We have used the following quantization levels:
95

^E{X„-X)
-2 +0 +4 +6
^ • ' - -^ - - " " - ^'
-6 -1.79 -1.79 -1.60 -1.60 -1.38 -1.38 -1.10 -1.10 -0.69 -0.69 0.00 0.00 0.00 0.00
-5 -1.79 -1.60 -1.60 -1.38 -1.38 -1.10 -1.10 -0.69 -0.69 0.00 0.00 0.00 0.00 0.00
-4 -1.60 -1.60 -1.38 -1.38 -1.10 -1.10 -0.69 -0.69 0.00 0.00 0.00 0.00 0.00 0.00
-3 -1.60 -1.38 -1.38 -1.10 -1.10 -0.69 -0.69 0.00 0.00 0.00 0.00 0.00 0.00 0.00
-2 -1.38 -138-1.10 -1.10 -0.69 -0.69 0.00 0.00 0.00 0.00 0.00 0.00 0,00 +0.69
-1 -1.38 -1.10 -1.10 -0.69 -0.69 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +0.69 +0.69
-0 -1.10 -1.10 -0,69 -0.69 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + 0.69 + 0.69 + 1.10
+0 -1.10 -0.69 -0.69 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + 0.69 0.69 + 1.10 + 1.10
+1 -0.69 -0.69 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +0.69 +0.69 + 1.10 + 1.10 + 138
+2 -0.69 0.00 0.00 0.00 0.00 0.00 0.00 0.00 + 0.69+ 0.69 + 1.10 + 1.10 + 138 + 138
+3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 +0.69 +0.69 + 1.10 + 1.10 + 138 + 1.38 + 1.60
+4 0.00 0.00 0.00 0.00 0.00 0.00 +0.69 + 0.69 + 1.10+ 1.10 + 1.38 + 1.38 + 1.60 + 1.60
+5 0.00 0.00 0.00 0.00 0.00 +0.69 +0.69 + 1.10 + 1.10+ 1.38 + 1.38 + 1.60 + 1.60 + 1.79
+6 0.00 0.00 0.00 0.00 +0.69 +0.69 + 1.10 + 1.10 + 138 + 1.38 + 1.60 + 1.60 + 1.79 + 1.79

Fig. 13 An alternative fuzzy PID control matrix

O^a^=0.02, DQ^^^O.02. Let us see in detail the logarithmic quantization. If the error E
is greater than O^^x/^' ^^^'^ ^' ^^ quantized in a value between + 1 and +6. l{E<-0^^/2,
then it is quantixed in the interval -6, -1. If 0<E<O„,gj[/2, then it is quantized to +0. If
-Oj^g^/2<E<0, then it is quantized to -0. Analogous quantization is applied to AE. It
should be noted that these quantization levels are sufficiently large to cover the presence
of noise. However this quantization was behaved quite well.

8. CONCLUSIONS

This chapter was devoted to the study of fuzzy dynamic systems. In particular after a brief
exposiiton of fuzzy relational equations and their properties, a general state space model
of fuzzy systems was presented which makes use of such relational equations. Then, the
particular class of first-order fuzzy systems was examined, followed by a discussion of the
relation between classical difference equations and fuzzy state-space equations. Then the
control problem of fuzzy dynamic systems was considered, and the one-step and multi-step
cases were presented, followed by a remark on the construction of the controller equation.
The identification problem of fuzzy dynamic systems was then treated which includes the
estimation of the fuzzy relation R and the fuzzy state prediction. Finally, three important
fuzzy controllers were reviewed which have practical value and have been applied with
success at least in simulation experiments. The topic of fuzzy dynamic systems is still open
and much has to be done in several directions e.g. structural analysis, input - output
96
analysis, stability analysis, sensitivity analysis, parameter and state estimation, and
controller design.

REFERENCES

1. L.A. Zadeh: Fuzzy Sets, Inform, and Control, Vol. 8, pp. 338-353, 1965.
2. L.A. Zadeh: Outline of a New Approach to the Analysis of Complex Systems and
Decision Processes, IEEE Trans. Syst. Man, Cybern., Vol. SMC-3, pp. 28-44,
1973.
3. W. Pedrycz: An Approach to the Analysis of Fuzzy Sytems, Int. J. Control, Vol.
34, No.3, pp. 403-421, 1981.
4. E. Sanchez: Eigen fuzzy Sets and Fuzzy Relations, J. Math. Anal. Appl., Vol. 81,
pp. 399-421, 1981.
5. E.H. Mamdani, and TJ. Procyk: A linguistic self-organizing process controller,
Automatica, Vol.15, pp. 15-30, 1979.
6. H.R. Van Nauta Lemke, and W. De-Zhao: Fuzzy PID supervisor, 24th IEEE
CDC. Paper WP9-5:15, pp. 602-608. Ft. Lauderdale, FL. 1985.
7. S.G. Tzafestas, and N. Papanikolopoulos: Intelligent PID control based on fuzzy
logic, Proc. IFAC Symp. on Distributed Intelligence Systems Methods and
Applications (DIS '88), Varna - Bulgaria, June 1988.
8. P.J. MacVicar-Whelan: Fuzzy sets for man-machine interaction, Intl. J. Man-
Machine Studies, Vol. 8, 687-697, 1976,
9. P.J. King and E.H. Mamdani: The application of fuzzy control systems to
industrial processes, Proc 6th IFAC World Congress, Boston 1975,
Automatica, Vol 13, pp. 235-242, 1977.
This page intentionally blank
PART 2
NEURO-FUZZY SYSTEMS
CHAPTER 5

NEURAL NET APPLICATIONS IN FUZZY SYSTEMS

Hiroshi Kavvamura and Akinori Tani

Department of Architecture and Civil Engineering


Faculty of Engineering, Kobe University
Rokkodai, Nada, Kobe, 657, Japan

1. Introduction

The concepts of fiizzy sets and fuzzy systems proposed by Zadeh [18] [19] have many
possibilities of being applied to the description and analysis of this real fiizzy world. In
the application of these concepts to knowledge engineering, there are two problems, i.e.,
learning of fuzzy knowledges and automatic inference of unknown variables. On the
other hand, one can identify any complex functions by means of perceptron-type neural
networks [12] and the back-propagation error method [13].
The purpose of this chapter is to propose some methods of neural network
applications to fuzzy systems (and not of fuzzy system applications to neural networks
[10]). As mentioned above, the concept of neural networks is very useful for learning
knowledge and automatic inference. In this chapter, besides usual neural networks, a
couple of quasi-neural network methods are proposed.
In the field of engineering planning and design, evaluation and optimization are
performed by using many kinds of variables (e.g., load, size, weight, strength,
intensity, deformation, cost and so on) and constraints (e.g., design formula,
mathematical equation, function, code, criterion and so on). Due to inevitable
uncertainties, in general, these variables and constraints can be described with fuzzy
sets and fuzzy relations [17][18], respectively, which can include rationally usual crisp,
deterministic and probabilistic expressions as special states.
As conditioned probabilities are used in probability systems, so conditioned fuzzy sets
[1] are used as states in fuzzy systems composed of inputs, states and outputs [19]. In
engineering problems, such conditioned fuzzy sets which belong to fuzzy relations are
very useful enough to discriminate uncertainties in variables firom ones in constraints
(or functions) [3].
The final purpose of this paper is to propose a paradigm of intelligent and neural
fuzzy networks in which learning, identification, evaluation and optimization can be
performed for engineering planning and design by expanding fiizzy systems and
employing a couple of models similar to neural networks [10].
99
S.G. Tiafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 99-119.
© 1994 Ktuwer Academic Publishers. Printed in the Netherlands.
100

2. Identification of States in Fuzzy Systems


2-1. Fuzzy System
Fuzzy systems arc composed of input X (fuzzy set), state R (fuzzy relation) and
output Y (fuzzy set) as shown in Fig.l [19]. If R is described with conditioned fuzzy
sets R(Y/X), the system shown in Fig.l becomes directed (solid allows).

Input State Output


Fig.l Fuzzy System
The inference algorithm is given by
XoR(Y/X) = Y, (1)
where o means the max-min operation [18]. If R is assumed to be described with an
undirected fuzzy relation, i.e.,

R(Y/X)=R(XA'), (2)

the system becomes undirected (solid and broken allows). For the purpose of the max-
min operation in fuzzy systems, fuzzy relations are described with matrix expression.
Consider a two-dimensional matrix fj. ^ (0 ^ /ij^^ I) as shown in Fig.2, and this matrix
means a state (i.e., fuzzy relation) R. If R is valid for both the cases of given x and
given y, the undirected fuzzy system can be illustrated without allows as shown in Fig.3.

y y y
1 2 3

Fig.2 State (Fuzzy Relation) Described Fig.3 Undirected Fuzzy System


with Matrix Expression
If fiizzy relation matrices are identified by using appropriate fiinctions, such
undirected fuzzy systems can be constituted, bi this chapter, neural network, fuzzy
confluence rule and fuzzy identifier are employed for the identification of states in fuzzy
systems. The second and third functions were proposed by the authors [3] [7] for the
identification of engineering planning and evaluation functions. The outlines of these
three functions and the similarities between them will be explained in the following
sections.
101

2-2. Neural Network

A typical neural network is shown in Fig.4 [13]. Input-, hidden- and output-layer
unit values, Oj, Oj and oj^, are given by

aj-Xj, i=l,....,ni. (3)


bj=f(Uj), j=l,«"«,nj, (4)
Ck=f(Uk), k=l,"",n]{, (5)
" 1
uj=Ewjj«aj+(9j, (6)
i=l
"J
Uk=Zwkj'bk+0k' (7)
k=l

where x is input, w is connection weight and 6 is threshold value. The sigmoid


function expressed by Eq.8 is often used as the function f(u) in Eqs.4, 5.

f(u)=l/{l+exp(-u)} (8)

Output Valuex ^ %(x,y) = R


^
Hidden Layer
^ Unit Value .b j
Neural
Network
Input Value:a j
X y
Fig.4 Neural Network Fig.5 Identification of R
by Neural Network
If x j , X2 and c^ in Eqs.3~7 are replaced by x, y and /j. ^ respectively, the function
of neural network can be illustrated as shown in Fig.5. U R is membership value of
fuzzy relation as shown in Fig.2, which implies that we can identify fuzzy relation R by
using the neural network (e.g., the back-propagation error method [13]) and that after
the identification we can constitute a fuzzy system with the state R such as shown in
Fig.3.

2-3. Fuzzy Confluence Rule [3] [4]

Even in engineering planning, sometimes we have to evaluate subjectively numerical


values and/or subjective judgements. For the purpose of such a subjective evaluation,
the authors already proposed a fuzzy confluence rule [3] expressed by a linear
combination of intersection-, union-, algebraic summation- and product-membership
102

functions n with mutual influence coefficient a , over estimation coefficient ^ and


weighting coefficient 7 as follows:

; t i R = ( l - a X l - y 9 ) j " i + a ( l - / 9 ) / z p + ( l - a ) ^ Mu+a ^ ;"s (9)

in which

Hl=!\{UXi(xi)} 7 i, Ui?=n{liXi(xi)} f i, (10)


i=l i=l
n n
H\j=\jy\H Xi(xi)> /z s = l - n 7 i Ai Xi(xi)>
i=l i=l
;"Xi(xi):xi-^[0.1]. Xi€Xi(i=l,2,...,n) (11)

J"R. J" I. A^P. A<U' J«S: IIXi-*[0,l], (12)

0^a,yS,ri^l,(i=1.2,..-,n) (13)

The topological effects of the coefficients a and ^ on the linear combination are
illustrated in Fig.6. This fuzzy confluence rule can be illustrated as a kind of neural
network with hidden-layer units, u^, jUp, fi^jSni ^ g such as shown in Fig.7.

/ZR(x,y)^R

10 © Fuzzy
Confluence Rule

-"xW Ax^^a* '"X^'^s' J"xW


4^
X y
Fig.6 Topological Effect of Fig.7 Fuzzy Confluence Rule Fig.8 Identification of R by
a and /S as a kind of Neural Network Fuzzy Confluence Rule
The identification (i.e., learning) of this rule can be performed by determining a,
jS, 7 1,' • • , 7 n based on given sample data. The method of least squares is effective
for the identification [4]. This rule has a great merit, i.e., "not black box", which is
different from usual neural networks.
If XI and X2 in Fig.7 are replaced by x and y, the function of fuzzy confluence value
can be illustrated as shown in Fig.8. After the identification of R, we can constitute a
fuzzy system with the state R such as shown in Fig.3.

2-4. Fuzzy Identifier [7]

In engineering planning and design, when we search for such an optimal solution of
systems as it needs plenty of time or money to calculate, we have to predict it based on
103
limited results of analysis. Aiming at solving these problems, the authors already
proposed a multi-variable fuzzy identifier shown in Fig.9 [7].

' ' l - ^ lOi Multi-variable


Xf=a2o Fuzzy Identifier
: c=> y=f(xi,)fe,..,x„)
''n-^ nO Tidentification ^0
Inputs of Output of
Numerical Values lata Sets
Initial Data Fuzzy Set
Fig.9 Multi-variable Fuzzy Identifier

If y=f(xi, X2,"",Xn) is assumed to be a linear equation expressed by

y= a 1X1+ a 2x2+- • • + a nXn+ a n+h (14)

using n+1 sets of initial data, i.e.,

(xi=aii, X2=a2i,"", Xn=ani, y=bi), i = l , " " n + l , (15)

the coefficients of Eq.l4, a 1, Q ; 2 ' ' " ' '^n+l ^^ ^ determined by solving simultaneous
linear equations.
When the following point in the n-dimensional space is given as an input,

xi=aio, X2=a20,-", Xn=anO (16)

the output yo is obtained by

yO= « 1^10+ a 2320+" • •+ « nanO+ « n+1 (17)

Here, let the minimum b and the maximum b among bj, i=l,«.-,n, in Eq.l5 be yomin
and yomax' respectively, and one can illustrate a triangle-type membership function
[yOmin. yO' yOmaxl ^ shown in Fig.lO.

1- A^^bi ^^%^

0 .y"^^ y \ 1. "^ >


yOlmin Vol yfllmax ^0 V
Fig.lO Average Membership Function
If a couple of groups of appropriate n+1 initial data sets (Eq.l5), i.e., three points
with the first, the second and the third shortest distances from the input point (Eq.l6) are
employed, membership functions [j. YQ\, fJ- YO2' ^ Y03 ^^'^ ^^^^^ average membership
104

function fx yo' '•^•» * ^ ^"^' output of the proposed fuzzy identifier are obtained as
shown in Fig. 10, where average means algebraic one with respect to membership values.
This multi-variable fuzzy identification can be illustrated as a kind of neural network
with two hidden-layer units, i.e., linear equation and avarage as shown in Fig.ll. The
authors already applied it to structural planning [2].

(J-yp^ R(Y/X)
Avarage
Linear Equations 1 , t
Fuzzy Fuzzy
f3 Identifier Identifier

^1 ^2 ^3 ''n y
a 10 320 ^30 ^nO (a) Input X (b) Input y
Fig.ll Multi-variable Fuzzy Identifier Fig.l2 Identification of R
as a kind of Neural Network m by Fuzzy Identifier

The simplest fuzzy identifier with input x is shown in Fig.l2(a), where output fi y/x is
conditioned membership function and corresponds to conditioned fuzzy set R(XA'). On
the contrary, when y is put into the fuzzy identifier, /i ^ A ' ^"'^ RCXA') can be obtained.
Therefore, the fuzzy identifier can be regarded as undirected fuzzy system as shown in
Fig.3.

2-5. Calculation Examples

2 - 5 - 1 . Neural Network

Consider a fuzzy system as shown in Fig. 12 in which X and Y mean structural


damage and return period of earthquake loading, and fuzzy relation R is defined as a
label "structural safety". The membership function fi ^ shows the grade of structural
safety, fi j{(x) and (i Y(y) are transformation functions into R and simultaneously the
safety membership functions of x and y.

X:StnJC1ural Damage R:Structura] Safely Y:Relum Period


of Earthquake
Loading

& /ixW -{j^vXlix^T) l^yCy) -tu


Fig. 12 Fuzzy System for Structural Safety Evaluation
The structural safety evaluation is based essentially on subjective judgements and can be
determined by questionnaires regarding school buildings distributed to structural experts
[15]. The results of questionnaires arc plotted in Figs.l3, 14 and 15, which show
U x(x) of structural damage x, ij. yCy) of return period of earthquake loading y and p. R
with respect to // j^ and ii y, respectively.
105

Solid Collapse 0 20 40 60 80 IC,


Fig. 13 Saftey Evaluation of Structural Fig.l4 Safety Evaluation of Return Period of
Damage by Questionnaires Eairtliqualce Loading in Design by
Questionnaires
To identify ^ ^ in Fig. 15 by neural network, a neural model is assumed as shown in
Fig.l6 [16]. The connection weights w and threshold values 0 are determined by the
back-propagation error method [13] as shown in Table 1. The final output /i R is
plotted in Fig.l7 wliich shows very nice agreements to Fig.lS.

^ Y "•" 1
Fig.lS Safety Evaiuation with Respect to // x and |i y by Questionnaires

Output /i J

&i\A 4<"23f31
Z\%lJ\j wKaWi
hm
llf21''Or^ -yi^!2% ./'• 0
Ills X ^

Input- n
A
m In p«t-/f^(y)
Fig. 16 Assumed Neural Network Fig. 17 Safety Evaluation with Respect to
IIX and /i Y by Neural Network
106

Tabic 1 Identification of Q and w by Neural Net^'ork


Biases Wei ghts
^31 1.02 2l"*'31 -3.27 13^21 1.05
^21 1.36 22^31 -1.76 14^21 -2.58
6*22 -1,81 23^31 4.82 11^22 1.58
^23 -2.08 24 "^Sl -7.96 12*^22 3.22
6" 24 -1.31 11*'21 -0.939 13*22 -1.98
12^21 -1.07 t4*'22 2.15

2-5-2. Fuzzy Confluence Rule

To identify n ^'m. Fig. 15, a fuzzy confluence rule model is assumed as shown in
Fig.18 [16]. The paramctcis, a , jS and j are determined by the method of least
squares and showH in Table 2. The final output /^ g is plotted in Fig.l9 which sliows
very nice agreements to Fig.15.

Output /ig

Input-/ixCx) Input-/I YCJ) H Y" -- i


Fig.18 Assumed Fuzzy Confluence Rule Fig.l9 Safety Evaluation with Respect to
fi X and /I Y by Fuzzy Confluence Rule

Table 2 Identification of a , /3 and j by Fuzzy Confluence Rule


a /S Ti T2
F. C. Parameter 1.0 0.48 1.0 0.2

2-5-3. Fuzzy Identifier

The fuzzy identifier shown in Fig. 11 can present the optimal value yo whose
membership value is the maximum in /£ yo- Therefore, it enables us to examine its
exactness as a function [7]. Assume a function given by Eq.l8

y=(xl/x2)+x3 (18)
107

shown in Table 3 in which b j (i=l, - 1,5) is derived from Eq.18 and assumed an, a2i
anda3i(i=l,»»»,5).

Tabic 3 Initial Data Sets


1 2 3 4 5
^1 Hi 1 3 4 5 7
^2 ^21 2 3 5 8 10
% %i 4 2 0.5 8 12
y h 4.5 3 1.3 8.625 12.7

Table 4 1331 Combination Cases of Input Data for ExaminatioB


f 1 • • t • "' * "'"""' —11

Xl %! l~7(pitch:0.6)
^2 ^2 2~10(pitch:0.8)
^^3 %i 0.5~12(pitch:1.15)
1331 Cases

By using the fuzzy identifier model shown in Fig.ll and the initial data sets shown in
Table 3, the final optimal values of y arc estimated in the 1331 combination cases of
input data shown in Table 4. The comparison between the calculated values y^al by
fuzzy identifier and the real values Jfc-^i by Eq.18 is shown in Fig.20. In this case study,
they coincide well with each other.

17.5 ^real

12.5

ycal
17.5
Fig.20 Comparison between Real Vaie by y=(xl/x2)+x3 and Calculated ones
by Fuzzy Identifier

3. ConstitutioB of Intelligent Fuzzy Networks

3 - 1 . Fuzzy Networks

In engineering planning and design, X and Y are considered to be variables described


with fiizzy sets and R is a constraint described with a fuzzy relation. When undirected
fii77.v R1/Stf»,Tn.'5 arp niTinp,rtp.d -with p.ar.h n t h e r a fiiyTir nphiyriTlf ic crtnstmftfA nc chnm/n In
108
Fig.21 in which X^, • • • ,Xjj and Rj, • • • ,R^ are variables and constraints, respectively,
and inference can be performed in arbitrary directions.

Fig.21 Fuzzy Network


For example, a simple fuzzy network is shown in Fig.22 by which a short column
subjected to axial load P can be designed, a g^is axial stress, S is safety factor and S^ is
critical safety factor. The fuzzy relations P/A o a and S ^ S^. mean stress and safety
evaluations, respectively.
P(load)
{} A(Area)

CTa(Stress)

Fig.22 Stub Column Design Network


3-2. General Methods for Fuzzy Network Reasoning

Now, let's go back to fuzzy networks as shown in Fig.21 where states R^, R2,»'> and
Rjjj are identified by learning given initial data. The next subject is to obtain necessary
or unknown variables Xj, Xj, etc. by fuzzy network reasoning. The most perfect
method is to get the total state Rj whose variables X]^,» • ^Xji are all unknown as shown
in Fig.23.

R,= n Rv

Fig.23 Total Fuzzy System with Unknown Variables


The optimal solution is given by a vector (x^*, X2*,—, x^*) whose membership value is
maximal. Before getting a total state Rj, known or given variables have to be eliminated
by inserting them to connected states by the max-min operation. However, this total
method seems to be very difficult because generally the number of variables is very
large.
109

A more approximate method is successive shadow one in which even unnecessary


variables are eliminated successively. This method is similar to the solving multi-
variable simultaneous linear equations. The elimination can be performed by using the
max-min compositional rule [18].
For example, fuzzy relations R X Y ( X , Y ) and R Y Z ( Y , Z ) can be connected and reduced
to Rxz(X,Z) as follows:

RXY(X,Y)ORYZ(Y,Z)=RXZ(X,Z), (19)

The procedure of Eq.l9 is illustrated with fuzzy network as shown in Fig.24.

Fig.24 Elimination of Y Fig.25 Final Fuzzy System


When the number of variables X is equal to the number of states R, finally the network is
reduced to a fuzzy set such as shown in Fig.25 which is a solution itself. In general, the
composition rule gives shadows of membership functions fl8]. So, the membership
function of the final fuzzy set shown in Fig.25 is the shadow of the membership function
of the total state Rj shown in Fig.23 projected to Xj-plane.

3-3. Intelligent Fuzzy Network Reasoning

3 - 3 - 1 . Frame Knowledge Representation Method [6]

In this section, two kinds of practical and intelligent solving methods of fuzzy
network are shown aiming at object-oriented systems.
The first is frame knowledge representation method [6]. Table 5 shows common
frame knowledge representations, i.e.. Frame 10 for inputs and outputs and Frame S for
states of fuzzy systems. In these frames, "knowledge" represents fuzzy set, and D
shows input, state or output in sub-frames such as shown in Table 6. For Example, if
fuzzy systems A and C as shown in Fig.26, sub-frames, i.e., Frame IB, SB and OB are
shown in Table 6. Actually, sub-frames have to be constructed according to fuzzy
networks such as shown in Fig.21.

lA SA OA IB SB OB ]C sc oc
Fuzzy System A Fuzzy System B Fuzzy System C
Fig.26 Serial Fuzzy Network
110

By using Tables 5 and 6, when a certain variable or state is denoted as a final goal,
the most terminal variables or states are searched out (backward inference). When the
most terminal variables or states are given, the goal is obtained (forward inference).

Table 5 Common Frame Knowledge Representation


Naie of Fraie Fr arae 10 Frame S
Knoiledge » • (=[•]) HQ (= O )
Procedure 1. If knoiledge D ] exists then exit tliis fraie. 1. If knoiledge D ] exists then exit this fraie.
2.!ecognilioii of fra»e naiie ihich calls this fraje. 2. Secognition of fraie naie jhich calls this fraie.
3.1f G is not called by D tiencall Q 3. If D is called by • or D then input O
4.1f D is not called b j D then call Q and exit this fraie.
5.If n exists and D is not called by D 4. If D is not called by D then call • .
then call D and put [D] into O - 5. If D is not called by D then call D.
6. If D does not exist or D is not called by D e. Calculation of D ] using O and D ]
then input [Q] and exit this fraie. and exit this fane.
7. If knoiledge D ] doesn't exist or D is not called
by D or D then D ] = D ] and exit this fraie. n shots naie of fraie.
8. Calculation of D ] using O and O -
9. If knoiledge D ] and D ] exist O shots naie of knoiledge.
then 0 = i i n l O . O } and exit this frai&

Table 6 Sub-Frame Knowledge Representation For System B


Naie of Fraie Frame IB F r a m e OB Frame SB

ISA iFrame 10| 1 Frame 10 | iFrame S|

Knoiledge DDQB] H® HQB]

Procedure 1.E 1. H 1. QB]


3. QB] [i]® 3. [¥1 [¥] QB] 3. QB] | ¥ ] QB] d ]
4. QB] [U H] 4. [ H QB] QB] 4. QB] QB] QB]
s. [T] [¥] H E H H 5. H] [D Qc] Qi] QC] H ] s. QB] [¥] QB]
E. [ A ] H QB] QB] 6. [c] QC] @ [OB] 8. QB] QB] QB] »
7. OF] QB] H ® QB] QT]7. QO H QE B H H •(a operation)

8. Q B ] Q B ] | 0 B ) ( O operation) J. \^ [§] IjlJ (tax-tin operation)

9. [¥] n n QBI QB] QFl s. QB] H QB] H QD

3-3-2. Inference Tree Method [8] [9]


The next is inference tree method [8] [9]. When a certain variable is denoted as a
final goal in a fuzzy network such as shown in Fig.21, a hierarchical tree with the top
event of the final goal is constructed and the most terminal variables are pointed out as
shown in Fig.27 according to given research rules (backward inference). The research
Ill

algorithm is shown in Fig.28. When the most terminal variables are given, the goal is
obtained according to the max-min operation (forward inference).

Tenninal X^_i

Fig.27 Fuzzy Hierarchy with Top Event X i

START -»| Depth of Hierarchy :1|

Search states iS which are related to


outputs iO in the i-th hierarchy level
3ZI
Knowledge base (KBi) with respect to
iS and iO is created.
0 I iOl , i02. •••*. iOn

iOj is 'Input'

iOj is deternined.
iOj and iSa are deleted from KBi.

One of the outputs which are


related to iSn is needed to be
demanded as an ' Output' by users,
and then another outputs become
' Input'.

Fig.28 Reasoning Algorithm


112

The first method is not substantially different from the second one. In the first
method, however, the variables and states are not supposed to be given. So, it is
possible to denote even a state as a goal and even states can be pointed out as necessary
inputs. Only when all the states are given from the beginning, the second method
becomes usefUl.

3-4. Inference Examples

3 - 4 - 1 . Frame Knowledge Representation Method [6]

Fig.29 shows an intelligent fuzzy network for aseismic structural evaluation and
optimum design in which directed fuzzy systems are employed. R, V, D and S means
the fuzzy sets which represent the likelihood of earthquake return period, maximum
ground velocity amplitude, seismic structural damage and structural safety, respectively.
V/R, DA' and S/D/R mean conditioned fuzzy sets which represent the likelihood of
seismicity, aseismic structural characteristic and criterion of aseismic structural safety,
respectively. S/D/R is described with non-fuzzy parameters D and R and given from
structural, economical and social points of view.

A B
S~ o
> V <-^ V D, > D
^/R 7V
^ ^/D/R
'^ R ^
R ;Retum Period of Seismic Load
V :Ve]ocily Amplitude of Ground Motion
D ;Damage to Structure
S :Safety
Fig.29 Intelligent Fuzzy Network for Aseismic Structural Evaluation
To evaluate aseismic structural safety, aseismic structural safety S is called initially.
Calling and reasoning flows (hollow and solid arrows) in the case of calling structural
safety are shown in Fig.30. According to the frame knowledge representations shown
by Tables 5 and 6, R, V/R, D/V and S/D/R are demanded of users. When the fuzzy sets
shown in the dottcd-line rectangles in Fig.30 are put into this network, the aseismic
structural safety S shown in the double-line rectangle is finally obtained.
When aseismic structural characteristic D/V is called initially, one can perform
optimum aseismic structural design. Calling and reasoning flows (hollow and solid
arrows) in the case of calling D/V are shown in Fig.31. According to the frame
knowledge representations shown by Tables 5 and 6, R, V/R, S/D/R and S are demanded
by users. When the fuzzy sets shown in the dottcd-line rectangles in Fig.31 are put into
the network, the aseismic structural characteristic D/V shown in double-line rectangle is
finally obtained. The membership function (/ Yi/w of D/V represents the optimum
degree of aseismic structural characteristics.
In these case studies, fuzzy inputs and fuzzy states are calculated by solving fuzzy
relational equations [14][11].
113

;V/R D/V I ^'^D/R


r 200 100 75 (Vear) ;f\| 25 20 15 10 5(Kine) ! v ^ l 30 20 10 5 Z(cii) i 4 l 0 0.25 0.5 0.75 1.0
/ i j ' O . ! 1 0.2 200 0.3 I 0.3 0 0 25 1 0.3 0 0 0 • 30 0.3 1 0.3 0 0
100 0 0.3 1 0.3 0 20 0.3 1 0.3 0 0 : 20 0 0.3 1 0.3 0
15 0 0 0.3 1 0.3 15 0 0.3 1 0.3 0 : r=200 10 0 0 0.3 1 0.3
; (Year) 10 0 0 0.3 1 0.3 :(Year) 5 0 0 0 0.3 1
"MA 5 0 0 0 0.3 1 I 2 0 0 0 0 1
(Kine)
..'M : '"' "5/0/200
; dS 0 0.25 0.5 0.75 1.0
; 90 1 0.3 0 0 0
: 20 0.3 1 0.3 0 0
;r=100 10 0 0.3 1 0.3 0
i(year) 6 0 0 0.3 1 0.3 •
; 2 0 0 0 0.8 1 ;
i <'"> "S/B/Iooi
; (Ti 0 0.25 0.5 0.75 1.0 !
: 30 1 0 0 0 0 ;
; 20 1 0.3 0 0 0 i
: r=75 10 0.3 1 0.3 0 0 ;
iCYear) 5 0 0.3 1 0.3 0 ;
; 2 0 0 0.3 1 0.3 ;
U. 10.3 0.3 1 0.3 0.3
.,
i <"'
^
"sml
Fig.30 Calling and Reasoning Flows in the case of Calling Structural Safcty(S)

; v/R D/V D/R


r 200 100 75 (Year) 25 20 15 10 mne) ; v:ij 3D 20 0 5 2(cm) d\| 0 0.25 0.5 0.75 l.i
/ij'o.Z 1 0.2 0.3 1 0.3 0 0 25 1 1 1 1 ; 30 0.3 I 0.3 0 0
100 0 0.3 1 0.3 0 20 1 1 1 1 ; 20 0 0.3 1 0.3 0
?i 0 0 0.3 1 0.3 15 0.3 0.5 0.5 0.3 ;r=200 10 0 0 0.3 1 0.3
; (Year) 10 1 1 1 1 ;(Year) 5 0 0 0 0.3 1
tm 5 1 1 1 1 : z 0 0 0 0 1
(Kine)
"D/V i <"> "s/D/200
; d ^ 0 0.25 0.5 0.75 1.0

1 0.3 0 0 0
; Input InDut : : Call /y : : 20 0.3 1 0.3 0 0
: SI AT Input Input ;r=100 10 0 0.3 1 0.3 0

;L
L
f V/ '
> /R< flte ' D/ 1
&
3D ri AT
S/
AT
:s
;(Year) 5
;
i
2
(ci)
0 0 0.3 1
0 0 0 0.3
"S/D/100
0.3
1

(Txl 0 0.25 0.5 0.75 1.0


IJRrr^ ; 30 1 0 0 0 0
; 20 1 0.3 0 0 0
;r=75 10 0.3 1 0.3 0 0
;s •(Year) 5 0 0.3 1 0.3 0
: Input Result of
• s I 0 0.25 0.5 0.75 1.0 : 1 0 0 0.3 1 0.3
; Knotledge Beasoning ; (cii)
i;; 10.3 0.5 1 0.5 0.3 .."jMi.l
Fig.31 Calling and Reasoning Flows
in the case of Calling Aseismic Structural Characteristics (D/V)
114

3-4-2. Inference Tree Method [9]

In this case study, a standard type of reinforced concrete (R/C) transfer substations of
Kansai Electric Power Co. Ltd. is employed for aseismic structural planning. This
building is assumed to be located at Kobe City in Japan. Aseismic optimization and
evaluation are performed in the X-longitudinal direction. Fig.32 shows a fuzzy network
composed of undirected fuzzy systems for seismic planning of R/C building. • and [Q]
mean variables and states, respectively. The variables are defined as shown in Table 7.
The states arc already given from seismic and structural points of view [9].
Aseismic optimization is performed with respect to optimal number of shear wall
units. If N-WALL in Fig.32 is nominated for the final output, then the fuzzy network is
transformed into a fuzzy hierarchy such as shown in Fig.33. Considering the properties
of the R/C structure and using the inputs described with fiizzy sets shown in Fig.34,
calculated variables in structural optimization are obtained as shown in Fig.35. Fig.36
shows the region of optimal numbers of shear wall units illustrated with membership
functions given by maximizing decision [1], which means the optimal number is about
9-10.

STATHEfflil
MS-I
IM-WAG
fOTfj^M-CEQ
d= m MB^Mm
^^IMWIMI mm
: STATE
MM-MM-^M
Fig.32 Fuzzy Network for Structural Planning

Table 7 Variables in Fuzzy Network for Structural Planning


N-COLM Number of Columns A-WALL :Sectional Area of Shear Walls
D-COLM Depth of Column Sections ACC Acceleration Amplitude of Ground Motions
HHGHT Height of Columns ,N-WAli iNecessary Number of Shear Wall Units
WEIGHT Seismic Weight of BuOdings ,W-DESIGN :Design Length of Opening of Shear Walls
l-WALL Thickness of Shear Walls ,W-NECE iNecessary Length of Opening of Shear Walls
L-WALL Span Length ot Shear Walls .EOONOMY :Satisfactory Degree of Economy
N-ALL Total Number of Shear Wall Units .SAFETY :Satisfactory Degree of Safety
Q-R-COLM Force-Deformation Relation ot Columns .FUNCTION [Satisfactory Degree of Function
A-COLM Sectional Area of Columns .PERIOD :Retum Period
Q-R-WAIX Force-Deformation Relation of Shear Walls .DAMAGE iDamage Factor
,1 :lmpOTlance Factor
115

Aseismic evaluation is performed regarding economy, safety and function. If


ECONOMY, SAFETY and FUNCTION are nominated for the final outputs, the fuzzy
network in Fig.32 is transformed into a fuzzy hierarchy such as shown in Fig.37. Using
the inputs described with fuzzy sets shown in Fig.38, Fig.39 shows the final evaluations
of economy, safety and function illustrated with fuzzy sets given by maximizing decision,
which means they are good conditions except safety.

iKMETMTlFMffllPERTillEM

• INPUTS
Fig.33 Transformed Fuzzy Hierarchy for Structural Optimization

Ql—'—i—•—^WEIGHT nl—.—i—.—5.N-COLM n • D-COLM 0 ECONOMY


2200 (t) " 22 " 60 (on) VUWiWlO'
p. p. fl
ID 1 10

„ ->—I—.—S.HEIGHT 0 FUNCTION
350 ICB) (oml (cm) D.n.4 0 i D i l . D
U
10' 10'

>»-NECE n -^N-ALL 0 -^PERIOD 0 SAFEH


58 60 62 MO^cin) " 16 " " 5 0 '(YEAR) " UMiU\Ji'
Fig.34 Inputs for Structural Optimization
116

111 /i, n* srATE2


(4) Uai.
"WJ-STATE3 (7) -"A-IMI STATES I10)/4i-i«.l STATE4
lo'l- r 10 ! 10- 10-

• QR-WALL 0 »A-WALL 0 N-WALL

(21 U
SrATE9 (5) -"jn STATE5 '^' ^i-tEsiw STATEIQ " " ^ - « L L STATEll
10

>ACC 0 *-DESICNo ^N-*ALL


1.1 1.? 1.5 200 800 (gall 50 60 (xlO'cn) 7 8 9 10
(31 -"jf-aui STATE! (6) U:^ CTITCR (9) A
M l « STATE6 j m STATE?
10 10^

.OR-com „ »DAMAGE 0 N-WALL


(t) 0 0.3 0.5 5 10

Fig.35 Calculated Variables in Structural Optimization

\**^^ , FUNCTION
I 0 •ECONOMY
SAFETY

0 N-WALL
5 »N 13
Fig.36 Decision of Optimal Number of Shear Wall Units

ISAFETYI lECONOMYl IFUNCTIONI

iSTATEfill tSTATEQi llSTATEIflJ

...... STATE J

I I INPUTS i>s««isi iiinaiii nffiemi


Fig.37 Transfonncd Fuzzy Hierarchy for Structural Evaluation
117

/^ ^ 1 •com EiGiir
10' lO' lO'

I
^WEIGHT nl—•—L .N-COLM 0 J—.—>D-COLM 0 .HEIGHT
2200 (t) 22 60 (cm) 350
•lAlL /^PERIOD

ID- , 10 LO-
I

-*L-lfALL 0 -^t-WALL 0 ^.N-HIALL 0 •PERIOD


(cm) (cnl (YEAR)

^.

^IK-NECE 0 .N-ALL
58 50 62 (xiO^cnl 20

Fig.38 Inputs for Structural Evaluation

SAFETY FUNCTION ECONOMY


-> 0 * 0
0.5 1.0 0.5 1.0 0.5
Fig.39 Evaluation of Economy, Safety and Function

4. Discussions

To identify states (i.e., fuzzy relations) in fuzzy systems, in this chapter, neural
network, fuzzy confluence rule and fuzzy identifier are proposed. We have to pay much
attention to the problem that each of the models has its own merits and demerits. Neural
network is available for any type of functions, but it is a "black box". Fuzzy confluence
rule is effective for human judgements, and it is not a "black box". Fuzzy identifier is
appropriate for engineering problems in which design equations and functions are given.
Anyway, it is desirable for us to have many alternatives for such an identification.
In this real world, almost events and judgements may be transformed into fuzzy
networks as shown in Fig.21, where some variables and states are given and others are
not given. The calculation procedure of states as shown in Fig.31 can be called
"learning", and the calculation procedure of variables as shown in Figs.30, 33 and 37 can
be called "inference". By means of local identifications of states in fuzzy systems
and/or macroscopic leaning of state in fuzzy networks, every state in fuzzy networks can
be determined, which enables iis to infer unknown variables. When these learning and
inference are performed automatically, fuzzy networks can be called "intelligent fuzzy
networks", or "ncuro-fuzzy networks".

5.C0NCLUSI0NS

In this chapter, a paradigm of intelligent fuzzy networks is proposed especially for


engineering planning and design. Its main features are described as follows:
(1) The proposed fuzzy network is composed of fuzzy variables and fuzzy states
(constraints).
(2) By learning given knowledges, not only neural network but also fuzzy
confluence rule and multi-variable identifier (quasi-neural networks
proposed by the authors) become available for the fuzzy states.
(3) By employing intelligent object-oriented systems, engineering
evaluations and/or optimization can be performed in the same manner.
(4) The proposed intelligent fuzzy network is a fusion of fuzzy systems and
neural networks.

Acknowledgement: The parts of this research are performed under the financial supports
by Grant-in-Aid for Scientific Research (C) (The Ministry of Education, Science and
Culture, Japanese Government), Kansai Electric Power Co. Ltd., Newjec Co. Ltd., and
the Secom Science and Technology Foundation. The authors are grateful to all the
graduate students who coworked in the authors' laboratory.

6. References

[1] Bcllman,R.E. and Zadeh,L.A., "Decision-Making in a Fuzzy Environment,"


Management Science, 17, 4, pp.141-164: Dec. 1970.
[2] Cui,X., Yamada,M., Kawamura,H., and Tani,A., "Support System for Selecting
Structural Planning Data of R/C Multi-Story Frames with Cantilever-Type Shear
Walls," Extended Abstracts of the IV-ICCCBE'91 Cconference, Tokyo, Japan,
pp.263: July 1991.
[3] Kawamura,H., Tani,A., Kawamura,M., Matsumoto,S., and Yamada,M., "A General
Formulation of the Confluence Rule of Fuzzy Goal and Constraint and its Non-
Numerical Maximization," Proc., 3rd Fuzzy System Symposium, Osaka, Japan,
pp.71-76: June 1987. (in Japanese)
[4] Kawamura,H., Tani,A., Yamamoto,Y., and Yamada,M., "Application of Fuzzy
Confluence Rule to Subjective Evaluations in Structural Design," lintemational
Workshop on Fuzzy System Applications, lizuka, Japan, pp.185-186: Aug. 1988.
[5] Kawamura,H., and Yao,J.T.P., "Application of Fuzzy Systems Based on
Conditioned Fuzzy Sets to Structural Engineering," Journal of Structural Engineering,
Vol.32B, pp.51-56: March 1990. (in Japanese)
[6] Kawamura,H., Tani,A., Yamamoto,K., and Yamada,M., "Constitution of Intelligent
Fuzzy Network by Frame Knowledge Representation," Proc, International
Conference on Fuzzy Logic & Neural Networks, Vol.1, lizuka, Japan, pp.261-265:
July 1990.
This page intentionally blank
119

[7] Kawamura,H., and Tani,A-, "Multi-variable Fuzzy Identifier," Proc, 6th Fuzzy
System Symposium, Tokyo, Japan, pp.179-182: Sept.1990. (in Japanese)
[8] Kawamura,H., Tani,A., Kambara,H., and Yamada,M., "Intelligent Fuzzy Network
for Optimum Structural Planning and Design," Proc., 7th Fuzzy System Symposium,
Nagoya, Japan, pp.99-102: June 1991. (in Japanese)
[9] Kawamura,H., Tani,A., and Kambara,H., "Aseismic Structural Planning System by
Fuzzy Network," Proc. 10th World Conference on Earthquake Engineering, Vol.10,
Madrid, Spain, pp.6271-6275: July 1992.
[10] Kawamura,H., Tani,A., "A Paradigm of Intelligent Fuzzy Networks," Proc, The
IEEE International Conference on Systems Engineering, Kobe, Japan, pp.159-164:
Sept. 1992.
[11] Papis,C.P. and Sugeno,M., "Fuzzy Relational Equations and the Inverse Problem,"
Fuzzy Sets and Systems, 15, pp.79-90: 1985.
[12] Rosenblatt.F., "The Perccptron:A Probabilistic Model for Information Storage and
Organization in the Brain," Psychological Review, Vol.65, No.6, pp.386-408: 1958.
[13] Rumelhart.D.E., Hinton,G.E., and Williams,R.J., "Learning Representations by
Back-propagation Errors," Nature, 323-9, pp.533-536: Oct. 1986.
[14] Sanchez,E., "Resolution of Composite Fuzzy Relational Equations," Information
and Control, 30, pp.38-48:1976.
[15] Yamada,M., Kawamura,H., Tani,A., and Yamamoto,K., "A Determination Method
of Hierarchy Models for Decision Making in Aseismic Structural Design by Fuzzy
Confluence Rule," Proc., The 12th Symposium on Computer Technology of
Information, Systems and Applications, Kyoto, Japan, pp.223-228: Dec. 1989. (in
Japanese)
[16] Yamada.M., Kawamura,H., and Tani,A., "Research on Quantitative Formulation
and Objective Determination Methods of Multi-Objective Decision Making Process
in Aseismic Structural Design (Comparison between Fuzzy Confluence Rule and
Neural Network)," Proc. of Annual Meeting, Structural Division., Airchtectural
Institute of Japan, Kinki Branch, pp.161-164: May 1991. (in Japanese)
[17] Yao,J.T.P, Safety and Reliability of Existing Structures, Pitmann Publ. Inc.,
Boston, London, Melbourne: 1985.
[18] Zadch,L.A.,"Fuzzy Sets," Information and Control, Vol.8, pp.338-353:1965.
[19] Zadeh,L.A., "Toward a Theory of Fuzzy Systems," in Aspects of Network and
System Theory, (Eds. Kalman,R.E. and DeClaris,N.), Holt, Rinehart and Winstcr,
Inc.: 1971.
CHAPTER 6

N E U R O - F U Z Z Y E X P E R T SYSTEMS: O V E R V I E W
WITH A C A S E S T U D Y

Sushniita Mitra and Sankar K. Pal

Electronics and Communication Sciences Unit


Indian Statistical Institute, Calcutta - 700 035, India

I. Introduction
Artificial neural networks or connectionist models [1,2,3] are massively parallel
interconnections of simple neurons that function as a collective system. They are
designed perhaps as an attempt to emulate human performance and function intel-
ligently. An advantage of neural nets lies in their high computation rate provided
by massive parallelism, so that real-time processing of huge data sets becomes
feasible with proper hardware. Information is encoded among the various connec-
tion weights in a distributed manner! .The multilayer perceptron (MLP) [2] is a
feed-forward neural network model consisting of multiple layers of simple, sigmoid
processing elements (nodes) or neurons. Alter a lowermost input layer there are
usually any number of intermediate or hidden layers followed by an output layer at
the top. The learning procedure has to determine the internal parameters of the
hidden units based on its knowledge of the inputs and desired outputs.
An expert system [4,5] is a computer program that functions in a narrow domain
dealing with specialized knowledge generally possessed by human experts. Such
programs are very useful due to the usual shortage of qualified human experts in real
life. The primary characteristics of an expert system are a knowledge base designed
with the help of a human expert, a narrow problem domain, and a performance
on par with a human expert. The knowledge base is a problem-specific module
containing information that controls inferencing. Traditional rule-based expert
systems encode this information as If-Thtn rules while the connectionist expert
system [6] uses the set of connection weights of a trained neural net model for this
purpose. The inference engine is problem independent while the user interface links
the external environment to the system. Connectionist expert systems are usually
suitable in data-rich environment. They help in minimizing human interaction
and associated inherent bias during the phase of knowledge base formation (which
is time-consuming in case of traditional modeb) and also reduce the possibility
of generating contradictory rules. The rule generation phase of such connectionist
models are usually completely automated. An expert system is expected to be able
to draw conclusions without seeing all possible external inforrfiation. It should be
capable of directing the acquisition of new information in an efficient manner and
also be able to justify a conclusion reached.
The knowledge base is generally a major source of uncertain information. Besides,
121
S.G. Tzafestas and A.N. Venelsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 121-143.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
122

inferencing based on partial information also involves some amount of uncertainty.


The utility of fuzzy sets [7,8,9,10,11] lies in their capability in modelling uncertain
or ambiguous data so often encountered in real life. Fuzzy expert systems [12],
incorporating the concept of fuzzy sets at various stages, are a step towards han-
dling such situations. There have been several attempts recently [13,14,15,16,17]
i^ making ^ fusion of fuzzy logic and neural networks for better performance in
decision making systenas. The uncertainties involved in the input description and
output decision are taken care of by the concept of fuzzy sets while the neural net
theory helps in generating the required decision regions. Fuzzy neural networks
are used to design neuro-fuzzy expert systems. Such models help in combining the
advantages of fuzzy neural nets with those of connectionist expert systems.
The present article initially provides a brief account of the various types of uncer-
tainties associated with traditional expert systems. The relevance of fuzzy expert
systems is then considered in this context. Next, the utility of making a fusion
of fuzzy logic with neural networks is discussed and its application in designing
neuro-fuzzy expert systems reviewed. Finally, a fuzzy version of the MLP using a
modified version of the conventional backpropagation algorithm to incorporate the
logical operators And and Or (in place of the weighted sum and sigmoid functions^
is presented. The input vector (which can be in quantitative/linguistic/set form)
is represented in terms of the linguistic properties low, medium and high while
the output decision is in terms of class membership values [18]. Fig. 1 shows a
three-layered network with multiple outputs. The conjugate pair of t-norm T and
t-conorm S [19], viz. the product-probabilistic sum, are utilised to model the And
and Or operations. The hidden layer consists of And nodes while the output layer
is made up of Or nodes.

Output

OR

AND

Input
Figure 1 :, A three-layered neural network implementation And and Or logic functions
at successive layers.
123

This fuzzy logical model broadly performs two main tasks. First we construct
the three-layered fuzzy logical network for classifying multi-class patterns. Then,
the trained network is used to generate rules. The connection weights in this stage
constitute the knowledge base (in embedded form) for the classification problem
under consideration. The model is now capable of inferring the output decision
for complete and/or partial inputs along with a certainty measure and querying
the user for the more essential missing input information. If asked by the user,
the model is capable of justifying its decision in If-Then rule form (in terms of the
salient features) with the antecedent and consequent parts produced in linguistic
and natural terms. The effectiveness of the model is demonstrated on a set of
speech data.

II. Traditional Expert Systems : Some Problems


and Relevance of Fuzzy Sets
The major components of an expert system are the knowledge base, inference engine
and user interface. The knowledge base contains expert-level information necessary
to solve problems in a specific domain. This information is generally represented in
the form of a set of rules, although frames, semantic nets [20] and belief networks
[21] are also in vogue. We shall consider rule-based systems in this discussion.
Knowledge bases, being domain-specific, are nontransferable. The inference engine
interacts both with the knowledge base and a working memory (that records facts
about the current problem and is updated with the availability of new information).
Pattern matching occurs between the rules in the knowledge base and the facts in
the working memory to select the relevant rules applicable. Note that when no
matching occurs, no rule is selected, whereas when multiple rules apply, conflict
resolution strategies are used to select the most specific one. The same inference
engine can be used with different knowledge bases. The expert system should be
able to justify its reaLSoning since in some domains, like medicine, a doctor must
accept the -ultimate responsibility for a diagnosis even if it was arrived at with
considerable help from a program.

A. Involvement of uncertainties
However the knowledge base itself b a major source of uncertain information [5] in
expert systems, the causes being :

• unreliable information
t imprecise descriptive languages
• inferencing with incomplete information
• poor combination of knowledge from different experts

Firstly, ill-defined domain concepts or inaccurate data result in unreliable infor-


mation leading to weak correlation between a rule's premise and its conclusion.
Mycin (22] uses numeric certainty factors to quantify the degree of this correlation.
Secondly, the numerous ambiguities in natural language often result in imprecise
124

expression of rules in formal language. Therefore the meaning of the facts have to
be approximately matched with those of the premises. Thirdly, when the available
information is incomplete the system accepts the value unknown while evaluating
the premise's degree of certainty during the approximate pattern matching. Finally,
generation of a consensus knowledge base by combining the views of multiple ex-
perts is often difficult, especially when the experts have contradictory viewpoints.
Moreover, problems occur as human beings generally do not have uniform levels
of expertise throughout a domain. Some conflict resolution strategies need to be
followed, like separately weighting the knowledge of each expert, to calculate a
composite conclusion.
Good expert systems are expected to be capable of handling uncertainty, as in
most cases the data are inherently inexact, incomplete or unmeasurable. Some
of the existing methods in this direction include the subjective probability theory,
Dempster-Shafer theory [23], possibility theory [24] and certainty factors [22]. Us-
ing the subjective Bayesian method, Prospector [25] has been designed to provide
advice on mineral exploration. Mycin is a rule-based expert system (using certainty
factors) which attempts to reconmiend appropriate therapies for patients with bac-
terial infections. It interacts with the physician to acquire the clinical data it needs.
The associated Teiresias system enables the doctors to interact with Mycin to cisk
it questions about its recisoning and to modify and augment its knowledge base.
The knowledge base of an expert system contains human knowledge, most of
which is imprecise and qualitative. To describe situations where the boundary
between competing hypotheses is vaguely defined, human experts use terms such
as very likely, likely, more or less likely, low, medium, high, etc. Encoding this
sort of expertise by probabilities causes this fuzziness or imprecision to be lost.
Fuzzy logic may be used to express these vague terms with precision and accuracy.
Besides, facts about the world are rarely known with certainty. Conventional rule-
based systems, with two-valued logic, usually evade this issue of partial matching.

B. The role of fuzzy logic


Generally linguistic variables are used in the representation of the experts' knowl-
edge or rules. Such representation schemes enable a knowledge engineer to capture
the essence of the experts' experience and judgement without attempting to over-
quantify intuition. The importance of fuzzy logic to the management of uncertainty
in expert systems lies in its abilitj' for dealing with fuzzy quantifiers and modifiers.
Fuzzy logical systems allow a proposition or conclusion to range over fuzzy subsets
(like very true, more or less true, likely true, etc.) of truth-value sets'characterised
by their possibility distributions. Besides, the predicates may be crisp or fuzzy.
Fuzzy modifiers like not, very, more or less, extremely, slightly, much, a little, etc.
can also be represented. A fuzzy certainty factor is associated with the conclusion
to analyse the transmission and cumulation of uncertainty from the premises to the
conclusion. Deduction of conclusions from observations and rules in the knowledge
base are made using either truth value restriction or compositional rule of infer-
ence. Hence, partial match can occur between the antecedent of a rule and a fcict
supplied by the user.
In short, fuzzy logic or approximate reasoning [12] provides a natural conceptual
framework for knowledge representation and inferencing from knowledge bases that
are imprecise, incomplete or not totally reliable. The advantage of using fuzzy
reasoning is that it can yield an approximate answer even when mathematical
125

theories are not applicable, as the latter often require idealized assumptions such
as the independence of evidence and the mutual exclusiveness and exhaustiveness
of hypotheses.
Some approaches in fuzzy inferencing for traditional expert systems include the
approximate analogical reasoning based on similarity measures by Turksen and
Zhong [26], the problem-reduction method of Ishizuka et al [27], modelling of physi-
cian decision processes by Esogbue and Elder [28], inferencing in the framework
of inflammatory protein variations by Sanchez and Bairtolin [29] fusing weighting)
and the extension to Clips for manipulating fuzzy facts and rules by Sosnowski
[30].

C. A few other problems


However, the various uncertainty management schemes of traditional expert models
share some common problems. A willing human expert able to accurately quantify
expertise is needed. The transfer of the knowledge takes place gradually through
many interviews between the expert and the system and is therefore very time
consuming. Usually humans are prone to be easily biased and thus the quality of
knowledge extracted from the experts depends greatly on the methods used for
assessment. Moreover, large knowledge bases need to be searched quickly and it is
also very important to check that this knowledge base remains consistent as more
information is accummulated. It would be welcome if knowledge assessment could
be automated by freeing it from human intervention, thereby avoiding human bias
and subjectivity.

III. Connectionist Expert Systems


Expert systems having connectionist networks as their knowledge bases are called
connectionist expert systems [6]. Powerful learning techniques exist for generating
connectionist networks from training samples. This enables us to automate the
construction of knowledge bases for classification-type expert systems. It is worth
mentioning that the most difficult, time-consuming and expensive task in building
an expert system is constructing and debugging its knowledge base. In practice
the knowledge base construction can be said to be the only real task in building an
expert system, given the proliferating presence of expert shells. Several approaches
have been explored for easing this knowledge-acquisition bottleneck.
Connectionist expert systems offer an alternative approach both to the knowledge
base construction as well as the inferencing phase, providing interaction with the
user accompanied by justification(s) of the conclusion(s) reached. Rules are not
required to be supplied by humans. Instead, the connection weights encode among
themselves, in a distributed fashion, the information conveyed by the input-output
combinations of the training set. Such models are especially suitable in data-rich
environments and enable human intervention to be minimized. Thereby the prob-
lems faced by traditional expert systems regarding the difficulties in normalizing
across different experts' scales, conversion from human expressions to numerical
terms, bias of the expert(s), generation of contradictory rules by the experts, etc.,
may be overcome. The use of the learning technique of connectionist networks en-
ables the model to extract the information inherent in the data (that is not utilised
126

in the traditional models) and allows dynamical adjustments to changes in the en-
vironment. Besides, the various characteristics of neural nets, viz., generalization,
tolerance to noise, graceful degradation at the border of the domain of expertise,
ability to discover new relations between vziriables, etc., are in-built and hence can
be utilised by the connectionist expert system model.
In this article we restrict our discussion to classification-type expert systems. A
set of environmental stimuli (features or symptoms) is clcissified into one or more of
many possible categories (output classes or diseases). The output is expressed as
continuous membership values to the various classes. This is suitable for handling
data in fuzzy input feature space where a pattern may have finite belongingness to
more than one class. In the medical domain this is analogous fo diagnosing a par-
ticular symptom set as affliction by more than one disease. Using fuzzy neural nets
for this purpose, helps one to incorporate the advantages of approximate reasoning
into the connectionist expert system. In this section we provide a discussion on the
various existing neurofuzzy approaches to inferencing and expert system design.
Sections IV and V present respectively a fuzzy logical version of the MLP and its
application to automatic rule generation.

A. Inferencing in neurofuzzy systems


There have been several attempts recently [13,14,15,16,17,31] in making a fusion of
fuzzy logic and neural networks for better performance in decision making systems.
The uncertainties involved in the input description and output decision are taken
care of by the concept of fuzzy sets while the neural net theory helps in generating
the required (linearly nonseparable) decision regions. Takagi [32j provides a review
on related work in this direction. Fuzzy logic expresses the qualitative reason-
ing capability of humans and thereby enables easier formulation of substantially
smaller number of rules (for the problem under consideration). The membership
function that maps the relationship between quantitative data and fuzzy sets may
be learned and adapted by training a neural network with real-life data suitable
for the environment.
The MLP-based approach by Keller'and Tahani [33] receives' the possibility dis-
tributions of the antecedent clauses at the input, uses a hidden layer to generate an
internal representation of the relationship and finally produces the possibility dis-
tribution of the consequent at the output. The model is expected to function as an
inference engine with each small sub-network learning the functional input-output
relationship of a rule. Trapezoidal possibility distributions, sampled at discrete
points, are used to represent fuzzy linguistic terms and modifiers. The network
is supposed to be able to extrapolate to other inputs (for a rule) following modus
ponens. Conjunctive antecedent clauses are also modelled using separate groups
of hidden nodes for each clause. In [34], Keller et al explicitly encode the knowl-
edge of each rule among the connection weights of the neural net. A measure of
disagreement between the input possibility distribution and the antecedent clause
distribution is used at the clause-checking and combination layers to determine
the uncertainty in the consequent part of the fired rule. Theoretical properties of
the variotis combination schemes are also investigated. Ishibuchi et al [35], on the
other hand, use interval vectors to represent fuzzy input and output in a MLP. A
modified version of the backpropagation algorithm is used to incorporate interval
airithmetic. Different fuzzy If-Then rules are interpolated from a few sample rules
(used during training).
127

Fuzzy inferencing has been used by Nakanishi and Takagi [36] for the recognition
of noisy patterns (English alphabets distorted by ink marks). An alphabet is
divided into n blocks X = {Xi,X^,...,X„), with each block being processed by a
separate neural network. Each block is divided into m smaller subblocks such that
the neural network NNj for block Xj has m inputs ^],^], • • •, ^T- Each NNj has
the number of outputs equal to the number of patterns to be classified and each
output is mapped into membership values to the three fuzzy sets zero, positive
medium, and positive big. The fuzzy outputs from the n neural nets are then used
to formulate the antecedents of fuzzy inference rules to recognise a noisy pattern
when its typical feature is still visible in a small block of the irik-blofched pattern.
An approach to fuzzy inferencing by Zhuang et al [37], for controlling a mathe-
matically intractable system, uses a multilayer network with each node standing for
a fuzzy subset of a linguistic variable. The truth values flow from the input nodes
to the output nodes according to the rule of propagation being modelled. The
interconnection weights are associated with ordered pairs of real numbers lying in
the range [-1,1] and are indicative of the certainty factors used to represent the re-
liability of the fuzzy control rules. The basic operations in fuzzy logic, viz., union,
intersection and negation, are implemented at the neuron levels. The linguistic
variables used are positive large, positive medium, positive small, zero, negative
small, negative medium and negative large.
The role of fuzzy logic in the control of the activation, training, reliability and
performance of neural networks has been investigated by Yen [38] using a hybrid
architecture. Fuzzy rules are used to detect situations under which certain ac-
tions need to be invoked for neural network modules based on their performance
measures. The networks process data obtained either from external sensor devices
or from the knowledge base of the symbolic system. The global knowledge base
consists of a fuzzy database and a neural network taxonomy (of neural net classes)
that describes meta-level knowledge about the neural nets themselves (using crisp
or fuzzy attribute values). The fuzzy database stores data and hypotheses that
can be uncertain, imprecise or vague. A production system that takes into account
the degree of partial matching of the fuzzy action rules thus enables the system to
respond in a robust way even in the face of incomplete or noisy data.
Masuoka et al [39] use knowledge in the form of membership functions and fuzzy
rules (in And-Or form), extracted from experts, to build and preweight the struc-
tured neural network which is then tuned using selected learning data. This neural
model consists of the input variable membership net, the rule net, and the output
variable net. Modified fuzzy rules, extracted from the trained neural network us-
ing pruning, can then be evaluated and unsuitable rules corrected using relearning.
Okada et al [40] use a similar approach to examine the bond rating of investors.
Changes in the weights and threshold levels of the neurons (after training) are
interpreted as adaptations in the membership functions and fuzzy rules. Yager
[41] employs membership neural modules for the antecedents, inverse membership
modules for the consequents and a rule neural module with a combiner (using min
or product functions) for modelling the rules of fuzzy logic controllers. The various
weights 2Lre learned and the importance of the antecedent clauses simulated.
The neural network based fuzzy reasoning scheme by Takagi and Hayashi [42]
is capable of learning the membership function of the If part and determining
the amoimt of control in the Then part of the inference rules. The input data
is clustered to find the best number of partitions corresponding to the number
of inference rules applicable to the reasoning problem, a single neural net block
128

modelling one rule. The optimum number of cycles required is determined to avoid
overlearmng and the minimal number of input variables selected for inferring the
control values.
A few of the other existing neurofuzzy approaches include the rule-based phoneme
recognition method by Amano and Aritsuka [43] for Japanese words, Takahashi
and Minami's technique [44] of modelling the subjective evaluation of humans,
the linguistic fuzzy modelling scheme of Horikawa et al [45], the knowledge-based
image interpretation system by Zahzah et al [46], and the self-learning rule-based
controller by Lee [47]. Among the applications in the medical domain are the
MLP Eind radial basis function network models of Bounds et al [48j that detect low
back disorders using crisp input-output values and considering networks of multiple
single-class nets in the process. Some image processing techniques are combined
by Silverman and Noetzel [49] to allow the MLP to recognize tumors (at various
scales, orientations and locations) from ultrasonic images. Pixel information is
used as input along with crisp output values, and the model acts as a classifier.

B. Connectionist expert models


Neurofuzzy techniques have recently been used by Endo and'Isshiki [50], Rocha
[51,52] and Machado [53] to design expert systems. Hayashi et al [54] have shown
that any fuzzy expert system may be approximated by a neural network and vice
versa. Here we discuss a few of the existing layered connectionist expert system
models (mostly in the medical domain))
The model by Gallant [6] dealing with sacrophagal problems uses crisp inputs/
outputs and a linear discriminant network (with no hidden nodes) that is trained
by the simple Pocket Algorithm. The absence of the hidden nodes and nonlLn-
earity limits the utility of the system in modelling complex decision surfaces [l].
Dependency information regarding the variables, in the form of an adjacency ma-
trix, are provided by the expert. Each variable (symptom, disease or treatment)
corresponds to some node of the network. The model incorporates inferencing/
forward chaining, confidence estimation, question generation/backward chaining
and explanation of conclusions by If-Then rules.
Yin and Liang |55] employ a gradually-augmented-node learning algorithm, with
binary inputs ana outputs, to incrementally build a dynamic knowledge base capa-
ble of both acquiring new knowledge as well as relearning existing information. The
rules are explicitly represented among the condition nodes, rule nodes and action
nodes and the algorithm gradually builds the multilayer feedforward network. This
connectionist incremental expert model is used as an animal identification system
whose network structure is changed dynamically according to the new environment
or through human intervention.
A Distributed single-layer perceptron-based model using the Pocket-Algorithm has
been used as an expert system for diagnosing hepatobiliary disorders by Yoshida et
al [56]. Here real-life fuzzy data are defuzzified using the Level Set representation
to produce the crisp inputs {-hi, - 1 , 0} required by the algorithm. Besides, all
contradictory training data are excluded, as these cannot be tackled by the model.
Extraction of fuzzy If-Then production rules is possible. Hayashi [57,58] has ex-
tended this to include linguistic relative importance terms like very important and
moderately important in each proposition; linguistic truth values like completely
true, true, possibly true, unknown, possibly false, false and completely false can
129

also be assigned to the extracted rules.


The approach by Hudson et al [59] is for detecting carcinoma of the lung. They
use a feed-forward neural network model to extract information directly from the
accummulated data and then combine it with a rule-based exp'ert system incorpo-
rating approximate reasoning techniques. The input nodes represent data values
for signs, symptoms and test results (may be continuous or discrete). The interac-
tive nodes account for the interactions which may occur between these parameters.
The learning method is an adaptation of the potential function approach to pattern
recognition and is used to determine the weighting factors as well as the relative
strengths of rules for the two-class problem. Further extension of this work has
been made in [60,61,62].
Sanchez [63] associates primary linguistic weights and secondary numerical weights
to generate the knowledge base for a biomedical application (inflammatory pro-
tein variations) using a feedforward network. Triangular membership functions
like negative large, negative medium, negative small, approximately zero, positive
small, positive medium and positive large; or, decreased, normal and increased ac-
count for the linguistic weights while the quantitative weights lie in the range [0,1].
The linguistic weights are tuned according to the information provided from the
input-output examples while the numeric weights and the netv.'ork topology are
determined by solving fuzzy relation equations.
Saito and Nakano [64] use a multi-layer network to design a medical diagnostic
expert system for detecting headache. A patient responds to a questionnaire re-
garding her perceived symptoms and these constitute the input to the network.
The doctor is supplied with information regarding possible diagnoses based on the
output nbde values. Relation factors, estimating the strength of the relationship
between symptom(s) and disea5e(s), are extracted from the network and used to
help doctors. Rules are generated from the changes in levels of input and output
units; the connection weights are not involved in the process. These rules are then
used to allow the patient to confirm the symptoms initially provided by her to the
system, in order to eliminate noise from the answers.
A cell recruitment learning algorithm, capable of forgetting previously learned
facts by learning new information, is employed by Romaniuk and Hall [65] to build
a fuzzy connectionist expert system for determining the creditworthiness of credit
applicants. Fuzzy functions maximum, minimum and negation are applied at the
neuronal levels depending upon the corresponding bias values. This incremental
learning algorithm can be used in conjunction with an existing rule knowledge
base or alone. Learned knowledge can be extracted from the network in the form
of rules (during an explanation phase) by a top-down traversal involving analysis of
the cell activations, their bias and the associated link weights. The network consists
of positive and negative collector cells along with unknown and intermediate cells
and can handle fuzzy or uncertain data.

IV. Fuzzy M L P using Logical Operators


The model discussed here consists of logical neurons employing conjugate pairs of
t-norms T and t-conorms S in place of the weighted sum and sigmoid functions of
the conventional MLP. The hack propagation algorithm is modified to incorporate
the logical operations in the error derivative term. The components of the input
130

vector consist of the membership values to the overlapping partitions of linguistic


properties low, medium and high corresponding to each input feature. During
training, supervised learning is used to assign output membership values lying in
the range [0,1] to the training vectors. A heuristic for gradually decreasing the
learning rate and the momentum is used to help avoid spurious local minima and
usually prevents oscillations of the mean square error in the weight space, in the
process of convergence to a minimum error solution.

A. The conventional MLP


Consider the layered network given in Fig. 1. The conventional MLP [2] is made up
of simple neurons implementing the weighted sum and sigmoid functions (in place
of the And and OT functions in Fig. 1). The output of a neuron in any layer other
than the input layer is a monotonic non-linear function of its total input and is
given as

where yf is the state of the t"* neuron in the preceding /i"* layer and w^- is the
weight of the connection from the i"" neuron in layer h to the j " * neuron in layer
ha. For nodes in the input layer, y° corresponds to the j " " component of the input
vector.
The Least Mean Square (LMS) error in output vectors, for a given network weight
vector w, is defined ELS

EH = \Uyf.cH - d,,r (2)

where yyf(.(w) is the state obtained for output node j in layer H in input-output case
c and djc is its desired state specified by the teacher. The error E[w) is minimized
by the back propagation algorithm using gradient-descent. We start with any set
of weights and repeatedly update each weight by an ajnount
dE
^""^'^^^ " ''d^i ^ aA<(i-l) (3)

where the learning rate e controls the descent, 0 < a < 1 is the damping coefficient
or momentum and t denotes the number of the iteration currently in progress.

B. Input vector representation


An n-dimensional pattern F, = [-fii, -fizi •••> Ein] can be represented as a 3n-dimen-
sional vector

iF<}] (4)
where the /x values indicate the membership functions to the corresponding linguis-
tic TT-set [18] for eeich feature axis.
131

When Fj is numerical we use the ff-fuzzy sets [66] (in the one-dimensional form),
with range [0,1], given as

• 2 ( l - M ) ' , for|<|f,-c|<A
7r(F,-;c,A) = • 1 _ 2 ( M ) \ f o r O < | f , - c | <A| (5)
0, otherwise

where A > 0 is the radius of the 7r-function with c as the central point.
When the input feature is linguistic, its membership values for the 7r-sets low,
medium and high are quantified as
fO.95 0.6 0.021

fO.7 0.95 0.71


\ L' M 'H i
r0.02 0.6 0.951

C. Output vector representation


In real-life problems, the data are generally ill-defined with overlapping or fuzzy
class boundaries such that each pattern used in training may possess finite be-
longlngness to more than one class. To model-such data we clamp the desired
membership values, lying in the range [0,1], at the output nodes during training.
For an i-class problem domain, the membership of the :"' pattern to class C^,
lying in the range [0,1], is defined as

where 2,^ is the weighted distance between the t"" pattern and the mean of the fc"*
class and the positive constants Fj and F^ are the denominational and exponential
fuzzy generators controlling the amount of fuzziness in this class-membership set.
Then for the x"' input pattern we define the desired output of the j ' " * output node
as
dy-My(^.) (7)
During testing, the output of the j " " output neuron denotes the inferred member-
ship value of a test pattern to the y"" class.

D. T-Norm and T-Conorm


We consider a special case of the conjugate pair of t-norm T and t-conorm S
represented by the And and Or nodes at the hidden and output layers respectively.
The product and probabilistic sum operators are given as
T{a,b)=ab
132

S{a,b).= a + b-ab (8)


Let us consider the three-layered model as shown in Fig. 1 with H = 2. The
output j/j of the j " * neuron in the first layer is defined as

y]= .r[5(y°,OJ (9)


Here the input vector is in the 3n-dimensional space of eqn. (4) such that t/° is the
output of the »"" neuron in the input layer. The T operation is performed over all
S operation outputs corresponding to the 3n neurons in the input layer.
Analogously, the output yl in the second layer is given as

yl= ,s[T(y},wl,)] (10)


where the 5 operation is performed over all j T operation outputs corresponding
to the neurons in the first layer.

E. The backpropagation algorithm based on logical operations


The LMS error E of eqn. (2) is minimized by the gradient-descent technique of
eqn. (3) with the restriction that 0 < ly^,- < 1 for 0 < h < 2. The error derivative
^ ^ is computed as
dE _ dE dyj
dwji dyj dwji
(11)
For the output layer [h = H) we substitute
dE
Byr'^-'^ (12)
In case of the hidden layer we use

dVj ^dyt dyj Y ^J/J

where neurons j and k lie in layers h and /i + 1 respectively.


In order to evaluate the derivative ^ ^ of eqn. ( l l ) , for /i > 0, let us define

if;i = i
otherwise

where the T{S) operation at layer h is performed over all / S[T) operation out-
puts from the neurons in the preceding layer h — 1, provided / ^ i, for h = 1(2)
respectively; also let

S{yt-\w^n if/» = l
smf={ y \ ' V ,{ otherwise (15)
T{y^-\w^rA
133

Using equations (9), (10), (14) and (15), we have

r(5m*,fim^)j ifA = l
(16)
dwii 1 « ^fsm^jSmfj otherwise

where the t-norm T and t-conorm S aire given by eqn. (8) in order to model the
logical operators And cind Or. Expanding, we have

(17)
dwji 1 (1 - sm'')y^~^ otherwise
Analogously, we compute the sensitivity mecisure as

^ = (1 - . m ' - X - (18)

Substituting the values of ^ ^ and j ^ from eqns. (17-18) into eqns. (11,13) en-
ables one tp evaluate the error derivative j ~ _ of eqn. (3) and,thereby update the
connection weights during training. This constitutes the back propagation algo-
rithm for a network incorporating logical nodes.
Note that the e of eqn. (3) is gradually decreased in discrete steps, taking val-
ues from the chosen set {2, 1, 0.5, 0.3, 0.1, 0.05, 0.01, 0.005, 0.001}, while the
momentum factor a is also decreased. Let the various values of e be indicated by
Eo = 2,£i — l , . . . , f 5 — 0.001 such that EJ indicates the (t-f- l)"" value of e. Let
ao = 0.9 and ai - a2 = ... = a^ = 0.5. We use
if mse[nt — kn) — m&t[nC) < 6 f^^s
{:^^ otherwise ^ '
where i = 0 initially, |e| == g -I- 1 and Q < 5 < 0.0001. Note that nise{nt) is the
mean square error at the end of the nt*'^ sweep through the training set and kn is
a positive integer such that mse is sampled at intervals of kn sweeps. The process
is terminated when i > q.

V. Rule Generation From The Trained Net


After the design and training of the network is complete, it is expected to be able
to infer the correct claissification for the test data. Handling of imprecise inputs
is possible and natural decision is obtained associated with a certainty measure
denoting the confidence in the decision. Rules can also be generated from the
trained network. Fig. 2 gives an overall view of the various stages involved in the
process of inferencing and rule generation.

A. Input form
The input for a test pattern can be in quantitative, linguistic or set forms or
a combination of these. It is represented as memberships to the three primary
134

If o o r t
r *
weights

Tnput Trained Output


NM
known or decision Rule
then
patlern
unknown
(Connection + part generation
weights ) Certainty
components
measure

known or When
I > unobVo noble output
neuron (s)
unknown

Figure 2 : Block diagram of the inferencing and rule generation phase of the proposed
fuzzy logical neural network.

linguistic properties low, medium and high as in eqn. (4), modelled as 7r-functions.
When the information is in exact numerical form like Fj is rj, say, we use eqn. (5).
However, when the input is given as Fj is prop (say), where prop stands for any
of the primary linguistic properties low, medium or high, eqn. (6) is used. The
model can also handle the linguistic hedges [67] very, more or less and not using
the Concentration (Con) and Dilation (Dil) operators [8]. In case of set form
usage, the input is a mixture of linguistic hedges and quantitative terms. Since
the linguistic term increases the impreciseness in the information, the membership
value of a quantitative term should be lower when modified by a hedge [67]. The
modifiers used are about, less than, greater than and between.
If any input feature Fj is not available or missing, we clamp the three corre-
sponding neurons x° = ij_i = i j ^ j = 0.5, such that k = (j — 1) * 3 + 1. We
use
rO.5 0.5 0.51 (20)
no information

as 0.5 represents the most ambiguous value in the fuzzy membership concept. We
also tag these input neurons with noinf^ — noinf°^^ — noinf°j^^ = 1. Note that
in all other cases the variable noinf^ is tagged with 0 for the corresponding input
neuron k, indicating absence of ambiguity in its input information.

B. Forward pass
Associated with each neuron j in layer h + 1 are its confidence estimation factor
conf^*^, a variable unknown'^'^^ providing a measure of the weighted information
from the preceding ambiguous neurons t in layer h (having noinf^ = l) and a
variable inoiyny"*"' giving a measure of the weighted information from the remaining
non-ambiguous preceding neurons (with noinf^ = 0). For neuron j in layer h > 0
135

we define
for A = 1
unknown^ — (21)
otherwbe
and
(22)
I

for all » having noinf^"^ — 1, and

known j =
S[yt\w''-'
T{yi
h-l u fOT h=l
otherwise
(23)

for all i with noinf-^~^ = 0, where T and 5 stand for the conjugate pair of t-norm
Bind t-Conorm defined in eqn. (8). Here the T[S) operation at layer h is performed
over all t S{T) operation outputs from the neurons in the preceding layer /i — 1 for
/i = 1(2) respectively. Note that for /i > 0 we have

. 1 if known^ > unknown^ for h = 1


noinfj = < 1 if knowrVj < unknown^ for /i = 2 (24)
0 other^vise

Using eqns. (9-10,21-24), we define

li. X if noinfj = 1 and h > 0


conf^ = unden' (25)
y' otherwise

If there is no neuron j with noinfj = 1, then the system finalises the decision
inferred irrespective of whether the input information is complete or partial. In
case of partial inputs, this implies presence of all the necessary features required
for taking the decision.
A certainty measure (for each output neuron) is defined as

cert (26)

where 0 < cert^ < 1. The higher the value of certf, the lower is the difficulty in
deciding an output class j and hence the greater is the degree of certainty of the
output decision. Depending on the value of certf, the final inferred output may
be given in natural form.

C. Querying

If there is any neuron j in the output layer H with noinff = 1 by eqn. (24), we
begin the querying phase. We select the unknown output neuron j'l from among the
neurons with noinfj — 1 such that confj^^ by eqn. (25) (among them) is maximum.
136

Then we pursue the path from neuron j i in layer H, in a top-down manner, to find
the ambigupus neuron t'l in the preceding layer [h = H — l) with the greatest
absolute influence on neuron ji. This process is repeated down to the input layer
(A = 0). We select : = I'l such that with noinf^ = 1, for 0 < A < ff — 1, we have

^Ku'V') = ^lin[5(u;^,y^)] for A = 0

^K-VJ/') = max[r(u;j',,,yf)] otherwise

For node t'l in the input layer (/i = 0), the model queries the user for the value of
the corresponding input feature ui.
Note that if a missing input variable by eqn. (20) is queried and found to be
missing once again, we now tag it as unobtainable. The inferencing mechanism
treats such variables as known with values i j ^ = a;°,+i = arj^^j = 0.5 but with
noinf^^ = noinf°^^y^ = noinf°^^2 ~ 0) s^<^^ ^^^^ '^i = (ui — l) * 3 + 1. The
response from an unobtainable input variable can allow the neuron activations in
the following layers to become non ambiguous with noinf^ = 0 such that an output
decision may finally be inferred.

D. Justification
In this phase the user can ask the system why it inferred a particular conclusion.
The system answers with an // - Tlien rule, applicable to the case at hand, in
terms of the salient input features. It is to be noted that these If - Then rules
are not represented explicitly in the encoded knowledge base; they are generated
by the inferencing system from the connection weights as and when needed for
explanations. As the model has already inferred a conclusion (in this stage), we
take a subset of the currently known input information to justify this decision.
Let the user ask for justification about a conclusion regarding class j . We choose
neuron t from the hidden layer fT — 1 if w^-~^ > 0, i.e., if it has a positive impact
on the conclusion at output neuron j . Let a set of nin-i neurons be so selected.
For the remaining layers we obtain the maximum weighted paths through these
neurons down to the input layer.
Let the set of the selected mo input neurons be given by la^, a ° , . . . , a^^ | and their
corresponding path weights to neuron j in layer H be denoted as Iwet^OjWet^o,...,
wet^^o^ \. We arrange these neurons in the decreasing order of their net impacts,
where we define the net impax;t for neuron : as
net impacti — y,° * wetio

Then we generate clauses for an If-Then rule from this ordered list until
J2wetio>2j2^etio (27)

where i, indicates the input neurons selected for the clauses and t„ denotes the input
neurons remaining from the set j a j , a°,..., a^\. This heuristic allows selection of
137

those currently active input neurons (current evidence of test patterns) contributing
the most to the final conclusion (ajnong those lying along the maximum weighted
paths of the embedded knowledge base to the output node j) as the clauses of the
antecedent part of a rule to justify the current inference.
Let u,, be the input feature corresponding to a neuron t',, in the input layer
[h — 0), selected for clause generation. The antecedent of the rule is given in
linguistic form with the linguistic property being determined cis

[ low if t „ - 3fu,. - 1) = 1
prop — < medium if t„ — 3(u,, — l) = 2 (28)
[ high otherwise

A linguistic hedge very, more or less or not may also be attached to the linguis-
tic property obtained for the antecedent part. We use the mean square distance
<f(u,i,prm) between the 3-dimensional input values (components of the pattern vec-
tor) at the neurons corresponding to feature u,^ and the linguistic property prop
obtained from u,, by eqn. (28) represented as pr^. The p r „ for which d[u,^,pr^
fs the minimum is selected as the antecedent clause corresponding to feature u,,
(or neuron t,j).
The procedure is repeated for all the input neurons selected by eqn. (27) to
generate a set of antecedent clauses for the rule justifying the inference regarding
output node j . The clauses are conjunctive when the corresponding generated
paths bifurcate at layer 1 nodes and are disjunctive when the said bifurcation occurs
at layer 2 nodes. This follows from the And-Or structure of the network given by
eqns. (9-10). Note that the selected clauses correspond to the salient input features
(determined both by the connection weight magnitudes learned during training as
well as the input feature components of the test pattern under consideration). All
input features (of the test pattern) need not necessarily be selected for antecedent
clause generation.
The consequent part of the rule can be stated in quantitative form as membership
value yf to class j . However a more natural form of decision can also be provided for
the class j , having significant membership value yf, considering the value of certf
by eqn. (26). For the linguistic output form we use : very likely for 0.8 < cert^ < 1,
likely for 0.6 < certf < 0.8, more or less likely for 0.4 < certf < 0.6, not unlikely
for 0.1 < certf < 0.4 and unable to recognize for certf < 0.1.

E. Implementation and results


The three-layered logical neural net was used on vowel data consisting of a set of
871 Indian Telugu vowel sounds uttered in a Consonant-Vowel-Consonant context
by three male speakers. Fig. 3 shows a 2D projection of the 3D feature space of
the six vowel classes (5, a, »', u, e, o) in the Fi — F^ formant frequency plane. We
selected Fj = 5, F, = 1 in eqn. (6) and kn = 10, 6 = 0.0001 in eqn. (19) after
several experiments. Table 1 demonstrates the rule generating ability of the trained
logical neural model (with one hidden layer having 20 nodes), that functions as a
knowledge base for the vowel recognition problem, using a sample set of test input
feature combinations. It was trained using 10% samples from each representative
class.
138
900
SIZE FREH^UENCY OF OCCURENCES
n 1 — 2
3 — 5
800 S — 9
!0 —U
15 MiD ABOVE.
70 C

BOO

' 50C-
c

iOG

30C

2CC
600 SCO uQQ !500 1300 2100 2<C00 2700
Fj in Hz

F i g u r e 3 : Vowel diagram in the F^rF^ plane.

VI. Conclusion and Discussion


Logical operators like And and Or are seen to ease the computational burden of
the neural model to some extent, thereby enhancing its speed (This will enable
simpler hardware implementation for pattern recognition problenis). Besides, the
fuzzy logical model is also able to generate more appropriate rules (expressed as
disjunction of conjunctive clauses) from the knowledge base embedded among the
connection weights as compared to those obtained from its fuzzy counterpart m-
corporating no logical operators [68]. This is due to the b u i l t - m W - O r structure
of the network architecture under consideration. The model is likely to be suitable
in data-rich environments for designing classificatton-type expert systems, i h e ser-
vice of human experts can be utilised in verifying the justificatory rules generated
by the model, instead of designing the rules for the knowledge base (as is done m
case of the traditional models). It is to be noted that the input feature values of a
test pattern influence the generation of the rule from the trained set of connection
weights. This helps extracting rules relevant to that region of the feature space
which is local to the area pointed to by the feature values of the test pattern.
139

Table 1 : Rule Generation for Vowel data with Fuzzy Logical Model

benai i n p u t features Justification / K u l e g e n e r a t i o n


No. ri J-'a i-'s ij clause iTien c o n c l u s i o n
1 500 xinobt ^'i is very low or
soo F^ is very ^o^ very likely class u
3 700 1000 2600 Fz is very medium and
Fi is very medium
or F i is Mol >uyfc
or ^2 is very tow very Ukely class a
3 700 nnobt musing F j is very medium likely class a, b u t
or Mol ki^ nof un/ubeiy class e
4 400 800 unobt Fi is very low and very likely class o, b u t
Fa is very low not unlikely class u
5 400 unobt unobt F\ is very low hfol likely classes e or i, b u t
not unii%e/i/ class o
700 1300 unobt Fa is very medium and
6 F i is very rr^edium
or F\ is Mol hi^ very likely class a
600 1200 unobt Fi is very medium and
7 F a is pery medium
or Fa is low Mol liiily classes a or o
450 2400 unobt F a is very feV^ a n d
8 F\ is A/(3i /ou; likely class i, b u t
or Fi is very medium not unlikely class e
9 900 1400 unobt Fi is pffry mtfJj'um o r
F j is wry Ai'yA very likely class a
10 bctwien 1600 missing Fa is very rnedium or likely class e, b u t
500 d: 600 F i is very milium or Mo/ low not unlikely class o
11 greaier high missing Fa is /ujjA a n d
t/um 650 F i is A/tjf AiyA
or F i is eery miiii'um t>try likely class e
12 o6ffui350 uno6t unobt F i is very law vfry ibt«^y class t , b u t
not urJikely class e

References
[1] R. P. Lippmann, "An introduction to computing with neural nets," IEEE Acoustics,
Speech and Signal Processing Magazine, vol. 61, pp. 4-22, 1987.
[2] D. E. Rumelhart and J. L. McClelland, eds., Parallel Distributed Processing. Vol. 1,
Cambridge, NLA.: MIT, 1986.
[3] T. Kohonen, Self-Organization and Associative Memory. Berlin: Springer-Verlag,
1989.
[4] E. Rich, Artficial Intelligence. Singapore: McGraw Hill, Inc., 1986.

[5] K. Ng and B. Abramson, "Uncertainty management in expert systems," IEEE Expert,


pp. 29-48, April 1990.
[6] S. I. Gallant, "Connectionist expert systems," Communications of the ACM, vol. 31,
pp. 152-169, 1988.
[7] G. J. Klir and T. Folger, Fuzzy Sets, Uncertainty and Information. Reading, MA:
Addison Wesley, 1989.
[8] S. K. Pal and D. Dutta Majumder, Fuzzy Mathematical Approach to Pattern Recog-
nition. New York: Wiley (Halsted Press), 1986.
[9| J. C. Bezdek and S. K. Pal, eds.. Fuzzy Models for Pattern Recognition : Methods that
Search for Structures in Data. NY: IEEE Press, 1992.
140

[10] A. Kandel, Fuzzy Mathematical Techniques with Applications. Reading, MA: Addison-
Wesley, 1986.
11] H. -J. Zimmermann, Fuzzy Set Theory • and its Applications. Boston: Kluwer, 1991.

121 L. A. Zadeh, "The role of fuzzy logic in the management of uncertainty in expert
systems," Fuzzy Sets and Systems, vol. 11, pp. 199-227, 1983.
13] Y. H. Pao, Adaptive Pattern Recognition and Neural Networks. Reading, MA:
Addison-Wesley, 1989.
14) B. Kosko, Neural Networks and Fuzzy Systems. New Jersey; Prentice Hall, 1991.

15] Proc. of Second International Conference on Fuzzy Logic and Neural Networks
(UZUKA92), (lizuka, Fukuoka, Japan), July 1992.
16] Proc. of First IEEE International Conference on Fuzzy Systems (FUZZ-IEEE), (San
Diego, USA), March 1992.
171 M. E. Cohen and D. L. Hudson, "Approaches to the handling of fuzzy input data
in neural networks," in Proceedings of 1st IEEE Conference on Fuzzy Systems, (San
Diego), pp. 93-100, 1992.
18] S. K. Pal and S. Mitra, "Multi-layer perceptron, fuzzy sets and classification," IEEE
Transactions on Neural Networks, vol. 3, no. 5, 1992,
19] A. Di Nola, S. Sessa, W. Pedrycz, and E. Sanchez, Fuzzy Relation Equations and
their Applications to Knowledge Engineering. Dordrecht, The Netherlands: Kluwer
Academic Publishers, 1989.
20] L. Shastri, "A connectionist approach to knowledge representation and limited infer-
ence," Cognitive Science, vol. 12, no. 3, 1988.
21] J. Pearl, "Fusion, propagation sind structuring in belief networks," Artificial Intelli-
gence, vol. 29, pp. 241-288, 1986.
22] B. G. Buchanan and E. H. Shortliffe, eds., Rule-based Expert Systems : The MYCIN
Experiments of the Stanford Heuristic Programming Project. Reading, MA: Addison-
Wesley, 1984.
23] G. Shafer, A Mathematical Theory of Evidence. Princeton, NJ: Princeton University
Press, 1976.
24] L. A. Zadeh, "Fuzzy sets as a basis for a theory of possibility," Fuzzy Sets and Systems,
vol. 1, pp. 3-28, 1978.
25] R. O. Duda, P. E. Hart, and N. J. Nilsson, "Subjective Bayesian methods for a rule-
based inference system," in Proceedings of the National Computer Conference, (USA),
pp. 1075-1082, 1976.
261 I. B. Turksen and Z. Zhong, "An approximate analogical reasoning schema based on
similarity measures and interval-valued fuzzy sets," Fuzzy Sets and Systems, vol. 34,
pp. 323-346, 1990.
271 M. Ishizuka, K. S. Fu, and J. T. P. Yao, "Inference procedures under uncertainty for
the problem-reduction method," Information Sciences, vol. 28, pp. 179-206, 1982.
28] A. O. Esogbue and R. C. Elder, "Fuzzy sets and the modelling of physician decision
processes, Part I : The initial interview - information gathering session," Fuzzy Sets
and Systems, vol. 2, pp. 279-291, 1979.
141

[29] E. Sanchez and R. Bartolin, "Jhizzy inference and medical diagnosis, a case study,"
Biomedical Fuzzy Systems Bulletin, vol. 1, pp. 4-21, 1990.
[30] Z. A. Sosnowski, "An extension of Clips for processing fuzzy data," Tech. Rep. NRCC
Pub.No. 31506, Laboratory for Intelligent Systenis, Division of Electrical Engineering,
National Research Council, Ottawa, Canada, 1990.
[31] D. C. Kuncicky and A. Kandel, "A fuzzy interpretation of neural networks," in Pro-
ceedings of Srd International Fuzzy Systems Association Congress, University of Wash-
ington, (Seattle, Washington), pp. 113-116, 1989.
[32] H. Takagi, "Fusion technology of fuzzy theory and neural network - Survey and future
directions," in Proceedings of the 1990 International Conference on Fuzzy Logic and
Neural Networks, lizuka, (Japan), pp. 13-26, 1990.
[33] J. M. Keller and H. Tahani, "Implementation of conjunctive and disjunctive fuzzy
logic rules with neural networks," International Journal of Approximate Reasoning,
vol. 6, pp. 221-240, 1992.
[34] J. M. Keller, R. R. Yager, and H. Tahani, "Neural network implementation of fuzzy
logic," Fuzzy Sets and Systems, vol. 45, pp. 1-12, 1992.
[35] H. Ishibuchi, H. Okada, and H. Tanaka, "Interpolation of fuzzy if-then rules by neural
networks," in Proceedings of Snd International Conference on Fuzzy Logic and Neural
Networks, lizuka, (Japan), pp. 337-340, 1992.
[36] S. Nakanishi and T. Takagi, "Pattern recognition by neural networks and fuzzy infer-
ence," in Proceedings of the 1990 International Conference on Fuzzy Logic and Neural
Networks, lizuka, (Japan), pp. 183-186, 1990.
[37] W. P. Zhuang, W. Z. Qiao, and T. H. Hang, "The truth-valued flow inference net-
work," in Proceedings of the 1990 International Conference on Fuzzy Logic and Neural
Networks, lizuka, (Japan), pp. 267-281, 1990.
[38] J. Yen, "The role of fuzzy logic in the control of neural networks," in Proceedings of the
1990 International Conference on Fuzzy Logic and Neural Networks, lizuka, (Japan),
pp. 771-774, 1990.
[39] R. Masuoka, N. Watanabe, A. Kawamura, Y. Owada, and K. Asakawa, "Neurofuzzy
system - fuzzy inference using a structured neural network," in Proceedings of the
1990 International Conference on Fuzzy Logic and Neural Networks, lizuka, (Japan),
pp. 173-177, 1990.
[40] H. Okada, N. Watanabe, A. Kawamura, K. Asakawa, T. Taira, K. IshiJa, T. Kaji, and
M. Narita, "Knowledge implementation multilayer neural networks with fuzzy logic,"
in Proceedings of Snd International Conference on Fuzzy Logic and Neural Networks,
lizuka, (Japan), pp. 99-102, 1992.
[41] R. R. Yager, "Implementing fuzzy logic controllers using a neural network framework,"
Fuzzy Sets and Systems, vol. 48, pp. 53-64, 1992.
[42] H. Takagi and I. Hayashi, "Artificial neural network driven fuzzy reasoning," Inter-
national Journal of Approximate Reasoning, vol. 5, pp. 191-212, 1991.
[43] A. Amano and T. Aritsuka, "On the use of neural networks and fuzzy logic in speech
recognition," in Proceedings of International Joint Conference on Neural Networks,
(Washington D.C.), pp. 301-305, 1989.
142

[44] H. Takahashi and H. Minami, "Subjective evaluation modelling using fuzzy logic and
a neural network," in Proceedings of Srd International Fuzzy Systems Association
Congress, University of Washington, (Seattle, Washington), pp. 520-523, 1989.
[45] S. Horikawa, T. Furuhashi, and Y. Uchikawa, "A new type of fuzzy neural network for
linguistic fuzzy modelling," in Proceedings of 2nd International Conference on Fuzzy
Logic and Neural Networks, lizuka, (Japan), pp. 1053-1056, 1992.
[46] E. h. Zahzah, J. Desachy, and M. Zehana, "A fuzzy connectionist approach for a
knowledge based image interpretation system," in Proceedings of 2nd International
Conference on Fuzzy Logic and Neural Networks, lizuka, (Japan), pp. 1135-1138,
1992.
[47] C. C Lee, "A self-learning rule-based controller employing approximate reasoning
and neureil network concepts," International Journal of Intelligent Systems, vol. 6,
pp. 71-93, 1991.
[48] D. G. Bounds, P. J. Lloyd, and B. G. Mathew, "A comparison of neural network and
other pattern recognition approaches to the diagnosis of .low back disorders," Neural
Networks, vol 3, pp. 583-591, 1990.
[49] R. H. Silverman and A. S. Noetzel, "Image processing and pattern recognition in
ultrasonograms by backpropagation, Neural Networks, vol. 3, pp. 593-603, 1990.
[50] H. Endo and H. Isshiki, "Application of "Associatron" to expert system," in Pro-
ceedings of the 1990 International Conference on Fuzzy Logic and Neural Networks,
lizuka, (Japan), pp. 751-754, 1990.
[51] A. F. Rocha, "K-Neural nets and expert reasoning," in Proceedings of the 1990 Inter-
national Conference on Fuzzy Logic and Neural Networks, lizuka, (Japan), pp. 143-
146, 1990.
[52] A. F. Rocha, M. Theoto, and P. Torasso, "Heuristic learning expert systems - gen-
eral principles," in Fuzzy Logic in Knowledge-Based Systems, Decision and Control,
(M. M. Gupta and T. Yamakawa, eds.), pp. 289-306, North-Holland: Elsevier Science
Publishers B. V., 1988.
[53] R. J. Machado and A. F. Rocha, "A hybrid architecture for connectionist expert
systems," in Intelligent Hybrid Systems, (A. Kandel and G. Langholz, eds.), CRC
Press, 1992.
[54] Y. Hayashi, J. J. Buckley, and E. Czogala, "Approximation between fuzzy expert
systems and neurcJ networks," in Proceedings of 2nd International Conference on
Fuzzy Logic and Neural Networks, lizuka, (Japan), pp. 135-139, 1992.
[55] H. F. Yin and P. Liang, "A connectionist incremental expert system combining produc-
tion systems and associative memory," International Journal of Pattern Recognition
and Artificial Intelligence, vol. 5, pp. 523-544, 1991.
[56] K. Yoshida, Y. Hayashi, A. Imura, and N. Shimada, "Fuzzy neural expert system for
diagnosmg hepatobiliary disorders," in Proceedings of the 1990 International Confer-
ence on Fuzzy Logic and Neural Networks, lizuka, (Japan), pp. 539-543, 1990.
[57] Y. Hayashi, "A neural expert system with automated extraction of fuzzy if-then rules
and its application to medical diagnosis," in Advances in Neural Information Process-
ing Systems, (R. P. Lippmann, J. E. Moody, and D. S. Touretzky, eds.), pp. 578-584,
Los Altos: Morgan Kaufmann, 1991.
[58] Y. Hayashi, "A neural expert system using fuzzy teaching input," in Proceedings of
Ist IEEE Conference on Fuzzy Systems, (San Diego), pp. 485-491, 1992.
This page intentionally blank
143

[59] D. L. Hudson, M. E. Cohen, and M. F. Anderson, "Use of neural network techniques


in a medical expert system," in Proceedings of the Srd International Fuzzy Systems
Association Congress, University of Washington, (Seattle, Washington), pp. 476-479,
1989.
[60] D. L. Hudson, M. E. Cohen, and M. P. Anderson, "Use of neural network techniques
in a medical expert system," /nternotionoi Journal of Intelligent Systems, vol. 6,
pp. 213-223, 1991.
[61] D. L. Hudson and M. E. Cohen, "Combination of rule-based and connectionist expert
systems," International Journal of Microcomputer Applications, vol. 10, pp. 36-41,
1991.
[62] M. E. Cohen, D. L. Hudson, and M. F. Anderson, "A neural network learning
algorithm with medical applications," in Computer Applications in Medical Care,
(L. C. Klngsland, ed.), pp. 307-311, IEEE Computer Society Press, 1989.

[63] E. Sanchez, "Fuzzy connectionist expert systems," in Proceedings of the 1990 Inter-
national Conference on Fuzzy Logic and Neural Networks, lizuka, (Japan), pp. 31-35,
1990.
[64] K. Saito and R. Nakano, "Medical diagnostic expert system based on PDF model," in
Proceedings of IEEE International Conference on Neural Networks, (SanDiego, Cali-
fornia), pp. I.255-I.262, 1988.

[•65] S. G. Rbmaniuk and L. O. Hall, "Decision making on creditworthiness, using a fuzzy


connectionist model," Fuzzy Sets and Systems, vol. 48, pp. 15-22, 1992.
[66] S. K. Pal and P. K. Pramanik, "Fuzzy meeisures in determining seed points in clus-
tering," Pattern Recognition Letters, vol. 4, pp. 159-164, 1986.
[67] S. K. Pal and D. P. Mandal, "Linguistic recognition system based on approximate
reasoning," Information Sciences, vol. 61, pp. 135-161, 1992.
[68] S. Mitra and S. K. Pal, "Rule generation and inferencing with a layered fuzzy neural
network," in Proceedings of 2nd International Conference on Fuzzy Logic and Neural
Networks, lizuka, (Japan), pp. 641-644, 1992.
CHAPTER 7

FUZZY REASONING THROUGH A GENERAL


NEURAL NETWORK MODEL

S.G. Tzafestas(*), G. B. Stamou(*) and K. WatanabeC*)

(*) Intelligent Robotics and Control Unit


National Technical University of Athens
Zografou Campus, Zografou 15773, Athens, Greece
(**) Department of Mechanical Engineering
Saga University
Honjomachi-1, Saga 840, Japan
1. Introduction

Neural networks or connectionist models are designed to emulate human performance


at high computation rates through appropriate massively parallel interconnections of simple
neurons. On the other hand, fuzzy systems are capable to model imcertain situations that
occur in real life environments. One way of implementing fuzzy reasoning systems is
through expert system architectures, the alternative being through neural network
structures.
Neural systems and fuzzy systems have essential differences in the way they
function. Neural systems are based on pattern recognition supervised or unsupervised
learning techniques , whereas fiizzy systems are based on fuzzy set theory and fuzzy
inference mechanisms. However neural and fuzzy systems have in common two important
characteristics, namely:
i) they both possess a high degree of parallelism, and
ii) they both belong to the class of the model free estimators.
Fig. 1 shows the position of fiizzy and neural systems according to the knowledge
framework (symbolic, nimieric) and knowledge type (structured, unstructured) taxonomies.
It is clear that the combination of fiizzy and neural systems is possible and indeed there are
currently available several forms of fiizzy-neural systems [1-5]. Our purpose here is to
present and study a convenient neural network which implements a kind of fuzzy inference.
The system is actually based on the Keller-Yager-Tahani (K-Y-T) neuro fuzzy model
and uses Hamacher's intersection function l^{a,b) or Sugeno's complement fijnction C;i(a),
145
S.G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 145-161.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
146

We start with a brief description of the system operation and then establish its key features
in the form of four theorems which are fully proven. The capabilities of the system are
illustrated with the aid of a rich set of simulation results derived for the case of trapezoidal
fiizzy sets. These results are shown to be better than the ones obtained with the original K-
Y-T systems.

Knowledge
Structured Unstructured

Symbolic AI Expert
Systems
Framework
Fuzzy Neural
Numerical Systems Systems

Fig. J: Taxonomies ofAI Expert, Fuzzy and Neural systems.

Each neural net is known to consist of a set of elementary units with n synapses and
weights wjj which are connected to a node f described by a strongly nonlinear operation.
These units are refered to as "neurons" (Fig.2).

Wii

OUTPUT-
x } INPUTS

Fiii.2: Basic structure of a neuron.

The purpose of any learning procedure is to update weights wjj such that for each input for
the neural network, the output to be the desired one. Actually, a plethora of neural network
models and learning algorithms have been proposed in the technical literature (see e.g. [6-
11 ]). Of course there exist many situations where the weights are selected right from the
beginning by the designer without the application of any learning algorithms. The system
presented here belongs to this category.
147

The fijzzy systetns were intoduced by Zadeh in 1965 [12] and have shown a
significant development due to their ability for solving complex reasoning problems. They
are based on fuzzy logic and fuzzy sets. The fundamental operations of fuzzy sets are:
fuzzy complement, fuzzy union and fijzzy intersection [13]. With the aid of these
operations, the extension of logical tautologies becomes possible.
A particular tautology which is directly useful in fuzzy controUers is the modxis
ponens (MP) rule:
[{A -^B)AA)^B
which indicates that in a cause-effect relationship, when the cause is satisfied the
consequence is obtained. The question is "what happens when A and B are fuzzy sets?". In
this case the above MP rule is extended to the following generalized modus ponens (GMP)
rule:
{{A ->B)A A') -> B'
which shows that when the fiizzy cause is ahnost satisfied we nearly get the consequence.
One way to implement the GMP rule is through the use of Zadeh's max-min composition
operator [12,18].
A fuzzy controller consists of the following parts (Fig.3) [6,14,18]:
- fuzzification
- fuzzy inference mechanism
- defiizzification

-0-- Process
n

Defuzzificatlon
J Fuzzy Inference L-' Fuzzlftcatton

n
Mechanism J

Fuzzy Knowledge Base

Fuzzy Controller
Fig.3: General structure of a fiizzy coBtroller.

The fuzzy inference mechanism is implemented with the aid of a fiizzv knowledge base, i.e.
a knowledge base that contains fuzzy rules (MIMO: Multi-fnput/Multi-Output rules), ft is
148

shown in [16] that these rules can be transformed to MISO (Multi-Input/Single-Output)


rules. If the knowledge base contains many such rules, then one can assume that the
inference is done in the union of them. It can be shown [16] that it is sufficient to apply the
input to every rule and get as result the union of the outputs. Thus the design of rules of the
type;
IF Xi IS Aj AND X2 IS A2 AND ... X„ IS A„ THEN Y IS B (I)
plays an important role in the design of a fuzzy controller. The inference is performed by
using the GMP rule.

2. Fuzzy inference via neural nets

From the discussion of the previous section it is clear that there are some basic
similarities between neural and fuzzy systems. Our purpose in the present section is to try
to use a neural net for drawing fuzzy conclusions. To this end we shall extend and improve
the solution proposed by Keller, Yager and Taham [15]. This sohjtion has the drawback
that, although it possesses a correct behaviour, it is away from the desired solution,
especially when the fact (event) occurs. Thus an improvement will be proposed here
together with a discussion on the application domain of the network.
Actually, one of the main consequences of the use of fuzzy reasoning in a rule based
(IF-THEN) system is the dramatic reduction of the number of rules which leads, among
others, to faster conclusions. Some of the available solutions for the organization of fuzzy
controllers are those proposed by Procy and Mamdani [20], Braae and Rutherford [21] and
Macvicar-Whelan [22], where the fiizzy matrix concept is utilized for the representation of
the fuzzy control relationships of concern. These solutions give very good results but
possess the following drawbacks :
i) They require a large memory space for the storage of the elements of the fuzzy
matrices (but they gain in comutation time).
ii) The fuzzification unit must produce results that are compatible with the
representation of the variables in the fuzzy matrices. For example if the input is
quntized as "LOW, MORL LOW, MEDIUM, MORL HIGH, HIGH", the output of
the fuzzifier must give one of the values "LOW, MORL LOW, MEDIUM, MORL
HIGH, HIGH". This drawback is weakened when the quntization step is reduced,
but then again the required memory increases.
149

In our system, no ftizzy matrix is used, but instead a sequence of fuzzy operations
(fuzzy algorithm). In this way the extra memory for the fuzzy matrix is no more required,
and resulting increase of the computational time is faced by employing a neural network
structure that has a high degree of parallelism. An additional benefit of the method
presented here is the "continuity" in the sense that the system is able to respond without any
particular care, to any input value that may not belong to the value set {LOW, MORL
LOW, MEDIUM, MORL HIGH, HIGH}.
The proposed neuro-fuzzy network must satisfy the following requirements:
a. The fiizzy sets must be given in sampled form, since every neural network has a finite
number of inputs, i.e. Aj and B in the rule (1) must be of the form:

A = {^/l.•••.3*1,}. " = mi,...,m„ for / = l,...,n


B = {/>,....,b„)
Therefore, for input
A - = Wi,--->ai,,}, n = m^,...,m„ for / = l,...,n

one must get the output


B' = {bi,...,b'„}

b . In case the sets Aj are crisp sets the network must produce results that agree with the
rules of classical logic.

In the followmg, it is proved that every neural network of the type shown in Fig.4 with
describing equations

c/fr =u{l{a'ij,w,j)]
)
S = C(u(</fc))
k

b; = c{nu,,s)}
150

where

c: involutivc fuzzy complement with the property c(c[a)) = a, Va,


u; fuzzy union with the property u(a,0) = a and u{a,l) = 1,
/: fuzzy intersection with the property /(a,0) = 0 and /(a,l) = a,
satisfies the above conditions a. and b.

^1 ^m, ^1 Kn\,

Fig.4: Structure of the proposed neural


network (assuming that
e,=l, V/ = l,2 k)

Theorem 1
UA; - A, for all / = 1,2,.... n, then the result is B.
Proof
From Aj = A,' it follows that a^ = a]j for all / = 1,2,..., n and so for all v,j in the domain
of discourse it is true that tiW^) = a^ = 1 or 0 and //(c(i/,^)) = 0 or 1, respectively, where
151

p{x) is the membership function of concern. That is V/ = l,2,...,n the following relation
holds:

d^ = u{na,j,c{aij))} = 0
j

since /(a,y,c(a,y))} = /(l.O) = 0 for all i andj of interest. Thus

s = c{u(rfk)} = c(0) = l
k
and so b- = c{i(Uj,s)} = c(u,) = c(c(fa,)) = 6, for / = 1,2 n. This means that the result
is B as required, q.e.d.

Theorem 2
If for some i from 1 to n the condition A^ nAI^O holds, then the neural network
produces the result "y is UNKNOWN" (which means that £>/ = 1 V/ = 1,2,..., n).
Proof
Since fJ cWjj) = f^A'^^ij) = 1 ^or some vij in the domain of discourse and /(a,y,M',y) = 1 for
this Vfj,

du=u{na;j,wy)} =\

Thus s = c{u[d,,)} = 0 and so b; = c{/{0,U;)} = c{0) = 1, V/ = l,2,...,n. q.e.d.


k

Theorem 3
If Al Q Af (i.e. Al is more specific than A/- ft A. ^ PA) for some i from 1 to n, then the
result is B.
Proof
From Al c A, for some i, it follows that ^ nA^ = 0 . Hence d/, = 0 which gives the
result "Y is B". q.e.b.

This network is used to solve problems similar to the following example [15]. Consider the
rule
IF a person is OLD THEN the person in UNHEALTHY
152
If some time we learn that the person is VERY OLD, then this information is sufficient to
say that the person in UNHEALTHY. To confirm this fact the following theorem will be
shown.

Theorem 4
Consider two inputs Aj and /I" / = 1,2 n of the neural network and suppose that
A " £ A' £ A ^°^ all / = l,2,...,n. Then the corresponding results B' and B" will satisfy
the condition
B c B" c B'
Proof
From the relation /V'e A G A . V/ = 1,2,...,n, it follows that
0 < /i^.(-) < p^.(-) < fiA, (-). V/ = 1,2,...,n
for any point in the domain of discourse.
Thus

dH = u{/K.iv,^)} <u{l{alj,wif)} = d'k, V/ = 1,2....,o


J J

and so if c/j^ < dji then u((^it) - U(<^A^) which implies that
k k

c{uK)}<c{u(4')}
k k
or
s' < s"
Thus we have 6/ > 6," i.e. B c B" ^ B' because 6/,6;'> 6,, V/ = 1,2 n where
6/ = c{/(y,,:j)} = c{/(c(6,-),s)} > c{c(6,)} = ft,
Remark
For any input Aj it will be true that B c B'. It is therefore clear that for any triple of
functions (c, u, i) the network will be working for examples of Che "unhealthy old person"
type mentioned above.

The problem now is to select the functions u(-) and i(-,-) that satisfy the above
properties. Actually, many functions are appropriate for this purpose [13]. A first selection
is the one of Keller, Yager and Tahani [15]. Looking carefully at the neural net of Fig.4,
one concludes that the dominant role is played by the second player where the d^'s are
153

computed. The core of this operation is the comparison of the input with the prototype that
is represented by the weights Wjj, i.e. the event i of the GMP rule. To achieve this, the
complement of this event is stored in the Wy's and the maximum element of each
intersection with the input is obtained. The function of this intersection must be as "hard" as
possible, so as to give a value as near to zero as possible if there exists a relation of the
input and the event. Otherwise it must give the value 1, which means that a decision cannot
be obtained and is thus left to another GMP rule.
Most of the fuzzy function classes for the intersection, give the possibility for such a
"hard" intersection under a suitable choise of the values of their parameters. The final
selection of the intersection fimction among them, is made on the bases of the validity of
the conditions mentioned above and used in the proofs of theorems I through 4, and the
computation time required to execute the mathematical operations that support it.
In our system the following neuron model is selected in order to possess all desired
features:

d^ - max.[iH(3ij,Wij))
J

s = 1- max {dif}
k
u, = l-b,
bj = 1 - s • Uj
where //y(-) is Hamacher's ftmction [13]:

y + {l- y)[a + b- ab)


which satisfies the conditions //y(a, 1) = a and if^(a,0) = 0. As it will be seen in the next
section, this model works correctly for relatively large values of y (Y=100. 200,...).
However, there exist rales of other types that are also compatible with the GMP rale. To
see this we give the following example.
Suppose that two taps feed water to a vessel. The temperature of the water flowing
from the first tap is known but not controlled, whereas the temerature of the water in the
second tap is controlled with a switch that has the following indications: VERY VERY
WARM, VERY WARM, WARM, NEARLY WARM, A LITTLE WARM,
154

MODERATELY WARM. A LITTLE COOL, NEARLY COOL, COOL, VERY COOL,


VERY VERY COOL. We want to keep the water in the vessel MODERATELY WARM.
The logic of the previous model is as follows. If the water of tap 1 is A LITTLE
WARM or NEARLY WARM or VERY WARM or VERY VERY WARM then open the
COOL water in tap 2. In this way, we will get the correct result with a delay. It would be
better to work in the following way. If the water in tap 1 is WARM then open in tap 2 the
COOL water, if it is VERY WARM then open the VERY COOL water and if it is VERY
VERY WARM then open in tap 2 the VERY VERY COOL water, and so on. In this way
we will get the desired MODERATELY WARM water very fast. However, the proposed
inference model cannot produce this logic due to Theorem 4. Of course if in the
computation of the ui's one uses a different function for the complement operation than that
used for the bi"s, then it could be possible to obtain 6,' < b,. But in this case, the proofs of
Theorems 1, 2 and 3 should be modified. One must therefore be very carefull in using this
model in each particular case.
In the light of the above, we propose here the following modification of the inference
network:

dff = Ti\av.[a'fj,w^)

s = Ci(max(</t))

u, = C2(bi)
bi = c-^(sui)
where Cj and C2 are complementation functions of the Sugeno type [13]:

C/i(a) = — , ?i e ( - l , Q o )
\ + Aa
In practice one must select suitable values for \ and /Ig - This choise can be made through
simulation as described below.
155

Table 1: The weaning of linguistic terms defined on the domain [1,11] and sampled at
integer points.

Label Values of the membership function


LOW 1.00 0.67 0.33 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
VERY LOW 1.00 0.45 0.11 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
MORLLOW 1.00 0.82 0.57 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
NOT LOW 0.00 0.33 0.67 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00
MEDIUM 0.00 0.00 0.25 0.50 0.75 1.00 0.75 0.50 0.25 0.00 0.00
MORL MEDIUM 0.00 0.00 0.50 0.71 0.87 1.00 0.87 0.71 0.50 0.00 0.00
NOT MEDIUM 1.00 1.00 0.75 0.50 0.25 0.00 0.25 0.50 0.75 1.00 1.00
HIGH 0.00 0.00 0.00 0.00 0.00 0.00 0.20 0.40 0.60 0.80 1.00
VERY HIGH 0.00 0.00 0.00 0.00 0.00 0.00 0.04 0.16 0.36 0.64 1.00
MORL HIGH 0.00 0.00 0.00 0.00 0.00 0.00 0.45 0.63 0.77 0.89 1.00
NOT HIGH 1.00 1.00 1.00 1.00 1.00 1.00 0.80 0.60 0.40 0.20 0.00
UNKNOWN 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00

3. Simulation example

The proposed neural networks were simulated for trapezoidal fuzzy sets [17] according to
the rule:
IF X IS LOW THEN Y IS HIGH
and the rule:
IF X, IS LOW AND Xj IS LOW THEN Y IS HIGH.

The results obtained are shown in Tables 2 through 8. We observe that they approach the
desired result, the first without deviation and the second with some tolerable deviation.

Table 2: The results oftite simulation of the first model using Hamacber's function (y=50)

Label Va ues of the membership function |


LOW 0.02 0.02 0.02 0.02 0.02 0.02 0.21 0.41 0.61 0.80 1.001
MORLLOW 0.05 0.05 0.05 0.05 0.05 0.05 0.24 0.43 0.62 0.81 1.001
VERY LOW 0.01 0.01 0.01 0.01 0.01 0.01 0.21 0.40 0.60 0.80 1.001
MEDIUM 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.001
NOT LOW 1.00 l.QO 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.001
156

Table 3: The results of the simulation of the first model using Hamacher's function
(Y=100)
Label
LOW
Values of the membership function 1
0.01 0.01 0.01 0.01 0.01 0.01 0.21 0.41 0.60 0.80 tool
MORL LOW 0.03 0.03 0.03 0.03 0.03 0.03 0.22 0.42 0.61 0.81 i.ool
VERY LOW 0.00 0.00 0.00 0.00 0.00 0.00 0.20 0.40 0.60 0.80 i.ool
MEDIUM 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 t.OO I.ool
NOT LOW 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 I.ool

Table 4: The results of the simulatioa of die first model using Hamacher's function
(r=200)
Label Va ues of the membership function |
LOW 0.00 0.00 0.00 0.00 0.00 0.00 0.20 0.40 0.60 0.80 I.ool
MORL LOW 0.01 0.01 0.01 0.01 0.01 0.01 0.21 0.41 0.61 0.80 I.ool
VERY LOW 0.01 0.01 0.01 0.01 0.01 0.01 0.21 0.40 0.60 0.80 1.001
MEDIUM 1.00 t.OO 1.00 l.OO l.OO l.OO l.OO 1.00 1.00 1.00 I.ool
NOT LOW 1.00 1.00 1.00 1.00 l.OO 1.00 1.00 l.OO l.OO l.OO I.ool

"able 5: The results of the simuladon of die second model using Sugeno's function
Label Values of the membership function |
LOW 0.05 0.05 0.05 0.05 0.05 1 0.05 0.24 0.42 0.61 0.80 I.ool
MORL LOW 0.09 0.09 0.09 0.09 0.09 0.09 0.30 0.49 0.67 0.84 I.ool
VERY LOW 0.02 0.02 0.02 0.02 0.02 0.02 0.18 0.35 0.54 0.76 I.ool
MEDIUM 1.00 1.00 l.OO 1.00 t.OO 1.00 t.OO 1.00 1.00 too I.ool
NOT LOW l.OO 1.00 l.OO 1.00 1.00 1 1.00 t.OO 1.00 t.OO 1.00 tool

Table 6: The results of the simulation of the first model using Hamacher's function (y=50.
two inputs/one output)
Label Values of the membership function
LOW. 0.02 0.02 0.02 0.02 0.02 0.02 0.21 0.41 0.61 0.80 1.00
LOW
MORL LOW, 0.05 0.05 0.05 0.05 0.05 0.05 0.24 0.43 0.62 0.81 1.00
LOW
MORL LOW, 0.05 0.05 0.05 0.05 0.05 0.05 0.24 0.43 0.62 0.81 1.00
MORL LOW
VERY LOW, 0.02 0.02 0.02 0.02 0.02 0.02 0.21 0.41 0.61 0.80 1.00
LOW
VERY LOW. 0.01 0.01 0.01 0.01 0.01 0.01 0.21 0.40 0.60 0.80 1.00
VERY LOW
VERY LOW, 0.05 0.05 0.05 0.05 0.05 0.05 0.24 0.43 0.62 0.81 1.00
MORL LOW
VERY LOW, 1.00 l.OO 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00
MEDIUM
157

Table 7: The results of the simulation of the first model using Hamacher's function (y=IOO.
two inputs/one output)
Label Values of the membership function
LOW. 0.01 0.01 0.01 O.OI 0.01 0.01 0.21 0.41 0.60 0.80 1.00
LOW
MORL LOW. 0.03 0.03 0.03 0.03 0.03 0.03 0.22 0.42 0.61 0.81 1.00
LOW
MORL LOW, 0.03 0.03 0.03 0.03 0.03 0.03 0.22 0.42 0.61 0.81 1.00
MORL LOW
VERY LOW. 0.01 0.01 0.01 0.01 0.01 0.01 0.21 0.41 0.60 0.80 1.00
LOW
VERY LOW, 0.00 0.00 0.00 0.00 0.00 0.00 0.20 0.40 0.60 0.80 1.00
VERY LOW
VERY LOW, 0.03 0.03 0.03 0.03 0.03 0.03 0.22 0.42 0.61 0.81 1.00
MORL LOW
VERY LOW. 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1,00 1.00 1.00
MEDIUM

Table 8: The results of the simulation of the first model using Hamacher's function (y=200,
two inputs/one output)
Label Va ues of the members!lip function
LOW, 0.00 0.00 0.00 0.00 0.00 0.00 0.20 0.40 0.60 0.80 1.00
LOW
MORL LOW, 0.01 0.01 0.01 0.01 0.01 0.01 0.21 0.41 0.61 0.80 1.00
LOW
MORL LOW, 0.01 0.01 0.01 0.01 0.01 0.01 0.21 0.41 0.61 0.80 1.00
MORL LOW
VERY LOW, 0.00 0.00 0.00 0.00 0.00 0.00 0.20 0.40 0.60 0.80 1.00
LOW
VERY LOW. 0.00 0.00 0.00 0.00 0.00 0.00 0.20 0.40 0.60 0.80 1.00
VERY LOW
VERY LOW, 0.01 0.01 0.01 0.01 0.01 0.01 0.21 0.41 0.61 0.80 1.00
MORL LOW
VERY LOW, 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00
MEDIUM

In the first case (Tables 2-4) we present the results of the network for the Hamacher
ftmction with y=50, 100 and 200, respectively (the plots are omitted since they almost
coincide with the desired results). In the second case (Table 5) we use the complement
function of Sugeno with /Ij = 10 and /Ig = 6 and give the corresponding graphical
representations. In the third case (Tables 6-8), we present the results of the two inputs/one
output network for the Hamacher function with Y=50, 100 and 200 respectively.
158

1
0,9 Output of low (K-
0J8 Y-T)
0,7 • - — • Output of very
0,6 tow (K-Y-T)
0,5 • Output of morl
low (K-Y-T)
0.4
Higfi (K-Y-T)
0,3
Output of morl
0,2 low (1st model
0,1 V=200)
0 1 I
2 3 S 6 7 8 9 10 U

Fig.5: Comparison between the first model (y=200) and the K-Y-T
model (the outputs of hw and very low of the first model are almost
identical to High)

4. Conclusions
The neural network proposed here has the same structure as the K-Y-T model but it is
generalized such that one can use any meaningful fitzzy intersection, union or complement
ftmction. This is reflected in the more generality of Theorems 1 through 4. Here we
selected and used the Hamacher intersection function which leads to moie accurate
inferences than those obtained by the K-Y-T network. Also we used the Sugeno
complement function which gave us an other improvement A further extension would be
obtained if one uses rules of the type: "IF water is WARM THEN open COOL tap", "IF
water is VERY WARM THEN open VERY COOL tap", and so on (as mentioned at the
end of section 2).
The authors are currently working to design a system that can accomodate such rules
and also in the area of tuning PID and otilier controllers with die aid of the present inference
system in place of the so called "fuzzy matrices" [19]. Hopefully the use of the present
system will give equivalent tuning results as in [19] but more rapidly and with increased
robustness. Work is also in progress for enriching the structure with a learning capability.

Acknowledgement
This chapter is based on a paper presented at the AIENG 93: Applications of Artificial
Intelligence in Engineering (Toulouse, June-July 1993).
159
1 y
0.9
0.8 .' /
• ' /
0.7 +
0.6 Mori high
03 Output of morl
0,4 • bw (2nd mod«Q
0.3..
0.2-
oa^. . J-
0
-i- 8
-*-
9 10 11
H

0.9-
03
0.7
0,6 Very high
0,5 Output of very
0,4 tow (2nd modeO
0^1
0,2
oa
0 - - t - T - r - I — I - if • ' i -+- -1- -H
2 3 5 6 7 8 9 10 U

1
0,9
0,8
0,7-
0,6
High
0^..
• — — Output of low
0,4- (2nd model)
0,3
o;?

0 -i 1 1 »- ~r' I -i H
2 3 4 5 6 7 8 9 10 H

F>fl6: Comparison between the output of tt)e second model and the desired one.
160
References

[11 T. Yamakawa, "PatteaTi Recognition Hardware System EmpJoying a Fuzzy Neuron',


Proceedings of the latematioaal Conference on Fuzzy Logic and Neural Networks (Izuka,
Japan, July 20-24, 1990) pp. 943-948.
[2] H. R. Bercnji, "Fuzzy and Neural Control', Chapter 9 in An Introduction to Intelligent
and Autonomous Control, Antsaklis and Passino Eds Kluner, May 1992.
[3] M. Brown and C. Harris, "A Nonlinear Adaptive Controller: A Comparison between
Fuzzy Logic and Neurocontrol', IMA Journal of Mathematical Control and Information
(1991).
[4} K. Uehara and M. Fujise, ' Learning of Fuzzy-Inference Criteria with Artificial Neural
Network', Proceedings of the International Conference on Fuzzy Logic and Neural
Networks {Iziika, Japan, July 20-24, 1990) pp. 193-198.
[5] S. Nakanishi, T. Takagi, K. Unehara and Y. Gotoh, 'Self-organizing Fuzzy Controllers
by Neural Networks', Proceedings of the International Conference on Fuzzy Logic and
NeuralNetworks(Izuka, Japan, Jaly 20-24, 1990) pp. 187-193.
[6} B. Kosko, Neural Networks and Fuzzy Systems. A Dynamical Approach to Machine
Intelligence, Prentice Hall, Englewood Cliffs, NJ07632.
[7] J. S. Judd, Neural Network Design and the Complexity of Learning, A Bradford Book
,The MIT Press, Cambrige, Massahusetts, London, England.
[8] P. J. Antsaklis, Neural Networks in Control Systems, IEEE Systems Magazine, April
1990.
[9] R. P. Lippman, 'An Introduction to Computing with Neural Nets', IEEE ASSP Magazin,
April 1987.
[10] R. Battiti, "First and Second Methods for Learning: Between Steepest Descent and
Newton's Method', Neural Computation 4,141-166, Massahusetts Institute of Technology.
1992.
[11] K. Watanabe and S. G. Tzafestas, Learning Algorithms for Neural Networks with the
Kalman Filters', Journal of Intelligent and Robotic Systems 3: 305-319, 1990.
[12] L. A. Zadch, Fuzzy Sets', Information and Control, pp. 338-353, 1965.
[13] G. J. Klir, T. A. Folger, Fuzzy Sets, Uncertainty and Information, Prentice Hall,
Englewood Cliffs, N. J. 1988.
This page intentionally blank
161

[14] Fllor Van Der Rhee, Hans R. Van Nauta Lemke, Jaap G. Dijkman, 'Knowledge Based
Fuzzy Control of Systems', IEEE Trans, on Automatic Control, Vol. 35, NO. 2, February
1990.
[15] J. M. Keller, R. R, Yager, H. Tahani, 'Neural Network Implementation of Fuzzy
Logic', Fuzzy Sets and Systems 45 (1992), pp. 1-12, North-Holland.
[16] C. C. Lee, "Fuzzy Logic in Control Systems: Fuzzy Logic Controllers, Part I, 11', IEEE
Trans, on Systems, Man and Cybernetics, Vol. SMC-20, No. 2, March/April 1990.
[17] M. Mizumoto, S. Fukami and K. Tanaka, 'Some methods of Fuzzy Reasoning', in: M.
M. Gupta, R. K. Ragade and R. R. Yager, Eds., Advances in Fuzzy Set Theory and
/4/ip7/ca/«7i2s (North Holland, Amsterdam, 1979) pp. 117-126,
[18] S. G. Tzafestas, 'Fuzzy Expert Control: Recent Results with Applications to Robotic
Systems', Advanced Study Institute oa knowledge Based Robot Cootrol, France, 1988.
[19] S- Tzafestas and N. P. Papanikolopoulos, 'Incremental Fuzzy Expert PID Control",
IEEE Trans, on Industrial Electronics, Vol. 37, NO. 5, October 1990.
[20] T. J. Procyk and E. H. Mamdani, 'A linguistic self-organizing process controller,'
Automatica, vol. 15, pp. 15-30, 1979.
[21] M. Braae and D. A. Rutherford, 'Theoretical and linguistic aspects of the fuzzy logic
controller,' Automatica, vol. 15, pp. 553-577, 1979.
[22] P. J. Macvicar-Whelan, "Fuzzy sets for man-machine interaction,' Int. J. Man-Mach.
Studies, vol. 8, pp. 687-697, 1976.
This page intentionally blank
PART 3

FUZZY CONTROLLERS
CHAPTER 8

DEMYSTIFICATION OF FUZZY CONTROL

R. Jager, H.B. Verbruggen and P.M. Bruijn

Control Laboratory
Department of Electrical Engineering
Delft University of Technology
P.O. Box 5031, 2600 GA Delft, The Netherlands

A b s t r a c t . This contribution addresses a "down-to-earth" approach to-


wards fuzzy control. A description is done of the basic operations in fuzzy
controllers. Besides the global description critical remarks are placed at
those pMts which are necessary for a correct understanding of the working
of fu2zy controllers. The application of fuzzy logic in control can be re-
garded as a concept for the design of non-linear controllers, which is even
understandable for non-control engineers.

1 Introduction
Fuzzy control has become a popular topic in t h e control engineering community.
T h e proliferation of fuzzy control m e t h o d s get really underway by t h e introduction
of fuzzy control in consumer products by t h e Japanese electronic industry. Also,
applications are reported in the process industry (Aoki et al, 1990; Yu et al, 1990)
of which the best known are in the cement industry (Haspel, 1991; Ostergaard,
1990; Flintham, 1991) Many instrumentation firms offer fuzzy hard- and software
as implementation tools for fuzzy control, like for example, Siemens, Yokogawa,
Inform, Togai, etc.

W h a t is the reason t h a t fuzzy control methods became so popular in control engi-


neering? Most modern production processes require more advanced control. Fre-
quent changes in production rate, product mix and production procedures and
recipes, give rise to a completely different situation in which linearizations around
operating conditions are hardly possible, because many process models are incom-
plete, time-varying and highly non-linear.
165
S.G. Tzafestas and A.N. Venelsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 165-197.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
166

Most control algorithms, however, axe based on Hnear control theory and too much
relying on this approach leads to a dead end for their use in modern production
methods. Moreover, it is clear that the present state of t h e analysis and synthesis of
non-lineax controllers based on non-Iineax system theory is still i m m a t u r e and does
not provide the solutions needed in industry.

So, t h e control engineering community was waiting for new methods which could
alleviate the problems which have to be solved in process industry.

Fuzzy control algorithms could be very helpful, because of t h e following two reasons.

• They allow the use of linguistic expressions to describe the behaviour of the
system or the control actions. Using this property it is possible to i m i t a t e the
actions of operators.

• They are inherently non-linear and are thus able to perform control actions,
which are not possible with a purely linear approach.

These properties alow fuzzy control to be brought into action in many control prob-
lems. However, some people think t h a t fuzzy control is t h e panacea for everything
t h a t is difficult to control. It is true t h a t some authors and advocates of fuzzy con-
trol have stimulated this feeling by only indicating the advantages of fuzzy control
and mystifying the real problems arising when applying fuzzy control.

There is a lack of knowledge of the relationship between fuzzy control algorithms


Eind non-linear controllers. Furthermore, it is not clear how the structure and pa-
rameters of a fuzzy controller should be chosen in a given situation. This subject
is seldomly described by the users and advocates of fuzzy control and t h a t is the
reason t h a t people not involved in this field have the feeling t h a t t h e method is
mystical, unreliable, lacks mathematical rigorness and is a box full of tricks.

In this contribution we want to show the real face of fuzzy control, showing the
strength of this m e t h o d in comparison to other methods, but also the weak points
and unsolved problems.

We will confine this contribution to fuzzy control in which t h e controller is part of a


closed loop system, as shown in figure l a . T h e use of fuzzy algorithms for supervision
(see figure l b ) and decision meiking will not be treated in this contribution. A good
overview of fuzzy controllers has been given by Lee (1990a,b).

The first three sections of our contribution are concerned with the basic parts of a
fuzzy controller as shown in figure 2. First the fuzzification of the inputs of the fuzzy
167

FS
r u 1 1 y y
FC process

(a) (b)
Fuzzy controller (FC). Fuzzy supervisor (FS).

F i g u r e 1: Fuzzy control loops.

controller will be described, dealing with the choice, number and (relative) position,
of membership functions. T h e second section will discuss the inference part of fuzzy
controllers. T h e a i m of section 4 is t h e comparison a n d evailuation of defuzzification
methods. Next the relation between fuzzy control and lineaj control is described.
T h e last section will be used for conclusions and discussion.

rule
base

n
X rule of u^ 'S
inference
-a

F i g u r e 2: Schematic representation of fuzzy controller.

2 Fuzzification

Although in m a n y applications of fuzzy control the influence of the choice of m e m -


bership fimctions is hardly discussed, it is an important issue. Mainly because the
168

n u m b e r and shapes of those membership functions a n d how they cire related to Ccich
other, as well as the number of overlapping membership functions, determine the
resulting controller o u t p u t as function of the controller inputs of the fuzzy controller.
In this section a centre-of-gravity oriented defuzzification (see section 4) method is
assumed.

T h e first three subsections will deal with t h e fuzzification of the inputs. T h e last
subsection will address "fuzzification" of the universe of discourse of the o u t p u t .

2.1 Number and positions of membership functions

W h e n designing a fuzzy controller one of the first questions which arise, after having
chosen the inputs, is how many membership functions are needed eind how the
membership functions should be divided on the universe of discourse of the inputs.

(a)
Linear division of membership functions on universe of discourse.

(b)
Non-linear division of membership functions on universe of discourse.

F i g u r e 3: Commonly used basic set of m,embership functions on a uni-


verse of discourse (meaning of abbreviations: (N)egative, (P)osttive,
(A)bout, B(ig), (M)edium, (S)mall and (Z)ero).

In figure 3 more or less standard types of universes of discourse of controller inputs


169

cire shown. Whether to use a linear (3a), a non-linear (3b) or an other set of mem-
bership functions on the universe of discourse of an input depends on the problem
to deal with.

T h e higher the density of membership functions on a certain part of the universe of


discourse, the more complex the controller o u t p u t as function of the controller inputs
can be obtained. Actually, the choice of the number of membership functions and
how those membership functions are divided over t h e universes of discourse requires
knowledge about how t h e controller o u t p u t should b e related t o the controller inputs.
For example, designing a fuzzy controller for controlling a non-linear process requires
knowledge about the non-linearity of the process. There are no rules of t h u m b to
choose the number and positions of the membership functions, and few people realize
t h a t this is a problem. T h e number and positions of the membership functions define
the control hypersurface and proper design of this control hypersurface requires
process knowledge. When this process knowledge exist in the form of operator
expertise then one has to deal with the knowledge acquisition problem known from
the field of expert systems.

2,2 Overlapping membership functions

It can be shown that having more t h a n two overlapping membership functions will
lead to a sort of "smoothening" of the control hypersurface, t h a t would result from
having only two overlapping membership functions.

In figure 4a the smoothening effect on the o u t p u t u as function of the input x is


shown, which can occur when there exist more t h a n two overlapping fuzzy sets on
a universe of discourse. Open marks represent the numerical results of individual
fuzzy rules in case of no more t h a n two overlapping membership functions. T h e
solid marks represent the numerical output of the fuzzy controller when the support
value of one rule equals 1 and there exist more t h a n two overlapping membership
functions. T h e gray coloured curve in figure 4a represents t h e controller output u as
function of the controller input x in case no more t h a n two overlapping membership
functions are used. T h e black curve represent t h e controller o u t p u t due to more t h a n
two overlapping membership functions. As figure 4a shows, the results of individual
fuzzy rules are not part of the black curve: fuzzy rules interfere with the results of
individual fuzzy rules.

This interference due t o more t h a n two overlapping membership functions leads to


effects on the controller hypersurface, which are not e£isy to see a priori. Using, for
example, Gaussian membership function will introduce this effect. This interference
170

can best be shown by having a set of rules in which t h e conclusion of one m l e is


changed. In figure 4b one can see the effect of changing t h e concbision of one rule
(marked by an axrow): it also influences the numerical result of other rules. O n the
other hand, when Gaussian membership functions axe used and t h e fuzzy sets are
composed in such a way t h a t the overlapping of non-adjacent membership fiinctions
is neglectable, this interference between rules and thus t h e "smoothening" of the
control liypersurfacc will also be neglectable.

(a) (b)
Smoothing of controller output u{x) Influence of changing conclusion of
as function of controller input u. one fuzzy mle controller output.

F i g u r e 4: Possible effects in case of more than two overlapping mem-


bership functions.

2.3 Shape of membersMp functions

As discussed in the previous subsection, more t h a n two overlapping membership


functions will result in some non-trivial characteristics of the fuzzy controller. T h a t
Iccives us to the standard continuous and discontimions (sometimes referred t o as
"straight") membership functions. T h e straight membership functions, like t h e
trapezoidal shaped membership function (subsection 4.2, figure 8c,d), represent t h e
linear approach, t h e continuous membership functions, lilse the bell-shaped m e m -
bership function (subsection 4.2, figure 8a,b), represent the non4inear approach.
171

W h e n the output of t h e fuzzy controller is regarded as a function of the inputs,


which is determined by the interpolation between the numerical results of the in-
dividual fuzzy rules, t h a n this interpolation is non-linear in case of t h e continuous
membership functions. By using non-linear membership functions a non-linear char-
acteristic is introduced in the fuzzy controller, which is not a trivial CEise. Clearly
this non-linear interpolation can provide the control surface wanted, but this is, in
our opinion, not according to the basic idea of a fuzzy controller: the non-linearity
of the fuzzy controller should be defined by the fuzzy rules, and thus by t h e number
and positions of the membership functions, because these rules are the representa-
tion of our process knowledge. Also the "widths" of the membership functions are
relevant: the width of the pEirt where the membership function equals 1 and t h e
widths of the parts where the membership function is between 0 and 1. T h e effects
on the controller output due to the shapes of the last mentioned peirts, however, are
hard to determine.

2.4 Membership functions for the output

It is possible t h a t the output of a fuzzy controller also ha.s a universe of discourse on


which membership functions are defined. This, however, is not always the case as will
be show in section 3.2. In case membership functions are defined for the controller
o u t p u t , this is normally done using a set of equidistant chosen membership functions
on the universe of discourse. It is hard to make any general remark concerning the
"fuzzification" of the output, because its effect depends for a great deal on the fuzzy
rules.

Because of this and the interpolative character of a fuzzy controller, a chosen set of
membership functions do not limit the resolution of t h e controller o u t p u t , assuming
a centre-of-gravity oriented defuzzification method (see also section 4). T h e number
and positions of the membership functions on the universe of discourse of the output,
in combination with t h e fuzzy rules and the universes of discourse of t h e controller
inputs, should be chosen according to the control hypersurface desired.

3 Rules, operators and inference


In this section we will address fuzzy rules, the connectives used in fuzzy rules axid
fuzzy inference of t h e rules. First, we will start with t h e logical operators to im-
plement the connectives. Secondly the fuzzy rules are described and after t h a t the
inference of the fuzzy rules is discussed.
172

3.1 Connectives

To express knowledge by means of fuzzy rules one needs logical connectives. T h e


metin logical connectives used in standard fuzzy controllers are: and cind then. Of
course connectives like or and not are possible, but not explicitly necessary. Sentence
connectives are mentioned in literature like else, for example by Harris and Moore
(1989), and also, for excimple by Lee (1990b). We will not go into detail about the
meaning of these sentence connectives, which are used to combine the fuzzy rules.

For implementation of the and connective a T-norm (Schweizer & Sklar, 1963)
is used. T h e conditions which a T-norm, for applying intersection or conjunction,
must satisfy are:

T-1 T(a,l) = a
T-2 T{a, b) < T ( c , d), whenever a < c, b < d
T-3 T{a,b) = T{b,a)
T-4 T{T(a, b), c) = T(a, T(b, c))

In this paper ^ will be used to denote a T-norm^. Some examples of T-norms


axe: m m ( a , 6 ) (Zadeh), max(a + b — 1,0) (Lukasiewicz), ab (probability theory),
etc. Several authors have defined families of T-norms (and -conorms), which have
parameters to vary the function of the T-norm (or -conorm). For example, t h e
T-norm family according to Dubois and Prade (Klir & Folger, 1988):

ab
fd&p,e(a,<> = , , .. (la
max(a,b,(fj

with 6(z [0,1]. When 6 equals 0, <<i&p,e acts as 7Tim(a,6). In case 6 equals 1, tdicp,e acts
as ab from probability theory. T h e or, else and also connectives are implemented
using a T-conorm or S-norm. T h e conditions defining a T-conorm, for applying a
union or disjunction, are, besides T-2, T-3 and T-4;

S-I S(a,0) = a

A S-norm will be denoted in this paper by \l. Examples of S-norms are: max(a,b),
min[a-\-b, 1), o-|-6 — ab, etc. As with the T-norm there exist a lot more possibilities.
173

often combined in a family of T-norms and -conorms. For example, the S-norm
related to ( l a ) is defined as:

a + 6 — a6 — m w ( a , 6 , 1 — ^) , ,
max{\ — a,l — 0,6)

This S-norm td&p,e acts as max(a, b) when 6 equals 0 and acts as a + b — ab from
probability theory, when 6 equals 1. For more detailed information on T-norms emd
-conorms we refer to Klir and Folger (1988), Buckley and Siller (1987) and Turksen
(1986).

Although not further used in this paper, but for completeness, t h e minimal con-
ditions for the complement, used for implementation of the connective not, are
(Hellendoorn, 1990):

C-1 C(0) = 1
C-2 C{a) > C(b), whenever a <b
C-3 C(C{a)) = a

For t h e complement function normally 1 — a is used. The next section will use the
T-norm and -conorm in the compositional rule of inference.

3.2 Fuzzy rules

In fuzzy control rules are used to represent the knowledge implemented in the con-
troller. In this section we will not discuss the type of knowledge the fuzzy rules
represent, like state evaluation or object evaluation fuzzy rules (Lee, 1990b), be-
cause this reflects more the application of fuzzy rules than t h e form. Here we will
address only the form of fuzzy rules and one can mainly distinguish two types:
rules with "symbolic" consequents and rules with "numerical" consequents, from
now on referred to as Mamdani- and Sugeno-rules, respectively, eind discussed in
t h e following subsections.

3.2.1 M a m d a n i - t y p e fuzzy rules

This type of rules was used in the first applications of fuzzy control (Assilian, 1974;
Mamdani, 1974; Mamdani & Assilian, 1975) and has the following general form:
174

TJ: if Xi is X( and • • • Eind XN^ is X^j then u is [/•'

with:

N3. : n u m b e r of controller inputs


Xi : i'*' input of controller
Xi : fuzzy label for i"* input in j " * rule
u : o u t p u t of controller
U^ : fuzzy label for controller output in j ' ' ' rule

T h e consequent of this type of rules is a symbolic one, for example, "controller


o u t p u t is big". Theoretically a fuzzy rule can be represented by a relation Rj, which
is the cartesian product of the conditions in t h e premise of a fuzzy rule and the
consequent of the fuzzy rule:

R^ = {Xix...xXi,JxU^ (2a)

We can write (2a) as a multi-dimensionaJ fuzzy set:

^iR, (KI , • • •, xjv,, u) = { A l^x' (==0} A t^u- (w) (2b)

Figure 5 shows an examiple of a 2-diniensional fuzzy set representing a fuzzy rule,


using the min-operator for conjunction. Section 3.3 will explain how these fuzzy
rules are combined and used for fuzzy inference.

Using the Mamdani-types of rules in a fuzzy controller will result in a fuzzy controller
o u t p u t as result of the fuzzy inference, which has to be defuzzified to obtain a
numerical controller output. Defuzzification methods are addressed in section 4.

3.2.2 S u g e n o - t y p e o f f u z z y rules

T h e general form of the other rule type, referred t o as Sugeno-rules, because of the
introduction of those rules by TaJcagi and Sugeno (1983) and further exploited by
Sugeno and co-workers, is as follows;

rji if Xi is X( and • • • and x^^ is X^^ then u is /•'{xi, • • • , x^^)


175

F i g u r e 5: Representation of a fuzzy rule (if x is .then •) by


means of fuzzy relation.

which shows t h a t t h e consequent of a fuzzy rule is a function (/J) of t h e controller


inputs. A linear function in the consequent will simplify this rule type to:

Tf. if Si is X( and • • - and xjv, is X}f^ t h e n « is ofxi -f . . . + a^^asiv. + V>

with constant parameters af and ¥ and which can b e even more simplified when
t h e parameters af are 0, resulting in a constant numerical consequent 6^'. Successful
use of this t y p e of fuzzy rule in t h e control of a model car was reported by Siigeno
and Nishida (1985) and Sugeno and Murakami (1985). T h e "fuzzy" o u t p u t of a
fuzzy controller using this t y p e of fuzzy rules is in fact a set of weighted numerical
o u t p u t s . A simple defuzzification results in the final controller o u t p u t .

A set of Sugeno^rules can be seen as a set of (non-)hnear controllers, between which is


interpolated by means of fuzzy inference. This possible connection with conventional
control techniques will be addressed in section 5.

Although one can distinguish the Mamdani-rules from the Sugeno-rules, in practical
set-ups the Mamdani-type of rules are quite often similar to Sngeno-mles with con-
stant consequent, for example, see Batur and Kasparian (1991), Harris and Moore
(1989) and Matsuoka (1991). This is due to t h e defuzzifi cation m e t h o d used to
defuzzify the fuzzy output of t h e controller: fuzzy-mean or centroid. See section 4
for details on defuzzification methods.
176

3.3 Fuzzy inference

T h e application of fuzzy inference is based on t h e idea of relational implications. A


fuzzy relation R representing a fuzzy controller is represented by a multi-dimensional
fuzzy set, which is a combination (union) of the fuzzy sets representing the individual
fuzzy rules (see section 3.2):

R=\:)Ri (3a)

in which a "starred" union operator is used to express, as in subsection 3.1, a general


form of the operator. W h e n using fuzzy sets:

Nr
fJ-R{xi,••• ,XN,,u) = ^ fiRjixi,--- ,XN,,u) (3b)
3=1

where Nr is the number of rules. A fuzzy output is obtained by applying t h e


compositional rule of inference:

U^X,o{X2o{---iXr,,oR)...)) (4a)

where Xi axe fuzzifications of the controller inputs Xi and U is the fuzzy o u t p u t .


More commonly the compositional rule of inference is written as:

U = Xo R (4b)

where X is the cartesiaji product of the fuzzy inputs Xi and using fuzzy sets:

t^uiu) = V {it^x{3:i,---,XN,)/\fJ.Rixi,---,XN,,u))} (5a)

with:

IJ'xixu--- ,XNJ =MJ:i(a;i)/\---A/iXN,(«wJ (5b)

In practical applications however, usually a more efficient m e t h o d is used (Harris &


Moore, 1989). This method is based on the assumption t h a t the fuzzification of an
177

input can be represented by a singleton, which is often true in control, because of


t h e fact t h a t t h e controller inputs are normally "crisp" measurements. Because t h e
fuzzification of the inputs can be represented by singletons, the same fuzzy o u t p u t
can be obtained by determining for every fuzzy rule Rj the individual fuzzy output:

AT.

where one should note t h a t here Xi(t) is used instead of Xi as in (5). This means
t h a t the left T-norm in (6) operates on membership values and not on membership
functions as t h e right T-norm does.

In figure 6 this practical way of fuzzy reasoning is shown schematically, where the
rnin-operator is used as T-norm. Combination of those individual fuzzy outputs by
applying a union results in the complete fuzzy o u t p u t of the system:

IJ.u{u) = V nui{u) (7)


3=1

T h e result of the union of the results of figure 6 is shown in figure 7. A max-operator


is used for t h e union.

T h e most commonly used inference rule is the maa;-mm-rule (the one used in the
examples in figure 6 and 7). Also frequently used is the max-prod type of inference.

Fuzzy inference using non-lineax operators (others thaji the product and summation
operator for T-norm and -conorm, respectivily) results in a non-linear control hy-
persurface. Even when the fuzzy rules form a consistent, complete and "linear" rule
base, the control hypersurface will b e non-linear. This would not be the case using
t h e sum-prod-rule of inference, consisting of "linear" operators. T h e non-lineaxity
of the control hypersurface is completely determined by the logical operators and
not by the fuzzy rules, which, in our opinion, should define t h e non-linearity of the
control hypersurface. Section 5.2 will show this in more detail in case of a fuzzy
PID-controller.

Several defuzzification methods are available to translate the fuzzy output of the
controller into a crisp, numerical output value. Defuzzification will be discussed in
t h e next section.
178

(a)
If xi is Ai and 12 is B2 then u is Ci.

If Xi is A2 and X2 is Bi then u is €'2-

F i g u r e 6: Schetnatical representation of practical fuzzy reasoning using


min-operaior for and^connective and implication.
179

1.0

J''

0.5 ^1 y G2

Figure 7: Combination of fuzzy outputs of individual


fuzzy rules, as shown tn figure 6, using maa-opemtor.

4 Defuzziflcation

In this section the role of defuzzification methods in fuzzy controllers is addressed. A


closer look at the influence of this specific part of the fuzzy controller is worthwhile,
because from hterature several defuzzification methods are known. The best known
defuzziication methods are (Harris fe Moore, 1989; Jager et al, 1992; Larkiii, 1985;
Pedrycz, 1989; Hellendoorn, 1993); centre^otarea (coa) or centre-of-gravity (cog)',
fazzy-mean (fm) or centroid (ctrd), weighted-fuzzy-mean (wfm), indexed versions
of ^those (id/z) and mean-otmaxima (mom) defuzzification method. Adaptive or
adjustable defuzzification methods become more popular (Yager & Filev, 1993),
but will aot be addressed in this contribution.

The defuzzifier of a fuzzy controller can deteriorate a great deal the results achieved
by the inference of fuzzy rules. It appears that the application of a specific defuzzi-
fication method can reduce completely the fuzzy character of the controller, as will
be shown in subsection 4.2.

4.1 Defuzzification methods

This section will describe the basic defuzzification methods and related methods.
Probably the best known method is the centre-of-area defuzzification method (coa),
180

which is defined by;

coa{U) TOO

/
Hu(u)du^ I iJ,u{u)du (8a)

resulting in a numerical value u = u^oa which divides the integral of the fuzzy output
in two equal parts. This way of calculation is normally not applicable in practical
situations. T h e centre line u — Ucoa, which divides the area under the fuzzy output
function caji be approximated by calculating the centre of "gravity", which explains
the alternative name, centre-of-gravity (cog) method:

JV,

cog(C/) = i ^ i (8b)

where iV, is the number of quantisations used for the discretisation of the fuzzy
output ^i/(u).

T h e fuzzy-mean method (fm) uses only, pre-calculated, crisp representations of the


individual fuzzy sets on the universe of discourse of the controller output and is in
fact the centre-of-gravity using as less quantisations as possible:

fm(C/) = '^^ (8c)

k=\

where N^ is the number of fuzzy sets defined on the universe of discourse of the
controller o u t p u t , 7^ denote the support values for membership function Uu as result
of the inference within the controller and u^ represents the defuzzification of U^. The
support values 7fc are determined by the conjunction of t h e condition part of the
fuzzy rules and therefore the fuzzy-mean defuzzification method is very suitable
in case the calculation load of the fuzzy controller should be small (see subsection
3.3). In figure 6 the support values are t h e values by which the fuzzy outputs Ci
and C2 are limited (in case of m i n i m u m as T-norm for the implication). These
values are calculated in figure 6 by taking t h e m i n i m u m of the membership values
in the premise of the fuzzy rules. Because only crisp representations are used of
181

t h e fuzzy sets defined on the universe of discourse of the controller o u t p u t , this


defuzzification method treats Mcimdani-type of rules as Sugeno-type of rules with a
constant consequent. A weighted version of t h e fuzzy-mean m e t h o d (wfm) is defined
by:

wfm(C/) == ^^L (8d)

in which Wj are weights assigned to the membership functions on the universe of


discourse of the controller output to emphasize certain membership functions (Jager
et al., 1992).

Indexed defuzzification methods {idfz^ are defined by:

Ufz{U,ai) = dfz{a-cni{U,ai)) (8e)

and are used to discriminate part of a fuzzy o u t p u t of which t h e membership values


are below a certain threshold a,: the defuzzification m e t h o d is only applied on the
part(s) of the fuzzy output, which has a membership vaJue greater (or equal) 0:^.
This discrimination provides a way to let t h e defuzzification of the fuzzy o u t p u t
tend towards the m a x i m a of the fuzzy output. An extreme form of this will result in
t h e mean-of-maxima defuzzification method (m.om), because t h e mean-of-maxima
m e t h o d uses only the m a x i m a of t h e fuzzy o u t p u t :

mom(C/) = icog(C/, hgt(C/)) (8f)

where hgi{U) represents the height ( m a x i m u m value) of the fuzzy output.

4.2 Comparison and evaluation

In this subsection we will take a closer look at the several defuzzification methods
as described in the previous subsection. Comparisons will be made, advantages
and disadvantages will be discussed. First t h e mean-of-maxima method is evalu-
ated; after t h a t a comparison is made with t h e centre-of-area related defuzzification
methods.
182

Although t h e mean-of-maxima m e t h o d is an obvious m e t h o d for defuzzification


(Dubois &: Prade, 1980), applying it in fuzzy control reduces t h e "fuzziness" of
the controller completely in m a n y cases. In case the mean-of-maxima m e t h o d is
used for defuzzification of the fuzzy output, the membership functions describing
the inputs can even be chosen as crisp (classical) sets, without having any effect on
the numerical o u t p u t .

Suppose the fuzzy controller satisfied the assumptions given in t h e introduction.


When the chosen T-norm satisfies, besides the conditions T - 1 , T-2, T-3 and T-4 as
stated in section 3.1, also a stronger condition for T-2, namely:

T-2 T{a,b) < T{c,d), whenever a<l<c, b<l<d

£ind it is assumed t h a t the membership values do not have values equal to ~, then
there exists only one dominant fuzzy rule in the rule base. This domincint rule
will completely determine the numerical output of the fuzzy controller in case the
chosen S-norm for combining t h e individual fuzzy conclusions of the fuzzy rules
(union) satisfies besides the conditions S-1, S-3 and S-4 a stronger condition for S-2,
namely:

S'-2 S{a,b) < S{c,d), whenever a < c, b < d

So every combination of T- and S-norms satisfying the above listed conditions,


for excimple the max- and min-operators and t h e product operator, will result in
the same numerical output of the fuzzy controller. This means, for example, t h a t
redefinition of the shape of the fuzzy sets defined for the inputs in a way as is done
in figure 8 has no effect at all on t h e numerical o u t p u t .

In case we consider also the cases in which more t h a n one fuzzy rule are equally
dominant (two or more membership values are equal to i ) , t h a n the (finite) number
of possible numerical values for the o u t p u t is still restricted by:

zJ r,
n I ""^
„fj ;n\{N^
:T?^ _
- ^n)\
M (^^

Another disadvantage of the mean-of-maxima m e t h o d is the fact t h a t non-symmet-


rical fuzzy sets defined for the o u t p u t can result in undesired behaviour. In figure 9
two situations are depicted which point out t h a t a shift of t h e fuzzy o u t p u t possibly
results in a shift in the opposite direction of the numerical o u t p u t .
183

1' L . . .^. . . . 1'

r
1
/ \ / \:

0 y V 0 \ *• 0 > 0/ \
(a) (b)
A-function. U-function. Triangular,
m
Trapezoidal.

F i g u r e 8: Different shapes of membership functions.

/*£/(")

(«)

/H/(ti)

(b)

F i g u r e §: Undcsired result of mean-of-mamima method •in case of


non-symmetrical fuzzy sets: shift of numerical output opposite to
shift in fuzzy output.
184

it

0 200 400 600 800 lOOO 1200 1400 1600 1800 2000
tune(s)

0 200 400 600 800 1000 1200 1400 1600 1800 2000
time (s)

(a)
Mean-of-maxima defuzzification.

a I
^ Oh

0 200 400 600 800 1000 1200 1400 1600 1800 2000
time (s)

0 200 400 600 800 lOOO 1200 1400 1600 1800 20O0
time (s)

(b)
Centre-of-gravity defuzzification.

F i g u r e 10: Experimental results with fuzzy control using dif-


ferent defuzzification methods.
185

T a b l e 1: Number and types of operations in


centre-of-gratrity related defuzzification meth-
ods, with Nq > Nu-

method *,/ + ,-
cog Ng + l 2 K - 1)
fm Nu + 1 2(^„ - 1)
wfm SAT,+ 1 2(iV„ - 1)

Comparing the defuzzification methods, it appears that the choice of the defuzzifi-
cation m e t h o d determines to a W g e extend the "quality" of control as well as t h e
computational cost of the controller. Comparing the results based on control and
computational performance, one can choose the appropriate defuzzification m e t h o d
for a specific application.

Figure 10 shows experimental results of applying several defuzzification methods a.s


well as some tests for comparison. As can be seen in figure 10a using the mean-of-
m a x i m a defuzzification method often results in a steady state error. This is due t o
the fact t h a t the only dominant fuzzy rule is:

if e is AZ and Ae is AZ then u is AZ

T h e m a x i m u m value depends on the "width" of t h e membership functions AZ, of


both the error e and error change A e . Solving this problem can b e done by splitting
u p the membership function AZ of the error into two, for example negative zero (NZ)
and positive zero (PZ). This however, leads to a limit cycle in the control signal and
thus a possible limit cycle in the process output (Jager et o/., 1992). Applying the
centre-of-gravity (see figure 10b) does not result in a steady state error.

Knowing t h e linear relation between the number of quantisations Ng used for the
centre-of-gravity related defuzzification methods (see table 1) and the neglectable
difference in the resulting control performance (Jager et al., 1992), one can conclude
that t h e (weighted-)fuzzy-mean method is more preferable t h a n the centre-of-gravity
m e t h o d , which uses more quantisations in its calculation. Using this (weighted-
)fuzzy-mean defuzzification method in fact transforms a fuzzy controller according
to Mamdani (Mamdani & Assilian, 1975) into a Sugeno-type (Takagi & Sugeno,
1983) of fuzzy controller (see section 3.2 for description of Mamdani- and Sugeno-
type of fuzzy controllers), some examples can b e found in B a t u r and Kasparian
(1991), Harris and Moore (1989) and Matsuoka (1991).
186

5 Fuzzy versus linear control

In this section we will discuss the relation between fuzzy and linear control. It
is shown that any linear controller can be described as a fuzzy controller: fuzzy
control can be seen as a superset of linear control or linear control as a subset
of fuzzy control. The most widely used controller is the PID-controller £ind most
fuzzy controllers described in literature imitate a conventional PID-controller. The
second subsection will address these fuzzy PID-controllers. Finally, fuzzy control of
non-linear processes is discussed.

5.1 Fuzzy control as superset of linear control

When designing a fuzzy controller and applying specific choices for membership
functions, logical operators and scaling of in- and outputs, the fuzzy controller can
emulate a linear controller. From this point of view linear control can be seen as
a subset of fuzzy control. First let us start with looking at a fuzzy controller as a
controller which represents a mapping / ( ) from the N^ inputs x to the output u:

n = f{x} = f{x„...,XN^) (10)

In case of a linear controller this mapping is a linear algebraJc equation:

u — a^x + 6 = y^ ajXi + b (11)


i=l

The fuzzy controller function (10) can emulate the linear controller (H) when meet-
ing the following criteria:

1. the membership functions on the universe of discourse of the inputs are trian-
gular shaped;

2. there are no more than two overlapping membership functions on a universe


of discourse;

3. the membership functions form a complete set: the sum of the membership
functions on a universe of discourse equals 1;

4. the fuzzy rule base is complete.


187

5. the intersection operator for combining the premises of the fuzzy rules is the
product operator (probabilistic intersection);

6. the defuzzified conclusions of t h e individual fuzzy rules Eire chosen according


to equation (11);

7. the union operator is the summation operator (union according to


Lukasiewicz);

8. t h e fuzzy-mean defuzzification m e t h o d is used.

In a lot of fuzzy controllers found in literature criteria 1 ^ axe met. Although not
explicitly stated they normally also meet criterium 8. This leaves criteria 5-7 to
be the main differences between "standard" fuzzy controllers and linear controllers.
Using t h e product a n d summation operators instead of the m a x and m i n operators
respectively, is necessary because t h e emulation of linear controllers requires linear
operators.

T h e most important criterium to be m e t is 6, because due to criteria 1-5 and 7-8 the
o u t p u t of a fuzzy controller, with N^ inputs results in a linear interpolation between
2 ' points in a iVj.-diniensional space and the numerical conclusions of the at most
2 ' fuzzy rules, which contribute to the output, determine wether or not a linear
relation, by connecting these points, (hyperplane) exists. When this hyperplane
exists it equation (11) holds.

We can write this more formally by stating that the controller o u t p u t u is described
by applying the fuzzy-mean defuzzification, as defined in (8c)) (subsection 4.1), and
criterium 2, as listed above, is met:

^='-% (12a)

k=\

2Nx
(12b)

where Uk is the defuzzification of membership function Uk and u^ is the numerical


consequent of fuzzy rule rj (defuzzification of fuzzy consequent [/•'). W h e n we
assume criteria 2-5 and 7 we can write:

(13a)
3=1 t=l

with, as shown in figure 11:

Mil + Mi2 = 1 (13b)

F i g u r e 1 1 : Relation between controller input, centres


of membership functions and membership values.

This is also the reason why in (12a) we use 2^" as the number of active rules. T h e
number of active rules is in fact greater t h a n 0 and equal or less than 2^"^. Assuming
some non-active rules to be active but not contributing to the output, (12a) is correct
when criteria 2-5 and 7 are met.

When (11) describes the control hyperplane: the controller o u t p u t as linear function
of the controller inputs and the numerical result of each individual fuzzy rules lies
on this hyperplcine, the controller output from (12a) can be described by:

(14a)
j=i

(14b)
J=l
189

(14c)

Because the fuzzy controller should behave like a linear controller:

u = a x[t) + b (15)

which equals (14a) when:

£(*) = Y. Ij^j (16a)


j=i

N^
( M I I ^ I I + IJ-12X12) Ylifikl + fJ-k2)
k=2

{HilXii + Hi2Xi2) Ylinkl + IJ'k2) n (^'^l + '^'•2) (16b)


fc=l *=i+l

JVi-1
[flN^lXN^l + fJ.N^2XN^2) J J (MW +/^fc2)
fc=l

Mil a^ii + Mi2a'i2 (16c)

t^N^l^Nzl + f^N^2XNz2

which is t r u e , because of (13) and thus it is proven t h a t t h e controller output is


a linear combination of the controller inputs in ca^e t h e criteria as stated in the
beginning of this section Eire met.

In case of Sugeno-type of rules there is a very simple proof: all rules should have
(11) as consequent and the fuzzy-mean defuzzification methods should be used. This
result in a controller o u t p u t , which equals (11):
Nr

(17a)
E7.
3=1
190

A',

= '^^^. (17b)

= a^x + 6 (17c)

As (17) shows, there are no restrictions on t h e membership functions or the T-norm


used in the rule of inference for t h e and connective. T h e only restriction is t h a t
there should at least be one active fuzzy rule.

5.2 Fuzzy PID-control

Although PID-controUers are known to be linear controllers, they are not in practical
implementations. First of all t h e control signal is limited. Secondly anti-windup
mechanisms axe used in practical set-ups.

T h e fuzzy equivalent of a PD-controUer is normally build u p by rules relating the


error and t h e error change to t h e controller output, for example (see figure 3 for
abbreviations):

if e is P M and Ae is NS then u is P B

In table 2 several families of fuzzy rules and their corresponding linear controller
type are given. Using derivatives of the error instead of previous values resembles
more closely the way humans use error signals to clcissify the deviation between the
process state and the reference signal. Applications of fuzzy controllers which use
the error and its derivatives as inputs emd satisfy conditions 1-4, 6 and 8 as stated
in the previous subsection (5.1), are in fact unnecessary approximations of linear
controllers. T h e only difference between such an application and the pure emula-
tion of the linear equivalent is t h a t the moas-min inference rule is applied. Due to
the use of these non-linear operators t h e control hypersurface will be a non-linear in-
terpolation between the numerical results of t h e individual fuzzy rules, defining the
characteristics of the control hypersurface. This non-linecir interpolation, however,
is a non-trivial and it is more trivial to perform the most objective interpolation be-
tween these chju-acteristic points on the control hypersurface: a linear interpolation.
Figure 12 shows the comparison of a linear fuzzy PD-controUer and a "full" fuzzy
version of this controller. As can be seen in figure 12b the use of linear operators
will lead to a linear control hypersurface (not taking in account the limiting of sig-
nals). Figure 12a shows the case where the non-linear operators were used. This will
191

T a b l e 2: Type of fuzzy rale and corresponding PID controller type.

fuzzy rule type P I D


if e is . . . then « is . . . X
if e is . . . then A« is . . , X
if e[fe] is . . . and Ae[fe] is . . . then n[k] is . . . X X
if e[k] is , . . and e[k— 1] is . . . then u[k] is . . . X X
if e\k\ is . . . and Ae[fel is , . . then i-ktt[fe] is . . . X X
if e\k] is . . . and e[k—l] is . . . then Ati[&] is . . . X X
if e[fe] is . . . and Ae[fc] is . . . and A'e[fc] is . . . then A«,[&] is . . . X X X
if e[ife] is .. .and e[A—1] is .. .and e[fc —2] is .. .then Ati.[ls] is , . . X X X

\ f

(a) (b)
Non-linear opermtors (miuimum and Linear operators (product and sum-
maximum,). m,atioii).

F i g u r e 12: Control surface of fuzzy PD-controllers.


192

result in "waved" version of the control hypersurf£ice defined by linear case. Figure
12 shows also another interesting detail of the control surface. Because t h e limit-
ing of the controller o u t p u t , to prevent wind-up, is explicitly embedded in the rule
base, there exist non-linear characteristics due to t h e transition from the "linear"
paxt of the rule base to the "limiting" part. These non-linear characteristics can be
recognized in figure 12 by the b u m p s marked by arrows.

Using fuzzy controllers looks quit sophisticated, to use a fuzzy controller t o mimic
an operator. However, applying fuzzy controllers in this way ignores the possible
strength of fuzzy controllers: being able to define a non-linear controller using a fairly
stretightforward and easy to use concept of design. One should note t h a t a fuzzy
P ID-controller is more understandable to non-control engineers than a conventional
PID-controller. This is probably also a reason of the popularity of fuzzy control:
you do not have to be a control engineer to understand how it works or how to build

However, a fuzzy controller is superior to a corresponding FID-controller and there-


fore can be used to obtain better control (for example in terms of speed) of a linear
process t h a n a PID-controller is capable of. Because of more degrees of freedom a
fuzzy controller caji be used to obtain at least the same performance t h a t would be
obtained with the equivalent linear controller. Fuzzy PID-controUers can be used
to implement non-linear PID-controllers. Using an "extension" of the Sugeno-type
of fuzzy rules it is, for example, very easy to implement a PID-controller where the
I-action is only activated when t h e "error is small":

r i : if e is big then u = kp\e


r2 : if e is small then w = u -f- ^^26 -|- /cp^Ae

T h e "extension" of the Sugeno-type of fuzzy rules is t h a t we allow the consequents


of the fuzzy rules to have additional signals besides the ones used in the condition
part of the fuzzy rules. In the example above the previous controller output is used
in the consequent of fuzzy rule 7*2. A set of rules, which meets the basic definition of
the Sugeno-rules, can easily be obtained by extending the condition part of the fuzzy
rules. This will result in more fuzzy rules, resulting in the same control hypersurface
as obtained by using ri and ^2.

5.3 Fuzzy control of non-linear processes

In the previous subsection it was stated t h a t with a fuzzy controller a more "optimal"
control can be obtained. This holds cdso in case of non-linear processes. Often fuzzy
193

controllers axe said to be superior to their corresponding linear controller to control


non-linear processes. For fuzzy PID-controUers this is only t r u e for a small set of
problems, nsimely when the non-linearity of t h e process can be written as a function
of the error and its derivatives, being the input signals of the controller. This is
normally not the case, because the error and error change are not solely determined
by the process, but also by the externally defined reference signal. For controlling
non-linear processes, fuzzy controllers axe superior to their lineeir corresponding
controller in case:

• the non-linearity of the process is a function of the process o u t p u t y;

• this function is symmetrical around y — 0;

• set-point changes A r are equal in magnitude;

• t h e set-point is changed when t h e process is more or less in steady state: e ft; 0


as well as its derivatives.

T h e fuzzy controller is not an "optimal" average for the whole input space like a
PID-controller is, b u t an interpolation between more local "optimal" averages. This,
however, has nothing t o do with t h e non-linearity of the process: a fuzzy controller
can control a non-linear process as least as good as its corresponding linear controller,
just because a fuzzy controller cem control a linear process as least as good as its
corresponding linear controller.

If it is desired to have a non-linear controller which is able to obtain better control


of non-linear processes, the controller should not be beised on the error and its
derivatives: one should use, for example, the reference signal or the process o u t p u t
(and their derivatives) as additioncd inputs of the controller.

In practise already non-linear control is applied for non-linear processes. These


kinds of non-linear controllers can be easily implemented using Sugeno-type of fuzzy
controllers. An example of this is the control of a bi-linear process using a fuzzy
controller with only two fuzzy rules of the Sugeno-type (using t h e "extension" as
explained in the previous subsection):

Tp : if Ay is positive then u — /p(e, Ae)


r „ : if Ay is negative then u = fnie, Ae)

where fp and / „ represent PI(D)-algorithms with different peirameters, appropriate


for t h e situation as stated in the condition part of t h e fuzzy rules. Using Mamdani-
type of rules one could obtain a similar control hypersurface, but it would require
194

more rules. W h e n we extend the example, as show above, to more "local" PI(D)-
controllers for specific situations a^s described in the condition p a r t of t h e fuzzy-
rules, one obtains the same effect as is obtained when using gain-scheduling. T h e
difference between the classic2d gain-scheduling and these type of fuzzy controllers is
t h a t the fuzzy aspect of the fuzzy controllers causes smooth transitions between the
control hyperplanes, each determined by a parameter set (and thus a fuzzy rule).

6 Conclusions and discussion

In the introduction it was stated t h a t the popularity of fuzzy control could be the
need for a control concept to build controllers t h a t cire able to deal with changes in
production rate, product mix and production procedures and recipes. Looking at
applications of fuzzy controllers nowadays, it seems t h a t very few applications for
solving these kind of problems have been reported in literature.

A major problem in the application of fuzzy control is the fact t h a t using fuzzy con-
trol to implement operator knowledge and experience will bring u p the knowledge-
engineering-bottleneck as major obstacle to the use of knowledge based systems
(Feigenbaum & McCorduck, 1983), and thus to the use of fuzzy expert systems.
It is indeed very difficult to model h u m a n knowledge, reasoning and experience in
a way t h a t can easily handled by computers.

On the other hand, control problems which need non-linear controllers can be solved
by using fuzzy controllers, but the main problem in this case is t h a t to design t h e
proper fuzzy controller (read: non-linear controller) requires a non-linear control
theory or a good description of the process to control. A good applicable non-linear
control theory has not yet been proposed and in case the last d e m a n d could be
fulfilled, there are also other ways to achieve similar results. In our opinion fuzzy
control is very useful for prototyping and designing non-linear controllers and offers
a great tool for the translation from high-level descriptions to low-level algorithms
and the other way around.

Fuzzy control can be used to provide a high-level design concept for the design
of non-linear controllers. T h e membership functions on universes of discourse in
combination with fuzzy rules can be "trcinslated" into a straight-forward non-linear
controller definition, which can be used for real-time control. This non-linear con-
troller definition exists of a simple look-up table, which contains the characteristic
points of the control hypersurface. Interpolation between these characteristic points
can be done using standard interpolation techniques.
195

Applications of fuzzy control in consumer electronics quite often axe implemented us-
ing look-up tables. Whether it was recognized or not, implementing fuzzy controllers
with look-up tables result in similar behaviour as implementing fuzzy controllers ac-
cording to theory. The main difference between the two is the interpolation between
the numerical results of the individual fuzzy rules. In case if look-up tables the in-
terpolation ccui be done explicitly using a lineaj interpolation (if there is a need for
interpolation with respect to the quantisation of the controller inputs and output).
Using fuzzy controllers according to the theory, this interpolation is done implicitly
by the logical operators in combination with the membership functions.

Currently work is done to specify the "translation" of high-level fuzzy controller


descriptions to simple non-lineaj controller representations. Implementation of this
"translator" in the form of a pre-compiler is under consideration.

Symbols and abbreviations

n intersection operator X inputs of controller


u union operator Xi

X,
i*'' input of fuzzy controller
A T-norm operator fuzzification of Xi
V T-conorm (S-norm) operator Xi fuzzy set for Xi in rule Vj
7j support value for rule TJ u numerical controller o u t p u t
Ae derivative of e Uj numerical o u t p u t due to rule TJ
e error signal {r — y) U-' numerical consequent of rule rj
Mfl, fuzzy set of Rj U fuzzy controller output
MR fuzzy set of fuzzy controller Uj fuzzy output due to rule rj
Aty fuzzy set of controller o u t p u t W fuzzy consequent of rule rj
l^u, fuzzy set of Uj y process output
f^Ui fuzzy set of U^
N, number of quantisations coa centre-of-area
K number of rules cog centre-of-gravity
Nu number of fuzzy sets for w ctrd centroid
N, number of inputs fm fuzzy-mean
r reference signal wfm weighted-fuzzy-mean
To j rule of fuzzy controller mom mean-of-maxima
R. fuzzy relation of rule Vj idfz indexed- defuzzification
R fuzzy relation of controller hgt height
196

References
AOKI, S., S. K A W A C H I A N D M . S U G E N O ( 1 9 9 0 ) . Application of fuzzy control logic
for dead-time processes in a glass melting furnace. Fuzzy Sets and Systems,
vol. 38, pp. 251-265.
ASSILIAN, S. (1974). AHificial intelligence techniques in the control of real dy-
namic systems. P h D - t h e s i s , Queen Mary College, University of London.
B A T U R , C . A N D V . K A S P A R I A N (1991). Predictive fuzzy expert controllers. Com-
puters in Industrial Engineering, vol. 20, no. 2.
B U C K L E Y , J . A N D W . S I L L E R (1987). Fuzzy operators for possibility interval
sets. Fuzzy Sets cind Systems, vol. 22, p p . 215-227.
D U B O I S , D . A N D H . P R A D E (1980). Fuzzy sets and systems: theory and applica-
tions, vol. 144 in Mathematics in science and engineering. Academic Press.
F E I G E N B A U M , E . A N D P . M C C O R D U C K (1983). The fifth generation: artificial
intelligence and Japan's computer challenge to the world. Addison-Wesley.
F L I N T H A M , T . J . M . (1991). Expert systems in control, why so few? Proceedings
l E E Control 91. Edinburgh, Scotland, U.K., March 1991.
H A R R I S , C . J . A N D C . G . M O O R E (1989). Intelligent identification and control for
autonomous guided vehicles using adaptive fuzzy-based algorithms. Engineering
Applications of Artificial Intelligence, vol. 2, p p . 267-285. December 1989.
H A S P E L , D . (1991). A new approach on the cement making process through
Linkman. Proceedings of 3^ International N C B Seminar on Cement and Build-
ing Materials. Dehli, India.
H E L L E N D O O R N , H . (1993). Design and development of fuzzy systems at Siemens
R&D. Proceedings of 2 I E E E International Conference on Fuzzy Systems
(FUZZ-IEEE 1993), p p . 1365-1370. San Fransisco ( C a ) , U.S.A., March 1993.
H E L L E N D O O R N , J . (1990). Reasoning with fuzzy logic. P h D dissertation. Delft
University of Technology. Delft, T h e Netherlcinds.
J A G E R , R . , H . B . V E R B R U G G E N A N D P . M . B R U I J N (1992). The role of defuzzi-
fication methods in the application of fuzzy control. Proceedings IFAC Sym-
posium on Intelligent Components and Instruments for Control Applications
1992, A. Ollero and E . F . Camacho (editors), p p . 111-116. Malaga, Spain, May
1992.
K L I R , G . J . A N D T . A . F O L G E R (1988). Uncertainty and information. Prentice
Hall.
L A R K I N , L . I . (1985). A fuzzy logic controller for aircraft flight control. Industrial
Applications of Fuzzy Control, M. Sugeno (editor), p p . 87-103.
This page intentionally blank
197

L E E , C . C . (1990a). Fuzzy logic in control systems: fuzzy logic controller - part


I. I E E E Transactions on Systems, Man and Cybernetics, vol. 20, no. 2, pp.
404^18.
L E E , C . C . (1990b). Fuzzy logic in control systems: fuzzy logic controller - part
II. I E E E Transactions on Systems, Man and Cybernetics, vol. 20, no. 2, pp.
419^35.
M A M D A N I , E . H . (1974). Applications of fuzzy algorithms for control of simple
dynamic plant. Proceedings l E E , , no. 121, p p . 1585-1588.
M A M D A N I , E . H . A N D S . A S S I L I A N (1975). An experiment in linguistic synthesis
with a fuzzy logic controller. International Journal of Man-Machine Studies,
vol. 7, p p . 1-13.
M A T S U O K A , H . (1991). A simple fuzzy simulation model for nuclear reactor sys-
tem dynamics. Nuclear Technology, vol. 94, pp. 228-241. May 1991.
O S T E R G A A R D , J . J . (1990). FUZZY II - The new generation of high level kiln
control. Zement-Kalk-Gips, no. 11.
P E D R Y C Z , W . (1989). Fuzzy control and fuzzy systems. Research Studies P r e s s / J .
Wiley & Sons.
SCHWEIZER, B . AND A. S K L A R (1963). Associative functions and abstract semi-
groups. Publicationes Mathematicae Debrecen, vol. 10, pp. 69-81.
SUGENO, M . AND K. MURAKAMI (1985). An experimental study on fuzzy parking
control using a model car. Industrial applications of fuzzy control, M. Sugeno
(editor), pp. 125-138. Elsevier Science Publishers B.V. (North-Holland).
SUGENO, M . AND M . NiSHIDA (1985). Fuzzy control of model car. Fuzzy Sets
and Systems, vol, 16, p p . 103-113.
T A K A G I , T . AND M . SUGENO (1983). Derivation of fuzzy control rules from hu-
man operator's control actions. Proceedings of IFAC Symposium on Fuzzy
Information, Knowledge Representation and Decision Analysis, p p . 55-60.
Marseilles, France, July 1983.
TURKSEN, I . E . (1986). Interval valued fuzzy sets based on normal forms. Fuzzy
Sets and Systems, vol. 20, pp. 191-210.
Y A G E R , R . R . A N D D . P . F I L E V (1993). SLIDE: A simple adaptive defuzification
method. I E E E Transactions on Fuzzy Systems, vol. 1, no. 1, pp. 69-78.
Y u , C , Z. C A O AND A. K A N D E L (1990). Application of fuzzy reasoning to the
control of an activated sludge plant. Fuzzy Sets and Systems, vol. 38, pp. 1-14.
CHAPTER 9

ANALYSIS, DESIGN, IMPLEMENTATION AND CRITICAL


APPRECIATION OF FUZZY LOGIC CONTROLLER

Kumar S. Ray

Electronics & Communication Science Unit


Indian Statistical Institute
203 B.T. Road
Calcutta -700 035, India

1. Introduction

Immediate after World War II people were very keen to develop sophisticated
tool for communication and control. Despite the landmark achievement of
the classical control theory through the launching of the first sputnik in 1957
and the subsequent developments of the clcissical control theory to modern
control theory which has been tested through a number of important high-
technology projects (viz the U.S. Apollo project), there are still serious problems
in the control of complex system. In manufacturing technology such as in
chemical processes or the steel industry, in power generations industry etc. the
conventional control algorithms are unable to manage the huge uncertainties
involved in the entire process and thus often require human interventions for
readjustments of the designed scheme.

Zadeh first realized that people can base decisions on imprecise, nonnumerical
information. In 1965, he was implicitly advancing a thesis which indicates that
199
S.G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 199-275.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
200

under uncertain complex situations people are better at control than Machine.
In this connection Zadeh's significant achievements are the seminal papers on
the linguistic approach and system analysis based on the theory of fuzzy sets
[17, 18, 19, 20, 21, 22).

Being motivated by the above said contributions of zadeh, in mid 70's Mamdani
and his colleagues first demonstrated the successful applications of the fuzzy
logic controller (FLC). About the same time the first significant industrial
application of the FLC came up in Denmark at F.L. Smidth corp's cement
kiln.

During the past several years, fuzzy control has emerged as one of the most
potential areas for research in the application of fuzzy set theory. The con-
cepts of FLC is now an important adjunct to conventional control theory. The
tremendous applications of FLC indicate its effective utilization in the context
of complex ill-defined systems that can be controlled by a skilled human oper-
ator without the quantitative knowledge (in terms of deterministic algebra and
differential equations) of their dynamics.

The essential component of FLC is a set of linguistic control rules which are
generated by an experienced operator and which can be related by the dual
concepts of fuzzy implication and the compositional rule of inference.

Experience shows that the FLC sometimes yields results superior to those ob-
tained by conventional control algorithms. In fact the methodology of FLC
appears very useful because it can easily combine heterogeneous control laws
over a wide range of operating conditions within which almost every real sys-
201

tern becomes nonlinear in n a t u r e . Further FLCs are easier to design and so

cheaper t o p r o d u c e . T h e design of PLC is now a t e x t b o o k example of how a

theory becomes a practice.

2. M e t h o d of approximate Reasoning

Since the first formal description of fuzzy reasoning by Zadeh in [22j many

researchers have discussed different forms of fuzzy reasoning. Mizumoto pre-

sented a possible extension of fuzzy reasoning in [23].

In ordinary fuzzy reasoning as suggested by Zadeh in [22], we make inferences

of t h e form

P: if X is A then Y \s B

q: X is A'

(Concl.)r <— Y \sB'

Where the variables X,Y take values in universes of discourse U,V respectively

and A,A',B,B' are (possibly inexact) description of the linguistic variables X

a n d Y, which are approximated by fuzzy sets over U,U,V,V respectively.

In extended fuzzy reasoning as suggested by Mizumoto [23], we make inferences

of t h e form
202
P:if Xi is Ai and X2 is A2 and ... X„ is A„ then Y is B
q:Xi is i4j and Xj is ^'2 and ...X„ is A'^

(concl.) r <— y is B'

Where XJ5 are variables taking values in universes of discourse U,; i = l ,2, .... n
and Y is a variable taking values in Y.A; and A'^ are fuzzy subsets of {/, : i = 1,
2, ...., n. B and B' are fuzzy subsets of V. The above fuzzy implication inference
rules are known as generalized modus ponens (GMP). The propositions above
the line are the premises; and the proposition below the line is the conclusion.
The criteria of inferences proposed by Zadeh [22] are summarized in Table 1.
We note that if a causal relation between " x is A" and "y is B" is not strong in
a fuzzy implication, the satisfaction of criterion 2-2 and criterion 3-2 is allowed.
Criterion 4-2 is interpreted as: if x is A then y is B, else y is not B. Although
this relation is not valid in formal logic, we often make such an interpretation
in everyday reasoning.

2.1 Fuzzy Implication Functions:

Following Zadeh's [20] introduction of the compositional rule of inference in


approximate reasoning, a number of researchers have proposed various impli-
cation functions in which the antecedents and consequents contain fuzzy vari-
ables. After a short review of triangular norms and triangular co-norms, [60]
we shall state some fuzzy implication functions, which are often employed in a
FLC and are commonly found in the literature.
203
Definition 1: The triangular norm * is a two-place function from [0, l] x |0, Ij
to [0,1] which includes intersection, algebraic bounded product and drastic
product. The greatest triangular norm is the intersection and the least one
is the drastic product. The operations associated with triangular norms are
defined for all x,y € [0,1]:

intersection X t\y — min(a;,y)


algebraic product x.y = xy
bounded product X 0 y = max(0, x + y — 1)
X y= 1
drastic product xny y X= 1
0 x,y < 1.

Definition 2: The triangular co-norms + is a two- place function from (0, l] x


(0, l](o[0,1] which includes union, algebraic sum, bounded sum drastic sum and
disjoint sum. The operations associated with triangular co-norms are defined
for all X, y 6 (0,1]

union x V y = max(x, y)
algebraic sum x^y = x + y — xy
bounded sum x ® y = min(l,x + y)
X y= 0
drastic sum xl±iy=:< y x = Q

1 x,y>0
disjoint sum xAy = max{77M'n(i, 1 — y),min(l — x,y)}

The triangular norms are employed for defining conjunctions in approximate


reasoning, while the triangular co-norms serve the same role for disjunctions. A
204

fuzzy control rule, "if x is A then v is B" is represented by a fuzzy implication

function and is denoted by A —*• B , where A and B are fuzzy sets in universes

U a n d V with membership functions / i ^ and fis respectively.

Based on the above definitions many fuzzy implicatioii functions may be gen-

erated by employing the triangular norms and co-norms. For example M a m -

dani's min-fuzzy implication, Re is obtained if the intersection o p e r a t o r is used,

Larsen's p r o d u c t fuzzy implication Rp is obtained if the algebraic p r o d u c t is

used. F u r t h e r m o r e , fi^^ and R^^ are obtained if the b o u n d e d p r o d u c t and

the drastic product are used respectively. T h e following fuzzy implications are

often a d o p t e d in the design of a FLC [l] [23] [60] [81].

(i) Arithmetic rule of fuzzy implication |Zadeh]:

MR, = [notA X v) ® (U X B) = Jy^^ 1 A (1 - MA(W) + fJ-B{u))/(u,v)

(ii) M a x i m u m rule of fuzzy implication [Zadehj:

Mfl„ = [notAx B ) U ( ^ X V) = / U X V I M A I " ) AMfl(t;)) V (1 - ^ ^ ( u ) ) / ( u , v)

(iii) Min-operation rule of fuzzy implication [Mamdani]:

tj.j{^. - A X B ^ J(j^v t^A(u) A ^IB(V)/{U,V).

(iv) P r o d u c t operation rule of fuzzy implication [Larsen]:

HR^ = A X B ^ Ji,^yfj.A{u)fJ.B{v)/{u,v).

(v) S t a n d a r d sequence fuzzy implication:

tiR, =AxV-^UxB^ Juxvit^A(u) > tiB{v))/iu,v)

where
205

0 HA(U) > HB{V)

(vi) Goguen's fuzzy implication:

fiR^=AxV-^UxB = Ju^y{fj.A{u) » fiB{v))/(u,v)

Where

fJ,A(u} » fJ.B(V) = <

(vii) Boolean fuzzy implication:

tj.R^ = (notAx V)U{U X B) =/y^v,(l - ^ A ( « ) ) V {MB(v))/(u,t;)

By employing the intuitive criteria of Table 1 we list in Table II how well a


fuzzy implication function satisfies them.

Although nn^, and fiRp do not have a well-defined logical structure the results
tabulated in Table II indicate that they are well suited for approximate reeison-
ing especially for the generalized modus ponens. fiR^ has a logical structure
which is similar to iiR^-tiR^ is based on the implication rule in Lukasiewicz's
logic. However, HR^ and ILR^ are not well suited for approximate reasoning
since the inferred consequences do not always fit our intuition. Furthermore,
for multiple-valued logical systems JIR^ and /x^^ have significant shortcomings.
Over-all ^IR^ yields reasonable results and thus constitutes an appropriate choice
for use in approximate reasoning.
206

2.2 Method of Redefinition [24]

If the membership functions of fuzzy sets A and B satisfy the following condi-
tions:

{(IA{U) \ueU}^ {fJ.B[u) \ueV},


3« e u,fi4u) = o,3u' e u,^4u') = i,
^v e V,I^B{V) = 0,3t;' e V,tiB{v'} = 1,

then the combination of the max-min compositional rule of inference and the
fuzzy relation /x/j, satisfies the following criteria which are the subset of the
criteria given in Table I. For the rule if X is A then Y is B:

(i) Known X is A, Y should be concluded as B.

(ii) Known X is very A, Y should be concluded as very B.

(iii) Known X is more or less A, Y should be concluded as more or less B.

(iv) Known X is not A, Y should be concluded as unknown.

3. Steps involved in t h e design of FLC

The aim of this section is to introduce the basic ideas underlying the design
of FLC. In Figure-1 we have shown a the basic configuration of a closed-loop
system associated with a fuzzy logic controller.
207

Non(uizy error Nonfuzzy output


Input to FLC of F L C
4-
<^
JL FLC A System

r i g . 1 : Closed-loop ' u z z y logic controller

In Figure-2 we have shown the fundamental components which construct the


FLC.

Now, in the following we will describe the methods through which we can
realise the individual components of FLC and the functional involvements of
the components of FLC.

3.1 Fuzzification of the error input

In most of the fuzzy control applications, the error inputs to FLC are nonfuzzy
in nature. But the data manipulation in a FLC is based on fuzzy set theory.
Hence, fuzzification of the error input to FLC is necessary. In the following we
208

r " -^
J Knowledge
^^. Base
^^
1

NonKJizy
input
, L
Fuzzy Inftrence
1
Nonhjzty
o j t p j f of F
; Fu22)fiC0»'0n of using fhe method Defuzzifico* on
the prror tnpu! of opproximote of Ihe t u n y
reosomng inference
1

f
1
Fu2 2y ioqic controMtr ( F L O .

F i g ? : Esttnliol compontnis of FLC.

briefly describe some existing tools for fuzzification.

(i) An error input, Co, is assumed to be a fuzzy set A with the membership
function /XA(*O) equal to zero except at the point e„ at which ^^(^0) equals
to one [60]

(ii) We may assign each error input to a fit vector of length L where the ith
fit or fuzzy unit [25] equals the value of the ith fuzzy set at the input
value. For instance, let us consider the Fig-3 which provides the library
of overlapping fuzzy set values defined on a universe of discourse.

let the error inputs be —6,2,3.9. Then from the library of fuzzy set we
obtain the fit vectors of length 5 as follows:
209

u.

1
/

0 /
10

Figa.Librar/ of o v e r l o p p i n ^ fuzzy sets-

-6 ^ (0,1,0,0,0)
2 => (0,0,0, .7, .7)
3.9 => (0,0,0,.1,1)
(iii) First the observed data are disturbed by random noise. Then the prob-
abilistic data are converted into fuzzy numbers, i.e. fuzzy (possibilistic)
data. In [26] [27] an isosceles triangle is chosen to be the fuzzification
function. The vertex of this triangle corresponds to the mean value of a
data set while the base is twice the standard deviation of the data set. In
[28] Dubois and Prade define a bijective transformation which transforms
a probability measure into a possibility measure using the concept of the
degree of necessity.

(iv) Sometimes observed data are precise as well as imprecise in some statisti-
cal sense. Such cases can be handled by hybrid number [27] which involve
210

both uncertainty (fuzzy numbers) and randomness (random numbers).

3.2 Knovs^ledge B a s e

The knowledge base of a FLC has two components; namely a data base and a
fuzzy rule base. We shall consider some issues relating to the data base and
rule base in the following subsections.

3.2.1 D a t a base

In the following we discuss some of the important aspects relating to the con-
struction of the data base in a FLC.

(i) Discretization of a universe of discourse:


Discretization is often referred to as quantization which discretizes a uni-
verse into a certain number of segments (Quantization levels). Each seg-
ment is labeled as a generic element, and forms a discrete universe. A
fuzzy set is then defined by assigning grade of membership values to each
generic element of the new discrete universe. An examples of discretiza-
tion is shown in Table -III.

The choice of quantization levels has an essential influence on how fine a


control can be obtained. For example, if a universe is quantized for every
five units of measurement instead of ten units, then the controller is twice
as sensitive to the observed variables (60)
211

(ii) Normalization of a universe of discourse :


The normalization of a universe requires a discretization of the universe
of discourse into a finite number of segments. Each segment is mapped
into a suitable segment of the normalized universe. Table - IV represents
an example of normalization. In this setting a fuzzy set is defined by
assigning an explicit function to its membership function.

(iii) Membership function of a primary fuzzy set:


Basically there are tw^o approaches to define fuzzy set. In case the universe
of discourse is discrete we follow numerical definition whereas we follow
functional definition if the universe of discourse is continuous.

(a) Numerical definition:

In this case the grade of membership function of a fuzzy set is rep-


resented as a vector of members whose dimension depends on the
degree of discretization. As shown in Table - III, the membership
function of each primary fuzzy set has the form of

where a = [0.4,0.6,1.0,0.8,0.4].

(b) Functional definition—

In this case the membership function of a fuzzy set is represented


by a functional form, namely bell-shaped function, triangle shaped
function, trapezoid shaped function etc. Table - IV re presents an
example of a functional definition expressed as,
;.K)=exp{^^^i=^}
212

For any practical purpose we may either use numerical definitions


or functional definition to assign the grades of membership to the
primary fuzzy sets. The choice of grades of membership is based on
the subjective criteria of the decision. As mentioned earlier, if the
measurable data are disturbed by noise, the membership functions
should be sufficiently wide to reduce the sensitivity to noise. This,
raises the issue of specificity of a membership function which affects
the robustness of a FLC. This issue is discussed in detail in [29].

(iv) Fuzzy partition of Input -Output space [14]:

Fuzzy partition basically determines the number of primary fuzzy sets.


The primary fuzzy sets (linguistic terms) usually have a meaning , such
as NB (negative big), NS (negative small), PM (positive medium) etc. A
typical example is shown in Fig-4 (a,b) . The number of primary fuzzy
sets determines the granularity of the control action obtained by FLC .
Generally, a heuristic cut and trial method is necessary to find out the
optimal fuzzy partitions.

3.2.2 Rule base

The most important feature of the FLC is to generate the fuzzy control rules
in an appropriate manner. There are, in general, four modes of generation of
fuzzy control rules as reported in [30]. Apart from mode of rule generation,
the choice of input (state) variables and output (control) variables, types of
fuzzy control rules and justification behind the control rules are are the salient
features of the rule base of a FLC.
213

*- trror input

10)

* - d«fuz7ifi*()
lb) outpirt of
FLC

Fij 4 : Portioning of tht input-output spoc* .

i) Generation of fuzzy control rules:

(a) Experience and Knowledge of an expert.

The fuzzy control rules can be generated in two approaches l) introspec-


tive verbalization of human expertise (see Table V) 2) interrogation of
experienced experts or operators using an organized questionnaire.

The fuzzy control rules provide a convenient way to express the domain
specific knowledge through fuzzy if then rules.

(b) The decision of an operator:

The dimension and the dynamics of the real system are so huge and com-
plex that most of the time it becomes almost impossible to generate the
model (in terms of the state space equation or Transfer function). Thus
214

the conventional text book approach to design a model-based controller

fails. But u n d e r such circumstances the skilled h u m a n o p e r a t o r s can

still control such systems successfully without hearing any quantitative

models (in t e r m s of quantitative differential equations). In fact, a hu-

m a n operator generates consciously or subconsciously - a set of fuzzy if

then rules to control the system whose qualitative description (in t e r m s

of qualitative physics [31]) are built in the mind of the o p e r a t o r .

Hence, as pointed out by Sugeno, to a u t o m a t e such processes, it is nat-

ural t o express the operator's rules as fuzzy if-then rules using linguistic

variables.

(c) Qualitative modelling of a system:

T h e design of a FLC based on the above m e t h o d s works well if an e x p e r t /

o p e r a t o r plays an important role in controlling the process. But if we want

a design independent of of an e x p e r t / o p e r a t o r and if we want to have a

design based on the deep analysis of the system dynamics then we have

to look for a model of the system.

T h e linguistic description of the dynamic characteristics of a controlled

system may be viewed as a qualitative fuzzy model of the process. Based

on this model we can generate a set of fuzzy control rules for a t t a i n i n g

optimal performance of a dynamic system. T h e set of control rules form

the rule bcise of a F L C .

Although this approach is more rigorous b u t provides a more t r a c t a b l e

s t r u c t u r e to deal, theoretically, with the F L C .

(d) Self organization:

T h e scheme of self-organizing control (SOC) has a hierarchical s t r u c t u r e

which consists of two rule bases. T h e first one is the general rule base of
215

a F L C . T h e second one is constructed by "meta-rules" which can modify

the general rule bcised depending upon the desired overall performance

of t h e system. So far, many significant contributions have been m a d e in

this direction [32](33l[34l[35[36l[37][38l.

ii) Choice of variables of FLC:

The choice of linguistic variables and their membership function play a signif-
icant role in the linguistic structures of a FLC. The linguistic variables in a
FLC are the state, state error, state error derivative, state error integral etc.

iii) Types of Fuzzy control rules:

Generally, there are two types of fuzzy control rules, a) state evaluation type
b) object evaluation type.

(a) State evaluation type:

Most FLC's have state evaluation type fuzzy control rules which can be
described as follows;

Ri : ifxisAi andyisBithenZisCi

Ri : ifxisAi andyisB2thenZisC2

Rn '• ifxisAn....andyisBnthenZisCn

where x, y and z are linguistic variables representing the system's state


variables and the control variables, A,, Bi and C, are the linguistic values
216

of the linguistic variables a:,..., y, and z in the universe of discourse U, ...V


and W respectively, i = 1, ...n.

In a more general form, the consequent can be represented as a function


of the system's state variables;

Ri : ifxisAi...andyisBithenZ = fi{x,..y)

The state evaluation type fuzzy control rules evaluate the process state
(e.g. state, state error, state derivative, state integral) at time instant
t and compute a fuzzy control action at time instant < as a function of
(x, ..J/) and the control rules in the rule set.

(b) Object evaluation type:

The object evaluation type control rules satisfy the states and objectives.
A typical example of such a control rule is as follows;

Ri : if(uisCi -^ (xisAiandyisBi))then uis C^

A control command u takes a crisp set a^ a value and x, y are perfor-


mance indices for the evaluation of the i — th rule, taking values such
zs "good" or "bad". The most likely control action is selected through
predicting the results (x,y) corresponding to every control command C;.

The above rule can be interpreted as follows;

if the performance index x is Ai and index y is 5 , when a control command


u is selected to C, then this rule is selected and the control command C,
is taken to be the output of the controller [39][40](4l) [42].

iv) Justification of fuzzy control rules:

There are two main ways to justify the generation of control rules ;
217

(a) A heuristic approach when control rules are generated in such a way that
the deviation from a desired state can be corrected and the control objec-
tive can be achieved. The generation of rules is purely on the quantitative
knowledge of the system behavior. Several approaches for adjustment of
rule selection have been reported in [43] [44] [45].

(b) A deterministic approach which systematically determine the linguistic


structure of the fuzzy control rules that satisfy the control objectives and
constraints [46] [47] [48].

3.2.3 Decision making logic

The decision making logic is mainly responsible for fuzzy inference using the
method of approximate reasoning as mentioned in Section 2.0. It has the
following components.

(i) translation of a law of implication to an appropriate fuzzy relational ma-


trix HJI as mentioned in Section 2.1

(ii) application (optional) of the method of redefinition as mentioned in Sec-


tion 2.2.

(iii) change of the insignificant part of a membership function from the exact
number zero to a very small positive value. This idea is discussed in [49].

(iv) interpretation of the sentence connective "and", "also", etc.[60].

(v) selection of an appropriate compositional operator, namely ;

(a) sup-min operation [20]

(b) sup-product operation [50]


218

(c) s u p - b o u n d e d - p r o d u c t operation [51]

(d) sup-dreistic-product operation [51]

In F L C applications, the sup-min and sup-product compositional opera-

tors are the most frequently used.

(vi) Inference algorithm which is illustrated in the following using s t a t e eval-

uation t y p e control laws.

Illustration:

Rule 1 : AiandBi => Ci also

Rule 2 •.A2andB2 => C^ also

Rule n : A„andBn ^ C„

Fact : A' a n d B'

Consequence : C = C[UC'^U ... U C'^ (1)

where C, = {A'andB')o{AiandBi => Q)V,

Ai, A' are fuzzy sets in U

Bi,B' are fuzzy sets in V

Ci, C are fuzzy sets in W

3.3 Methods of defuzzification [11]:

T h e m e t h o d of obtaining a singleton w^ which is a representative point

for the resulting fuzzy set C of (l) is called a defuzzifier m e t h o d . In the

following we shall list several defuzzifier m e t h o d s .

(i) Center of Gravity M e t h o d :

This m e t h o d is widely used in the fuzzy controls. T h e center of


219

gravity of C is adopted as the desired singleton Woi t h a t is,

(ii) Average of M a x i m a Metho:

T h e representative point Wo is obtained as an average of the elements

which give the mciximal grade in C, t h a t is,

^0 — m

(iii) Midpoint of M a x i m a M e t h o d :

This m e t h o d is a simplified version of Average of M a x i m a M e t h o d .

Instead of taking all elements Wj which give the maximal grade, the

smallest element w' and the largest element w" among t h e m are

picked up a n d the midpoint of w' and w" is given eis the representa-

tive point Wo, t h a t is.

T h e above defuzzifier m e t h o d s of obtaining a representative point

Wo are all derived from the calculation of the fuzzy set C which was

aggregated from C i , . . . , C ^ as in ( l ) .

(iv) Height M e t h o d :

This m e t h o d obtains w^ as an weighted average of t h e representative

points Wi of C, by the heights hi of C\. Namely,


_ ml-M+m2h2+....+wnhn
"'o hl+fc2 + ....+An

(v) Maximal Height M e t h o d :

A representative of point wj of Cj which corresponds to the maximal

height hj among hi[i ~ l , . . . , n ) is a d o p t e d as Wo

Wd = wj (hj is the maximal height)

(vi) Area M e t h o d :

Wo is obtained as the weighted average of the representative points

wi by the areas Si of Ci'.


220

_ ml-51+iD2-52+...+wnSn
^° Sl+S2+...+Sn

(vii) Maximal Area Method:


A representative point Wj of Cj which corresponds to the maximal
area Sj among Si[i — 1, ...,n) is selected as Wo, that is
Wo = Wj {Sj is the maximal area).

4. Some useful properties of FLC [23] [60].

In this section we discuss some useful properties of the FLC inference


mechanism under sup-min operator denoted by 0 and sup-product oper-
ator denoted by •. The connective "also" is treated as union operator.

Proposition 1

Proof:

n n
C = {A',B') o\jRi = {A',B') o [J{AiandB, -^ C,).
1=1 1=1
The membership function ^lc' of the fuzzy set C is point wise defined for
a.\\weW by
221

l^c'{W) = (/^^'(«),MB'(f)) ° max(/i/j,(u, tj,u;),/jyij(u, u, ui),....,/i/j„(u, ti.uj))

= snpmin{{nA'(u), l^B'iv)), m!ix(fiR,lu,v,w), HK^(U,V,W) HR {u,v,w))}


u.v u.u.w
= supmax{min[(M^.(u),/iij'(f)),;i/j,(u, u, u^)|,..-,min|(/i^/(u),AJB'(i;))),/ijj„(u, u, tu))}
„,„ u.v,w
= m a x { [ ( / i ^ . ( « ) , /^B' i^)) ° M R , ( " , " , "')],••••, ((/^A'(«), /^B' («)) ° M J ? „ ( " , «. " j ) | } -

Therefore

C = \{A',B')OR^]U\{A',B')OR^]LI...\J[(A',B')OR„]

= \J(A',B')oR,
t= l
n
= U (^', B') o (AtandBi -^ C.)

1=1

Preposition 2

{A\B')*\}URi^\^U{A',B')*IU.

Proposition S

For the fuzzy translation Rc,Rp,Ri,p, and R^^, we have

(.4', B') o [Ai and Bi -* C.)


= \A' o (^, - . Ci)\ n [ 5 ' o ( 5 , - C,)l
if MA.XB, = /^/l, A/iB,

= [A' o (^, -> C,)l • \B' o ( 5 . -» C.)l

i f / ^ A . x B , = /^>l, • A«fl,
222

Proof:

Mc; = ( M A S M B ' ) ° (MA.XB, - • Mc.)

= ( M A ' , M B ' ) ° (min(MA,,MB.) - ^ Mc,)

= (M/1',MB') ° min[(/X4. -> fJ,C;)Af^Bi -* Mc,)l

= supmin{[(/XA',Mfl')>min[(MA. -* M C , ) , ( M B . -* Mc,)]}

= supinin{ininl/i^', (MA, " • Mc,))>min|MB', ( ^ s . -^ Mc.))}


U,tJ

= inin{[^A' o ifJ'Ai -» Mc,)], [MB' ° (MB, -• fJ'C,)]}-

Hence we obtain

C' = \A' o (/I. ^ C,)I n [B' o {B, - C,)]. Q.E.D.

Proposition 4

For t h e fuzzy translation Rc,Rp,Rhp, and ii^p, we have

(A',B')*(A,andBi -^ C,) = \A' *[A, - C.)| n | B ' . (B, ^ C,)|t//i^,xB, = MA, A ^ B ,

{^'.BOM-^.andB. ^ C.) = 1 ^ ' • (^. --C.)] . jB' ( f l ; - . C,))i7/i^,^B, = / i ^ , /XB,


223

5. Design aspects of FLC [60] [62]

In the previous sections we have described the basic components and


properties of FLC. Now we focus our attention on two fundamental as-
pects of FLC design; namely static analysis and dynamic analysis.

5.1 Static analysis of FLC

In this section we consider the completeness of FLC, number of fuzzy


control rules, their interactions and consistency.

5.1.1 C o m p l e t e n e s s of FLC

By completeness, we mean that a FLC should always be able to infer an


appropriate control action for any input fuzzy state.

If we consider the baisic equation of a FLC with sup-min composition,


then an empty fuzzy set of control corresponding to a specified nonempty
fuzzy set of input cannot be accepted. That means, a given set of control
rules,

if X is A{ then j / is fij, i = 1, ...,n.

is complete in this condition ;

V 3R, I Ai(u) > e

u eU 1 <i < n

^ (Vu)u (3/i:,)(/XA,(w) >G)

1 < i' < n


224
where G (0, l]

In other words, the union of fuzzy relations, At be greater than zero for
all u e U;

(Vu)u(sup^/XA,(w)) >G (2)

the above relation holds because we deal with fuzzy labels which usually
overlap. The inequality condition (2) will be violated if, at the time
of construction of FLC, we miss some label or forget to describe the
relevant "if-then" control rule. Under such circumstances an additional
rule should be added to satisfy the inequality condition.

Thus from the above discussion it is obvious that the completeness of a


FLC relates to its database, rule base or both.

5.1.2 N u m b e r of fuzzy control rules

So far, there is no specific procedure to determine the optimal number


of fuzzy control rules. Many important factors namely; performance of
the FLC, computational efficiency, human behaviour, choice of linguistic
variables, etc. are involved in this decision process.

5.1.3 Interaction of Fuzzy control rules

If we have a set of control rules,

Ri : ifxisAithanyisBi,i = l,...,n

and if the input is A, then we would expect that the control action is B,.
But, in fact the derived control action may be a sub set or super set of the
225

original control depending upon the definition of fuzzy implication and


the rule of composition[52]. This phenomenon occurs as a consequence
of interaction between the rules.

Now we stipulate the following results;

Proposition 5 If the fuzzy relational matrix R of the FLC is computed as


a union of the cartesian products of A, and B, and if the fuzzy relations
Ai are normal for V,, the resulting fuzzy set of control satisfies ;

Vi < i <„_Bi C Ai oR

Proof: Assuming sup-min composition ;

(AioR){v) = sup{min[y4i(u), max [min(ylj(u), Bj(ii)]]}


u€U l<J<n
> sup{min[ylj(u),^,(u),i?,(u)]}
ueu
> sup min[yli(u), Bi(t;)|
ueu

which, by virtue of normality of Af, yields

{AioR)(v)^ Bi{v),\/(v)ev Q.E.D.

The following result specifies the conditions for noninteractions between


the control rules.

Proposition 6 If for the fuzzy relations Ai, V^ are pairwise disjoint, i.e.,

Ai n Aj = <f>,fori ~ j,i,j = l,...,n which means, min( Ai{u), A j{u)) = 0


and if they are normal, then Vj < j < „ Ai oR = Bi.

Proof: Let supp {Aj) be a support of the fuzzy relation Aj and assume
the sujvmin composition of Aj and the relational matrix R.
226

{AjoR){v) = sup{min[A.j{u), R(u,v\}

= inax{ sup {min(A,(u),iJ(u, u)|}, sup {min|j4j(u),it(u, u)]}}


u 6 supp{Ai) ug tikpp{Aj)
= sup {min{Ay{u), max[min[j4j(u), Bj(u)l|}}
« € fiuppiA, )

5.1.4 C o n s i s t e n c y of f u z z y c o n t r o l r u l e s

If the derivation of fuzzy control rules is based upon the experience of

an o p e r a t o r , the rules may be subjected to different performance criteria.

In practice, we check the consistency of fuzzy control rules in order to

minimize the possibility of contradiction [57],[58).

We conclude this section by drawing the nonlinear relay characteristics

of FLC [4][14] [17]. If we assume t h a t the fuzzy controller is specified by

R = U"_i(Ai X Bi] a n d by sup-min composition, t h e n we can formulate

the following sufficient conditions for multilevel relay;

if (i) Bi are normal fuzzy set symmetric around their m a x i m a

(ii) a m a x - m e t h o d is selected to defuzzify t h e control action,

then t h e characteristics y = f(x) ( i - i n p u t of the controller and u— is the

o u t p u t of the controller) have a multilevel relay character.

T h e relay characteristics of the F L C are analysed in [4][l4][l7] in relation

to the closed loop stability of the system.


227

5.2 Dynamic analysis of FLC

Generally FLC can be successfully applied to ill-defined process. But,


when FLC is based on the decision of the operator then it reaches the
set point quickly without having significant overshoot. But it oscillates
around the set point. Thus steady state precision is not as good as with
conventional PID controllers where integral action eliminates the steady
state error.

The above phenomenon suggests to combine the FLC and the PID con-
troller. For distant control, the fuzzy controller is preferable while for
close by control (where the system is close to the setpoint) the PID con-
troller is preferable. Such ideas are discussed in [59][l6][l3] and some
encouraging simulation results are provided. But we need to determine
the appropriate switch criterion for such combined control or we can use
them sinaultaneously.

In case of multivariable system (linear or nonlinear) use of FLC alone may


produce poor system response due to high interaction between inputs and
outputs. Under such circumstances simultaneous use of FLC and conven-
tional algorithm for decoupling the multivariable system is recommended
in[l6][13].

6. Implementations of FLC

The FLC has emerged as one of the most useful areas of research in the
application of fuzzy set theory. In many complex situations use of FLC-
based systems have proved to be superior in performance to conventional
systems.
228

Remarkable applications of FLC include the heat exchanger [62], warm


water process [3], activated sludge process [64] [65] traffic junction [66]
cement kiln [67] [68] aircraft flight control [29] turning process [72], robot
control [70] [33] model-car parking and turning [72], automobile speed
control [73], water purification process [74], elevator control [75], automo-
bile transmission control [76] power systems and nuclear reactor control
[77][13][16], fuzzy memory devices [78] and the fuzzy memory devices [78]
[79], Recently, predictive fuzzy control systems have been proposed and
successfully applied to automatic train operation systems and automatic
container crane operation systems [80].

Now, in the following we demonstrate a successful application of FLC


to 210 MW steam generating unit. The detail descriptions of the steam
generating unit, schematic representation of the closed-loop control are
given in the appendix. We test the asymptotic responses of the closed-
loop plant under different operating conditions. To perform the tests we
first state the control rules of the closed-loop plant as shown in Fig.A3
in Table VI and VIII. The corresponding distribution of the membership
functions are given in Tables X, XI, XII, XIII.

6,1 Response to perturbation in state

We achieve the perturbed condition by reducing the load demand. Fig.5


shows the response of the closed-loop system to the perturbation in the
initial states. The set-points in throttle pressure, drum water level and
steam flow to H.P. turbine are 154.15(A:g./cm.^),64(cm) and 188.8(A;5f./5ec)
respectively. Fig.5 shows that the closed-loop system returns rapidly to
the desired state (i.e. the set-point), from the perturbed conditions of
229

throttle pressure = 185(kg./crri^), drum water level = 60(cm). It is seen


from the figure mentioned above that well damped responses in throttle
pressure, drum water level and steam flow to H.P. turbine are obtained.

[kg/cm']
1850
103 U ,

t t I [sec]
50
2.5 35

Throtlle pressure

[kg/tec]
188.8 I /f\ji'^^''-mm I I

ISO'-I-S 3 50
Sleom flow to HP turbine

[cm]

60
K Drum level
tisec)
50

Fig 5 • Response to perfurbotion in m*


iTMtiol slate (lorge perturbohon ).
230
C o n t r o l u n d e r change of set-points:

In this cEise, the set-points of the plant are chosen as follows :

Throttle pressure = 140.0 (Kg/cm*)


Drum water level = 60 (cm)
Steam flow to H.P. turbine = 160.0 (kg./sec)
under perturbed condition, which is obtained by reducing the load de-
mand and increasing the feed water flow, we obtain well damped responses
as shown in fig.6. The steady state responses of the systems are almost
equal to zero.

T' ^"K
SOlsec]

ThroHl* prrssurv

[kg/s»c]
160 • T» IT • - J ^ ^ ^ S ^

'V2,b SO (see 1
1*0
SUam flow lo H P turbm*

[cm]
68

60 ^—^- '-«>r»r»
t so [s*c]
15
Orum (9V«t

Fig.6 Response under chonge of set points.


231

P a r a m e t e r sensitivity:

We assume that the systems parameters always vary due to uncertainty


in coal specification, variation in spray water flow, boiler blow down etc.
Hence variation of ±10(%) in different parameters is introduced. Under
such conditions, the responses of the closed-loop systems are tested with
perturbation in initial states of throttle pressure, steam flow to H.P. tur-
bine and drum water level. Well damped responses are obtained as shown
in fig.7.

0.5[s«?c]
15A.)5
I •<r<-,„ ^ 1 ^ .

US
JJ Throttle pressure
bO [sec]

[ kg/sec]
198

188.8 fV. t 50 [sec]


1
Steam flow to H.P. turbine

[cm]
1
6(.
50 [sec]
60
Drum level

Fig 7 : Parameter sensitivity test


232
Once we achieve satisfactory plant responses under different operating
conditions we modify the steam pressure/combustion control loop and
the drum water control loop of the actual plant (see appendix ) as follows

S t e a m pressure/combustion control circuit:

Normally, in real industrial practice, the combustion control system of


a steam generating unit (drum type) regulates the throttle steam pres-
sure and C0/02 of the flue gas by manipulating the fuel unit (pulverized
coal/coal and oil/coal and gas) and the airflow input to the steam gener-
ating unit. In the present problem, we block-decoupled [13] the variables
like throttle pressure and flow from the drum water level which disturbs
the drum pressure and throttle steam pressure in a nonlinear manner.
Once the plant is block-decoupled we apply the following feedback ap-
proach as shown in fig.8 for stabilizing the throttle steam pressure. For
further detail description of the steam pressure/combustion control loop
interested readers are referred to [13|.

Thrott>e pr«ssur»
L«ft Sighl

!PT) (PT)

govern i-f

D/Al

Mostfr <J«monc) j ^

signoL n T r »

Pulverizer's feeder-^

Fig.8:St»om pr»»tur»/combusHon control loops


233

Synibois Descriptions Symbols Descriptions

,'
© Pressure (ran s m i tier
[XI
jfference

@ Temperotur* transmider ffl Average

@
Flow temperolure DJ Transfer switch

® Temperature element (13 Finol control element

(3 Square root extroclor


® Posit)ori mdicotor

@ Eltctro-pneumotic convertor @ Position tronsrnitter

CZl Ht'cjh stgrxii selector <§> Setter

HuJ Function 9#nerotor -$>• Auto-n^onuol

EJ Low signal selector IATDI Anologue to drgitoi convertor

CPF] ProportiooQl plus int*gfo( cofltroller IOTAI Digital to analogue convertor

• [EDI Proporttonol plus inrtgrol plus DO Multiplier


differenfiol controHtr

ICII P j z z y- logic cont roll W @ Ratio reloy

— Response obtairwd through W^ Curve fitted controller


;urvefitt»tj controller

Response obtoined througt^


f u i z y logic c o n t r o l l e r
\
234

D r u m water level controller:

The function of this control loop is to maintain the drum water level
within the prescribed limits. This variable is controlled by modulating
the feed water control valves. Two 100% rated full load control valves
and two low load control valves are provided. Under low loads, one of the
low load valves is taken into service to control the drum water level, the
other is acting as standby. When the boiler load exceeds a preset value
(25-30% MCR), the control function is changed over through operator's
action, to one of the selected full load control valves the other one is
serving as standby. The schematic representation of the drum water level
control is shown in fig.9.

Feedwo(er level Drum level

/f]>ir^=@ /fjx >^Ztiiiy=@

Fig 9 Drum woter Wje\ control.


235

Both the control loops mentioned above are tested for 20% load change
at 60% MCR and the plant responses are shown in fig.10.

urve-fitted controller

Lkg/cm J
154 IS

U2.0

C kg/secj fuzzy logic controller


200,0

188.d

curve-tilted controller

FiglO' Plant responses under 20C%21 positive change in load


236

Table I: INTUITIVE CRITERIA IN GMP [81]

X is A' (Pre q) v is B' (concl r)


Criterion 1 X is A v is B
Criterion 2-1 X is very A y is very B
Criterion 2-2 X is very A v is B
Criterion 3-1 X is more or less A v is more or less B
Criterion 3-2 X is more or less A v is B
Criterion 4-1 X is not A v is unknown
Criterion 4-2 X is not A y is not B
237

Table II: PERFORMANCE OF FUZZY IMPLICATION FUNCTIONS UN-


DER INTUITIVE CRITERIA OF TABLE I [60] [811

hline M«. MRp M«a fJ'Rn. M«. M«A M«t

Criteria 1 0 o X X 0 X X

Criteria 2-1 X X X X 0 X X

Criteria 2-2 o o X X X X X

Criteria 3-1 X X X X o X X

Criteria 3-2 o o X X X X X

Criteria 4-1 X X 0 o 0 0 o
Criteria 4-2 X X X X X X X

key: o = Satisfaction
X= Failure
238

Table III: Q U A N T I Z A T I O N AND P R I M A R Y FUZZY S E T S USING A NU-

MERICAL DEFINITION

Range NB NM NS ZE PS PM PB

Co < -6.4 1.0 0.2 0.0 0.0 0.0 0.0 0.0

-6.4< Co < -3.2 0.8 0.6 0.0 0.0 0.0 0.0 0.0

-3.2< £„ < -1.6 0.4 0.8 0.2 0.0 0.0 0.0 0.0

-1.6< Co < -0.8 0.2 1.0 0.6 0.2 0.0 0.0 0.0

-o.8< e„ < -0.4 0.0 0.8 0.8 0.4 0.0 0.0 0.0

-0.4< e„ < -0.2 0.0 0.6 1.0 0.8 0.0 0.0 0.0

-0.2< Co < 0.2 0.0 0.2 0.8 1.0 0.4 0.0 0.0

0.2< e„ < 0.4 0.0 0.0 0.6 0.8 0.8 0.0 0.0

0.4< e„ < 0.8 0.0 0.0 0.2 0.4 1.0 0.4 0.2

0.8< e„ < 1.6 0.0 0.0 0.0 0.2 0.8 0.8 0.4

1.6< e„ < 3.2 0.0 0.0 0.0 0.0 0.4 1.0 0.6

3.2< e„ < 6.4 0.0 0.0 0.0 0.0 0.0 0.8 0.8

6.4 < e„ 0.0 0.0 0.0 0.0 0.0 0.4 1.0

Key : NB = Negative big, NM = Negative m e d i u m , NS = Negative small, ZE

= Zero, PS = Positive small, P M = Positive m e d i u m , P B = Positive big.


239

Table IV: NORMALIZATION AND PRIMARY FUZZY SETS USING A


FUNCTIONAL DEFINITION [60]

Normalized Normalized Range u/ oj Primary


universe segments fuzzy sets
(-1.0, -0.6) (-13.8,-8.2) -1.0 0.5 NB
(-0.6, -0.3) (-8.2, -4.4) -0.6 0.3 NM
(-1.0,1.0) (-0.3, -0.0) (-4.4, -0.0) -0.3 0.3 NS
(-0.0,0.2) (-0.0, 2.0) 0.0 0.3 ZE
( 0.2, 0.6) ( 2.0, 5.0) 0.3 0.3 PS
( 0.6, 1.0) ( 5.0, 9.0) 0.6 0.3 PM
1.0 0.5 PB
240

Table V: MANUAL CONTROL RULES FOR A LIME KILN [30l

Case Condition Action to be taken


1 BZ low When BZ drastically low:
OX low (a) reduce kiln speed
BE low (b) reduce fuel
When BZ is slightly low:
(a) increase I.D. speed
(b) increase fuel rate
2 BZ low (a) reduce kiln speed
OX low (b) reduce fuel rate
BE O.K. (c) reduce I.D. fan speed
3 BZ low (a) reduce kiln speed
OX low (b) reduce fuel rate
BE high (c) reduce I.D. fan speed
BE ~ back end temperature, BZ = burning zone temperature,
OX = percentage of oxygen gas in kiln exit gas.
241

Table VI: FUZZY MODEL


If ei = NULL then uj = very SMALL
also if ei = very SMALL then vi = SMALL
abo if ei = SMALL then tii = more or less MEDIUM
also if ei = more or less MEDIUM then Ui = MEDIUM
also if ei = MEDIUM then vi = very MEDIUM
also if ei = more or less BIG then Uj = more or less BIG
also if ei = BIG then ui = BIG
also if Ci = very BIG then Ui = very BIG
ei < error in steam pressure
control action (fuel injection)

Table VII: DATA

ei fi ei «i ei "1

0.01 0.1 0.1 0.15 0.2 0.2


0.35 0.35 0.5 0.45 0.75 0.5
1.0 0.75 1,25 1.0 1.5 1.5
1.75 1.75 2.0 2.0 3.0 3.0
3.5 3.5 5.0 5.0 7.0 7.0
8.0 8.0 10.0 10.0 12.0 12.0
13.0 13.0 15.0 15.0 17.0 18.0
20.0 20.0 22.0 22.0 25.0 24.0
28.0 26.0 30.0 28.0 33.0 29.0
35.0 30.0
242

Table VIII: FUZZY MODEL

If 63 = SMALL then V3 = SMALL


also if 63 = more or less MEDIUM then V3 = MEDIUM
also if 63 = MEDIUM then V3 = very MEDIUM
also if 63 = BIG then V3 = BIG
also if 63 = very BIG then V3 = very BIG
63 < error in drum level
V3 < control action ( opening of control valve)

Table IX: DATA

63 V3 63 W3 63 V3

0.01 0.45 0.2 0.47 0.5 0.5


0.6 0.55 0.7 0.6 0.8 0.7
1.0 0.75 1.25 0.8 1.5 0.85
1.75 0.9 2.0 1.0 2.25 1.25
2.5 1.5 3.0 1.75 3.25 2.0
3.5 2.25 4.0 2.50 4.5 2.75
5.0 3.0 5.5 3.5 6.0 4.0
6.5 4.5 7.0 5.0 7.5 5.5
8.0 6.0 8.5 7.0 9.0 7.5
9.5 8.0 10.0 9,0
243

Table X: MEMBERSHIP FUNCTION FOR ej:

Univ NULL very SMALL more or less MEDIUM more or BIG very
SMALL MEDIUM less BIG BIG
0.01 1.0 0 0 0 0 0 0 0
0.1 .75 .2 0 0 0 0 0 0
0.2 .5 .5 .3 0 0 0 0 0
0.35 .3 1.0 .5 0 0 0 0 0
0.5 .1 .5 1.0 .2 0 0 0 0
0.75 0 .3 .5 .5 0 0 0 0
1.0 0 0 .3 1.0 0 0 0 0
1.25 0 0 0 .75 0 0 0 0
1.5 0 0 0 .6 0 0 0 0
1.75 0 0 0 .5 .3 0 0 0
2.0 0 0 0 .3 .5 0 0 0
3.0 0 0 0 .2 .75 0 0 0
3.5 0 0 0 0 1.0 0 0 0
5.0 0 0 0 0 .75 0 0 0
7.0 0 0 0 0 .45 0 0 0
8.0 0 0 0 0 .3 .4 0 0
10. 0 0 0 0 .25 .5 0 0
12. 0 0 0 0 .1 1.0 0 0
13 0 0 0 0 0 .75 .2 0
15 0 0 0 0 0 .4 .3 0
17 0 0 0 0 0 .3 .5 .1
20 0 0 0 0 0 .25 1.0 .2
22 0 0 0 0 0 .1 .75 .25
25. 0 0 0 0 0 0 .5 .3
28. 0 0 0 0 0 0 .25 .5
30. 0 0 0 0 0 0 .1 .65
33 0 0 0 0 0 0 0 .8
35 0 0 0 0 0 0 0 1.0
244

Table XI: MEMBERSHIP FUNCTION FOR vn

Univ very SMALL more or less MEDIUM very more or BIG very
SMALL MEDIUM MEDIUM less BIG BIG

0.1 1.0 .1 0 0 0 0 0 0
0.15 .5 .5 0 0 0 0 0 0
0.2 .1 1.0 .1 0 0 0 0 0
0.35 0 .4 .5 0 0 0 0 0
0.45 0 .1 .7 .1 0 0 0 0
0.5 0 0 1.0 .3 0 0 0 0
0.75 0 0 .6 .5 0 0 0 0
1.0 0 0 .4 .7 0 0 0 0
1.5 0 0 .1 1.0 0 0 0 0
1.75 0 0 0 .8 0 0 0 0
2.0 0 0 0 .7 .1 0 0 0
3.0 0 0 0 .4 .2 0 0 0
3.5 0 0 0 .3 .4 0 0 0

5.0 0 0 0 .1 .5 0 0 0
7.0 0 0 0 0 .7 0 0 0
8.0 0 0 0 0 1.0 0 0 0
10. 0 0 0 0 .6 .1 0 0

12. 0 0 0 0 .5 .25 0 0
13 0 0 0 0 .3 .3 .1 0
15 0 0 0 0 .25 .5 .3 0
18 0 0 0 0 .1 1.0 .45 0

20 0 0 0 0 0 .6 .6 0
22 0 0 0 0 0 .4 .7 .2
24. 0 0 0 0 0 .3 1.0 .4
26. 0 0 0 0 0 .1 .7 .6
28. 0 0 0 0 0 0 .5 .8
29 0 0 0 0 0 0 .3 .9

30 0 0 0 0 0 0 .2 1.0
245

Table XII: MEMBERSHIP FUNCTION FOR eg:

Univ SMALL more or less MEDIUM MEDIUM BIG very BIG


0.01 1.0 0 0 0 0
0.2 .7 .7 0 0 0
0.5 .6 .4 0 0 0
0.6 .3 .5 0 0 0
0.7 .1 .7 .2 0 0
0.8 0 1.0 .3 0 0
1.0 0 .5 .45 0 0
1.25 0 .45 .5 0 0
1.5 0 .3 .7 0 0
1.75 0 .2 .9 0 0
2.0 0 0 1.0 .1 0
2.25 0 0 .9 .2 0
2.5 0 0 .7 .3 0
3.0 0 0 .5 .4 0
3.25 0 0 .4 .5 0
3.5 0 0 .3 .7 0
4.0 0 0 .2 .8 0
4.5 0 0 0 .9 0
5.0 0 0 0 1.0 0
5.5 0 0 0 .9 0
6.0 0 0 0 .8 .1
6.5 0 0 0 .7 .2
7.0 0 0 0 .5 .4
7.5 0 0 0 .4 .5
8.0 0 0 0 .3 .6
8.5 0 0 0 0 .7
9.0 0 0 0 0 .8
9.5 0 0 0 0 .9
10. 0 0 0 0 1.0
246

Table XIII: MEMBERSHIP FUNCTION FOR V3:

Univ SMALL MEDIUM very MEDIUM BIG very BIG


.45 1.0 0 0 0 0
.47 .8 .1 0 0 0
.5 .6 .6 0 0 0
.55 .3 .7 0 0 0
.6 .1 ,8 0 0 0
.7 0 .9 0 0 0
.75 0 1.0 0 0 0
.8 0 .9 0 0 0
.85 0 .8 0 0 0
.9 0 .7 .2 0 0
1.0 0 .6 ,3 0 0
1.25 0 .5 ,5 0 0
1.5 0 ,4 ,6 0 0
1,75 0 ,3 ,7 0 0
2.0 0 .2 ,8 0 0
2.25 0 ,1 1,0 0 0
2.50 0 0 .9 0 0
2.75 0 0 .8 .2 0
3,0 0 0 .7 .3 0
3,5 0 0 .5 .4 .2
4,0 0 0 .4 .6 ,3
4,5 0 0 .3 .7 ,4
5,0 0 0 .2 .8 .5
5.5 0 0 0 .9 .6
6.0 0 0 0 1,0 .65
7.0 0 0 0 .7 .7
7,5 0 0 0 .5 .8
8,0 0 0 0 ,3 .85
9.0 0 0 0 ,1 1.0
247

7. Critical appreciation on t h e design of


FLC

T h e successful design of a F L C , in a very complex situation, has been

claimed by many researchers. But it has been found after a t h o r o u g h in-

vestigation t h a t the sole motivation of the design of a fuzzy logic controller

to control processes is to incorporate the knowledge of the experienced

process operator t h r o u g h some linguistic s t a t e m e n t s which involve the

inexact a n d / o r imprecise descriptions of the situations to be controlled.

Since the successive input to a fuzzy logic controller is the error between

t h e desired value and the measured value which is evidently non-fuzzy in

n a t u r e and, therefore, everytime it is necessary to convert the non-fuzzy

information to a fuzzy one using some s t a n d a r d technique of fuzzification

for further processing by the inference module.

Now the fuzzy control algorithms art based on fuzzy implication and com-

positional rule of inference which has many drawbacks [18] and which

depends on fuzzy logic, an algebraic system that is not a complemented

lattice. Moreover, the ultimate fuzzy output of a fuzzy logic controller is

first defuzzified by some standard technique of defuzziflcation and then

injected to a plant/system as control action. Hence, it is not absolutely

necessary to use the technique of approximate reasoning, directly, for the

design of process controllers.

In this section, our basic aim is to present a design technique which does

not suffer from the existing drawback of the compositional rule of inference

as shown in [ISJ and which replaces the idea of fuzzification/defuzziflcation

with the technique of curve-fitting through some points obtained from the
248

defuzzification of the inexact informations at the structural level. We

demonstrate that if the final control action reduces to a non-fuzzy value

through some assumptions or approximations [4j then there is no need to

use the technique of approximate reasoning. Rather, a very satisfactory

result can be achieved using curve-fitted controllers as well.

7.1 Mathematical formulation of the problem

Let X and Y represent two linguistic variables taking values in U =

X) u and V = Ylv respectively. We consider a model where we infer from

a single fact of the form

p «* X ts A'

and a set of rules of the form

q •^ if X is AthenYis B

where A, B, A' are fuzzy subsets of U. V, U respectively, viz.

q\ -O- if X is Ai thenYis Bi = Ri (,say)

also ^2 '^ * / ^ is AithenYis B-i = R^ (,say)

also •<=> if X isAnthenYisBn = Rn (,say)


249

where n < Q, A, s are fuzzy subsets of U amd 5 , s are fuzzy subsets of


V{i=l,2,...,n).

Now we first defuzzify the relations in the premise q. This can be done
in two ways.

First, we may construct the relational matrices Ri,R2, ••.,Rn indepen-


dently and then form a unified relational matrix R. Here we can use any
translating rule for translating those compound statements to a relational
matrix. This matrix is then defuzzified to obtain a collection of pairs of
observations distributed over the universe U x V. Such a relation R is
defuzzified in the following way :

For a particular value of X = u the corresponding values of K = v is that


for which the pair (u,v) has maximum possibility in the relation R{u^v).
If there be more than one such Y then we may simply take the mean
value as a representation of that clciss.

The relations Ri, R2.,...,Rn can be formed using many available translat-
ing rules [l)[60]. We use two widely used rules for the translation of such
compound propositions. They are Zadeh's arithmetic rule, Mamdani's
min rule, viz.,

if X is A then Y is B -* ^T^x,y) = RCU xV

where fiR{u, v) is either min{l, 1 — ^>i(u) + /ifl(t;)}


or min{nF(u),HB(v)}.

Now if we use Zadeh's rule for the translation then we construct the fuzzy
relational matrix R according to R = Ry (~\ R2 f]... f\ i2„ otherwise, we use
R = RiDR2D...[JRn for the same.

Now every relational matrix R of the form discussed so far, when defuzzi-
250

fied defines an elementwise relation between two distinct variables say,

current and rotational speed of a motor and gives us informations a b o u t

variations of a single variable with a change in the independent variable

of t h e system. T h i s relation R, thus formed, is then defuzzified to obtain

t h e desired set of points.

For n > 1 a second m e t h o d is to defuzzify the fuzzy sets in the an-

tecedent and the consequent p a r t of the conditional s t a t e m e n t s at the

very beginning. Now a fuzzy set A can be defuzzified using many differ-

ent rules [11). We use a simple one : T h e defuzzy value of the fuzzy set

A — E ^ ( M A ) ( " ) / ' ^ ) is t h a t value u for which M A I ^ ) is a m a x i m u m in A.

If there be more t h a n one such u then we may take the m e a n value as a

representation. In this way we obtain pairs of observations if a; = u t h e n

y = V from the conditional s t a t e m e n t s if X is A then Y is B.

T h u s , in b o t h cases, letting t h e m as points in a two dimensional plane

we can always find a best fitted curve t h a t is defined over an extended

domain containing U X V. For our present discussion let x and y be two

classical variables which takes on values in U and V respectively. Let f

: U => V he t h e function generated from those defuzzified points by any

s t a n d a r d technique of curve-fitting. Let's now defuzzify the proposition

p to obtain x = u T h e n from y = f{x) we obtain / ( u ) as the desired

inference which can be directly injected to the plant as control action.

7.2 Numerical example

Let us consider the following problem in which we are given three fuzzy

propositions of the form

if X is A then Y is B
251
where X a n d Y are two linguistic variables defined over U a n d V respec-
tively a n d a n o t h e r fuzzy premise of t h e form

Xis A'

where A, A' are fuzzy subsets of U and B is a fuzzy subset of V. Let

[7=1 + 2 + 3 + 4 +5, V = 6 + 7 +8.

Let the three compound assertions be

qi O ifX is 'low' then Y is 'low'


92 ^^ ifX is ' m e d i u m ' then Y is ' m e d i u m '

qs -O- ifX is 'high' then Y is 'high'

and in terms of possibility distribution.

qi <?> ifXis{l/l + .75/2 + .5/3 + .25/4 + 0/5)thenYis{l/6 + .6/7 + .3/8)


52 O ifXis{.5/l + .75/2 + 1/3 + .75/4 + .5/5)thenYis{.6/6 + 1/7 + .6/8)
93 <^ ifXis{Q/l + .25/2 + .5/3 + .75/4 + l/5)thenYis{.3/6 + 6/7 + 1/8)

The corresponding relational matrix (using Zadeh's arithmetic rule) will


be
Y 6 7 8 Y 6 7 8 Y 6 7 8
X X X
1 1 .6 .3 1 1 1 1 1 1 1
2 1 .85 .55 2 .85 1 .85 2 1 1
Ri,= 3 1 1 .8 3 .6 1 .6 3 .8 1
4 1 1 1 4 .85 1 .85 4 .55 .85
5 1 1 1 5 1 1 1 5 .3 .6
setting
It =^ Jti n 112 niZs
and lettin g
252

fJ-R{x,y) = mm{niti{x,y),fj.K2(x,y),lJ.R3(x,y)}

we find

1 1 .6 .3

2 .85 .85 .55

R = 3 .6 1 .6

4 .55 .85 .85

5 .3 .6 1

Let the fuzzy proposition

X is A'

induces a possibility distribution

(.25/1 + .50/2 + .75/3 + 1/4 + .75/5).

T h e n compositional rule of inference gives the induced possibility distri-

b u t i o n of Y as (.6/6 + .85/7 + .85/8).

Whereas defuzzification of relations RijR^^Rs gives

iii ^^ if X is 1 then y is 6

^2 ^^ if X is 3 then y is 7

iia ^ if X is 5 then y is 8

X and y are defined over U and V respectively. Letting t h e m as point

in a two-dimensional plane we find t h a t the corresponding interpolating


253

polynomial will b e [12]

y = 5.5 + 0.51 3

Now the defuzzy value of the proposition

XisA' <=!> TTA: = (.25/1 + .50/2 + .75/3 + 1/4 + .75/5)t5a; = 4 and

from t h e relation (3) for a: = 4 we find y — 7.5, which is the same as the

defuzzy value of "Y is (.6/6 + .85/7 + .85/8) ". But these two values of

y m a y not always be equal; instead they may be close to each other.

7.3 Implementation of the proposed curve-fitted con-


troller

To measure the effectiveness of the newly proposed curve-fitted controller

we test the asymptotic responses of a real closed-loop plant (see a p p e n d i x )

u n d e r different operating conditions stated in section 6.0.

We design the following two expressions for curve-fitted controllers of the

plant using the d a t a in tables X, XI, XII, XIII. Curve-fitted control action

with respect to the closed-loop plant as shown in the appendix , are as

follows.

vi = 0.0015e^ - 0.1083eJ + 2.7857ei - 0.6363

t;3 = 0.452 - 0.18263 + 0.807e^ - 0.15e^ + O.OOSe^.

We compare the closed-loop plant responses with those obtained t h r o u g h

FLC in Figure 5, 6, 7, 8, 9 and 10 and satisfactory results are achieved.


254

Table XIV: PERFORMANCE OF THE THREE CONTROLLERS ON A


STEP RESPONSE OF 10 (kg./sec) STEAM FLOW

Controller Rise time Overshoot Steady state


(sec.) (kg./sec.) error (kg./sec.)
PI 1 1.85 - 0.2
Fuzzy logic 0.5 2 0.195
Curve-fitted 0.56 1.89 0.075

7.4 Comparison of system performances

In tables XIV and XV we summarize the performances of the conven-


tional two-term controller (PI), conventional fuzzy logic controller [13]
and the proposed curve-fitted controller. For comparison, we consider
two-term controller simply because they are the existing control actions
for conventional steam flow and drum water level control loop of the
steam generating unit as described in the appendix .

From the given tables, it is obvious that the proposed curve-fitted con-
troller is as good as a fuzzy logic controller for an easy implementation of
control action for nonlinear plant. The switching line for the bang-bang
control or variable structured control of a nonlinear plant is difficult to
calculate. Hence the simplicity of the curve-fitted controller and the fuzzy
logic controller is an added advantage over the classical approach to con-
troller design.

Finally, in Figure 11 we have shown that the steam flow and throttle
255

Table XV: PERFORMANCE OF THE TEREE CONTROLLERS ON A STEP


RESPONSE OF 8 (cm.) DRUM WATER LEVEL

Controller Rise time Overshoot Steady state


(sec.) (cm.) error (cm.)
PI 1.2 1 -0.2
Fuzzy logic 0.35 0.9 0.1
Curve-fitted 0.4 0.5 0.08

pressure characteristic is closely tracked by the newly proposed curve-


fitted controller and conventional FLC. Hence, we can conclude, based
on the results obtained, that the proposed curve-fitted controller is as
good as the fuzzy logic controller.

USKg/Sec - Plont Charactertshc

Inference obtained
by conventionoi
fu72y logic controller

135Kg/S»c
ISlKg/Cm' St»om pressure 175Ks/Cm'

Fig. 11; Trocking ot nonlineor characteristic of the plant.


256

8. conclusion

In t h e era o f m a t h e m a t i s a t i o n " of control engineering problems, F L C can

be seen as lying in the general s t r e a m of expert control, characterised by

the a p p r o p r i a t e mechanism for representating vague h u m a n j u d g e m e n t s .

But a prominent problem in the design of the FLC is to transfer the

expert knowledge into the usable knowledge beise of the F L C . Hence, we

need a very sophisticated tool for knowledge acquisition for the design of

the F L C .

In control engineering, FLCs are extensively studied. Various CEise studies

present their applications in various process-control systems previously

controlled by conventional control algorithms. One has to u n d e r s t a n d

clearly the notion of "fuzziness" in process control. Apparently it may

be seemed t h a t application of fuzzyset to process control is a forceful

imagination of a designer. B u t such an impression is not always t r u e . In

control strategy applied by the operator we can recognize some concepts

t h a t are evidently fuzzy in n a t u r e , for instance, if observed variable x

is "positive m e d i u m " , then change the control variable y by the a m o u n t

"negative m e d i u m " .

In table XVI we provide some milestones in the development of the FLC

(choice of milestones may be subjective).

T h e design of F L C based on the fuzzy model of a process is still not well

u n d e r s t o o d due to difficulties in modelling the linguistic s t r u c t u r e of a

process and obtaining d a t a in industrial process control [60].

In comparison with conventional control theory, at present, the design

of F L C is less analytic and needs well-founded procedures for system

design. In response to this need recently we have seen some developments


257

Table XVI: M I L E S T O N E S IN T H E D E V E L O P M E N T O F FLO

1972 Zadeh A rationale for fuzzy control

1973 Zadeh Linguistic Approach

1974 M a m d a n i <fe Assilian Steam engine control

1976 Rutherford Analysis of control algorithm

1977 Ostergaard Heat exchanger & cement kiln control

1980 Tong et.al Wastewater t r e a t m e n t process

1980 Fukami, Mizumoto Fuzzy conditional Inference

&: Tanaka

1983 Hirota & Pedrycz Probabilistic Fuzzy sets (control)

1983 Yasunobu, Miyamoto et.al Predictive Fuzzy control

1984 Sugeno & Murakami Parking control of a model car

1984 Ray & D u t t a Majurader Analysis of Fuzzy logic controller

1985 Kiszka, G u p t a et.al Fuzzy system stability

1985 Ray & Ghosh & F L C Stability

D u t t a Majumder

1986 Yamakawa Fuzzy controller hardware system

1987 Ray FLC for Multivariable Plant


258

(14][17l[83l [841(85].

The hardest part of designing fuzzy controller is selecting which fuzzy


sets best represent the controlled and controlling variables, namely, the
"tunning" of the controller. Most controllers are sensitive to the shapes
of these membership functions, and as the number of rules multiples,
trial-and- error tuning methods becomes less feasible.

A recent breakthrough is artificial neural network, which with the aid


of back propagation learns the needed membership functions from a set
of training examples. The back propagation type carries out supervised
learning by leading output failure to match a desired target pattern back
to its input as information to its individual nodes. Hideyuki Tagaki and
Isao Hayashi researchers with Matsushita's Central Research Laboratory,
Osaka, first reported these results at the 1988 International Conference
on Fuzzy Logic and Neural Networks, lizuka, Fukuoka. Subsequently,
Akira Maeda and others of Hitachi's Systems Development Laboratory,
Tokyo, have developed a tuning system on this idea and applied it in the
development of a controller design previously by trial and error.

Recently we have seen some theoretical development for self- organizing


control using fuzzy neural networks|86j.

References

1. Z.Cao and A. Kandel "Applicability of some fuzzy implication op-


erators" in Fuzzy Sets and Systems 31 (1989), pp. 151-186.

2. J. a. Goguen "The logic of inexact concepts" Sunthese (1969) 19,


pp. 325-327.
259

3. W.J.M. Kickert and H.R. Van Nauta Lemke "Application of a fuzzy


controller in a warm water plant" in Automatica, (1976), 12, 2, pp.
301-308.

4. W.J.M. Kickert and E.H. Mamdani "Analysis of a fuzzy logic con-


troller" in Fuzzy Sets and Systems, (1978), 1, l,pp. 29-44.

5. E.H. Mamdani "Application of fuzzy algorithm for control of simple


dynamic plant" in Proc. IEEE, (1974), 12, 12, pp. 1585-1588.

6. E.H. Mamdani "Advances in the linguistic synthesis of fuzzy con-


trollers" in Int. J. Man-Machine Studies, (1976), 8, pp. 669-678.

7. E.H. Mamdani "Application of fuzzy logic to approximate reasoning


using linguistic systems" in IEEE Trans. Comput., (1977) , 26, pp.
1182-1191.

8. E.H. Mamdani, and S. Assilian. "An experiment in linguistic syn-


thesis with a fuzzy logic controller" , in Fuzzy reasoning and its appli-
cations, (1981), (Eds. E.H. Mamdani and B.R. Gaines). Academic
Press, New York, USA, pp. 311-323.

9. E.H. Mamdani , and N. Baaklini. "Prscriptive methods for deriving


control policy in a fuzzy logic controller" in Electron. Lett.,(1975),
11, pp. 625-626.

10. E.H. Mamdani, J.J.Ostergaard and E. Lemblesis. "Use of fuzzy


logic for implementing rule - based control of industrial processes"
in TIMS ' Studies in the management Sciences, (1984), 20, pp. 429-
445.

11. M. Mizumato. "Fuzzy controls under various defuzzier methods" in


International workshop on fuzzy system applications, (1988), pp. D7

12. S. Raha, and K.S. Ray "Analogy between Approximate reasoning


260

and method of interpolation", in Fuzzy Sets and Systems, (1992).


vol. 51 pp. 259-266.

13. K.S. Ray "Application of fuzzy logic controller to a block-decoupled


nonlinear steam generating unit (210 [MW])" in Control Theory and
Advanced Technology, (1987), Vol. 3, No. 4, pp. 343-374.

14. K. S. Ray and D. Dutta Majumder "Application of circle criteria


for stability analysis of linear SISO and MIMO systems associated
with fuzzy logic controller" in IEEE Trans. Systems, MAn and Cy-
bernetics, (1984a), SMC, 14, 2, pp. 345 - 349.

15. K. S. Ray and D. Dutta Majumder "Simulation of a nonlinear steam


generation unit" in Proc. Int. Conf. on Syst. Man and Cybernet.,
sponsored by SMC Society of IEEE, Delhi - Bombay, India, (1984b),
pp. 705 - 708.

16. K. S. Ray and D. Dutta Majumder " Fuzzy logic control of a non-
linear multivariabje stem generating unit (200 |MW]) using decu-
oupling theory" in IEEE Trans. Systems, Man and Cybernetics,
(1985), SMC 15, 4, pp. 539 - 558.

17. K. S. Ray, A. M. Ghosh and D. Dutta Majumder L2 - "stability and


the related design concept fot SISO linear system associated with
fuzzy logic controller" in IEEE Trans. System, Man and Cybernet-
ics, (1984), SMC 14, 6, 932 - 939.

18. L.A. Zadeh , "Toward a theory of fuzzy systems" in Aspects of


Newark and System Theory. Ed. New York: Holt, Rinchart and
Winston, (1971), pp. 469-490.

19. L.A. Zadeh, "A rationale for fuzzy control". Trans ASME. J. Dy-
nam. Syst, Measur, Control. (1972) Vol 94, pp, 3-4.
261

20. L.A. Zadeh, "Outline of a new approach to the analysis complex


systems and decision processes". IEEE Trans Syst. Man Cybern.,.
(1973) Vol SMC-3 pp. 28-44

21. L.A. Zadeh, "The concept of a linguistic variable and its application
to approximate reasoning 1, 11, 111," In formal Sci., (1975), vol. 8,,
pp.199-251, pp. 301-357, vol. 9 pp. 43-80.

22. L.A. Zadeh "Theory of approximate reasoning" in Machine Intelli-


gence 9 eds. J.E. HAYES, DONALD MICHIE, L.I. MIKULICH.
Eillis Horwood Limited (1970), pp. 149-194.

23. M. Mizumoto, "Extended fuzzy reasoning" in Approximate reason-


ing in Expert systems, Gupta, Kandel, Bandler and Kizzka eds.
North Holland, Amsterdam, (1985), pp. 71-85.

24. S.Fukami, M. Mizumoto, and K. Tanaka, "Some considerations of


fuzzy conditional inference." Fuzzy Sets Syst., (1980) vol. 4, pp.
243-273.

25. B. Kosko, "Neural networks and fuzzy systems: A dynamical sys-


tems approach to machine intelligence," Prentice Hall, Englewood
Cliffs, NJ (1991).

26. Y. Murayama and T. Terano, "Optimizing control of fiesel engine,"


in Industrial Applications of Fuzzy Control, M. Sugeno, Ed. Ams-
terdam: North-Holland, (1985), pp. 63-72.

27. A. Kaufmann and M. M. Gupta, Introduction to Fuzzy Arithmetic


New York: Van Nostrand. 1985.

28. D. Dubois and H.Prade, "Unfair coins and necessity measures: To-
ward a possibilistic interpretation of histograms". Fuzzy sets and
system (1985) vol- 10, No 1, pp. 15-20.
262

29. L. larkin, "A fuzzy logic controller for aircraft flight control", In
industrial application of fuzzy control, M. Sugen, Ed. Amsterdam:
North Holland (1985) pp. 87-104.

30. M. Sugeno, "And introductory survey of fuzzy control", Information


sciences (1985) vol. 36, pp. 59-83.

31. B. Kuipers, "Qualitative simulation". Artificial intelligence (1986)


vol. 29, pp. 289-338.

32. E. Lembessis, "Dynamical learning behavior of a rule-based self-


organising controller," Ph. D. thesis. Queen Mary College, Univ. of
London,1984.

33. E. M. Scharf and N.J. Mandic, "The application of a fuzzy controller


to the control of a multi-degree-freedom robot arm," in Industrial
Applications of Fuzzy Control, M. Sugeno, Ed. Amsterdam: North-
Holland, (1985), pp 41-62.

34. K. Sgiyama, "Analysis and synthesis of the rule bcised self-organising


controler." Ph. D thesis. Queen Mary College, Univ. of London,
1986.

35. S. Shao, "Fuzzy self-organizing controller and its application for dy-
namic processes." Fuzzy Sets Syst., (1988), vol. 26, pp. 151-164.

36. R. Tanscheit and E.M. Scharf, "Experiments with the use of a rule-
bcLsed self-organising controller for robotics applications," Fuzzy Sets
Syst., (1988) vol. 26, pp. 195-214.

37. M. Sugeno and K. Muralami, "Fuzzy parking control of model car,"


8Srd IEEE Conf. on Decision and Control, Las Vega.s,1984.

38. M. Sugeno and K. Muralami, "An experimental study of fuzzy park-


ing control using a model car," in Industrial Applications of Fuzzy
263

Control, M. Sugeno, E D . A m s t e r d a m : North-Holland. (1985), p p .

125-138.

39. S. Yasunobu a n d S. M i y a m o t o , "Automatic train operation by pre-

dictive fuzzy control," in Industrial Application of Fuzzy Control, M.

Sugeno, Ed. A m s t e r d a m : North-Holland, (1985), p p . 1-18.

40. S. Yasunobu a n d T . Hasegawa, "Automatic train operation by pre-

dictive fuzzy control." Control Theory Adv. Technol., (1986). vol.

2. no. 3, p p . 419-432.

4 1 . S. Yasunobu and T. Hasegawa, "Evaluation of an a u t o m a t i c con-

tainer crane operation system beised on predictive fuzzy control."

Control Theory Adv. Technol. (1986) vol. 2, no.3 p p . 419-432.

42. S. Ycisunobu, S. Sekino. and T. Hasegawa. " A u t o m a t i c train op-

eration and a u t o m a t i c crane operation systems based on predictive

fuzzy control," in Proc. 2nd IPSA Congress. Tokyo Japan. July

(1987) p p . 835-838.

43. N. Baaklini and E. H. M a m d a n i , "Prescriptive m e t h o d s for deriving

control policy in a fuzzy-logic controller." Electron. Lett. (1975) vol.

11 p p . 625-626.

44. M. Braae and D. A. Rutherford, "Selection of p a r a m e t e r s for a fuzzy

logic controller." Fuzzy Sets System (1979) vol. 2, no. 3, p p . 185-

199.

45. M. Braae a n d D. A. Rutherford, "Theoretical and linguistic aspects

of the fuzzy logic controller." Automatica (1979) vol. 15, no. 5, p p

553-577.

46. M. Sugeno and G. T. K a n g . "Structure identification of fuzzy model,"

Fuzzy Sets Syst., (1988) vol. 28, no. 1, p p . 15-33.


264

47. T. Takagi and M. Sugeno, "Derivation of fuzzy control rules from


human operator's control actions." in Proc. of the IFAC Symp. on
Fuzzy Information, Knowledge Representation and Decision Analy-
sis, Marseilles, France, July (1983) pp.55-60.

48. T. Takagi and M. Sugeno, "Fuzzy identification of systems and its


applications to modeling and control." IEEE Trans. Syst. Man
Cybern., (1985), vol. SMC-15, no. 1, pp.116-132.

49. T. C. Chang, K. Hasegawa and C.W. Ibbs, " The effects of mem-
bership function on fuzzy reasoning." Fuzzy Set. System (1991) vol.
44, pp. 169-186.

50. A. Kaufmann, Introduction to Theory of Fuzzy Subsets. New York,


Academic, (1975)

51. M. Mizumoto , "Note on the arithmetic rule by Zadeh for fuzzy


conditional inference, " Cybern. Syst., (l98l)vol. 12, pp. 247-306.

52. S. Gottwald and W. Pedrycz, " Problems of the design of fuzzy con-
trollers." inApproximate Reasoning in Expert Systems, M.M. Gupta
A. Kandel, W. Bandler, and J. B. Kiszka, Ed. Amsterdam: North-
Holland ,(1985), pp. 393-405.

53. B.R.Gaines and L.j. Kohout, "The fuzzy decade: "A bibliography
of fuzzy systems and closely related topics," Int. J. Man. Mach.
Studies, (1977) vol. 9, pp. 1-68.

54. M.M. Gupta, G. M. Trojan, and J.B. Kiszka, "Controllabilitity of


fuzzy control systems," IEEE Trans. Syst. Man Cybern., (1986) vol.
SMC-16, no. 4, pp. 576-582.

55. B. Bharathi Devi and V.V.S. Sarms, "Estimation of fuzzy member-


ships from histograms,"/«/t>rrn. Sci., (1985) vol. 35, pp. 43-59.
265

56. D. Dubois and H. Prade, "Fuzzy logic and the generalized modus
ponens revisited," Cybern. Syst., (1984) vol. 15, pp. 3-4.

57. E. Czogala and W. Pedrycz, "Some problems concerning the con-


struction of algorithms of decision making in fuzzy systems," Int. J.
Man. Much. Studies, (1981) vol. 15, pp.201-221.

58. E.H. Mamdani and S. Assilian, "An experiment in linguistic synthe-


sis with a fuzzy logic controller," Int. J. Man Mach. Studies (1975)
vol.7 no. 1, pp. 1-13.

59. J.C.T Vander Veen, "Fuzzy sets, theoretical reflections, applications


to ship steering." M. Sc thesis, Deprt. Elect. Eng., Delft Univ.,
Technol. Natherland.

60. C.C. Lee, "Fuzzy logic in control systems: Fuzzy logic controller -
Part I & I F , IEEE Trans. Syst. Man and Cybern. (1990) vol.- 20,
no.2, pp.404-435.

61. K. Hirota and W. Pedrycz, "Analysis and synthesis of fuzzy systems


by the use of fuzzy sets, "Fuzzy Sets Syst., (1983) vol. 10, no. 1,
pp. 1-14.

62. W. Pedrycz, "Fuzzy control and Fuzzy system," John Willey and
Sons INC. New York (1989).

63. R.M.Tong, "A retrospective view of fuzzy control systems," Fuzzy


Sets. Syst,. (1984) vol. 14, pp. 199-210.

64. R.M. Tong, M.B. Beck and A. Latten, "Fuzzy control of the acti-
vated sludge wastewater treatment process," Automatica (1980) vol.
16, no. 6, pp. 695-701.

65. O. Itoh, K.Gotoh, T.Nakauama, and S. Takamizawa, "Application


of fuzzy control to activated sludge process," in Proc. 2nd IPSA
266

Congress, Tokyo, Japan July (1987) p p . 282-285.

66. C.P. P a p p i s and E.H. M a m d a n i , " A fuzzy logic controller for a traffic

junction," I E E E Trans. Syst. M a n C y b e r n . (1977) vol. S M C 7, no.

10 p p . 707-717.

67. P.M. Larsen, "Industrial applications of fuzzy logic control," Int.

J.Man Mach. Studies., (1980) vol.12, no. 1, p p . 3-10

68. I.G. Umbers and P.J. King, "An analysis of h u m a n decision making

in cement kiln control and the implications for a u t o m a t i o n . " Int. J.

Man Mach. Studies. (1980) vol.12, no. 1, pp.11-23.

69. D. Willaeys, "Optimal control of fuzzy systems ," in Proc. Int.

Congress on Applied Systems Research and Cybern. Acapulco, Dec.

(1980)

70. M. U r a g a m i , M. Mizumoto, and K. Tananka, "Fuzzy robot control".

Cybern. (1976) vol.6, p p . 39-64.

71. S. M u r a k a m i and M. Maeda, "Application of fuzzy controller to au-

tomobile speed control system," in Industrial Applications of Fuzzy

Control, M. Sugeno, Ed. A m s t e r d a m : North-Holland. (1985) p p .

105-124.

72. Y. Sakai, "A fuzzy controller in turning process a u t o m a t i o n , " in In-

dustrial Applications of Fuzzy Control, M. Sugeno, Ed. A m s t e r d a m :

North-Holland, (1985) p p . 139-152.

73. S. M u r a k a m i , "Application of fuzzy controller to automobile speed

control system,"in Proc. of the IFAC Symp. on Fuzzy Information,

Knowledge Representation and Decision Analysis. Marseille, France,

(1983) p p . 43-48.
267

74. O. Yagishita, O. Itoh, and M. Sugeno, "Application of fuzzy rea-


soning to the water purification process," Industrial Applications of
Fuzzy Control, M. Sugeno, Ed. Amsterdam: North-Holland, (1985)
pp. 19-40.

75. F. Fujitec, "FLEX-SSOO series elevator group control system," Fu-


jitec Co., Ltd., Osaka, Japan, (1988)

76. Y. Kasai and Y. Morimoto, "Electronically controlled continuously


variable transmission," in Proc. Int. Congress on Transportation
Electronics, Dearborn, MI, (1988).

77. J.A. Bernard, "Use of rule-based system for process control," IEEE
Contr. Syst. Mag., (1988) vol. 8, no. 5, pp. 3-13.

78. M. Togai and H. Watanabe, "Expert system on a chip: An engine for


real-time approximate reasoning," IEEE Expert Syst. Mag., (1986)
vol.1, pp. 55-62.

79. T. Yamakawa, "A simple fuzzy computer hardware system employ-


ing min and max operations - A challenge to 6th generation com-
puter," in Proc. 2nd IPSA Cnogress, Tokyo, Japan, July (1987).

80. S. Yasunobu, S. Miyamoto, and H. Ihara, "Fuzzy control for au-


tomatic train operation system," in Proc. 4^h IFAC/IFIP/IFORS
Int. Congress on Control in Transportation Systems, Baden, April
(1983).

81. M. Mizumoto and H-J Zimmermann, "Comparison of fuzzy reason-


ing methods, " Fuzzy Sets and Systems (1982) vol. 8, pp. 253-283.

82. G.J. Klir and T.A. Folger, Fuzzy Sets, Uncertainty, and Information.
Englewood Cliffs, NJ: Prentice Hall, (1988).
268

83. C.V. Negoita,"On the stability of fuzzy systems," in Proc. IEEE


Int. Conf. on Cybernetics and Society, (1978) pp. 936-937.

84. J.B. Kiszka, M.M. Gupta, and P.N. Nikiforuk, "Energetistic stability
of fuzzy dynamic systems," IEEE Trans. Syst. Man Cybem., (1985)
vol. SMC-15, no. 5, pp. 783-792.

85. K. Tanaka and M. Sugeno, "Stability analysis and design of fuzzy


control system" Fuzzy Sets and Systems (1992) vol. 45, pp. 135-156.

86. T. Yamaguchi, T. Takagi and T. Mita, "Self-organizing control using


fuzzy neural networks," Int. J. Control, (1992) vol. 56, no. 2, pp.
415-439.

Appendix
Physical description of the plant [13]

General description of the plant:

The 210 (MWJ thermal power station was designed on the concept of
the unit system, where single steam generator supplies steam to a single
turbine coupled with an AC Generator.

S t e a m generator plant:

The steam generator made in the BHEL is of single drum water tube
natural circulation type with superheaters and reheaters. The maxi-
mum continuous evaporation of the steam generator is 680[Te/hr.], at
I54.15[kg/cm^\ and 540[°C]. The final feed water temperature is 243[°C].

The complete furnace section is of welded wall type, arranged as a gas


and pressure-tight envelope. It has extended side-wall section, where
reheater is also covered with water-cooled section. The circulation system
is complete with unheated downcomers, supply and riser piping.
269

Table XVII: STEAM PARAMETERS AT DIFFERENT CONDITIONS :

At p = 210IMWI Top heater At p = 168[MW1 VWO

CW Temp. 33 out At p = 210 MU - Ol%)ClV p = 221.5[MW'i

[°C\MU - 0(%] [MW\MU - 0(%| Temp. 33[°C] MU-0|%|

and back Back CW Temp.

Pr.0.1033 ata Pr.0.1033 ata 33|»Cl

(1) (2) (3) (4)


Steam Bow

T/H HPT 627.319 594.733 500.649 666.958


IPT 565.602 588.178 454.393 600.287
F W econ.

inlet 241.0 199.8 230.9 243.9

temperature \"c\
(1) (2) (3) (4)
1 0.20(37 0.2122 0.1710 0.2178

Extraction 2 0.8037 0.8339 0.6581 0.8534

steam 3 2.2511 2.3251 1.8411 2.3770


pressure 4 6.5805 6.7589 5.3921 6.9437
5 16.043 16.597 12.989 16.992

6 36.363 0.0 29.542 38.464

(1) (2) (3) (4)


Condenset temp.

after ejector 47.4 47.3 45.4 48.0


G.S.C. 47.7 47.7 45.9 4S.4

D.C. 48.6 48.5 46.5 49.2

LPH-1 56.8 57.1 53,7 57.7


LPH-2 90.3 91.0 85.7 91.5
LPH-3 120.5 121.4 U4.9 112.1

Deaerator 160.8 161.9 152.9 163.0


HPH-5 197.9 199.8 189.7 200.2
PIPH6 241.0 199.8 230.9 243.9
270

S c h e m a t i c r e p r e s e n t a t i o n a n d m a t h e m a t i c a l d e s c r i p t i o n of t h e
plant :

The schematic representation of the system under consideration is shown


in fig.Al. The major control variables are fuel input Pp, feedwater input
Fw and control valve setting Cy. The output

FP^O vVQter input

Control valve
of H, R torbine

Fig l A Schematic representotion of the steam generoting system


271

variables are throttle pressure P, steam flow to H.P. turbine S and drum
water level L. Thus, a nonlinear multivariable plant having three inputs
and three outputs is considered. The validity of the model is tested
with real industrial data of 210 [MW] unit (BHEL, INDIA). The plant is
assumed to be operated at 60% maximum continuous rating (MCR). A
step change of ± 10 - 20% around the operating conditions of the plant is
injected into the open-loop plant. It is observed that the open-loop plant
dynamics shown in fig.A2 agree quite well with real plant responses. The
details of the system model is given in [13].

[cm]
68 2 6 A 5 -

64 0267
Drum 'evel

• i~ 2'.5 T = 3000[sec]
62 8 2 5 3 - 5 0

SO

175.8
TJ 3000

Drum pressure
151.30

i l<9 / s e c j
U 8 36
SteOm flow
135,0
8 T = 300n(sec]

' -.'i°'o' change in control valve opening


272

73.96r

^^^•-^ Drum le»el


6*00
T--3000l»c)

H«9/s»cJ
135-00 ^ ' ^ - - - _ _ _ _ S < . o m fto* T = 3000ls»c)
133-85

[kg/cm']
175.7968,
175.8 k
\\..___D™m pressuro 1-3000[s«)
172,8231
3

lb) 10-20CV.] chonge in f»»Jwot»r input

I c '"J Drum level

51 T= 3000 [sec]
S6.5*

kg/cm ]
209.31-

17 6 8
T-SOOOlsecj

[ kg/sec]
11.7.30

Sfeom flow
135.0
T = 3000 [sec]

Ic) 10-20r/«] change in fuel input

F i g . 2 A : Op*n-toop plont dynomUs.


273

The set of first order nonlinear differential equations which represent the
system's dynamics in time-domain is given by
dPIdt = {-0.001935.P. + 0.014525Pf - 0.000736Fw
+0.00121i + 0.000176r£')
dS/dt = (lOCv.pi/2-0.7857165) {A\)

dLjdt = (0.000863Fiv + 0 . 0 0 2 P F + 0.463Cv - O.OOOOOeP^

-0.00914L - 0.0000821^ - 0.0073285)

In the above description of the model, the variable 'TE', which repre-
sent the feed water input temperature, may be reasonably assumed to
be constant (no heater [high pressure or low pressure] is tripped during
operation). However, if any fluctuation in the variable 'TE' occurs due
to either improper heat transfer in the economizer section of the boiler,
through which the input feedwater finally passes, or sudden tripping of
any heater etc., that fluctuation of 'TE' becomes very unpredictable in na-
ture. Hence, for simplicity of the decoupling controllers structure, which
is based on the mathematical description of the nonlinear multivariable
plant/system, the variable 'TE' of the model (Al) is set to zero. Thus
we get the following simplified mathematical description :
ii -0.00193i2i?^^^ + 0.0012113
i2 = -0.785716i2
X3 - 0 . 0 0 0 0 0 6 1 ? - 0.0073283;^ - 0 . 0 0 9 1 4 i 3 - 0 . 0 0 0 0 0 2 i §

0.014524 0.0 -0.000736 "1


0.0 lO.Oa:^* 0.0 "2

0.002 0.463 0.00863 U3

(A2)
1 0 0 Xi

0 1 0 X2

Yz 0 0 1 X3

The state variables (P,S,L) = (xi, 12)2:3) and control inputs (Pp, Cv,Fw)
274
(UIJUJJWS), respectively.

The basic design task is divided into two parts :

(i) Deriving the nonlinear state variable feedback law for the block de-
coupling of the plant [13]
(ii) Generation of the FLC/CFC for the block- decoupled subsystems.

The three outputs of the plant are steam flow to H.P. turbine, throttle
pressure and drum water level. Among these outputs, two of them (steam
flow to H.P. turbine and throttle pressure) will be controlled together and
the remaining one (drum water level) will be controlled separately. A
careful inspection reveals that the second output (i.e., the steam flow X2)
of the plant represented by (A2) does not depend directly on drum water
level (xs). Hence, in the present problem, for the sake of block-decoupling,
the first output will be straightway decoupled from the third. Thus, the
first and the second outputs will be decoupled from the third, whereas the
first and the second outputs will remain interacting within themselves.
Here, the advantages of a particular mathematical description (A2) of the
given steam generating unit will be exploited for block-decoupling [13].

The final closed loop plant is shown in fig.(A3).

- 1 Blrjck-decoupled inner loop


ir
^ ^ —n G*(x) ^ ^ Nonlinear
FLC/CFC ^ cU)

'-^ ^ y^ eqOQtions ^ L

Blok
11 decoupled
I r i x ) * <J
outputs
I
I I

Outer-loop feedbock

f-ig 3 A Schemotic representation of the closed-loop system


This page intentionally blank
275

Acknowledgment

The author is thankful to Maya Dey, Joydeb Gupta, Somnath Mazumder


and Probal Sengupta for preparing the manuscript. Author is also thank-
ful to Swapan Raha from whom author has learned many new aspects of
fuzzy logic and its applications.
CHAPTER 10

FUZZY CONTROLLER DESIGN: A SLIDING


MODE APPROACH

Chung-Chun Kung and Sinn-Cheng Lin

Department of Electrical Engineering


Tatung Inst, of Technology
40 Chungshan North Road, 3rd Sec, Taipei, Taiwan, R.O.C.

Abstract
A fuzzy-sliding mode controller, which is designed by the techniques of the fuzzy logic
controller and the sliding mode controller (or called variable structure control), is pro-
posed in this work. Like the sliding mode of the sliding mode control system, the fuzzy-
sliding mode control system has a fuzzy-sliding mode. The reason for calling "fuzzy-
sliding mode" is that the sliding surface in the proposed scheme is a fuzzy set rather than a
crisp set found in the conventional sliding mode control system. In the design of the fuzzy-
sliding mode controller, one can easily determine the membership function, observe the
fuzzy rules and predict the controlled system behavior. Furthermore, the number of infer-
ence rules, which is an exponential function of the number of system state variables in a
conventional fuzzy logic controller, is reduced to a linear function of the number of system
state variables in the fuzzy-sliding mode control system. Simulation results show that the
proposed scheme has the following advantages:

1. The dynamics behavior of the controlled system can be approximately dominated


by a fiizzified sliding surface.
2. Fuzzification of the sliding surface will not only increase the robustness to the sys-
tem nonidealities but also decrease the chattering.
3. The fuzzy-sliding mode controller can control most of the complex ill-defined sys-
tems without knowing their mathematical models.

277
S.G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 277-306.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
278

1. Introduction

The fuzzy logic control has become one of the most important areas of research in the ap-
plications of the fuzzy set theory [l]-[4] since about twenty years ago, Mandani and his
co-workers [8]-[10] have successfully applied the simple_/Hzzy logic controller (FLC) to
several industrial processes such as the steam engine, warm water plant, stirred tank tem-
perature system, etc. During recent years, the literature fuzzy logic control has been grow-
ing rapidly. Most of the historically important milestones in both the developtnent and
application of fuzzy logic control have been summarized by Lee [5][6].
By converting the linguistic control strategy into automatic control strategy without
using the mathematical model of controlled systems, the FLC can be used to deal with
complex ill-defined systems. However, the work of FLC design is time-consuming and the
response trajectory of the controlled system is unpredictable because fuzzy control rules
are experience oriented and the suitable membership function should be selected by the
trial and error procedure. To overcome these disadvantages, we will introduce the sliding
mode of the sliding mode controller (SMC) to the FLC. We will call it the fuzzy-sliding
mode controller (FSMC).
The conventional sliding mode control methodology has been developed in the lit-
erature [15]-[17]. By choosing a suitable sliding surface
X = { X I cj(x) = 0 }
and applying discontinuous control action across the surface, the resulting state trajectory
of the controlled system can be transferred onto the sliding surface and then slide along the
surface.
There are two phases in the sliding mode control system. One is called the "hitting"
phase and the other is called the "sliding" phase. In the hitting phase, a hitting control law
will be applied to transfer the representation point everywhere of the state space onto the
sliding surface. As soon as the representation point hits the surface, the controller turns the
sliding phase on, and applies an equivalent control law to keep the states lying on the slid-
ing surface. In an ideal situation, when the state trajectory stays on the sliding surface, the
control system then has perfect insensitivity with respect to the external disturbances as
well as the plant parameter variations. Furthermore, even if the system is perturbed such
that the representation point is out of the sliding surface, the control system turns on the
hitting phase again, and reacts the hitting control law to bring the states toward the sliding
surface once more. Therefore, the sliding mode control imposes certain constrains on sys-
tem dynamics; in other words, one can predetermine a sliding surface to dominate the dy-
namic behavior of the controlled system.
However, the methodology of sliding mode control system has also some draw-
backs as follows:

1. The state trajectory in the hitting phase is usually sensitive to system uncertainty.
This difficulty can be alleviated by using high gain feedback to save hitting time [21] [22].
279

But there still exist some problems associated with high-gain feedback such as extreme
sensitivity to unmodclled dynamics, actuator saturation, etc. [18].
2. Due to various nonidealities such as hysteresis of switching operation, time delay
of the control system, and sampling of digital implementation, the state trajectory of a real-
ized sliding mode control system does chatter rather than slide along the sliding surface
[15]. This undesirable chattering phenomenon will cause high-frequency unmodelled dy-
namics in the controlled system.

In the course of designing FSMC, we first adopt the methodology of SMC to select
both the membership functions and the fuzzy inference rules, and then fuzzily the sliding
surface and get the feedback control gain from the fuzzy inference rule base. Because the
FSMC is composed of FLC and a SMC, it might have the advantages of both.

2. Fuzzy Logic Controller and Sliding IMode Controller


2.1 Fuzzy Logic Controller

The simple FLC based on fuzzy set theory [l]-[4], originally conceived by Assilian
and Mamdani [11], is used to regulate the output of a process around a given set-point.
The basic configuration of the simple FLC comprises three principal components: ajuzzi/i-
er, a rule base with inference engine, and a defuzzifier as shown in Figure 1. We briefly
describe the functions of them as follows:

A. Fuzzifier

The main function of the fuzzifier is to convert crisp data into fuzzy sets, i.e.

A'=F(x)=F{XaXGX) (1)
B' = F(y)=Fiy,xGY) (2)

where A' and B' ate two fuzzy sets, and F(.) represents a fuzzification operation [2], Xg and
_Vo are the crisp input values from the process, GXand GY arc the scaling factors of x„ and
yg such that x e (7 and ysV.

B. Rule Base and Inference Engine

In general, an FLC consists of a set of linguistic rules which define the individual control
situation. For instance, the control rules of two-input-one-output FLC have the form:

R^: If X is Aj andy is Bj Then zisC^,j= 1,2,..., / (3)


280

where X and y arc linguistic variables representing two process state variables, and z is a
linguistic control variable; A., B. and C, withy = 1, 2,..., /, are linguistic values of x, y, and
z in the universes of discourse U, V, and W, respectively.
The fuzzy control rule is impleniented as a fuzzy relation in C/ X F x W and is de-
fined as follows

R.= (A^AB,)^q (4)

In this work, we adopt the widely used Mamdani's mini-operation fuzzy implication func-
tion [9], and hence the membership function oiR^ is given by

\iiR^{u,v, w) = min{\iAj{u), \i.Bj{v),ViCj{w)] (5)

Thus the overall relation, R, of equation (3) can be implemented by using the union opera-
tion to link all rules together; that is

R= RjU R^u ...\J R, = \J Rj (6)

Consider now, i{A' and 5 ' denote the linguistic values of inputs x and y, respective-
ly, then the linguistic value of output z can be obtained by using the max-min composition-
al rule of inference

C'^{A'nB')°R (7)

C. Defuzzifier

Because the control signal of a process must be a crisp value signal rather than a fuzzy
one; the linguistic value of control output, C, which is obtained from inference engine,
must be converted into a crisp value, z^, symbolically

z,= D{C') (8)

where D(.) denotes any function of dcfuzzification. The one which is widely used and will
be adopted in the defuzzifier of FSMC is the center of area (COA) method [13].

GX
GZ
Rule Base
Fuzzifxer and c; Defuzzifier 4 ^ .
Inference Engine

GY

Figure 1 The configuration of a simple FLC


281

To speed up the inference and to save memory one can preconstruct a decision
Junction (or, approximately, a look-up table) based on Eqs. (1), (2), (6), (7) and (8) for the
FLC. For example, consider an FLC with error e and change in error Ae as two input vari-
ables, and change in control Au as one output variable, then one can formulate

u{t + At) = u{t) + AH


and
Au = D{{F{exGE)r\F{AexGQ\ oR] x GU

= M{exGE, AexGQxGU (9)

where M{., .) denotes such a decision function.

2.2 Sliding Mode Controller

The conventional sliding mode control is also called the variable structure control, which
has been developed essentially in the Soviet Union [15]-[17]. Consider a system to be con-
trolled which is described as follows:

i = f(x)-H b(x)M (10)

where x = [Xj x^ ... x„]^ is an /i-dimentional vector that denotes the state of the system, f is
an n-dimensional vector, M is a scalar control input and b is an «-dimensional control gain
vector.

A. The sliding phase

Let us define the sliding surface in the state space R" as

2:={x|o(x) = 0} (11)

where o(x) is an arbitrary function of x which will dominate the dynamic behavior of the
control system and have to be properly chosen. From Eq. (10), we see that

c r - ^ i = g ' ( x ) [ f ( x ) + b(x)H] (12)

in which g^(x) is the gradient vector function of a(x). Without loss of generality, we as-
sume that g^(x)b(x) > 0 and is bounded.
In the design of the sliding mode control system, we must first find the equivalent
control law, u^^, which will keep the state of the controlled system staying on the sliding
surface whenever X6 Z, that is
282

o\.^^=0 (13)

Substituting Eq. (12) into Eq. (13), we get

g\x)[f(x) + b ( x ) « J = 0 (14)

Hence

".,= -(g'b)-'g^f (15)

Therefore, under the sliding mode, the equivalent closed loop system can be obtained by
substituting Eq. (15) into the original system of Eq. (10), as follows:

X = {I-b(x)[gV)b(x)]-'g^(x)}f(x) = f^x) (16a)


and
O(x) = 0 (16b)

From Eq. (16), we see that the gradient of the sliding surface, g^x), will govern the
dynamic behavior of the control system in the sliding mode. Thus one can expect to obtain
good performance from the control system by suitable design of the sliding surface.

B. The hitting phase

In the hitting phase, where xe R°-Z, a hitting control law will be found to transfer the state
anywhere to reach the sliding surface. Let us define a Lyapunov function as follows:

V = |o'(x) (17)

It is shown in [19] that if there exists a positive constant ri, such that

V<-Tl|a(x)|, V x e R°-Z (18)

where r||CT| is a function of class K [23], then the state trajectory will hit the sliding sur-
face, Z, within a finite time /^ defined by

^ |o(x(0))|
/, < ^ - ^ (19)

The above results show a global sliding condition and guarantee that all initial state lying
off Z will be attracted to Z. From Eqs. (12), (17) and (18), we see that the sliding condi-
tion is satisfied if
283

y=aa=a g^(f + bw) < -ri|cr| (20)

or, equivalently

ag^ (f + bM) < -TiCT sgn{a) (21)


where
sgn(a) = \ '' ' i * ' ^ ^ (22)
^ ^ ^ ' - 1 , if CT<0 ^

Define a(x) = ri(g^(x)b(x))"', then Eq. (21) is satisfied if

« = «., + «j (23)

where Mj.^ is given by (15) and

u^ > a(x), with o(x) < 0 (24)


u' < -a(x), withCT(x)> 0

Therefore, we can choose

« = M., - k(x) sgnic) (25)

in which k: R " ^ R " satisfies k(x) > a(x) for all xe R".
In the ideal sliding mode control, as soon as the state trajectories of the system hit
the sliding surface, the state trajectories slide along the surface. However, because of non-
idealities of the real systems, a realized sliding mode control system may have chattering
along the sliding surface. To alleviate the chattering phenomenon, many strategies have
been proposed. For instance, Slotine and Sastry [18] suggested a quasi-sliding mode con-
troller which replaces the term sgn{o) in Eq. (25) by sat{o/e), i.e.,

.,«(a)..aW = {f; l^^^ll (26)


This leads to tracking within a guaranteed precision e while allowing the alleviation of the
chattering phenomenon.
284

3. Fuzzy-Sliding Mode Controller

3.1 Basic Considerations

To date, the fuzzy logic control and the sliding mode control have been two different re-
search topics. The basic idea of combining these two methodologies together and formu-
lating a scheme of fuzzy-sliding mode control is that the appearance of nonidcalitics such
that the sliding surface of the sliding mode control system is no longer crisp. In other
words, it is possible that a state, say x^, which belongs to Z in the ideal sliding mode but
does not belong to the same set as nonidealities appear. Hence, the sliding surface turns
into a fuzzy set rather than a crisp one in the real situation, and the fuzziness of such a set
depends on the amount of nonidealities. Therefore, we can use the fuzzification operator
to fuzzily a crisp sliding surface and then obtain a fuzzy-sliding surface. Then, we use the
fuzzified version of the crisp variable a as a linguistic input variable of the FSMC. To
handle more information, we also fuzzily the derivative of a as another linguistic input
variable. Hence, an FSMC uses the linguistic variables of a and d as inputs instead of er-
ror and change in error in the conventional PLC. In order to develop the FSMC, we re-
write the FLC method and the SMC scheme as follows:

A. Fuzzy Logic Control Law

u{t + At) = u(t)+ Au (27)

Au = M(ex.GE, AexGQ xGU

= D{[F(exGE)nF(^AexGQ\oR}xGU (28)

B. Sliding Mode Control Law

« = «., + u, (29)
with
u, = -k(x) sgn(a) (30)

where k: R - ^ R " satisfies k(x) > a(x) for all xe R", and a(x) = r|(g^(x)b(x))' .

3.2 Fuzzifications of Sliding Surface and Its Derivative

In the approach of designing FSMC, we will use the fuzzy logic control law of Eq. (27) to
replace the sliding mode control law of Eq. (29); namely, the fuzzy sliding mode control
law will be formulated as
285
u{t + At) = u(t) + Ujf (31)

where Ujf is obtained by fuzzy relation and what we wish is that E{u(f)} —> M^^ as ? —> <»
(£{•} denotes statistical expectation). To establish such a fuzzy-sliding mode control law,
the designer must keep in mind some physical meaning and geometry interpretation of the
sliding mode regime. We illustrate these concepts by viewing the dynamics of a linear
system.
Referring to Eqs. (10), (11), suppose that f(x) = Ax, b(x) = b,CT(x)= c^x, and g^(x)
= c^, then, the global sliding condition for such a system is given by

acKO (32)

and the sliding mode control law can be chosen by

« = "., + " . = - ( k . / + k / ) x (33)

in which k^^, the equivalent feedback gain vector, and kj, the discontinuous feedback gain
vector, are respectively given by

k,/ = (cVc"A (34)


and
ko > 0, if csgniXi) > 0
k' 0, if Gsgn(Xi) = 0 (35)
-^0 < 0, if C!Sgn(,Xi] < 0

where kj is the /-th element of the vector k^. Substituting Eqs. (33), (34) and (35) into the
original system of Eq. (10), one can obtain

i=(A-bkJ)x-bk/x (36)
and
<j= c^ X = c'r(A - bkJ,) X - c'^bkj x = - c^'bk/x (37)

From the viewpoint of geometry, any state x can be represented as a point in the
state space. Thus, the value |CT(X)| can be interpreted as the distance between the represen-
tation point X and the sliding surface Z. Consequently, in the physical sense, d can be
viewed as the velocity of the representation point tends toward the switching surface. From
Eq. (37) one can obtain

c = 'bZkl = C^bko Hxi (38)


286

Hence, the magnitude of discontinuous feedback gain, k^, governs the convergent rate of
O. Kkg is increased, the speed of representation point that moves toward the surface accel-
erates and the hitting time is decreased. It also has been shown that a sufTiciently large
gain can guarantee the existence conditions of the sliding mode. In practice, however, as
the switching operations do not occur as soon as the sign ofCTchanges, the larger gains
cause the larger trajectory chattering. This is due to the switching criteria in the conven-
tional sliding regime based on a sign function, which is a crisp version and has a sharp
edge. In other words, the sliding surface in the conventional sliding mode control is a
fuzzy singleton with membership equal to 1 as o = 0 and equal to 0 as (J ;* 0. Now, let us
define the following fuzzy sets:

CT.p : a is positive
a.z : o is zero
CT.n : a is negative

such that \i^^B [0, 1], H„^G [0,1] and ^l„„e [0, 1].
It is obvious that in an ideal sliding mode, the above fuzzy sets degenerate into
crisp sets, i.e.,

CT.p={K|a(x)>0}=5:P (39a)

a.z={x|CT(x) = 0} = 2: (39b)

a n = { x | a ( x ) < 0 } = ZN (39c)

and their membership functions are

I 1, / / CT>0 ,.„ ,

1, if 0 = 0
(40b)
0, if CT^tO

, 1, i/ o < 0 ,.„ ,
^''"io; ,/a>o ('«^>
Similarly, in the quasi-sliding nrode proposed by Slotine and Sastry [18], the
switching surface becomes a boundary layer, which is also a crisp set, thus

CT.p= { x | a ( x ) > e } (41a)


287

az = {x||a(x)|<e} (41b)

a.n = {x I a(x)<-e} (41c)

and their membership functions are

]i.(5.p —
_ J 1, if a>e (42a)
0, if CT<e

(42b)

1, if a < - e (42c)
\i.a.,.
0, if CT>-e

In real situations, the switching surface is a fuzzy set rather than a crisp one. So,
the first step in the design of FSMC is to fuzzify the sliding surface; that is

a.p=F(XP) (43a)

a.z = F(2:) (43b)

a.n = F(EN) (43c)

In the following discussions, we will set

1, if 0 > / j

^(j.p(cr) = oils. if 0 < a < /j (44a)


0, if a <0

l-CT//„ if 0 < a < /s


^ o ^ ( o ) •• I ^ alls. if - / j < a < 0 (44b)
0, if |a|>/.

-alls. if - /, <CT< 0
|Xo.«(CT) = • 1, if CT<-/, (44c)
0, if CT>0
288
Similarly, we can fuzzify Aa(x(t)) = C(x(t)) - a(x{t-At)) = oAt , change a, in the same
way, such that

I, if ACT>/C
^4o.p(Aa) = ACT//,, if 0 < ACT < /, (45a)
0' if ACT<0

' l-Aa/lc, ;if 0 < ACT < /c


^ia^(Aa) = < l+Ao/Zc, if -/C<ACT<0 (45b)
if 1 ACT] > Ic

' -Aa/lc, if - /c < ACT < 0


n&ani^o) =' 1, if ACT<-/<: (45c)
0' if ACT>0

Now, wc are ready to develop the scheme of fuzzy-sliding mode control.

3.3 The Rule Bases

From preceding discussion, we notice that a and ACT can be interpreted as the distance
from the representation point to the sliding surface and as the velocity of representation
point tends toward the sliding surface, respectively. Furthermore, we have indicated that
larger feedback gains cause faster convergence but larger trajectory chattering. To attenu-
ate the chattering, the feedback gains must be chosen appropriately. Therefore, in design-
ing the FSMC, we will use a fuzzy relation to obtain a nonlinear state feedback control
gains based on the specification ofCTand ACT. To do this, let us select two groups of vari-
ables as the input variables of the FSMC

M, = osgn(x), / = 1, 2, ..., n (46a)

V, = Aasgn{x), I = 1, 2 n (46b)

Then we transfer these two groups of variables to their corresponding universes of dis-
course by separately multiplying two groups of scaling factors, i.e.,

5, = M, X GS, , .y,e tT,, i = 1, 2,..., n (47a)

cs, = V, X GCS. , cj,e V-, i = 1,2,..., n (47b)


289

Consequently, the fuzzy-sliding mode control law of Eq. (31) can be formulated as
follows:

uit + At) = u(0 + Ujj.


where
n
«rf/ = -krfy-x = - E t^j-Xi (48a)
r=l
and
k',f = M,{s,,cs;)xGK, (48b)

Thus, for an n-state system, we should establish n sub-rule bases to form an overall
rule base. Each of them has two inputs s. and cs. and one output kj. If we define S-, CS.
and KD. as the linguistic variables corresponding to 5,, cs- and k^^ respectively, the fuzzy
sets A^j, Bjj and Q ,j = 1, 2, ..., /„ as the linguistic values of 5, , CS^ and KD. respectively,
then the rule base may have the following form:

Rf (Rule Base i, RB-, i=\,2,...,n)

R.,: If S,.A,,andCS,.B., Then KD,C,^

R-f If S,A,jandCS,B,j Then KD,Q^ (49)

R„: If S,A„andCS,B,„ Then KD,C„

in which /?,y is the J-th rule in the i-th sub-rule base R., and /, denotes the number of rules in
R-, therefore

R, = U^v=0 [(Si-Aij ACSi.By) ^KDi.Cij] (50a)

The overall rule base is comjKJsed of-/?,, i.e.,

R = {R„R„...R,,...,R„} (50b)

Consequently,

k'jj- =M,(s,,cs)xGK.=D{[(F(s)r\F(cs)]oR.}xGK. (51)

Figure 2 schematizes the architecture of the FSMC. Note that for a n-statc system,
a FSMC consists of n distinct two-input-one-output FLC as well as a sliding function
evaluator (or called an input variables generator). Thus, the FSMC has 2n input variables.
290

Theorem If the input space of each input variable of the FSMC is divided into m parti-
tions, then the number of inference rules in a complete rule base for the FSMC
is equal to / = nm^, where n stands for the number of system states.

proof: For a system containing n state variables, x„ x^, ..., x„, the rule base of the FSMC
has n distinct sub-rule bases, namely, RB^, RB2,..., and RB„, and each sub-rule base
RB- has two input variables, 5, and CS., as well as one output variable, AX),. Every
sub-rule base RB. consists of/^ = m^ rules, / = 1, 2, ..., n, to form a complete sub-
n
rule base. Therefore, n complete sub-rule bases have I = Y, li = nm inference rules.
D
For a conventional FLC, the complete fuzzy rule base for a system has n state vari-
ables, and that each of the state variables have m partitions, as inputs has m" inference
rules. The above theorem indicates that by using the FSMC, the number of inference rules
in a complete rule base is reduced to a linear function of system state n, instead of an expo-
nential function of n for the conventional case. Therefore, the fuzzy-sliding mode control
scheme performs with great effectiveness in the control of a large scale system.

2-tnpul'l-output fuzzy logic contiolle

RB: Rule Base. F:Fuzzifier. DF: Defuzzifier. PiPUnl

Figure 2. The FSMC architecture


291

MUX

y^ Delay K"! _^___

^ ^-R7>
RB: Rule Base P : Plant MUX: Multiplexer
F : Fuzzifier DF: Defuzzifier DMU: Demultiplexer

Figure 3. The block diagram of FSMC with serial structure

3.4. Serial Structure of FSMC

Generally, for a system with n state variables, one must establish n distinct sub-rule bases
to form a whole rule base for the FSMC. In practice, the n distinct sub-rule bases can be
established identically; therefore, one can establish only one rule base which has two lin-
guistic input variables, S and CS, as well as one linguistic output variable, KD, with re-
spect to the crisp input variables, (7sgn(x) and Aasgn(x), and the crisp output variable, k^^ ,
for all I = 1,..., «. The rule base might have the form

/?;. IfS.Aj and CS.B^ Then KD. C. j=h2,...,l (52)

In this situation, the input variables are sequentially fed into the controller by a multiplex-
er, and the output variables are demultiplexed by a demultiplexer. Consequently, the struc-
ture of such an FSMC becomes a serial one as shown in Figure 3.

4 Simulation Examples and Applications

4.1 Simulation Examples

In the following we illustrate three examples of second order systems and show how to de-
velop the fuzzy-sliding mode control strategy. These examples are simulated by a digital
computer with a sampling interval of 0.1 sec. and with the initial condition x(0) = [ 1 0 ] \

Example 1 Consider the system


292

0 1 "0"
x= X + (53)
- 1 -2 _ 1

If we choose the sliding surface for the conventional sliding mode control as follows

a = c'^x = [l l ] x

and select ^o= 5. From Eqs. (33), (34), and (35), we have

k J = (c^b)'c^A = [-l-l]

and

5, for asgn(Xi) > 0


^; = 0, for asgn(Xi) = 0 ('•=1,2)
-5, for csgn(Xi) < 0

«^ = -ka^x = -£A:;j:,.

Hence, the sliding mode control law can be expressed as follows:

" = «., + « . = - ( C + k / ) X = (1-^;) X, + (1- k/) X,

Figure 5 shows the response of the conventional sliding mode control systeiti. Next, let us
design a FSMC for the system of Eq. (53). In designing the FSMC, we define the asso-
ciated fuzzy sets to be shown in Table 1 and their corresponding membership to be shown
in Figure 4, where we assume that

Hs,.» =|is2.» = lis (54)

|lc5,.*=Hci2.. =\i.cs i*:P,Z,N) (55)


and
yiKD,.u=liKD,.u =\Ha) i#: PB, PM, PS, Z, NS, NM. NB) (56)

and their universes of discourse are all assigned to be [-6, 6]. The fuzzy-sliding mode con-
trol rules are described in Table 2.
293

5", .P: 5, is positive KD. .PB : KD. is positive big


S,.Z: S- is zero KD. .PM: KD. is positive medium
Sj .N: Sj is negative KD, .PS: KD. is positive small
KD..Z .KD.iszero
CS^ .P : CSi is positive KD. .NS: KD, is negative small
CSi .Z: CS^ is zero KD, .NM: KD, is negative medium
CS, .N: CS^ is negative KD, .NB : KD, is negative big

Table 1. The fuzzy sets assignment of the FSMC (i = 1, 2)

IfS,.P2CRACS, .P Then KD,.PB


If S,.Pand CS, Z Then KD,.PM
IfS,.PsndCS, NThen KD:.PS
If S,.Zand CS, PThen KD, .PS
If S,.Zand CS, ZThen KD,.Z
If S,.Zand CS, NThen KD,.NS
If S,.Nand CS, P Then KD,.NS
If S,.Nand CS, Z Then KD, .NM
If S,.Nand CS, NThen KD .NB

Table 2. The inference rules of the FSMC.

0.5 - 0.5

KO.PM KD.PS KO.Z KD.NS KD.NM KD.NB

0.5

Figure 4. The membership functions of S, CS and KD


294

Set

GS, =GS^ = 6
GCS^ =GCS^ =12
GK, =GK^ =0.85

The response trajectories of fuzzy-sliding mode control are shown in Figure 6. Comparing
Figure 6 with Figure 5, one will notice that the chattering phenomenon in the fuzzy-sliding
mode control system is smaller than that in conventional sliding mode control system.

Example 2 To view the robustness of fuzzy-sliding mode control, let's assume that the
system in Example 1 has paranrKter uncertainty as follows:

0 1 0
X = \ +
H - A ^ i -2-)-Aa2 J I

where the parameter uncertainty, ha., i = I, 2, are uniformly distributed ran-


dom processes with |Aa.| < 1. Applying the SMC and the FSMC given in Exam-
ple 1, we get the response trajectories for the conventional sliding mode contr6l
system and the fuzzy-sliding mode control system as shown in Figure 7 and Fig-
ure 8, respectively.

Example 3 Consider the following nonlinear system:

0 1 X\
X =
-1 -2 \X2\

Again, we apply the SMC and FSMC as given in Example 1, the response tra-
jectories of both control schemes arc shown in Figure 9 and Figure 10,
respectively.

From the above examples, wc can make the following observations:

1. The dynamic behavior of a fuzzy-sliding mode control system is predictable by in-


troducing a fuzzy-sliding mode regime.
2. The FSMC is robust against the plant parameter uncertainty.
3. In controlling the nonlinear system, the fuzzy-sliding mode control strategy also
exhibits a good performance.
4. The chattering in the fuzzy-sliding mode control system is smaller than that in the
conventional sliding mode control system
295

(c) (d)
Figure 5. The response trajectories of conventional sliding mode control
system (Example 1)

u 0.5 -

10

f. 5
o

-5
10
time, sec time, sec
(c) (d)
Figure 6. The response trajectories oifuzzy-sliding mode control
system (Example 1).
296

a 0.5

-10

time, sec time, sec


(c) Cd)
Figure 7. The response trajectories of conventional sliding mode control
system (Example 2)

0) 0.5

time, sec

10

-5
10
time, sec
(d)

Figure 8. The response trajectories of fuzzy-sliding mode control


system (Example 2)
297

<u 0.5

state, xl
(.0)

time, sec time, sec


(c) (d)
Figure 9. The response trajectories of conventional sliding mode control
system (Example 3)

•Z 0.5

-0.5

-5

time, sec time, sec


(c) (d)

Figure 10. The response trajectories oifiizzy-sHding mode control


system (Example 3)
298

4.2 Applications

In this subsection, we will apply the scheme of FSMC to deal with two dynamic physical
systems. One is a highly nonlinear inverted pendulum system, and the other is a two-link
robot arm which has not only nonlinearity but also coupling effects.

/. Inverted Pendulum System


We will illustrate the performance of the FSMC by applying it to an inverted pendulum
system as shown in Figure 11. In the inverted pendulum system, a cart which is controlled
by an actuactor force/is free to move on a one-dimensional track. A rigid pole is mounted
on this cart. The dynamics of the inverted pendulum system can be characterized by two
state variables, with x, denoting the angle of the pole with respect to the vertical line, 6,
and Xj denoting the angular velocity of the pole. By neglecting the coefficient of friction,
the state Eq. can be expressed as follows [12]:

gsinxi-cosxi [-;;^xlsmxi-^;;^f^

""' " f/ 2f-cos2x,

where g - the gravity constant, 9.8 m/s^.


m^ - the mass of the cart, 1.0 kg.
m - the mass of the pole, 0.1 kg.
/ - the length of the pole, 1 m.
/ - the input force to the cart.

In the design of FSMC, we treat the inverted pendulum as a black box with one input
variable,/, and two output variables, Xj and JC^ , and we assume that x, and Jf^ are measur-
able. The control system is simulated by a digital computer with sampling interval At = 2
ms and initial condition x^{0) = 1 rad and XjCO) = 0 rad/sec.

A. Regulation
The regulation problem is to balance the pole in the vertical position by using the
actuactor force/ to control the motion of the cart. So, the sliding surface can be chosen as
CT = x, + X2 . By applying the FSMC as given in Example l,we get the response of the
fuzzy-sliding mode control system as shown in Figure 12. To view the robustness of

/
T3 D"^
Figure 11. The inverted pendulum system
299

control system, one may assume that the pole has load variations and external disturbanc;
the related results are shown in Figure 13 and Figure 14, respectively.

B. Tracking
Now, suppose that we want to control the states of the pole to track a desired sinu-
soidal trajectory given by

x,j = a sin(M)
x^j = dx,j / dt = aco cos(CiX)

Then we can select the sliding surface as

<y= ix,-Xij) + (x2-xJ

Again, adopting the FSMC as given in Example 1, we get the system response as shown in
Figure 15. Similarly, by adding the load variation and external disturbance shown in Fig-
ure 13b and Figure 14b, we get the resulting trajectories shown separately in Figure 16 and
Figure 17.

2. Two-Join Manipulator

Consider a two-joint manipulator shown in Figure 18, where g is the gravitational con-
stant, 0, and 0j are joint angles, and u, and M^ are the applied torques. Let
Xi = 6 i , X2 =6] , X3 =02, ^4 =02 and under the assumption that there exist lumped
equivalent masses and massless links, then its dynamics can be represented as the follow-
ing state space [20][22]:

Xl ~ Xy

^ m v2.i.oft
Xl = -f(^,2>c^' . . +
+ 2P,2A:2A:, ^ „y,g
„ ^+. M,)
. ^ -M
^ ( /- p
f .t ^ x. ,2' .+ y,g + «,)

X3 —X^

X4 = - --f-(Pi2^2' + 2p,jX^, + Y,g + M,) + -7-(-p,iX,' -I- Yzg + «,)

with
a,, = (m, + w^) / / -t- 7M^ /j^ + Im^ I, I2 cos Xj -H J,

a,2 —m^ I2 + w^ /, I2 cos Xj


Y, = -{{m, + m2)lj cos x^ + m212 cos(X; -I- Xj))
Y2 = - W j /j COS(X; + Xj)
300

0.5

5 10
tfme, sec
(b)

Figure 12 The responses of inverted pendulum system


(Regulation)

0.4

0.2

5 10
time, sec
(b)

-50

-100
0.5 1
time, sec Angle, rod
(c) (d)
Figure 13 The responses of inverted pendulum system with load variation
(Regulation)
301

time, sec Angle, rod


(c) (d)
Figure 14 The responses of inverted pendulum system with disturbance
(Regulation)

time, sec

Figure 15 The responses of inverted pendulum system


(Tracking)
302

>
<c

time, sec
(c)

Figure 16 The responses of inverted pendulum system with load variation


(Tracking)
2

>
c
<

>
c
<

time, sec
(c)
Figure 17 The responses of inverted pendulum system with disturbance
(Tracking)
303

Px2 = Wi 11 h sin X,

where m,, I., J., i = 1,2 denote the point mass, link length, and additional constant inertia
with respect to axis of rotation, respectively. This system not only has highly nonlinearity
but also has coupling effects between two links. Let's assume that the parameters of the
manipulator are given by: Wy = 0.5 kg, m^ = (l+w^) kg, /^ = 1.0 m, /^ = 0.8 m, and J,=J^ =
5.0 kg m^. Now, if we wish to control the manipulator to take a ball with the mass m^ = 3.0
kg from the coordinate (29/2, 0) to (-3"^, 0) and the initial angles arc 6,g= 1 rad, and O^,, =
0.5 rad, then, the desired paths can be exprssed as follows:

path 1 path 2 palh 3


e„: e„ -^ jc/6 -> 57t/6 -^ e,g
path 1 path 2 path 3

We can select three sliding surfaces for each path as follows:

path 1: (Ty = \.5ix^ - 7t/6) +^2 for link 1


CT^ = (JC3 + 7t/3) + X4 for link 2

path 2: a, = 0.8(Xi - 5KI6) + x^ for link 1


aj = 0.5(x3-:i/3) + X4 for link 2

path 3: a^ = 1.5(Xi - l)+x^ for link 1


CTj = (X3 - 0.5) + x^ for link 2

Owing to the insensitivity of the fuzzy-sliding mode, the coupling effects between two
joints can be treated as external disturbance. So, we can apply the design procedure indi-
cated in Example 1 to design two FSMCs for each joint independently, no matter whether
these two controllers are identical or not. For simplicity, we use the same fuzzy set

Figure 18 The structure of two-joint manipulator


304

Figure 19 Response trajectories of 9, and 9^

assignments as shown in Table 1 with / = 1,2 ,..., 4, and their corresponding membership
functions are the same as those shown in Figure 4. The inference rules in two controllers
are the same as those listed in Table 2. Now, we select the scaling factors to be

GS, = GS^, = 6, GCS^ = GCS^ = 12,


GS, = GS, = 12, GCS, = GCS, = 24,
GK, = GS^ = GK, = G A ; = 1
and

(=1

i=3
with
k,; = Mi a^gn(x)xGS,, Aa^gn{x)xGCS,)xGK,

where i = 1, 2,..., 4, and k = 1 for i = 1, 2, and A: = 2 for i" = 3, 4. Figure 19 shows the re-
sponse trajectories of 6^ and 6^.

5. Conclusions
The proposed^zzv-i'/i(/mg mode regime gives rise to several characteristics as follows:

1. The dynamics behavior of the control system can be to a large extend dominated by
a (fuzzy) sliding surface which is predetermined by the designer. In other words, like the
classical sliding mode control system, the fuzzy-sliding mode control system is also insen-
sitive to plant uncertainty as well as external disturbances.
2. Fuzzification of sliding surface will increase the robustness to the system nonideali-
ties and decrease the chattering.
305

3. By observing switching control criterion of classical sliding mode control in a sim-


ple linear time invariant system, one can easily derive the fuzzy-sliding mode control
rules. These fuzzy rules can be applied to the LTI systems as well as the nonlinear time
variant systems.
4. Because the control feedback gain is obtained from the fuzzy inference rules, it is
possible that the FSMC can control most of the complex ill-defined systems without know-
ing any of their mathematical model. Moreover, the sensitivity to plant uncertainty in the
hitting phase of the classical sliding mode control will be attenuated in the fuzzy-sliding
mode control.
5. The number of rules is a linear function of system variables rather than a exponen-
tial function in the conventional FLC.

Acknowledgements
The authors would like to express their appreciation to Professor Hsin-Hsiung Lin of Ta-
tung Institute of Technology for his careful reading and editing of the manuscript.

References
[I] G. J. Klir and T. A. Folger, Fuzzy Sets, Uncertainty, and Information, Prentice-Hall:
New Jersey, 1988.
[2] D. Dubois and H. Prade, Fuzzy sets and systems: theory and applications. Academic
press: New York, 1980.
[3] L. A. Zadeh, "Fuzzy sets", Information and Control, Vol. 8, pp. 338-353, 1965.
[4] L. A. Zadeh, "Outline of a new approach to the analysis of complex systems and de-
cision processes", IEEE Tran. on Syst. and Cyber., Vol. SMC-3, No.l, pp. 28-44,
1973.
[5] C. C. Lee, "Fuzzy logic in control systems: Fuzzy logic controller - Part I ", IEEE
Tran. on Syst. Man and Cyber, Vol. 20, No. 2, pp. 404-418, 1990.
[6] C. C. Lee, "Fuzzy logic in control systems: Fuzzy logic controller - Part 11", IEEE
Tran. on Syst. Man and Cyber., Vol. 20, No. 2, pp. 419-435, 1990.
[7] C. C. Lee, "A self-learning rule-based controller employing approximate reasoning
and neural net concepts". Int. J. of Intel. Syst., Vol. 6, pp. 71-93, 1991.
[8] T. J. Procyk and E. H. Mamdani, "A Linguistic self-organizing process controller ",
Automatica, Vol. 15, pp. 15-30, 1979.
[9] E. H. Mamdani, "Application of fuzzy algorithms for control of simple dynamic
plant", PTOC. IEE. Vol. 121, No. 12, pp. 1585-1588, 1974.
[10] E. H. Mamdani, "Application of fuzzy logic to approximate reasoning using lin-
guistic synthesis", IEEE Tran. on Computers, Vol. C-26, No.l2, pp. 182-1191, 1977.
[II] S. Assilian and E. H. Mamdani, "An experiment in linguistic synthesis with a fuzzy
logic controller". Int. J. Man Mech. Studies, Vol. 7, No. 1, pp. 1-13, 1974.
306

[12] Y. Y Chen and T. C. Tsao, "A description of the dynamical behavior of fuzzy sys-
tems", IEEE Tran. on Syst. Man and Cyber., Vol. 19, No. 4, pp. 745-755, 1989.
[13] R. Zhao and R. Govind, "Defuzzification of fuzzy intervals", Fuzzy Sets and Systems,
Vol. 43, pp. 45-55, 1991.
[14] M. Mizumoto and H. J. Zimmermann, "Comparison of fuzzy reasoning methods",
Fuzzy Sets and Systems, Vol. 8, pp. 253-283, 1982.
[15] V. I. Utkin, Sliding modes and their application in variable structure system, Mos-
cow: Mir, 1978 (English translation).
[16] V. I. Utkin, "Equations of sliding mode discontinuous system, I", Automat. Remote
Control, No. 12, pp. 42-54, 1971.
[17] V. I. Utkin, "Equations of sliding mode discontinuous system, 11", Automat. Remote
Control, No. 2, pp. 51-61, 1972.
[18] J. J. Slotine and S. S. Sastry, "Tracking control of non-linear systems using sliding
surfaces, with application to robot manipulators". Int. J. Control, Vol. 38, No. 2, pp.
465-492, 1983.
[19] J. J. Slotine, "Sliding controller design for non-linear systems". Int. J. Control, Vol.
40,No. 2, pp. 421-434, 1984.
[20] K. K. D. Young, "Controller design for a manipulator using theory of variable struc-
ture systems", IEEE Tran. on Syst. and Cyber., Vol. SMC-8, No. 2, pp. 101-109,
1978.
[21] K. K. D. Young, P. V. K. Kotovic and V. I. Utkin, "A singular perturbation analysis
of high gain feedback system", IEEE. Tran. on Automatic Control, Vol. AC-22, pp.
931-938,1977.
[22] K. K. D. Young and H. G. Kwatry, "Variable structure servomechanis design and ap-
plications to overspeed protection control", Automatica, Vol. 18, No. 4, pp. 385-400,
1982.
[23] M. Vidyasagar, Nonlinear Systems Analysis, Prentice-Hall: New Jersey, 1993.
C H A P T E R 11

MULTIVARIABLE FUZZY SLIDING MODE CONTROL


BY USING A SIMPLEX OF CONTROL VECTORS

Giorgio Bartolini and Antonella Ferrrara

University of Genova - Department of Communication,


Computer and System Sciences
Via Opera Pia, 1 lA-16145 Genova - Italy

1 Introduction
Since the basic work by Zadeh in the late sixties [12], [13], fuzzy logic has been
intensively applied in the area of control system theory and design, in order to set up
control environments which do not require the precise knowledge of the mathematical
model of the process to be controlled (see, for instance, [3], [8] and the references
therein cited).
Indeed, fuzzy logic, enabling the definition of sets and membership functions of
a certain clement to given sets by using natural language, appears to be suitable to
deal with all those practical situations in which a certain level of uncertainty in the
description of the system under study has to be taken into account.
T h e design of a fuzzy controller consists of a fixed number of steps. T h e aim
of the controller is that of relating the relevant variables, such as input or error
signals, usually described in a crisp way, to the control action. T h e first step is
therefore devoted to the conversion of the crisp input variables to the fuzzy form by
associating with them the corresponding linguistic values.
T h e core of the controller is represented by a set of linguistic rule. These latter
are evaluated according to the compositional rule of inference, producing a fuzzy
o u t p u t which, once transformed into a crisp variable, enables the generation of the
suitable control action.
In spite of the wide variety of applications of fuzzy controllers to industrial
processes, a certain number of problems, mainly related to the efficient design of the
look-up table containing the fuzzy rules, still remain to be overcome. A noteworthy
a t t e m p t in this direction is constituted by the possibility of combining a controller
design procedure based on fuzzy logic with a less qualitative design approach, such
307
S.G. Tzafeslas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 307-328.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
308

as that inspired to the variable structure systems theory, recently outlined in the
literature [7].
A variable structure controller (VSC) enables the definition of a suitable sliding
manifold on which the state trajectories of the controlled system are kept, from a
certain time instant onwards, in spite of the uncertainties assumed on the process
in question [10], [11]. T h e sliding mcinifold coincides with the intersection of the
discontinuity surfaces associated with the various control signals acting on the plan-
t. As a consequence, the overall control strategy, once the s t a t e trajectory of the
controlled systems lies on the sliding manifold becomes discontinuous.
T h e fuzzy version of the cleissical VSC proposed in [7] refers to single input/single
o u t p u t plants and is characterized by a set of rules which enables the determination,
at each sampling instant t = kAT, k = 1 , 2 , . . . of the discontinuous gain vector to
be introduced in the state feedback loop to realize the conventional VSC scheme.
Indeed, when the plant is single input, by using the VSC approach, it is often
sufficient to guarantee that some simple upper and lowerbounds on system dynamics
are known to attain the control objective with the desired accuracy. T h e control
strategy is a signal, discontinuous on suitable manifolds of the state space, whose
amplitude must be greater than some unknown but bounded function of the system
states and disturbances.
In the single input cetse, even when no upperbound of such an unknown function
is known, a fuzzy controller can be designed since a simple qualitative relationship
between the effect (the distance of state trajectory with respect to the sliding mani-
fold) and the cause (e.g., an overestimation of the uncertainty bounds) can be stated,
and, consequently, a suitable qualitative control action, based on rules of the type
"the control action is too low, then increase it", can be adopted.
It is worth noting, even in simple cases, t h a t this qualitative reasoning cannot
be applied to any control technique. Consider, for example, the stabilization of a
controlled system defined by

ij = xi + u (1)

by using a piecewise constant control.


We know that a control of such kind exists: for instance, if we consider a discrete
time version of this system with zero holder sampling device, a suitable piece-wise
constant control can be found. But we cannot easily represent such a control by
using linguistic rules of the type "if i j is high positive then u be high negative".
309

Therefore, when dealing with the possible use of a fuzzy system to control com-
plex uncertain plants, it is important to choose a conventional (crisp) control strat-
egy which is suitable for being described by means of finite number of fuzzy rules
(the Ziegler-Nichols method for tuning the parameter of a P.I.D. regulator belongs,
for example, to this class of control techniques).
In this chapter, we move from the single input case and focus our attention on
the multivariable control of non linear uncertain systems. In particular, a fuzzy
controller ba^ed on a particular version of multi-input VSC strategy will be dealt
with. To this end, some assumptions on the class of controlled systems needs to
be made. More precisely, we shall confine our investigation to the class of systems
modelled by pth-order controlled differential equations on 3?"". We assume that the
full state is available for feedback purposes and introduce weak a-priori assumptions
in order to guarantee the existence of the solution to the control problem.
In order to motivate our choice, let us consider a controlled m-degrees of freedom
mechanical system
A{q)q = u + fit,q,q) (2)

where q{i) £ 3?"' is the vector of the generalized coordinates, A{q) is the inertia
matrix, f{t,q,q) represents elastic, damping, friction, Coriolis and other torques, us
well as external disturbances.
If additional constraints are not included and no coordinate transformation has
been performed, it is well known that A{q) is symmetric and positive definite. The
robust control of this kind of system, as far as both regulation and tracking problems
are concerned, hcis been addressed by Utkin [10], [11] and, more recently, by Guzzella
and Geering [5] and Slotine and Li [9]. The proposed procedure is worth being briefly
recalled in order to put in evidence how the relevant control structure is suitable for
being inserted in a linguistic (fuzzy) control environment.
To this end, consider the m-vector

s - q + Cq s'^ - [si ... Sm]


C = diag{Ci} C, > 0 i = l , . . , m

On the manifold s = Q the behaviour of the system is equivalent to that of m decou-


pled asymptotically stable first order linear systems. Therefore, we can reformulate
the regulation problem as follows: "make the trajectories of the controlled system
reach in finite time the sliding manifold and there remain for the remainder of the
control interval".
310

In order to attain such an objective, consider the scalar function

V = \s''A{q)s (3)

Since A{q) is positive definite, V satisfies the basic assumption to be regarded as a


Lyapunov function candidate in 3?"". Its time dervative is

V = s'^A{q)s + s'^A(q)s (4)

From the theorem of energy conservation

A{q) = K{q,q)^K''{qA) (5)

where A' is a matrix such that K{q, q)q represents the m-vector of centripetal and
Coriolis torques.
As a consequence,

V- = 3^ {« + / ( ^ 9, q) + A{q)Cq + [A'(9, q) + K^{q, q)] {q + Cq)] (6)

that can be rewritten a^


V = s'[u + M{t,q,q)] (7)
If a known upperbound M'{t,q,q) of the norm of the vector M{t,q,q) is available,
then a control law of the type

Ui =-M'(t,q,q)sign{si,} i = l,...,m (8)

causes the reaching, in finite time, of the sliding surface s = 0 and the fulfilment of
the control objective.
This result is well suited for being dealt with in a fuzzy control environment.
Indeed, suppose that M* is not known in advance. It is clear that any control
component can be represented as

Ui = -jisign{si}

Then, a set of linguistic rules can be individuated relating the effect, the component
Si, and the cause, the choice of the parameter 7,, in order to generate a control
causing the system trajectory to reach the sliding manifold (e.g., "if Si is positive
big, then the increment of 7, is positive big"). Note that this fuzzyfication procedure
might fail if different approaches, like feedback linearization [6], were used, since.
311

in such cases, the control law strictly depends on the equations which describe the
controlled system dynamics.
On the other hand, this approach cannot be pursued if the generalized coordi-
nates are subject to a non linear trasformation

X = F{q)
X = J{q)q (9)

where J{q) is the Jacobian matrix. In that case, the differential equation governing
the evolution of the system in the new coordinates, assuming the transformation to
be invertible, becomes

X = J{q)q + J{q)q

X = J{q)[A{q)]-'[u^ f{t,qA)\-^ J{q)q (10)

which can be rewritten as

A{q)[J(q)\-'x^Y{t,q,q)^u (11)

This equation is similar to (2), but this time the matrix A{q)\J(q)\~^ does not
result symmetric and positive definite (j4(9)[J(g)]~' is however assumed to be in-
vertible). Therefore, the previous control procedure cannot be applied.
In the next sections it will be shown how it is possible to use a suitable control
procedure, the so-called simplex sliding mode control method, in order to deal with
systems of the type (11) in a fuzzy context.
This chapter is organized as follows. Section 2 contains a presentation of the sim-
plex method for the control of multi-input uncertain systems. Section 3 is devoted
to the description of the fuzzy control evironment in which the problem considered
is inserted, as well as to the presentation of an illustrative example to complement
the theoretical discussion.

2 The simplex method for the control of multi-


input non linear systems
T h e objective of this section is that of illustrating the main results of the method
proposed by Baida and Izosimov for the control of multi-input non linear systems
[1], and to generalize them in order to cope with uncertainties on system dynamics.
312

Starting from their results, a new control algorithm is proposed which proves to be
suitable to constitute the control philosophy underlying the fuzzy controller which
will be presented in the next section.
Consider a system described by the following differential equation

x = A{x) + B{x)u (12)

where x € 3i", u € 3?"*. We choose a manifold {s(x) € 3?"" : ^(x) -Cx -0} so that
when the system trajectories lie on it (i.e., i(x) = 0, if s{x) = 0), the behaviour
of the system satisfies a prespecified control obiective. The control signal role is,
therefore, that of forcing the system trajectories from any initial state to reach the
manifold in finite time. Mathematical and applicative details of such an approach
can be found for instance in [2], [4], [10], [11], [14].
In order to provide a control strategy accomplishing the above control objective,
let us consider the dynamic behaviour of the m-veclor s{x) described by

s(x) = C A{x) + C B(x)u (13)

where the matrix [CB{x)] is assumed to be invertible, but neither symmetric nor
positive definite.
The traditional way of extending to the multi-input case the basic VSC strat-
egy consists in the selection of the control signals according to a componentwise
procedure. This means that each component of the vector s{x) is related to the
corresponding time derivative i(x) by the so-called reaching condition, i.e.,

Si{x) = -7?sijfn{si(x)} (14)

that is
s{x) = —rsign{s{x)} (15)
where F := diag{%}, i = 1 , . . . , m
The control vector results to be,

u = [CB(x)]-' [-Tsign{s{x)} - CA{x)] (16)

Note that each component of vector u is a linear combination of discontinuous


signals. This fact prevents the plain application of the componentwise procedure
when some uncertainties affect B{x) and A{x). Moreover, in that case, it is not clear
if there exists a simple way of changing the components of u according to qualitative
rules in order to satisfy, even in the uncertain case, the reaching condition.
313

However, the reaching condition can be expressed also in alternative ways, giving
rise to different control switching logics. Among these, the simplex method will be
exploited in this chapter in order to transfer the conventional sliding mode control
method into a fuzzy context. This procedure can be briefly described as follows.

1. Choose in 3?*" a simplex of vectors [ui, . . . ,Um+i] containing the origin, i.e.

2. Partition S™ in m + 1 non overlapping regions

m+l

3. Perform the following transformation

y = lCB{x)]-h(x)

y = [CB{x)]~'s{x) + j^{[CB{x)]-'}s{x) (17)

that is

y = {CB{x)]-'CA{x)

+ E ^^^fj.^^'' IM^) + B,{x)u]six) + u (18)

where -4,(x), Bi{x) are the rows of A{x), B{x), respectively. Then,

y - g{x,s,u) + u (19)

Note t h a t we assume that —g(x,s,u) = 5I)]^"i^' ^iWi, I ^ i l t ' ^i = Qo < 1, which


means that the equivalent control «o = —g{x,s,u) belongs to the convex set gen-
erated by the simplex vectors. Such an assumption holds if the amplitude of u, is
sufficiently high and the values of .5(1) is sufficiently close to t h e origin (see (18)).
In the paper of Baida and Izosimov two theorems have beeen proved concerning
the choice of the control switching logic which guarantees the convergence to the
origin of the vector y in finite time [1]. Since [CB{x)] is assumed invertible the con-
vergence of s(x) to the origin is also guaranteed. These theorems will be presented
without proof.
314

T h e o r e m 1. Partition the y-state space in m + 1 non overlapping regions

n , = J J/ 6 »"• : y = "^ XiUi, A. > 0 I

If the control is chosen as u = Uj, when y G ilj, then the origin y = 0 is asymptoti-
cally stable. Moreover, the convergence takes place in finite time and an upperhound
oj the convergence interval t' — to is given by

I -ao

R e m a r k : the control is unique for any region, and any region is univocally deter-
mined by the choice of the simplex of control vectors.

T h e o r e m 2. Partition the y-state state space in m + I non overlapping regions

( m+l

J/ e »"• : t/ = - J2 - ^ i " - ^ ' ^ ^ \


]

If the control is chosen to be u = u,-, when j / € 17^, then the origin y = 0 is


asymptotically stable. Moreover, the convergence takes place in finite time and an
upperbound of the convergence interval t* — to is given by
1 - ao
E7=, A,(y(<o))
D

R e m a r k : This control strategy is not unique because for each fJj we can choose
one control vector among the set {«,}, i ^ j . To solve such an ambiguity in [1] it is
proposed to choose a control sequence of the type

f Ui+i i = 1, . . . , m
ui 1= m + l

Once this choice has been made, a unique correspondence between the choice of the
simplex of control vectors and the partition of the y - s t a t e space is stated, and a
unique relationship between any region of the y state space and one of the control
vectors is established. All this facts require the perfect knowledge of the matrix
[CBix)].
315

Q Q.

Figure 1: T h e regular simplex of control vectors

Indeed, if [CB(a;)] is unknown, though invertible, while s is available y =


[CB{x)]~^s in unknown and it is impossible either to know which region y belongs
t o , or to define the correspondence between the unknown regions and the control
vectors. This fact prevents the use of the convergence theorems previously indicated
in their present form. It is however possible to show t h a t , even in the uncertain case,
t h e convergence to the sliding manifold of t h e s vector can be obtained by means
of elementary operations on a fixed simplex of vectors. For elementary operations
we mean rigid rotations of the regular simplex and increments in the modula of the
component vectors.
T h e rationale of our procedure will be graphically illustrated by an example in
3?^. Let us consider a partition in the 5-plane induced by a regular simplex of
control vectors. In Fig. 1 the regions il,^ = {s £ di^ : s = Yll=i,i^j ^i^h ^i > 0}
are explicitely indicated. By means of the invertible transformation y = [CB{x)]~^s
any simplex in the s-space is trasformed into another simplex in the y-space. If
det[CD{x)] is positive, this latter is, in general, irregular and results to be rotated
with respect to the starting one. If det[CB(x)] is negative, but it does not change
sign for any a: 6 A' C 3?", the simplex of the transformed vectors can also be
permutated. T h e permutation is however invariant within the domain in which
det[CB{x)] does not change sign. Therefore, such a p e r m u t a t i o n can be determined
by evaluating it in an isolated point x £ X. T h e n , for the sake of simplicity,
hereafter, only the case det[CB(x)] > 0 will be considered. A possible situation is
shown in Fig. 2. It can be noted t h a t , in general, starting from a regular simplex
of control in the s-plane it is not ensured that this simplex constitutes a control
316

Figure 2: The irregular simplex

strategy in the j/-plane according to the previously mentioned theorems. Indeed,


from the uniqueness of the control strategy estabilished by such theorems the control
triple {u),U2,U3}, should coincides with the triple {w'j,1X2,^3} which is obtained as
u'- = [CB{x)]~^Ui and consequently turns out to be an irregular simplex. Note that
in Fig. 2 the regions HJ, i = 1,2,3 are referred to the transformed control vectors.
However, by means of a rotation of the regular simplex it is possible to locate the
narrower cone of the irregular simplex inside the region defined by the corresponding
vectors of the regular simplex (see, for example, Fig. 3 where u[ = Yll=i '?i,"ii
" i = E?=i'/2."n Vu, V2, > 0).
In this case, if the trajectories are directed as the corresponding vectors Ui, Wj,
U3 (i.e., the uncertain vector g is assumed to be zero), the strategy w = Uj if 3/ G fi,,
u = U2 if 2/ € ^21 w = W3 if J/ € Hg causes y to slide towards the origin.
Our aim is that of proving that for any partition of the j/-space into TTI + 1
regions by means of an irregular simplex, it is still possible to a.ssociate with each of
such regions a suitably oriented control vector belonging to a regular simplex which
causes the origin of the j/-space to be reached in finite time. The accomplishment of
this tcisk can be divided into two steps corresponding to the following two theorems.
In the next section, this result will be used as a basis for the development of a fuzzy
control approach in which a regular simplex is rotated and modified in amplitude by
using, instead of the unavailable vector 3/, the measurable vector s, until the desired
convergence to zero takes place.
317

Figure 3: Correct position of t h e narrower cone of the irregular simplex

T h e o r e m 3 . Partition the y-state space in m + 1 non overlapping regions

m+i 1

!
under the assumption previously indicated for g^x^s^u). If the control is chosen
as u = — Z!{^t'>!i V'"i) Vi ^ 0) JTi^t'tViVi ^ If w/ien j / G ilj, then the origin is
asymptotically stable and the convergence takes place in finite time.

P r o o f . Consider y = J2^\-tj A,Ui, and, for the sake of simplicity, assume t h a t A,-
are all greater than zero. Then, define

A := [Ai . . . Aj_] A j + i . . . An,+iJ


A = [[/,]-• 3/ (20)

where [(/,] := [ui ...iij_iUj+i ...Um+i] is an invcrtible m x m matrix. The control


signal can be expressed as

m+l
u = - Yl V."M <P. > 0

u = -[U,]4> (21)

where ^ ^ := [v?, . . . i^j-iV'j+i . . . v „ + , ] .


From the above definitions, one obtains

A = [U,]-' y {22)
318

with y — g ( i , s , u ) + u, as indicated in (19), where, by assumption, —g{x,s,u) =


Z)I^t' ^,w,, cind X^-^t' h = OiQ <\. Thus, we can rewrite

- 9{x, s, u) = [Uj] [fci . . . kj^ikj^i ... k,r,+iY + ^j"j (23)

where Uj = — J^J^t.^i/'•"•' f^> — ^' ITI^t.^^j/*• > ^> since the control vectors u^'s
form a regular simplex. Therefore, defining

Kf := [ki... kj.ikj+i... i„+i]


Mf := [fti...fij-ifij+\ • • • /«m+i]

it yields
- g{x, s, u) = [U,] K, + k, [[/,] M, (24)
so that, from (22),

A = m-'{-[UAK,-kAU,]M,-[U,]<l,}
= -Kj - kjMj - <f> (25)

Now, consider the scalar


m+l
a(2/,0= E ^" A. = -^.(2/.'), Q(0,0 = 0 (26)
1=1,iVj

with ot(y,t) > 0 for 2/ ^ 0, and Q(y,f) —> oo for | y —


| + oo. It satisfies the conditions
to be a Lyapunov candidate for system (22). Summing row-by-row equations (25),
one has
m+l m+l m+l
a=- E h-ki X: /^.- E ^i (27)
1 = 1,i/; i=l,i?'j • = lii?'j
Then,
m+l / m+l \ m+l

a = - E ^' + ^i h - E /'i - E V.
i=l \ i=l,i5^J / •=!.;#>
< -(1+ao) (28)

this implies that a(-, <) = 0, for any t > t', with t' = o(j/o, 0)/(l + QQ)

Then, we are in a position to state our main result, which generalizes the previ-
ous considerations about the possibility of using a regular simplex of control vectors
319

when the state space is partitioned on the basis of an irregular simplex of vectors.

T h e o r e m 4 . Ifm vectors [u\ . . . u'j-i^'j+i • • • "m+i] of an irregular simplex belong to


a region ilj of a regular simplex, that is
m+l
"i = X) '?•"•' '/'^ <^' fc = l , . . . , j - l , j + l , . . . , m + 1
i=l,.-5ti

then, the control strategy


u = Uj if J/ e Cl'j

where

causes the finite time reaching of the origin of the y-state space.

P r o o f . If y belongs to Cl'j, which is contained in Clj, by applying Theorem 1, it is


easy to see t h a t the control action u = Uj forces y to reach either the origin or the
boundary of f l ' . In the other regions, any vector of the regular simplex satisfies the
condition of Theorem 3 with respect to the irregular simplex, that is any Uj can
be expressed as Uj = — Z^i^t'i/j A^ii with Yl^]i:^j 0i > 1- Hence, in any case, y
reaches the origin in finite time.

3 T h e proposed fuzzy controller


T h e aim of the present section is that of transferring the m u l t i - i n p u t simplex sliding
mode control approach and the results proved in the previous section into a fuzzy
framework. Indeed, this way of proceeding seems particularly suitable to deal with
all those situations in which a certain amount of uncertainty affects the mathematical
model of the system to be controlled.
In the previous section, it was pointed out how a regular simplex of control
vectors can be modified (that is, it can become irregular and be rotated with respect
to the original one), because of the application of a transformation matrix to the
various component vectors. In Theorem 4 it was however indicated a possible way
of positioning the modified simplex, with respect to the regular simplex, in order to
guarantee the finite time reaching of the origin of the y - s t a t e space. T h e design of
320

a fuzzy controller solving the control problem in question can be based on such a
theorem.
When the transformation matrix is unknown, it is not possible to quantify the
actions to be applied to the regular simplex in order to properly re-positionate the
irregular simplex with respect to the previous one. Such actions consist in rigid
rotations of the simplex and variations of the modula of the component vectors.
T h e n , it seems natural to establish a qualitative relationship between the action to
perform and the difference between the actual and the expected behaviour of the
system.
Suppose to choose, as a switching logic, that expressed by Theorem 1, with the
difference that now vector y is substituted by vector s. Because of the transformation
operated by matrix [CB(x)], it is not ensured that 5 moves towards the origin of
the s-space. On the other hand, if the disturbance g{x,s,u) in (19) is small and
a regular simplex of vectors with suitable amplitudes is applied, the trajectory of
the unknown vector y is approximately a straight line parallel to the corresponding
applied control vector, according to (19). While y is unknown, the vector s(x) =
[CB(x)]y is measurable. This latter moves along a trajectory which, as long as
[C/?(j;)] were constant, would result in a straight line as well, if evaluated in a short
time interval, the angle between this line and the direction of the applied control
vector being the opposite of the angle of which the regular simplex needs to be
rotated in order to have a motion of s directed in the desired way. In this situation,
defining As{t) := s{t) — a{t — At), the action to be applied to the regular simplex is
just a rotation of an angle 0(t) = arcos[< Aa{t),u > /(||As(i)||||u||)].
Since g{x, s, u) is not known and [CB{x)] is not a constant matrix, the above pro-
cedure cannot be applied in a quantitative way, unless some a-priori known bounds
on g{x,s,u) and [CZ?(x)] are available. Also in t h a t case, as previously outlined,
some problems remain to be faced. Indeed, when the uncertainties are described in
terms of interval vectors and matrices, the possibility of losing the invertibility of
matrix [CZ?(a;)], as well as the necessity of performing a highly conservative control
design, should be taken into account.
On the contrary, by using a qualitative approach, based on the experience that
the amplitude of the control vector is required to be sufficiently high to dominate
the unknown disturbance g(x,s,u), and that the rotation angle 0{t) has to be tied
to the angle (f> between As{t) and u for sufficiently small At, it seems possible
to overcome these drawbacks. It should be noted t h a t , according to the results
expressed by Theorems 3, 4, the ideal value of the angle 0{t) is not unique, but can
321

be expressed as an interval of values such that for any 0(t) belonging to that interval
t h e finite time convergence of s to the origin takes place. This implies that when a
contraction of the norm of s occurs (i.e., A||s(<)|| = ||'S(OII - ll^(' — ^011 '^ negative)
the positioning of the simplex of control vector could be stopped.
In order to design the fuzzy controller according to the previous considerations,
we proceed in the standard way, selecting the suitable variables to be used a.s terms
in the premises of the rules. Then, the design procedure can be performed according
to the following steps:

1. Fuzzify the relevant variables (input variables to be included in the premises


of the rules, output variables on which the consequence of each rule is built),
defining the fuzzy sets, in their universe of discourse, associated with them,
and the corresponding membership functions.

2. Construct the decision table by selecting a suitable set of rules.

3. Determine the membership function corresponding to each rule and the overall
membership functions associated with the output variables.

4. Deffuzzify the output variables obtaining the crisp values of the control actions.

The previous list can be particularized to the control case considered within this
chapter, in order to obtain a fuzzy simplex sliding mode control scheme for m u l t i -
input systems.
T h e input variables to be considered can be the amplitude of vector s, the vari-
ation of the amplitude (i.e., vector A||s||), and finally the rotation matrix between
vector A | | s | | and the currently applied control vector (w = Uj if s £ ilj). While ||s||
is available at any time instant, the other quantities are supposed to be evaluated at
discrete t i m e intervals kAt, k = 1,2, Note t h a t the sampling interval At could
be regarded as an input variable, as well.
T h e o u t p u t variables are the rotation matrix Rk which needs to be applied to
the previous control signal, which we call Wk-i, in order to determine the current
control Wk according to the following relationship

Wk = RkWk-l

= RkDkU

Do = I, Ro = I
Dk = Rk-iDk.i, k = l,2,... (29)
322

and the amplitude Au^ of the components of the simplex of control vectors. Both the
input and output variables are fuzzified by associting with t h e m suitable fuzzy sets
corresponding to a prespecified number of levels, with proper membership functions.
T h e above considerations can be clarified by means of a simple example relevant
to a two-input system described by the following state equation

s = Hu+ g (30)

ith
- 0 . 5 ( 1 +7sen*i/(a)) -0.866
H-' =
-0.866(1+7senV(.s)) -0.5

a {I +/3sen^i/(5))
9 =
a {I + 0sen^i/{s))
with iy{s) := (1 + s^ + ^2)'^^- Note t h a t if 7 :^ 0, matrix / / " ' is non symmetric.
T h e control vectors constituting the initial regular simplex are

uj = [0. 10.] ul = [8.66 - 5.] ul = [-8.66 - 5.]

T h e unknown vector y = H~^s evolves according to the following differential equa-


tion
y = H-h + H-^g-\-u (31)

T h e proposed fuzzy controller is based on the rules shown in Table 1 which refers
to the membership functions relevant to the input variables ||s||, Ajl^jl, 0, and the
o u t p u t variables 9 and Au indicated in Fig. 4, 5, 6 and 7 and 8, respectively.
T h e behaviour of the controlled variable 3, starting from the initial condition
s^ = [2, 3], is illustrated in Fig. 9 under the assumption that 7 = 0, o = 0 and
constant modulus of the applied control vector (i.e., A M = 0, which means that the
last column of the rule table is not considered). In Fig. 10 the behaviour of vector 6
is reported assuming, instead, that 7 = a = 1, ^ = 0.5, and allowing the adjustment
of the modulus of the control vector u.
In both cases the behaviour is highly satisfactorily, since the convergence of the
controlled variable to the origin of the state space is obtained with good convergence
rate in spite of the uncertainties on the non linear model of the controlled system.

4 Conclusions
In this chapter a fuzzy control approach is presented in order to deal with multi-
input uncertain non linear systems.
323

Figure 4: Membership function for \\s\

Figure 5: Membership function for A||5|


324

phi

Figure 6: Membership function for 4>

Figure 7: Membership function for 9


325

20 25 30 50
control magnitude

Figure 8: Membership function for Au

I
a

-1 0 1
Componeni 2

Figure 9: The controlled variable s, 7 = 0


326

I ! ! I

—1 I
- 5 - 4 - 3 - 2 - 1 0 1 2 3 4 5
Coinponenl2

Figure 10: T h e controlled variable 3, 7 = 1

The starting point is the choice of a control algorithm which does not result to
be too strictly dependent on the perfect knowledge of the mode! of the system to be
controlled. T h e most effective approach in this sense, among those proposed in the
literature, is the so-called simplex sliding mode control method, in which, however,
the transformation matrix acting on the control vectors is required to be perfectly
known.
In the present chapter it has been shown that this requirement can be relaxed
as long as a non conventional control approach is applied. T h e resulting algorithm
turns out to be characterized by the application of simple operations on vectors, like
rotations and increment of their modula, which can be easily translated in terms
of fuzzy rules, giving rise to a new fuzzy controller which enables to solve in a
satisfactory way the crucial problem of controlling uncertain non linear systems.
327

If ||.|| is ... and All^ll is ... and 4> is ... then 9 is ... and Au is ...
BIG POS POS HIGH HIGH BIG POS
BIG POS POS MED HIGH SMALL POS
BIG POS POS LOW MED BIG POS
BIG POS POS EZ LOW BIG POS
BIG POS EZ HIGH HIGH
BIG POS EZ MED MED
BIG POS EZ LOW LOW
BIG POS EZ EZ LOW
BIG POS NEG HIGH MED
BIG POS NEG MED LOW
BIG POS NEG LOW LOW
BIG POS NEG EZ EZ
MED POS POS HIGH HIGH
MED POS POS MED MED
MED POS POS LOW LOW
MED POS POS EZ LOW
MED POS EZ HIGH MED
MED POS EZ MED LOW
MED POS EZ LOW LOW
MED POS EZ EZ LOW
MED POS NEG EZ
SMALL POS POS MED
SMALL POS EZ LOW
SMALL POS NEG EZ

Table 1: The rule table


328

References

[l] Baida, S. V., and D. B. Izosimov 1985, Vector method of design of sliding
motion and simplex algorithms, Automation and Remote Control, 4 6 , 830-837.

[2] Bartolini, G., and T. Zolezzi 1985, Variable structure non linear in the control
law, IEEE Transaction on Automatic Control, 3 0 , 681-684.

[3] Chang, S., and L. A. Zadeh 1972, On fuzzy mapping and control, IEEE Trans-
action on Sys., Man, Cyber., 2, 30-34.

[4] DeCarlo, R. A., Zak, S. H., and G. P. Mattews 1988, Variable structure control
of non linear multivariable systems: a tutorial, Proceedings of the IEEE, 76,
212-232.

[5] Guzzella, L., and H. P. Geering 1990, Variable structure controllers for robots,
in Deterministic Control of Uncertain Systems, A. S. I. Zinober Editor, Peter
Peregrinus, London.

[6] Isidori, A. 1985, Non linear control systems, Springer-Verlag, Berlin.

[7] Kung, C. C., and S. C. Lin 1992, A fuzzy sliding mode controller design, Proc.
IEEE Int. Conf. on Systems Engineering, Kobe, J a p a n , 608-611.

[8] Lee, C. C. 1990, Fuzzy logic in control systems: fuzzy logic controller, IEEE
Transaction on Sys., Man, Cyber., 2 0 , 404-435.

[9] Slotine, J. J. E., and W. Li 1991, Applied non linear control, Prentice-Hall,
Englewood Cliff, N.J..

[10] Utkin, V. I. 1978, Sliding modes and their application in variable structure
systems, MIR Publishers, Moscow.

[11] Utkin, V. I. 1992, Sliding modes in control and optimization, Springer-Verlag,


Berlin.

[12] Zadeh, L. A. 1965, Fuzzy sets, Informat. Control, 8, 338-353.

[13] Zadeh, L. A. 1968, Fuzzy algorithms, Informat. Control, 12, 94-102.

[14] Zinober, A. S. I. (editor) 1990, Deterministic Control of Uncertain Systems,


Peter Peregrinus, London.
CHAPTER 12

KNOWLEDGE REPRESENTATION AND INFORMATION


P R O C E S S I N G IN I N T E L L I G E N T C O N T R O L L E R S

Kaoru Hirota<*) and Witold Pedrycz(**)

(*) Dept. of Instrument & Control Engineering


College of Engineering, Hosei University
Koganei City, Tokyo, 184 Japan
(**) Dept. of Electrical & Computer Engineering
University of Manitoba,
Winnipeg, Manitoba, Canada, R3T 2N2

ABSTRACT Pure numerical computations have been playing a dominant role in control
systems. With the increasing complexity of the systems under control and diversity of
control tasks to be handled, it became obvious that the concept of this numerical platform
mastered so far cannot be sufficient in many situations. Some techniques of Artificial
Intelligence (such as e.g., control expert systems) on one hand, and nonparametric
parallel optimization (i.e. structures such as neural networks) on the other, have been
already studied as possible computational frameworks. Following this avenue, we will
investigate the problem of knowledge representation and information processing through
the use of an integrated platform composed of neural networks and fuzzy sets. This
unified approach takes advantage of flexibility of fuzzy sets used in representing control
knowledge and learning capabilities residing within neural networks. The proposed
topology of the controller includes an internal logic-based part describing control rules
and an interface component "translating" these rules and their activation levels into pointwise
control actions using either preselected (fixed) or trainable control values. With regard to
this feature the learning of the controller is reinforced or is carried out in a fully supervised
mode.

KEYUORDS Knowledge representation, fuzzy sets, reinforcement learning,


neurocomputations, fuzzy controller
329
S.G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 329-343.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
330

1. INTRODUCTION

Witnessing a rapidly growing field of control of complex systems, it becomes


evident nowadays that knowledge representation issues are essential to the development
of new control strategies. In other words, representation and processing aspects of
control should be considered as equally significant in designing intelligent controllers.
Usually much more attention has been devoted to purely numerical knowledge processing
while relatively less research effort has been paid to address properly all relevant facets of
representation of the underlying control knowledge. The plain numeric processing has
occupied a central role in the control area for many decades. Along with the increasing
complexity of systems and a lack of knowledge pertaining to their performance, some
alternative avenues have been pursued. Fuzzy sets [12] [14] [15] [16] and paradigms of
expert control [1] on one hand, along with emerging computational power of
neurocomputations on the other, can form an interesting and powerful designing platform.
To highlight their most useful properties we will commence with a detailed discussion on
the crucial features of intelligent control. The objective of this presentation is to clarify
the role of fuzzy sets and neural nets in intelligent control as well as to highlight their
mutual relationships along with a complementary character in their performance. It has
already been recognized that all those elements may work efficiently, refer e.g., to a
special issue of the IEEE Control Systems Magazine [4] devoted to neural networks used
for system modelling and contfol. Subsequently, we will come up with a more detailed
discussion concerning topologies of the controllers pointing out how the introduced
concepts are blended into a coherent architecture. A particular attention will be focussed
on a suitable partition of tasks of knowledge representation and numerical processing as
they are realized by fuzzy sets and neural networks.

2. PRiriARY FEATURES OF INTELLIGENT CONTROL

In intelligent control we can envision two prevailing attributes leading to a clear


distinction of this type of control from a vast number of available control algorithms. The
first one concerns the development of the suitable, well-handled, and manageable perspective
on the control strategy. In its principle, the perspective should assure that all the system
and control variables should be perceived at a suitable level of precision that is necessary
to capture the most intrinsic features of the domain knowledge of the control problem at
331

hand and visualize essential relationships between the variables. Rather than concentrating
on mastering linear or nonlinear local relationships between all the variables again handled
in a numerical pointwise manner, it might be useful to move toward a higher level of
generality. This level can tackle with information granules defined for involved variables.
By this type of information aggregation we mean a collection of associated values which
are coupled to a certain degree within the given context of the specified control task
(control situation) and labelled for further use. From a conceptual standpoint we can
indicate three distinct approaches already reported in hterature.
(i) the first one, usually residing within the area of Artificial Intelligence (AI), refers to
purely symbolic computations. The aggregates studied there and being almost of a
Boolean character, are named symbolically and used afterwards. Possessing a
certain syntax, these aggregates being processed as purely symbolic quantities give
rise to a so-called Qualitative Modelling (Q^) and Qualitative Control, (QC), cf.
[2] [3]. Obviously, the very fundamental nature of the AI techniques does not leave
any room for numerical processing. In many control situations this approach cannot
be fully accepted mainly due to significant and irreversible loses of information
caused by this symbolic quantification,
(ii) the second approach deals with aggnsgates having a form of closed numerical intervals
(as well as hypercubes forming their multidimensional counterparts). These quantitites
create a basis for the development of a certain cognitive perspective at which the
control processes are looked at. In this setting, the existing techniques of interval
calculus widely apply, cf. [5]. This way has been exploited in the past mainly for
purposes of performing much more thorough sensitivity analysis and modelling
systems using sel-theoretic perspective (e.g., set-theoretic models with unknown-
but-bounded disturbances). Within the above framework numerical processing
capabilities are pnsserved. The increased generality is obtained by adjusting (increasing)
the size of the information aggregates (granules) through a suitable increase of the
widths of the intervals. Definitely, the control algorithm becomes robust due to the
introduced interval-valued character of the variables. The obvious shortcomings
manifesting here is that border values of the intervals might be difficult to establish.
The interval-based knowledge representation one can easily control the level of
specificity (generality) of the concepts. It is, however, not capable of distinguishing
between the values (points) belonging to the same interval.
In the third approach we will consider a combination of (I) and (ii) that is carried out
as follows.
332

(iii) Referring to the lack of the focussed concentration (selective discrimination) occurring
in the previous framework we will replace intervals by fuzzy sets. Fuzzy sets can
eliminate the above mentioned disadvantage due to their membership functions acting
as elastic constraints and highUghting a degree of membership to the given granule.
They can carry out a detailed discrimination process within the same scope of
cognition therefore properly addressing the question of the selective focus of attention.
The higher the grade of membership, the higher satisfaction of the given property
(constraint). Subsequently, some elements in the granules become strongly elevated
while the others substantially suppressed. An immediate incorporation of fuzzy sets
in QSi and QC as introduced e.g. in [2] allows to cope with the semantics of the
conveyed terms and take care of well-defined syntax features.
Fuzzy sets, as generally set-theoretic oriented concepts, are not extremely powerful
at numerical computations. The collection of the existing and commonly utilized operations
is not well suited for effective and fast calculations. These operations are not capable of
coping efficiently with a probabilistic orrepetitivecharacter of information.
In designing fuzzy controllers, the general control strategy is synthesized on a basis
of some individual and scattered pieces of knowledge such as e.g., the previous records
of control acdons or more or less complete control protocols. Sometimes these protocols
are biased by a lack of precise data which are replaced by some linguistic statements.
These situations call for the use of fuzzy sets as a relevant formalism to cope with
linguistic and/or incomplete information.
There are many diverse conceptual as well as applied platforms which can directly
benefit from the methodology of intelligent control. The essence of the principle becoming
an essential part of our scheme lies in using fuzzy sets to address essential representation
issues and afterwards make use of neural networks in order to realize all relevant
computations. Furthermore we should be aware that the appliedrepresentationscheme
has a direct impact on efficiency of learning by focussing its field of performance. It
means that by accepting the linguistic labels (i.e. nonlinear membership functions) a
preliminary nonlinear preprocessing takes place. This stage highlights some potentially
fruitful andrelevantregionsof search to be explored within further detailed learning. In
this way the optimization search is not solely guided internally by a prespecified universal
performance index (as it happens in almost all the existing learning schemes). One has to
be aware that the "universal" performance index makes the learning insensitive to the
problem specificity.
The concise summary of the relationships between neural networks and fuzzy set
333

techniques is displayed in Fig. 1.

Fuzzy Sets
(knowledgerepresentationlevel
of control)

Neurocomputations
(conputational aspects
of control)

Fig. 1. Relationships between fuzzy sets and neurocomputations

Fuzzy sets and nuerocomputations exhibit an evident synergy in this structure.


Nevertheless, they also complete separate and well-defined tasks. The possible links
between them might be, of course, mutual in their nature. As already said, fuzzy sets
provide an external guiding mechanism for the neural network. The network, while
learning proceeds, can influence the level of knowledge repnesentation (e.g., by modifying
the shapes of membership functions and changing their mutual distribution).
For illustrative purposes let us focus on fuzzy controllers [6] [10] [12] and control
expert systems [1] as two interesting and important constructs in control systems. Despite
existing differences they share one common property, which resides within their rule-based
knowledge representation scheme. Furthermore, in fuzzy control we have fuzzy predicates
involved in condition and control parts of the individual rules. Usually learning mechanisms
are not present there since, by default, one assumes that the entire knowledge is given
explicitly. This, however, might not be true. Then if the learning mechanisms were
incorporated they could significantly enhance and speed up the procedure of designing
the conu-oller. In addition to that, because the rules are just generalizations of a series of
facts, the use of the fuzzy predicates in all the control rules is legitimate as a suitable
means to generalize over a collection of facts including some essential exceptions.
To move into details let us take a look at some learning aspects and representation
capabilities of fuzzy controllers and neural networks. These comments will highlight
why the synergy between these two concepts is beneficial and inevitable,
(i) Most of the fuzzy controllers used nowadays combine their control rules
Aj^Bi, i= 1,2, ... N
334

N
by forming a union of their Cartesian products of the form u (Aj x Bj). The inference
n= l
is based on a standard max-min composition operator [6] [10]. This way of aggregation
and inference has been broadly implemented giving rise to many application-oriented
versions of the fuzzy controllers. One should be aware that this design indicates a
strong resemblance of the fuzzy controllers to associate memories that utilize the
Hebbian-like encoding and correlational recall.' Furthermore, as studied in [6],
the knowledge incorporated into the structure of the controller has to be consistent.
Even the fuzzy controller can tolerate some discrepancies of the rules, starting from a
certain level, these shortcomings tend to affect the performance of the controller. If
an appropriate learning mechanisms were in place these inconsistencies would be
easily ruled out The set-theoretic operations (like max and min) are not capable of
eliminating some exceptions and inconsistent facts. The facts, even being very rare
and quite meaningless, could easily override a vast number of consistent observations
that have been already "coded" into the structure of the controller.
(ii) In the domain of neural networks the learning capabilities of them are significant.
Usually their representation features are not enhanced. The first problem arises
when input variables refer to different physical variables and, what makes the entire
story worse, these variables can take on numerical values from distant ranges (say
10"^ as opposed to 10*). The learning using the raw data is almost impossible from a
numerical point of view. This calls for normalization and/or discretization of the
input variables as a significant preprocessing phase.
In the next section we will focus on a general topology of intelligent controllers
enhancing the general methodological links as visualized in Fig. 1. In Section 4 we will
set up a general architecture of the controller and proceed with underlying learning
schemes.

3. TOPOLOGY OF INTELLIGENT CONTROLLERS: REPRESENTATION


AND PROCESSING ISSUES

In this section we will study a general scheme of the controller, identify its basic
functional blocks and finally come up with its detailed scheme including underlying
mathematical formalism.

'To make this analogy clear lei usreplacethe union (u) by summation and the minimum
operator (x) by a standard product operator.
335

Let us start with a multivariable control structure comprising of several input variables
(variables of the system under control) and control variables. Fuzzy sets (FS) and
neurocomputations (NN) are directly involved in different parts in the diagram as shown
in Fig. 2.

system
variables
control
variables

Fig.2. Functional scheme of the controller involving Juzzy sets and neural networks

Its individual blocks are described as follows. Firstly, all the systems variables are
preprocessed by fuzzy sets contributing to the cognitive perspective suitable for this
specific variable. [7] [8] This nonlinear transformation situated there enables us to come
up with a vector of numbers in [0,1] intervals and build all the inputs of the neural
network. By this mapping mechanism, all physical quantities of the variables are translated
in a nonlinear manner into the corresponding dimensionless quantitates situated in [0,1].
Note that this translation provides a mechanism of nonliunear data quantization.
Subsequently, the outputs of the network indicate degrees of activation of control labels
of all control variables. This request calls for another conversion block (C) the role of
whose is to convert any information coming from the processing block into a single
numerical quantity.
The more detailed structure of the controller giving a better insight into the functional
blocks and their performance is shown in Fig. 3.
336

input data
- pointwise defined
-interval-valued linguistic labels single-layer linguistic labels Conversion block
— > • of system -x->- neural -^ of control (pointwise control
- fuzzj sets variables network variables representation)

- Incomplete

Fig. 3. Detailed structure of the controller

It is worth noting that the topology of the network is influenced by the specification
already done with regard to the representation part. The number of the layers and nodes
of the neural network depends upon:
(1) the number of the linguistic labels associated with the individual system variable; the
number of the input nodes depends on all the linguistic labels defined for the
variables. Each input node correspond to a single linguistic label. Denote their
number by "n".
(2) The number of the linguistic labels describing control variables uniquely determines
the number of hidden nodes. Let its numbers be equal to " h". They form a hidden
layer of the network.
Before proceeding with learning to be completed by the network, we will briefly
describe the way in which the input nodes are activated as well as highlight the manner in
which thefinalnonfuzzy value of control is determined.
Considering the linguistic label as uniquely described by its membership function A,
where A(x) stands for degree of membership at element x, we express the level of
activation of A caused by any fuzzy (or nonfuzzy) information X accordingly
sup [min(A(x), X(x))] (1)
where supremum is taken over all the elements of the universe of discourse in which A
and X have been already defined. Note that the above expression is nothing but the
possibility measure of X taken with respect to A [13]. It plays a role of a scalar index
pointing out a degree to which A is "fired" (activated) by X. As already mentioned, the
preprocessing block can handle various forms of informadon:
337

if X is given precisely as a single-valued numerical quantity x„, then the membership


function X(x) is centered exclusively at x„, namely
X(x) = 1 ' ^~^
|0, otherwise
In virtue of (1), the degree of activation of label A is equal to X = A(xJ, i.e., we
obtain a grade of membership of x^ in A.
if X is partially known and allocated anywhere within given lower and upper
boundaries, say X = [x-, x+], then, again making use of (1), the activation level is equal
to
H = sup A(x)
X€ [x-, X+]
see also Fig.4

Possibility
1.0

Fig. 4. Computations of possibility measure for pointwise and interval-valued input X

Obviously, if x„ e [x-, x+], then this type of information implies higher activation
of the corresponding node in comparison to that generated by the pointwise datum.
The output layer realizes a nonfuzzy control action. For the t-th control variable, u„
it is computed by specifying a nonfuzzy representation of fuzzy sets of control (expressed
by the hidden layers) and treating them as the connections from the hidden layer to the
t-th node of the output layer. The operation realized at this output is expressed as
ut = (utiyi + Ut2y2 + - + uthyhVCyi + y2 + - + yh) (2)
where Utj are connections between the t-th output node and the j-th node of the hidden
layer while y,, yj, .... y„ are the signals generated by this layer.
338

In the two particular situations expression (2) converts into:


- if only a single hidden node is activated, say the j-th one, j e {l,2,...,h), yj = 1.0
and zero otherwise, then the output Ut becomes equal
U, = Uj

- when all the nodes in (2) are activated, the resulting control u, becomes a mean
value of the representatives, (connectives) uy
h

"j=i

^. LOGIC-BASED NEURAL NETIilORKS : ARCHITECTURE AND


LEARNING

In this section we will discuss a detailed architecture of the neural network. Essentially,
it consists of two components. The two first layers are constructed by the two types of
logical computing nodes (neurons). These types of neurons will be referred to as logical
neurons. The last layer of the network is built with the use of a nonlinear mapping
realizing (2) which is also viewed as a component carrying out a transformation from the
level of the logical relationships to the physical level of the control variables. For the
sake of clarity in the remainder of the section we will discuss the controller with a single
output (the extensions to the multidimensional case are quite straightforward).
The overall architecture of the controller is illustrated in Fig. 5
It consists of two hidden layers. The first hidden layer is composed of AND neurons
while the other utilizes OR-type processing units. Essentially, these two layers encapsulate
a collection of "if-then" control statements. The AND neurons summarize all the inputs
(subconditions) by ANDing them. The conclusion (control) part is aggregated ORwise.
The detailed formulas describing the network are summarized below. Note that the
realization of the AND neurons involves the usage of the triangular norms (t- and s-norms)
that result in building a s-t composition.
339

hidden2 output
input

if-then rules numerical

transformation
condition laver conclusion layer

Fig. 5. Architecture of logic-based neural network

output-hidden layer:

yiUi+y2U2+...+yhUh
' yi+y2+...+yh

hidden^-hiddeiij layer:

yi = .S (wij t Zj)
j=i
i=l,2,...,h

hidden,-input layer:

Zj = jT (vji s xi)
j=1.2,...,p
340

Now we will address the problem of supervised learning. This mode of learning
implies the use of a collection of the training samples organized as inputs x,, x^, ..., x^
and associated outputs viewed as target values t,, tj, .... t^. The learning pertains to
updates of the connections (w,v,ii) via a steepest descent method,
A_connections= -a :r ^^-^
oconnections
The Mean Square Error (MSE) will be used to optimize the network:
N
Q= X[tk-N(xk)F
where N(x^) (= y^) denotes the output (control) produced by the network and obtained
for the input x^.
Two schemes of learning will be analyzed:
(i) reinforcement learning. [ 11] In this type of learning the logic-based part of the
network will be modified while the connections ui, U2, ..., Un between the hidden
and output layer remain unchanged .
The connections W|j are adjusted on a basis of the gradient of Q, .
3w
The detailed formulas read coordinatewise as
Wij = Wij + a ( t - N ( x ) ) - ^ - ! ^
OWij

i = 1, 2, ..., h. j = 1,2 p, a 6 (0,1)


Vij = Vij + a ( t - N ( x ) ) ^ ^ ' ' ^
ij
i=l,2,...,p,j = l,2,...,n.
Furthermore,
aN(x) _ aN(x) ayi
9wij ayi dwij
The first derivative equals
aN(x) Ui-N(x)
ayi a
h
where 0 = ^ yi. The second derivative can be expressed explicitly once the triangular
1=1
norms have been specified,
| ^ = 5 ^ ( , S (wiiiz,))
dWij dWjj 1=1

To compute the adjustments of Vy we calculate.


341

aN(x) ^ y 9N(x) 3yi 9zi

with

and
5 ^ = 5 — ( T (Vii s xi)

ii) All the connections of the logical part of the network as well as the control values
ui, U2, ..., Uh are trained. The values u; play now a role of "optimal" prototypes
similar to that obtained in Adaptive Vector Quantization (AVQ), cf. [9]. The learning
process itself reminds the search of an optimal partition of the control space U (in
which all the control variables are situated). The resulting general learning scheme
is the same as already presented for (i) with an additional update scheme describing
a sequence of modifications of Uj's,

Ui = U i + a ( t - N ( x ) ) ^ p ^
dui

i = 1, 2, ..., h
with
9N(X) ^ yj
aui ^

5. CONCLUSIONS

The paper clarifies the role of coherence between the processes of knowledge
representation ad its pro.essing that is necessary to develop intelligent controllers. By
changing the scope of interest and the level of precision of the linguistic labels, we can
easily develop a suitable perspective required to cope with complexity of the system and
specificity of the control actions. Furthermore, as it has been clarified, by changing the
number of the labels we can easily switch from almost symbolic level of processing (very
few labels representing a very coarse space partition) to the very fme and almost pointwise-
like numerical grains of information. At this point the processing of control knowledge is
342

worked out on a numerical level with the aid of logic-oriented neural networks. Two
learning scenarios are also studied. The fuzzy set interface represented by the collection
of linguistic labels is advantageous from at least three major reasons,
the controller can handle precise, incomplete, or noisy data pertaining to system's
variables.
the connections of the neural network can be easily interpreted as a qualitative
conu-ol protocol involving conditional statements of the format "if state the control".
These statements are generated in an automatic manner thus the scheme can be
viewed as an efficient tool for automatic rule generation or adjustment of some
preliminary sources of knowledge. This may allow us to avoid a serious botdeneck
occurring in many knowledge-based systems and related with the tedious and
error-prone knowledge acquisition processes,
finally, the labels heavily influence the topology of the network determining the
number of its nodes in the input as well as in the output layer. Therefore some
relationships between information granularity and learning capabilities of the conU-oUer
as well as its robustness can be clarified and a reasonable trade-offs established. In
this manner we can talk about focussed (external) learning implied by fuzzy sets.

ACKNOblLEDGMENT

Support provided by the Natural Sciences and Engineering Research Council of


Canada and MICRONET is gratefully acknowledged

REFERENCES

[1] K.J. Astrom, J.G. Anton, K.E. Arzen, "Expert Control", Automatica, 13, 1986,
277-286.
[2] B. D'Ambrosio, Qualitative Process Theory using Linguistic Variables, Springer-
Veriag, New York, Beriin, 1989.
[3] K. Forbus, Qualitative Process Theory Ph.D. Thesis, MIT, Cambridge, Mass.,
July 1984.
[4] IEEE Control Systems Magazine, (Special section on neural networks and control).
Vol. 8, no. 2, 1988.
[5] R. Moore, Interval Analysis, Prentice-Hall, Englewood Cliffs, N.J., 1966.
[6] W. Pedrycz, Fuzzy Control and Fuzzy Systems, Research Studies Press, J. Wiley,
This page intentionally blank
343

Chichester, 1989; 2nd extended edition, 1993.


[7] W. Pedrycz, "Fuzzy Set Framework for Development of Perception Perspective",
Fuzzy Sets and Systems, 37, 1990, 123-137.
[8] W. Pedrycz, "Selected Issues of Frame of Knowledge Representation Realized by
Means of Linguistic Labels", Int. J. of Intelligent Systems, 7, 1992, 155-170.
[9] W.K. Pratt, Digital Image Processing, J. Wiley, New York, 1978.
[10] M. Sugeno (ed.) Indusuial Applications of Fuzzy Control, North Holland, Amsterdam,
1985.
[11] R. Williams, "Reinforcement Learning in Connectionist Networks: A Mathematical
Analysis", Univ. of California at San Diego, Inst, for Cognitive Science, Technical
Rep. 8605, 1986.
[12] L.A. Zadeh, "A Rationale for Fuzzy Control", Trans. ASME, Sec. G., 94, 1974,
3-4.
[13] L.A. Zadeh, "Fuzzy Sets and Information Granularity", In: Advances in Fuzzy Set
Theory and Applications (M.M. Gupta, R.K. Ragade, R.R. Yager, eds.). North
Holland, Amsterdam, 1979, pp. 3-18.
[14] L.A. Zadeh, "Fuzzy Sets as a Basis for a Theory of Possibility", Fuzzy Sets and
Systems, 1, 1978, 3-28.
[15] L.A. Zadeh, "Fuzzy Sets", Information & Control, 8, 1965, 338-353.
[16] L.A. Zadeh, "The role of fuzzy logic in the management of uncertainty in expert
systems". Fuzzy Sets and Systems, 11, 1983, 199-227.
This page intentionally blank
PART 4
FUZZY REASONING AND
ESTIMATION METHODOLOGIES
CHAPTER 13

FUZZY PARAMETER AND STATE ESTIMATION

S.G. Tzafestas(*), S. Terzakis^*) and A. N. Venetsanopoulos^**)

(*) Intelligent Robotics and Control Unit


Department of Electrical and Computer Engineering
National Technical University of Athens
Zografou Campus, Zografou 15773, Athens, Greece
(**) Department of Electrical Engineering
University of Toronto, Toronto, Ontario, Canada M1551A4

1. INTRODUCTION

The field of parameter estimation goes back to Gauss (1795) who has presented the
classical least squares method in his book : "Theoria Motus Corporum Coelectiwn". Least
squares was then studied by Legendre (1806) in his book: "Nouvelles Methodes pour la
Determination des Orhites des Gametes" . In Gauss' own words : "The most probable
value of the uknown quantities will be that in which the sum of the squares of the
differences between the actually observed and the computed values multiplied by numbers
that measure the deegre of precision is a minimum".
Since then, an enormous effort was made by scientists and engineers to develop
further the method and apply it to sophisticated situations (least squares in function spaces,
least squares filtering, etc.) and applications of industrial and real-life nature.Regarding the
fuzzification of the least squares problem, the authors have picked-up the work of the
Hungarian mathematician Celmins [1]. He has developed an elegant but quite involved,
computationally, method along with a software package (called COLSAC) that implements
it. The authors present an alternative (less general) least-squares method where use is
made of the concept and the algebraic properties of the so called L-R fuzzy numbers [2].
Minimizing their distance with respect to the unknown parameters is a classical
minimization problem and has a small computational demand. The chapter continuous by
formulating and solving the fuzzy state estimation of a particular discrete time state-space
model with fuzzy disturbances and initial conditions [3-7]. Similar problems have been
considered by several authors under various mathematical formulations.
For example, it is worthwile to mention the work of Lee [8] where a state estimation
problem is solved for a class of distributed-parameter systems with uncertain parameters.
The parameters are assumed to be arbitrary time functions known to be in a closed and
bounded region. The resulting estimation algorithm provides an assured accuracy and a
"guaranteed" error estimator which gives an upper bound of the estimation error for any
allowed variation of uncertain parameters [9]. Other works on fuzzy estimation include
[10-20].
The structure of the chapter is as follows. Section 2 starts with a general discussion
of the fuzzification of the classical least squares problem, proceeds to a brief review of
Celmins' fuzzy least squares method, and goes on to the formulation and solution of the
authors' fuzzy least squares problem. Section 3 deals with the state estimation problem of
347
S.G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 347-368.
© 1994 Ktuwer Academic Publishers. Printed in the Netherlands.
348

fuzzy dynamic systems, including a discussion of the properties of n-dimensional fyzzy


sets. All the required background concepts and properties of fuzzy real arithmetic numbers
and L-R fuzzy real numbers are collected in the Appendix (Section 5).

2. FUZZY LEAST SQUARES PARAMETER ESTIMATION

2.1 General discussion


The classical least-squares estimation problem is formulated as follows:
GIVEN: The data set (xj,yj), i=l,2,...,n and the model Yj=f(xj,a) where a is a parameter
vector,
FIND: an optimal estimate of a.
SOLUTION: The solution is the value of a that minimizes the total error:
n
2

where ej=Yj-yj is the ith error and Cj, i=l,2,...,n are given weighting coefficients. The
optimal estimate is found by solving the equation dE/da=0 , i.e

' dE
a: -r-=0
da

If (xj.yj) are normally distributed and f(.) is linear, then the least squares estimate of
a coincides with the most probable estimate of a, since the total error E is the negative
exponent in the probability distribution of a given (xj,yj), i=l,2,...,n.
Now we shall try to insert "fuzziness" in the above classical least squares problem.
Fuzzines can exist either in the data of the problem or in the parameters of the model.
Before proceeding to the formal derivation, let us give the following real example.
A student tries to make his reading plan in order to take the exams of the "fuzzy
control" subject. From his own experience he knows the following:
-With "about" 2 hours/day study he solves "about" 2 problems
-With "about" 3 hours/day study he solves "about" 4 problems
-With "about" 4 hours/day study he solves "about" 7 problems
-With "about" 5 hours/day study he solves "about" 11 problems
-With "about" 6 hours/day study he solves "about" 13 problems
Question : If the student devotes "about" 3.5 hours/day for his study, how many
problems will solve?
This problem is actually a problem of fuzzy estimation. In relation to this problem
one can observe the following:
(i) The student (the human) is a dynamical system that receives stimuli (inputs) and gives
replies (outputs). Here both the inputs and outputs are fuzzy (they contain the word
"about"). Thus we have a fuzzy system and we want to estimate its model,
(ii) The human replies very easily to questions (problems) that involve fuzziness, even if
he knows nothing about theories ( e.g. the least squares theory).
A plaussible human answer to the above question is that: "With "about" 3.5 hours
study per day the student will solve "about" (more or less) 6 problems".
349

Let us now, try ro formulate this problem with classical mathematics.


The problem data are the pairs (Xj.Y^) where X j , Yj are fuzzy numbers e.g.
Xj="about 2". A model that might be used has iht form

y=a+bx

where a and b are real-valued coefficients. The ith error is ej=yj-Yj=(aj+bXj)-Yj.


Now, one has to take into account the following observations:
Observation 1 : The classical numeric operations cease to have sense, e.g. how much it
is 4+2 * "about 2 " ?
What is the meaning of "+", " , " , " / " , etc?
Observation 2 : How one can represent concepts that involve fuzziness, e.g. "about" ,
"almost" , " more-or-less" ?
Observation 3 : The error ej in the classical problem is actually the distance between the
numbers yj and Yj. Therefore we need to define the distance between fuzzy numbers, e.g.
the distance between the fuzzy numbers "about 3" and "more-or-less 2".
Observation 4 : The concept of differentiating with respect to fuzzy numbers is
required, e.g. how one computes the derivative:

dE/d("about-a") ?
To overcome the above difficulties one can follow two approaches; namely (i) to
reduce the problem into a classical one, (ii) to keep the fuzziness and treat it directly
throughout the problem solution. When using the first approach the fuzzy problem is
approximated by a classical one, the solution of which is presented as an approximation to
the solution of the original fuzzy problem. In the second approach the fuzziness is not
eliminated but kept throughout the solution. Thus the question arises: What is better, an
exact solution to an approximate problem or an approximate solution to an exact problem?
Here we shall concentrate on the second approach.

2.2 Celmins' Fuzzy Least Squares Problem


A fuzzy formulation of the least squares problem was provided by the Hungarian
mathematician Celmins [1]. Our purpose here is to briefly review his results.
According to his notation the classical least squares problem is defined as:
Minimize W=llCj^ll2 s.t. F(X+Cj^,t)=0 where F(. , .) is the model function,
X+Cx is the data vector (corrected by C^), C^ is the error, t is the parameter vector, and
II. II a suitable norm. In summarized form the problem is defined by the quadtuple :

{ W;IICxll;F;W=IICxl|2}.

This method can be fuzzified in two ways:


(i) When the data are fuzzy
In this case instead of X we have (X,|j,jj((Cx)), and the problem becomes:
Miniinize V^=il-[i^(Cy.))'^ subject to FCX+C^, t)=0 i.e we have the problem
( X; [i^iC^y, F; W=(l-ii^(C^))2 }
350
(ii) When the model is fuzzy
Here, instead of the function F we have (F,[ip), and the problem becomes:
Minimize W=(l-|ip)2 subject to F(X,t)=0 , i.e we have the problem
{ X; IIC^INO; F; |Xp W=(l-fip)2 ). Here we shall consider the first case. The second
requires the solution of a fuzzy linear regression problem.
Let us first study topologically the set of fuzzy numbers with conic membership
functions in one or more dimensions.
If "a" is a fuzzy number with conic membership function, then:
|x^(x)=max(0, l-lx-al/s^) = l-min{I, lx-al/s^
=l-min(l, llx-alla)

where llx-alla=lx-al/s^ is the associated norm, a is the dominant value, and Sjj is the spread.
If A is a fuzzy vector then

HA(x)=max(0, l-[(x-A)Tp^-l(x-A)] H
= l-min{l, [(x-A)Tp^-l(x-A)] ^^}
= l-min{l,IIX-A'llA)

where the norm is ||X-A i|j4^ = [(x-A)Tp^-l(x-A)]-^ • with A vector of dominating values,
and P ^ diagonal matrix with elements the spreads of sdj.
Pictorially a fuzzy 2-dimensional vector with conic membership function is shown:

H^^

1 -•

Fig.l Fuzzy vector with conic membership function


351

Celmins defines the distance D(A,B) between two fuzzy vectors A and B:

D(A,B)=minmax{h(X,A),h(X,B)}

where h(.,.) is a metric between a classical vector X (X^ R"^) and a fuzzy n-dimensional
vector A.
Celmins' formulation of the fuzzy least squares is then the following:
Minimize

i=l

subject to

Fi(X,+Ci, t)=0, i=l,2,...,n llcjix, IIC; II p/( i c J| x + llcillF.)<l-Y*

where y* is a suitable constant.


The above model is applied by Celmins to the following real problem: Find a fuzzy
model of the form V=a+bQ, with a,b fuzzy quantities, which connects the "fuzzy"
variables V (impact velocity of missile upon target) and Q (missile's shape). He developed
a statistical software package COLSAC (General least square computer program).
Celmin's method is quite mathematically involved and has a very high computational
complexity. As a result, its application needs the use of the specialized statistical package
( COLSAC).
In the following, a new fuzzy least squares method, developed by the authors will be
presented, which possesses much less computational complexity than Celmin's method
and is easily applicable to practical cases.

2.3 Formulation of a new Fuzzy Least Squares Problem


This formulation is based on the use of L-R fuzzy numbers (see Appendix) and their
very simple form of distance d[.,.]2, and reduces the problem to that of finding the
minimum of a classical function. The fuzzy numbers of type L-R constitute a special class
of fuzzy numbers very useful in estimation and other applications. Specifically, a fuzzy L-
R number M has a membership function of the type (see Appendix):

L((m-x)/a) , x<m

{ R((x-m)/p , x>m

where m is a classical number, a and P are parameters, and L(.), R(.) are functions of
special type (satisfying the conditiqns of Def A.l in the Appendix). Symbolically an L-R
fuzzy number M is denoted by :

M=(m,a,P)
352

Now, let F(R) the set of all fuzzy L-R numbers that are defined on R. On the set
F(R) one can define a linear structure, since the following properties hold:

a) (m,a,P)+(n,Y,8)=(m+n,a+Y,P+6)
p) t(m,a,3)=(tm,ta,t3) , t>0
Y) t(m,a,p)=(tm,t3,ta) , t<0

Also, on the set F(R) one can define a norm d[.,.]2 via which the distance of two
fuzzy L-R numbers Xj=(xj,aj,3j) and X2=(x2,a2,f^2) can be determined:

d[Xi,X2]2=(xi-X2)2+(xi-X2-(ai-a2))2+(xi-X2-(3i-|32))2

The new formulation of the fuzzy least squares problem is then the following:
GIVEN: Fuzzy R-L data {X-^X{) , i=l,2,...,N where XpCxj.cj.di), Yj=(yj,ei,fi) and
a linear fuzzy parametric model Z=a+bX where a,be R or F(R)
FIND: The parameters a,b so as to minimize the total error
N
^^d[Z„Y-f
E=
i=l

where Zj=a+bXj, and d[Zi,Yj] is the ith error (distance of the L-R fuzzy numbers Zj and
Yi).
It is a model, that when b in Z=a-t-bX is an L-R fuzzy number, then the product bX
is only approximately L-R fuzzy number [2], i.e .

(m,a,P)- (n,Y,8)=(inn,mY+na,m8-i-nP).

Also, if the L-R numbers used are of the special type (m,a,a), then the
computational load is reduced considerably.
In the following we shall treat three cases, namely;
CASE A: Model Z=aH-bX , a,be R , Xe F(R)
CASE B: Model Z=A-fbX , A,Xe F(R) , b e R.
CASE C: Model Z=A-i-BX ,A,B,XG F(R).

2.4 Solution of Fuzzy Least Squares Problem: Case A


This is the case where we have the model Z=a+bX with a and b real numbers and X
fuzzy L-R variable. We must distinguish between the two cases b>0 or b<0 since the
product bX is defined differently if b>0 or b<0.
(I) b>0
We have

a+bXi=a+b(Xi, Cj, di)=a-(-(bXi, bc;, bdj)=(a-i-bxj, bc;, bdj)


353

and so
d[Zi, Y/=d[a+bXi, Yi]^=d[(a+bxj, bdj, bci),(yi, e;, f;)]^
2 2 2

=(a+bXi-yi) +[a+bxi-yi-(bdi-ei)] +[a+bxi-yi-(bCi-fi)]

The criterion E is then equal to:


N
E-J{(a+bXi-yi)V[a+bXj-yi-(bCi-ei)]V[a+bXi-yi-(bdi-fi)]^}
i=l

and the parameters a and b are determined by classical minimization of the real valued
function E=E(a,b), i.e

Parameter a: ^ = 0
9a

Parameter b: M ^ = 0
do
The resulting algebraic system of two equations in the two unknown a and b is:
N N

3Na+b5^(3xi+di-Ci)=5^(3yi+fi-ei)
i=i i=i

N N
aJ(3xi+di-Ci)+b2[x^+(xi-c/+(xi-d/]
i=i i=i

N
=5^[(Xi-Ci)(yi-ei)+(Xi+di)(yi+fi)+Xiyi]
i=l

This can be solved in a straightforward way.


(JI) b<0
In this case
a+bXi=a+b(xi, c•^, di)=a+(bxi, bdj, bc;)=(a+bxi, bdp bCj)
Thus
d[Zi, Yi]^=d[a+bXi, Yi]^=d[(a+bXi, bdj, bCi),(yi, C;, f;)]^
=(a+bxi-yi) +[a+bxi-yi-(bdi-ei)] +[a+bx-yi-(bCi-fi)]^
The criterion is
354

E=2_^{(a+bXi-yi)\[a+bXi-yi-(bdi-ei)]^+la+bXi-yi-(bCi-fi)]^}
i=I

and so the equations

aE(a,b) ^ ^ 9E(a,b) „
_ _ _ ^ 0 and -3b-=0

give

3Na+bJ(3xi+di-Ci)=5!l(3yi+fi-ei)
i=l i=l

N N

a2^(3xi+di-Ci)+b2[x?+(xi-Ci)V(xi-di)^]
i=l i=l

==2L[(xi+di)(yi-ei)+(xi-Ci)(yi+fi)+Xiyi]
i=i

2.5 Solution of Fuzzy Least Squares Problem: Case B


This is the case where the model under estimation is Z=A+bX, AeF(R) b ^ R ,
Xe F(R),where A=(a, a^, 02). Again the two distinct cases b>0 and b<0 are
considered.
(I) h>0
Here
A+bXi=(a, a,, a2)+b(xi, C;, di)=(a+bXi, ai+bcj, a2+bdi)
d[Zi, Yj^=d[A+bXi, Yi]^=d[(a+bXi, ai+bc,, a2+bdi),(yi, e„ f;)]^
2 2 2
=(a+bxi-yi) +[a+bxi-yi-(ai+bci-ei)] +[a+bxj-yj-(a2+bdpfi)]

E(a, a],a2;b)=5^d[Zi, Yj]^


i=l

Thus the parameters a, a^, 02 and b are given by the solution of the following
systems of equation:

^ . 0 ^ = 0 ^ = 0 ^=0
da ' dtti ' da2 ' db
355

(II) b<0
A+bXp{a, tti, a2)+(bxi, bd^, bci)=(a+bxi, tti+bd;, a2+bci)
d[Zi, Y/=d[A+bXi, Yi]^=d[(a+bxi, aj+bd;, a2+bCi),(yi, q, f;)]^
2 2 2
=(a+bxi-yi) +[a+bXi-yi-(a]+bdi-ei)] +[a+bxi-yi-(a2+bCi-fi)]
N
E(a, ai,a2;b)=^d[Zi, Yif
i=l

For simplification we assume here that the fuzzy L-R number A has the form A=(a,
a*, a*), i.e a2=a2=a*. Then, the algebraic system of equations that are satisfied by
a,a*, and b is:
For b>0

«*=[Xfi+Z^i)^2N)-b[21d,+2cij/(2N)

Na 3^Xi/N+^(di-ei)/N +Na*(^5^d,+^Cij/(2N)

+b2^f(Xi-Ci)\(Xi+di)Vxf]

For b<0

a= /N

Na[35^x./N+X(di-ei)/N -Na* X ^ i + S c i ^ N )

=2^[(xi-Ci)(y,+fi)+(xi+di)(yi-ei)+Xiyi
356

2.6 Solution of Fuzzy Least Squares Problem: Case C


Here, the model is Z=A+BX where A=(a, a j , 02) and B=(b,Pi,p2)-
Therefore;

A+BXi=(a, tti, a2)+(b, Pj, |32)(xi,Ci, di)=(a, ttj, a2)+(bxi, bc^+XiPi, bdi+x^pj)
=(a+bxi, ai+bCi+xjPi, a2+bdi+Xip2)
d[Zi, Yi]^=d[A+BXi, YiJ^=d[(a+bXi, tti+bCi+XiPi, a2+bdi+XiP2),(yi, e„ f)f
2 2 2
=(a+bXi-yj) +[a+bXi-yi-(a,+bCi+XiPi-ei)] +[a+bXi-yi-(a2+bdi-XiP2-fi)]
and the problem is to select a, a j , 02; b, Pj, P2 so as to minimize the criterion
E=2d[Zj,Yi]2. The solution is found by solving the equations:

dE_o i L - o - ^ - 0 ^ - 0 ^-0 ^=0


da ' dtt] ' da2 ' db ' dpi ' dp2

Example 2.1
We are given the following L-R fuzzy data:
Y.=(ype,f,) Xi=(Xi,c,di)
(4, 0.6, 0.8) (21, 4.2, 2.1)
(3, 0.3, 0.3) (15, 2.25, 2.25)
(3.5, 0.35, 0.35) (15, 1.5, 2.25)
(2, 0.4, 0.4) (9, 1.35, 1.35)
(3, 0.3, 0.45) (12, 1.2, 1.2)
(3.5, 0.53, 0) (18, 3.6, 1.8)
(2.5, 0.25, 0.38) (6, 0.6, 1.2)
(2.5, 0.5, 0.5) (12, 1.8, 2.4)

The problem is to fit to them the model Y=a+bX (a,be R) or the model Y=A+bX
(Ae F(R), be R). Applying the procedures described in Sections 2.4 and 2.5 one can
easily verify tha the results are the fuzzy straight lines:
Y=1.052+0.147X
Y=(1.201, 0.180, 0.180)+0.136X

3. STATE ESTIMATION OF FUZZY DYMAMIC SYSTEMS


3.1 Introductory Concepts
We now turn our attention to the state estimation problem of linear dynamic systems
with fuzzy initial states and fuzzy noises. Our goal is to present an algorithm for the
estimation of the fuzzy state of the system assuming known dynamical equations and a
sequence of output observations. The material of the present section is based on [3-7J. To
357

formulate the theory we need to define the concepts of N-dimensional fuzzy sets and N-
dimensional Gaussian fuzzy sets.
We know that a fuzzy set defines on the reference hyperset R a straight line section
the points of which loose, towards its ends, the property to belong to it. Analogously an n-
dimensional fuzzy set defines on the hyperset R" a closed volume the points of which
loose the propety to belong to it towards the boundary surface.
Definition 3.1
Analogously to the 1-dimensional fuzzy sets, A and B are said to be n-dimensional
(n-D) fuzzy sets if

A-{(x,^lA(x)) U e R " , ^^{x): R"->[0,1]}


B-{(x,Mx))|xeR",HB(x):R"-^[0,l]}

where |iyi^(x) and Hg(x) are n-dimensional membership functions (see Ch. 1 , Def. 2.1).
Some useful operations of n-dimensional fuzzy sets (fuzzy vectors) are the following:
PI. Vector Sum of n-D fuzzy sets
If A and B are n-D fuzzy sets, then their sum

C=AeB={(x,|j.c(x)) I x€R" , M.c(x): R " - ^ [ 0 , 1 ] }


where
Hc(x)=sup{jiA(x-y)A iXfiCy)}
y

is also n-D fuzzy set. This sum is a generalisation of the vector sum of two
classical n-D vectors.
P2. Crisp translation of an n-D fuzzy set A in the direction of a
crisp vector y
Geometrically this means the translation of the "volume", defined by the
fuzzy set A, by the quantity y. The translated fuzzy set A has exactly the
same shape with A, i.e

with HA'(x)=^A(x-y).
A'={(X,^A(X)) | X 6 R V A ' ( X ) : R " ^ [ 0 , 1 ] }
P3. Direct image under P of the n-D fuzzy set A

PA'={(X,^PA(X)) I xeRVpA.(x):R"-^[0,l]} with ^PA'(X)=^IA(P~'X).

P4. Inverse image under Q of the n-D fuzzy set A

Q"^A'-{(X,HQ->A'(X)) I xe R",JXQ-IA(X):R"-^[0,1]} with ^1Q->A(X)=|IA(QX).

Definition 3.2
A n-D Gaussian fuzzy set A with center ue Rn , variance Q and height a is
defined as :
A={(X, ^A(X)) I xe R " , ^ A ( X ) : R " - ^ [ 0 , 1 ] }
where
358

^^^^'^=1" ^g-(x-u)V'(x-u)^^

and is symtx)lised by the triad: A=(a, u, Q).

The operations of n-D Gaussian fuzzy sets follow as special cases of the operations
of arbitrary n-D fuzzy sets. Thus, let A=(a, u i, Qi) and B=(P, U2,Q2).
Then
GI. Translation of A by the vector v
A'=(a, Uj-v, Qi)

G2. Sum of Aand B


In general, the sum A©B of two n-D Gaussian fuzzy sets is not Gaussian unless
they are linearly dependent, i.e A=niB, me R. However A©B can be approximated by the
following n-D Gaussian fuzzy set:

( - ' Qi Q2
A©B= min(a,|3), u^+Uj , — + - ;
V '^ ' ^ a 1-a
where a a parameter wih 0<a<l.
G3. Direct image of A under P

PA=P(a, u,, Qi)=(a, pG„ PQi?'^)

G4. Inverse image of A under M

M"'A=M~'(a, ui, Qi)=(a, M^'u,, ( M V ' Q I M " ' )


G5. Section of A and B
The section A n B is not in general an n-D Gaussian fuzzy vector, but it can be
approximated by the n-D Gaussian fuzzy vector:

AnB=(Y, u*, Q)
where
7=aexp[-(u*-uj) Qj (u*-u,)
u*=[pQr'+(l-p)Q2']"'[pQ7'Gi-i-(l-p)Q2'G2]
Q=(l-d^)[pQr^+(l-p)Q2']"'
d^=(ui-G2)'^[p"'Q,+(l-p)"^Q2]"Hu,-U2).
359

Before going to the fuzzy state estimation problem, we recall that a classical n-D
vector can take each time as value only one point of R", and thus it covers all R". For
convenience the differences of classical and fuzzy variables and vectors are summarized in
the following table:
Variable Value
Classical (crisp) point of R
Fuzzy Section of R
Classical vector Point of R"
Fuzzy vector Subsetof points of R"
3.2 Fuzzy State Estimation Problem
Consider a discrete linear dynamic system with state equation:
x(k+1 )=Ax(k)+Bu(k)+Gw(k), x(0)=x(to)
and output equation:
z(k)=Cx(k)+v(k)
where the initial condition ^{IQ) is a n-D fuzzy set on the reference hyperset R" , the input
u(k) is exactly known, the input disturbance w(k) ia a m-D fuzzy set on R™, and the
output noise v(k) is a p-D fuzzy set on RP. The matrices A,B ,G and C are all known and
real-valued and have appropriate dimensions for the operations to have sense.
The fuzzy state estimation problem is the following:
GIVEN: (i) A system described by the above state-output eaquations
(ii) The set of fuzzy control signals U={u(0),u(l),...,u(k-1))
(iii) The set of fuzzy ouput-signals Z={2(l),z(2),...,z(k)}
FIND: An estimate of the fuzzy set of the state x at the time instant k, i.e an estimate of
x(k).
Problem Solution
Here the term "estimation" means the determination (estimation) of all parameters of
the fuzzy set including its membership function. The algorithm to be described makes use
of the operations described in Sec.3.1 and involves two steps.
Step I: Let x(k-l/k-l) be the estimate of x(k-l) on the basis of the data up to time k-1.
Then the one-step ahead predicted state estimate x(k/k-l) is given by :
x(k/k-1)=Ax(k- 1/k-1 )-t-Bu(k-1 )-i-Gw(k-1)

Clearly, this ives the set of all posible states x(k/k-l) which is reachable from
x(k-l/k-l) through the given dynamics of the system.
Step 2: This step computes the corrections to x(kA:-l) that must be made in the light of the
information transferred by the new output measurement z(k). More specifically: We solve
the output equation z(k)=Cx(k)-i-v(k) with respect to x(k), i.e

x(k)=C-1 [z(k)-v(k)]=-C-1 [v(k)+(-z(k))J.

Now, the estimate x(k/k) of x(k) on the basis of data up to time k, is obtained as the
section of the quantities:

x(k/k-l) and-C-l[v(k)+(-z(k))].

This is so, since the estimate must belong to both of these fuzzy sets.
360
Therefore

x(k/k)=x(k/k-l)n-C '[vtk]©(-z(k))]

To summarize the overall estimation algorithm is expressed by the equations:

x(k/k-l)=Ax(k-l/k-l)eBu(k-l)©Gw(k-l)
x(k/k)=x(k/k-l)n-C"^[v(k)e(-z(k))]

with initial condition x(0/0)=x(0)=x(tQ).


We now have to determine the membership functions M'x(k/k-l) ^"^ M'xfk/k) °^
x(k/k-l) and x(k/k). To this end, we start from the first equation of the algorithm:

x(k/k-l)=Ax(k-l/k-l)®Bu(k-l)®Gw(k-l)

This equation involves:


a) A product of a matrix by a n-D fuzzy set, i.e Ax(k-l/k-l) which, according to the results
of Sec. 3.1 (Property P3), gives:

^Ax(k--i/k-i)(x)=Ux(k-i/k-i)(A~ x)

b) The product Gw(k-l) of the matrix G by the m-D fuzzy set w(k-l). Thus

I^Gw(k-i)(x)=^w(k-i)(G'' x)
c) Translation of the n-D fuzzy set Ax(k-l/k-l) by the crisp vector
Bu(k-l). The result is:

M•Ax(k-l/k-])®Bu(k-l)('')=^^Ax(k-l/k-l)(''-Bu('<^-l))
=l^x(k-i/k-i)(A"'x-Bu(k-l))
d)Sum of the n-D fuzzy vectors Ax(k-l/k-l)©Bu(k-l) and Gw(k-l), i.e

I^Ax(k-l/k-l)®Bu(k-l)®Gw(k-l)^'')

=sup(M-Ax(k-i/k-i)®Bu(k-i/x-q)A^w(k-i)(G"'q)}
=sup{^^(k_]/k-i)[A"'x-Bu(k-l)-q]A^^(k_,)(G'^q)}

Now, consider the second equation

x(k/k)=x(k/k-l)n-C'nv[k]®(-z(k))]

This equation involves the following:


361

a) Translation of the p-D fuzzy vector v(k) by the crisp vector -z(k), i.e

M-v(k)®(-z(k))(x)=^v(k)(x-(-z(k)))=^^(k)(x+z(k))

b) Multiplication of the crisp matrix -C"^ by the p-D fuzzy vector v(k)©(-z(k)), i.e

M-c-'[v(k)ffi(-z(k))](x)=^^v(k)f-C~'x^-z(k)]

Thus finally

l^x(k/k)(x)=|ix(kA-l)'^^^v(k)f-C"'x+z(k)]

4.CONCLUSION
In this chapter we have studied the fuzzy least-squares parameter estimation problem
and presented two methods. The first one is due to Celmins and the second to the present
authors. The first seems to be computationally very demanding, whereas the second
method is applicable only to the class of L-R fuzzy numbers but it has computational
efficiency similar to the classical least-squares method. Then our attention was focused to
the state estimation problem of systems subject to fuzzy disturbances and fuzzy initial
conditions.
An estimation algorithm was presented which has high theoretical value but is
practically limited by the high computational demand. The area of fuzzy parameter and
state estimation seems to be quite open and provides challenging theoretical and practical
problems.

5. APPENDIX: A Review of Fuzzy Algebra

5.1 Fuzzy Real Numbers


Let R be the set of real numbers and ne R a given real number. From the real number
n one can construct a fuzzy real number N as a fuzzy set (with particular properties) that
covers (the classical real) number n. When the fuzziness of N is removed it reduces exactly
to n [2].
Definition A.l: N is a fuzzy real number if and only if: (i) it is a fuzzy subset of
the set R of real numbers, (ii) its membership function Hj*j(x) has the following properties;
a. ^^(x) is a continuous function
b. Vx6 (-°o,c] , IIN(X)==0
c. |IN(X) is strictly increasing in [c,a]
362

d- Vxe[a,bJ , |iis,(x)=l
e. ^N(X) 'S strictly decreasing in [b,d]
f. Vxe [d,+oo), |aN(x)=0
From this definition it follows that N is a fuzzy real number if and only if N is a
convex and n normal fuzzy subset of R.
Some examples of fuzzy real nunbers are shown in Fig. A. 1

i L
H(x) H(x)
1

i
c a 4 b
(b)
l\
1 \
1 \
1

Fig. A.l: Three fuzzy real numbers


v^
d 10
(c)

(a) "about 0" , (b) "nearly 4" , (c) exactly 10


From Fig. A.l we observe the following:
(i) Fuzzy 0: "about 0", here a=b, shape nearly triangular
(ii) Fuzzy 4: "nearly 4" here a^tb, shape nearly trapezoidal
(iii) Classical 10: "exactly 10", here a=b=c=d, shape like a spike
The operations of fuzzy numbers are extensions of the respective operations of
classical numbers and are defined as follows [2].

Definition A.2: Let

M={(x, [i^M) I xe R}, N={(y, ^tN(y))' ye R}

fuzzy real numbers. Then the following operations are defined:


01) Fuzzy addition

M4-N={(z, maxmin (|iM(x),|j.^,(y)) | Vx,y,z:z=x+y}

02) Fuzzy subtraction

M-N={(z, maxmin (|if4(x).M-N(y)) I Vx,y,z:z=x-y}


363

03) Fuzzy opposite

-N={(z,^N(y))|z=-y}

04) Fuzzy multiplication

MxN={(z, maxmin (|iM(x),(iN(y)) I Vx,y,z:z=xy}

05) Fuzzy inverse

i/N={(z,tiN(y))lz-i/y}

06) Fuzzy division

M/N={(z, maxmin ()iM(x),)iN(y)) I Vx,y,z:z=x/y}

An example is shown in Fig. A.2

Fig. A.2 "about 2" x "about 5"="niore or less 10"

It is obvious from the above definitions (and from Fig. A.2) that the operations of
the fuzzy numbers have a convolutional structure, and so they are computationally
involved. For example, if Supp(N), and Supp(M)=m then Supp(MxN)=mxn.
It is therefore necessary to develop a special type of fuzzy numbers, the operations
of which have computational complexity equivalent to that of classical operations. Such a
class of fuzzy numbers are the so-called L-R fuzzy real numbers anf are examined below.

5.2 L-R Fuzzy Real Numbers


Let y(x) be a real funcdon y(x):R—>[0,1] that possesses the properties of |J.]sj(x) of
definidon A.l, and can be considered the membership function of a fuzzy real number.
Examples of such a function y(x) are:
364

y(x)=max(o, 1-i x | ) y(x)=max(0,l~x )


y(x)=exp(-1XI) y(x)=exp(-x )
y(x)=l/(l+|x|) y(x)=l/(l+x^)

Definition A.3: Let L(x) and R(x) be two functions satisfying the conditions of
Def. A.l. Then as L-R fuzzy number M around the classical number m, is defined a fuzzy
number M with membership function:

L((m-x)/a), x<m
^IM(X)=-^
R((x-m)/p), x>m

where m is the modal value and a, P, are spread parametes. Since the L-R fuzzy number is
fully determined by the triad of parameters m, a and p it is symbolised by: M=(m, a, P).

Example A.l
Let L(x)=l/(l+x2) and R(x)=l/(1+ | x |) with a=2 , P=3 and m=5. Then, the fuzzy
number "nearly 5" has the membership function:
L((5-x)/2)=l/[l+((5-x)/2) ] . x<5

^5M=
{ R((x-5)/3)=l/[l+ I (x-5)/3 I ] , x>5

which is pictorially shown in Fig. A.3.

0 5 X

Fig.A.3 R-L fuzzy number "nearly 5"

As shown by the following Theorem A.l, the operations of fuzzy L-R numbers
reduce to numerical operations of standard numbers [2].
365

Theorem A.l
Let two L-R fuzzy numbers M=(m, a, p) and N=(n, y, 6). Then one can show [2]
the following:
/ . Fuzzy addition

M+N=(m, a, P)+(m, y, 5)=(m+n, a+y, P+5)

2. Fuzzy opposite

-M=-(m, a, P)=(-m, a, P) R-L numbers

3. Fuzzy subtraction
The subtraction has sense only between L-R and R-L , L-L and L-L , R-R and R-R
numbers (not between R-L and R-L numbers).
M-N=M-i-(-N)

4. Fuzzy inverse

l/M=(l/m, p/m^, «/m^) R-L number

5. Fuzzy multiplication
Three cases are distinguished:
Case A: If m>0 and n>0, then

MN=(m, a, P)(n, y, 5)=(mn, na-m5, np-my)


=-[(-(m, a, P))(n, y, 5)]

Case B: If m<0 and n>0, then

MN=(m, a, P)(n, y, 6)=(mn, my-t-na, m5-l-np)

Case C: If m<0 and n<0, then

MN=(m, a, p)(n, y, 8)=(mn, - n p - m 5 , - n a - m y )


—[(-(m, a, p))(-(n, y, 5))]

6. Fuzzy division

M/N=M-(1/N)=(m, a, p)(n, y, 5)=(mn, (m&+na)/n^ (myfnPVn^)

We now proceed to extend the operators MIN and MAX in the fuzzy algebra. In the
classical algebra these operators are defined axiomatically as follows: Let a,Pe R. Then
by definition:
366

1. a>(3 or a^p or a<P (trichotomy axiom)


2. a>p if a - p > 0
3. a<p if a - p < 0
4. a=p if a - p = 0
Thus the ordering relation is defined via comparison to zero.
Now, consider the following two fuzzy numbers: A="nearly a" and B="nearly P".
To see what is their ordering relation one must see what is the sense of MAX and MIN ,i.e
Max(A,B)=? and Min(A,B)=? Geometrically the fuzzy numbers M and N have the form
shown in Fig.A.4. The question is then to find Max(M,N) and Min(M,N).

max(in,N)

kl k2 k3
Fig.A.4 Two fuzzy numbers and their maximum

Clearly, this cannot be answered through the axioms of classical arithmetic, and so a
new ordering relation is defined as follows [2]:
Definition A.4 Let

M={(x, ^M(X)) I xe R} and N-{(y, ^N(y) l y e R )

two fuzzy real numbers. Then


Max(M,N)={(z,maxmin(jj,^j(x), [y^iy)) \ z=max(x,y)}
In the special case where two fuzzy numbers M and N have only three intersection
points k j , k2 anfk3, then

Max(M,N)={(z, HMAX(Z)) I ze R}
where
367

Hj^z),ze(-oo,kiMk3,+oo)

I |jfj;z),z€[ki,k3]

A pictorial example of Max(M,N) in this special case is shown in Fig.A.4.

REFERENCES
1. A. Celmins, Least-Squares Model Fitting to Fuzzy Linear Data, Fuzzy Sets and
Systems , Vol.22, pp. 245-269, 1987.
2. D. Dubois and H. Prade, Operations on Fuzzy Numbers, Int. J. Systems Sci.,
Vol. 9, No.6, pp. 613-626, 1978.
3. H. Sira -Ramirez, Fuzzy State Estimation in Linear Dynamic Systems, Proc. IEEE
Conf. on Decision and Control, Vol.2, pp. 380-382, 1980.
4. H. Sira -Ramirez, Evolution of Fuzzy Sets in Linear Dynamic Systems, Proc. 1979
Int. Conf. on Cybernetics and Society, Denver, Colorado, Oct. 1979.
5. D.P. Bertsekas, Control of Uncertain Systems with a Set-Membership Description
of the Uncertainty, MIT Electr. Syst. Lab. Rept ESL-R-447, Cambridge, June
1971.
6. F.C. Schweppe, Recuirsive State Estimation: Unknown but Bounded Errors and
Systems Inputs, IEEE Trans. Auto. Contr. Vol. AC-13, No.l, pp. 22-28, 1968
7. H. Witsenhausen, Set of Possible States for Linear Systems Given Perturbed
Observations, IEEE Trans. Auto. Contr. Vol. AC-13, No.5 pp. 556- 558, 1968.
8. K.Lee, Modelling and Estimation of Distributed Systems with Uncertain
Parameters, In: Distributed Parameter Systems: Modelling and Identification (A.
Ruberti, Ed.),pp. 325-334 1978.
9. S.S.L. Chang, Control and Estimation of Fuzzy Systems, Proc. IEEE Decision and
Control Conf, pp. 313-318, 1974.
10. P. Diamond, Higher-Level Fuzzy Numbers Arising from Fuzzy Regression Models,
Fuzzy Sets and Systems, Vol. 36, pp. 265-275, 1990.
11. IFAC Report,, Round Table Discussion on the Estimation and Control in Fuzzy
Environments, Automatica, Vol.11, pp. 209-212, 1975.
12. S. Joszef, On the Effect of Linear Data Transformations in Possibilistic Fuzzy Linear
Regression, Fuzzy Sets and Systems, Vol.45, pp. 185-188, 1992.
13. H. Tanaka and H. Ishibuchi, Identification of Possibilistic Linear Systems by
Quadratic Membership Functions of Fuzzy Parameters, Fuzzy Sets and Systems,
Vol.41, pp. 145-160, 1991. .
14. A. Bardossy, Note on Fuzzy Regression, Fuzzy Sets and Systems, Vol.37, pp. 65-
75, 1990.
15. K.Jajuga, Linear Fuzzy Regression, Fuzzy Sets and Systems, Vol.20, pp. 343-353,
1986.
16. H.Tanaka and J. Watanabe, Possibilistic Linear Systems and their Applications to
the Linear Regres.sion Model, Fuzzy Sets and Systems, Vol.27 pp.275-289, 1988.
17. H.Tanaka, S. Uejima and K. Asai, Linear Regression Analysis with Fuzzy Model,
IEEE Trans. Syst. Man Cybern., Vol.5 SMC-12, No.6, 1982.
368

18. W. Zhen-Yuan and L. Shou-Mei, Fuzzy Linear Regression; Analysis of Fuzzy


Valued Variables, Fuzzy Sets and Systems, Vol.36, pp. 125-136, 1990.
19. S.-Q. Chen, Analysis of Multiple Fuzzy Regression, Fuzzy Sets and Systems,l9^8.
20. D,A.Savic and W. Perdrycz, Evaluation of Fuzzy Linear Regression Models, Fuzzy
Sets and Systems, Vol.39, pp. .51-63, 1991.
CHAPTER 14

A FUZZY REASONING METHODOLOGY


FOR RULE-BASED SYSTEMS

Shyi-Ming Chen

Department of Computer and Information Science


National Chiao Tung University
Hsinchu, Taiwan, R.O.C.

Abstract
In this paper, vvc present a methodology to deal with fuzzy reasoning based on the
matching function S. The singlc-input-singlc-output (SISO) fuzzy reasoning scheme and
the multi-input-single-output (MISO) fuzzy reasoning scheme are discussed in details.

1. Introduction

Much knowledge residing in the knowledge base of an expert system is fuzzy rather
precise. Thus, a powerful expert system must have the capability to deal with fuzzy
reasoning. Fuzzy reasoning can be viewed as a process to infer a possibly imprecise
conclusion from a set of possibly imprecise premises [6, p. 320]. Many fuzzy reasoning
methods have been proposed, such as [1], |2], [3], [4], [5], [6, p. 29l-341|, [9], [10], [12],
In most of the above references, the following single-input-single-output (SISO) fuzzy
reasoning scheme is discussed:
Rule l : l F X i s A i T H E N Y i s B i
Rule 2: IF X is Aj THEN Y is B2

• (1)

Rule p: IF X is Ap THEN Y is Bp
Fact: X is Ao
Consequence: Y is Z:^

where X and Y are linguistic variables [15], and Ao, Ai AT, ..., Ap, BQ, Bi, B2,..., and Bp
are fuzzy terms (linguistic terms), such as "slow", "medium", "fast", etc.
The fuzzy terms usually are represented by fuzzy sets [13]. Roughly speaking, a fuzzy
set is a class with fuzzy boundaries. Let U be the universe of discourse (i.e., a collection
of objects), f/={«], H2> •••> "«}• A fuzzy set A of L' is a set of ordered pairs {(i/j,/4(HI)),
(H2./4("2)), •••. ("/i,//i("«))}. where/4, Z^: U -* [0, 1], is the membership function,/^(w,)
369
S,G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 369-386.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
370

indicates the grade of membership of «, in A, and 1 s / s /;. Let A and B be two fuzzy sets
of the universe of discourse U, U={iii, 112, •••, u,,}, and lei/A and//? be the membership
functions of the fu/./y sets A and B, respectively, whereZ^: U—*\0, !],/«: U—*10, 1],
A={{iti,J\(iti)) I u,E.U}, and B={{Ui,/ij(Ui)) I iiiizU}. The fuzzy sets A and /^ arc called
equal (i.e., A=B) if V iiitiU,fA(iii)=fij{ii,). The union operation between the (uzzy sets A
and B is defined by

/ I u ii = {(«, ,/^ufl("/)) i^uflC,) = A^'^-^C/AC',). /«(«,)), «, et/}.

Let U be the universe of discourse, U =|0, 100], and "speed" be a linguistic variable
[15], and let "slow", "medium", and "fast" be three fuzzy terms. According to [9], these
fuzzy terms can be characterized as fuzzy sets whose membership function curves are
shown in Fig. 1.
Tspeed

40 55 70 Speed
Fig. 1. A diagrammatic representation of fuzzy speed.

Consider the fuzzy reasoning scheme in (1), where A], AT, .., and Ap are fuzzy sets of
the universe of discourse U, U={ui, 112,..., ««}, and B\, B2 Bp arc fuzzy sets of the
universe of discourse of V, V={vi, VT, •., v,„}. For a given system's observation fact "X is
Ao", where Ao is a fuzzy set of (J, U-{t4i, HT, ..., «„}, and the membership function of Ao
^^fAi),/An'- f^—*\0, 1|, the system can perform inference by either compositional rule of
inference (CRl) [14] on each of the rules or by approximate analogical reasoning (AAR)
[ 12) on selected rules from the knowledge base to reach a conclusion "Y is /Jo", where Bo
is a fuzzy set of the universe of discourse V, V={vi, VT, .., v',„}. A comparison of CRI
based fuzzy reasoning methods has been discussed in [10] by Mizumolo and
Zimmcrmann. The approximate analogical reasoning (AAR) schema is based on
similarity measures. In [16], Zwick el al. have made a comparative analysis of 19 kinds of
similarity measures between fuzzy sets. They pointed out that some similarity measures
(such as S4, c(»,Ao^ and A.) ha\'c relatively good performance, and the Euclidean
distance measure was found not to be a gtxxl measure. However, in [12], Turksen ct al.
pointed out that the conclusion in [16] may not applicable to all cases and suggested that
users should experiment with different similarity measures before deciding on an
appropriate measure for their t)wn use.
In this paper, we present a new methodology for pcrfontung fuzzy reasoning based on
the matching function S [3], [7]. The proposed methcxl belongs to the AAR scheme. The
single-input-singlc-output (SISO) fuzzy reasoning scheme and the multi-input-single-
output (MISO) fuzzy reasoning scheme arc discussed in details.
371

2. A Fuzzy Reasoning Methodology

In [7], Ke el al. presented a matching function ^S' to measure the degree of similarity
between two vectors. Let a and h be two vectors in R", where i? is a set of real numbers
between zero and one, i.e..

a = (a^, 02, .... a,J, (7, £ [0, 1], 1S/SH,

h = (/;,, 1)2, ••; h„), h, E [0, 1], 1 s (" s n.

Then, there is a matching function S [3], [7],

S(a^ I) j?_ _ (2)


Max(a * a, /; • /;)

where S{a, ft)e [0, 1], which can be considered as the similarity measurement between
the vectors a and h . The value of S{a, h) indicates the degree of similarity between a
and h . The larger the value of S(a, h), the more the similarity between the vectors a
and b.
Because a* h ^ I allftlcos0, " 0 " is the angle between a and h , and because cosO =
1, (2) can be rewritten into

- - Iall/71cos0
S(a, h) _ - - (3)
Max(\a\\a\, \b\\b\)

The relationship between the vectors a and b can be distinguished into the following
three cases:

Case 1: If ff -b (i.e., a and b are identical vectors), then S{a, b)=\.

\a\\b\co?.d \h\co&B
Case 2: If Ic/I > l/?l, then S(a, b) =
lallal \a\

\a\\b\cos6 lalcos^
Case 3: If lal < 161 , then .S'(^, 7)) =
\b\\b\ \b\
Therefore, we can see that
1) If rt and h are identical vectors, then S{a, b) = \.
2) The larger the length difference between a and /;, the less the similarity between
a and b . If \a\ » \T?\ or 1^1 » ki\, then Si'i, h) ^ 0.
372
3) The larger the angle 6 , Ihc less the similarity between a and b . U 6 -* n,
then S(a, ^) a 0, where n is an even number.

Based on the matching function S, we can measure the degree of similarity between
fuzzy sets. Let U be the universe of discourse, U={ui, ti2,..., ««}. and let A and B be two
fuzzy sets of t/, i.e.,

A - {(//,, rti). ("2- «2)> •••. (««, «/•)}

where fl/ fc |0, 1],fc,e [0, 1], and 1 s / s //. By using the vector representation method,
the fuzzy sets A and Bean be represented by the vectors A and B, respectively, where

Based on the similarity function S, the degree of similarity between the fuzzy sets A and
B can b)e measured,

I»5
.S'(A, B) Max{A* A, B'B)

where S{A, B) 6= fO, 1]. The larger the value of S(A, B), the more the similarity between
the fuzzy sets A and B.
Let's consider the following generalized modus ponens (GMP):

Rule:IFXis/i| THEN Y is Bi
*
Fact: X is A^
— I
Consequence: Y is fi]

where X and Y are linguistic variables, Aj and A\ are fuzzy sets of the universe of
discourse U, U-{n\, 112, .., «„}, and Bj and Bi are fuzzy sets of the universe of discourse
« *
V, V={v\, VT, ..., v,„}. Assume that the membership function of the fuzzy sets A] , Ai, Bj,
« , arc / . , / , / . , and / , respectively, where / . : U-*\{\ 1], / : U-^\0, 1),
f . : V-^|0, 1], /' : V-*[0, 1], and the I'uzzv sets Aj', Ai, and ZJ,* have the followmg
"i ' ^1
forms:
AI = {OIU -fl), (U2, XT), ..., («„, X,,)}
-41 :^ {(Ml, Vl), (U2, Vl), - , (««, .Vn)}
A = { ( ^ 1 . -1)' (*'2, ^2) (V,„, -y„)}
373

where J:,£ [0, 1], ViG [0, 1], zjE: [0, 1], 1 s / s H and \& j ^m. Let Aj and A^ be the
*
vector representation of the fuzzy sets A^ and Ai, respectively, where

Ai =(.ri, .^2, ..., x„)


A\ =(.Vl, V2, ..., ,V„).

Then, based on the matching function S, the degree of similarity between the fuzzy sets
A, and A\ can be measured,

~^ — A •A
S(A,. A,) = - ^ ^ ^
Max{Ai • Ai, A, • A,)

where 5( A;, A,) E [0, 1]. Let 5(A|, Aj )= /:, and let the deduced consequence of the rule
is "Y is 5, ", where the membership function of the fuzzy set D is as follows:

where "*" is a multiplication operator, i.e.,

fi,' = {(V,, k*Z{), (V2, /:*Z2)> ..., (V,„, ^ * Z j } .

* * *"
It IS obvious that if Aj and Aj are identical fuzzy sets (i.e., A\ =Ai ), then S(A\, Aj )=1
*
and Z^ is equal to/?].
Consider the following single-input-single-output (SISO) fuzzy reasoning scheme:

Rule 1: IF X is Ai THEN Y is S,
Rule 2: IF X is Ao THEN Y is B2

Rule p: IF X is Ap THEN Y is Bp
Fact: X is Ao
Con.scquence: Y is BQ

where Ao, Aj, A2, ...,and A„ are fuzzy sets of the universe of discourse U, (/={«], 112,...,
«„}, and Bo. ^1-^2. •••, ana ^p are fuzzy sets of the universe of discourse V, K={V],V2,
..., v,„}. Assume that
A, = {(Hi, Jr,l), (U2, Xfi), .... (M,„ X,,,)}
Bj - {(v\, yjx), (V2, ypj,..., (v,„, Vym)}
374

where \ ^ i ^ p and 1 s y s p . By using Ihc vector representation method, the fuzzy set A,
can be represented by the vector A^ ,0 ^i s p, where

\) = vol' ''^('2' •••' -^Oii)

Ai ~ \ - ^ 2 l ' "^22' •*•' ^2n)

Based on the previous discussion, we can get the following results:

S{\^, A\)=ki ^> the deduced consequence of rule R[ is "Y is B^ ", where
«i ={(vi, A:,*yii), (V2, *i*.Vi2), •.•, (Vm, ^i*.ViJ}.

i'(A)' ^ ) =^^2 =^ the deduced consequence of rule ^^2 '^ "Y is ft ", where
/ ^ = {(*'l. ^ 2 * V 2 l ) . (l'2, ^ 2 * y 2 2 ) . - . (Vffl, ^2*y2;«)}-

.S'( A)' ^p)=^p =* "ic deduced consequence of rule Rp is "Y is B^", where
«^ = {(vi, Vvpi), (V2, kp*yp2)...., (v,„, V V " ) } -

where ^,fci [0, 1] and \-^i ^p, and the deduced consequence of the above SISO fuzzy
reasoning scheme is "Y is HQ", where

and " U" is the union operator of fuzzy sets. That is,

/^()= { ( V l , Z i ) , (V2, Z2), ..., (V„„ /,„,)}

where

:.2=Ma.\(ki*yi2, ^2*.V22. •••- ^p*.V/,2)

z,fc |0, U. iind 1 ^/ s « .


375
Let's consider the following generalized modus ponens:

Rule: IFX is Ai AND ... AND X/is A/THEN Y is B


Facts: Xi is A^ AND ... AND X;is J\
?
Consequence: Y is B
*
where Xi,..., X/, and Y are linguistic variables. Ai andAj are fuzzy sets o\ the universe
of discourse (J, U={u\, 112, .., ««}, ..., v4/and Aj are fuzzy sets of the universe of
discourse 7', T={ti, /2, •••,'/}, and Band If are fuzzy sets of the universe ofdiscour.se V,
V={i'i, V2,..., v,„}, where

^1 = { ( " l , . T n ) . ('<2,-^12)> - , ("mXln)}


^1 = { ( « ! , Vll), («2,.Vl2). - , ("/h.Vl«)}

A = { ( / ] , Xn), (/2. -^C)- -M (//, Xif)}

B={{VuZi),{V2,Z2),-,{V,n,Z,n)y

By using the vector representation method, the fuzzy sets A^ , A,,..., A^ , and A/ can
«• *•

be represented by the vectors A, , Aj ,..., A/ , and A/ , respectively, where

A, V I h -fn' •••' -^ui)

^' =(.V|l, .V12. — .Vl„)

A, = ( . t „ , .V,2, .... X,j)

A =(.v/i. .v/2. - . y//)-

Based on the matching function .V, we can get the following results:

S{AI Ai)=ki

.V(A,*, Ai)=ki
376

where ki^E [0, Ij, and 1 s / s / . Letc = Min{k\, ...,kiy, Ihe deduced consequence ol the rule
is "Y is B*", where

(i.e., /g-(v^) = c*/H(V ), where / = 1 , 2 , . . . , m). It is obvious that if Aj and A\ are


*
identical tuzzy sets,.... and Af and Ai arc identical luzzy sets, then FT is equal to B.

Furthermore, consider the following multi-input-single-output (MISO) fuzzy


reasoning scheme:

Rule 1: IFXi is An AND... AND X/is Aw THEN Y is Bj


Rule 2: IPX, is A21 AND ... AND X/is A2,THEN Y isZ?2

• (4)

Rulep: IFXi is A^i AND ... AND X/is A,,/THEN Y is fip


Facts; Xj is Aoi AND ... AND X,is AQ/,
Consequence: Y is Z^

where Aoi, An. A21,..., and A„i are fuzzy sets of the universe of discourse f/, U={u\, 112,
..., «„},..., At)/, Ai/,A2/,..., ana Ap/are fuzzy sets of the universe of discourse T, 7={/i, h,
..., If}, dnd Bo,B\, B2, ••, and Bi are {\i7.z\ sets of the universe of discourse V,V={vi,
V2,..., v,„},i.e.,

^401 = {(«1, -^Ol)> ("2. -«'02). •••. («H. -^Ow)}


All = {(«!, .TH), («2.Jri2), - , iUn,Xln)}
A21 - {(Ml, .^21), (H2. -^22). • -. («H, •*2fl)}

Api = {(Ml, .r,,i), (//2, .^,,2), - , («,„ V)5'

Av = {('1, Vol), ('2, .V02), •-, ('/, VO/)}


Au = {(?i,.viiX ('2..V12) C/.vi^}
A2/ = {('], V21), (f2,.V22). -. C/.v:^}

'4,'/ = {('h Vpl), (/2, .V,>2), •-, ('/ Vp/)}


377

^ 1 = { ( V i , J i l ) , (V2,2i2), . . • , ( v , „ , . r i J }
B2 ={(Vi, :2i), (V2, :22). •••> (Vm. Jf2/n)}

B/7 ={(Vl, Zpl), (V2, Zfi), ..., (V,„, Xp,^}

By using the vector representation method, the fuzzy sets AQI, A n , A21, •••, A ^ j , . . . , AQ/.
Ai/, A2/,..., and Api can be represented by the vectors A Q ] , A J J , / ^ J , ..., A ^ j , ..., AQ/ ,
A]/, A2/,..., and Apj, respectively, where

Al °° \-^ll' •*'l2' •••' ^\n)


Aj I =\-^21> -^22' • •> -''2n/

'^pi ~ v ' ^ / ' i ' -^p-' •••' •*/"'/

Av =CvOb yo2, - , Vo/)

'^/ =(,v2i. .V22. • - . yif)

(>V.- .v,„ ..., y,,/).

Let

^'(Aoi, A^,) = fc^,,...,.V(Ao,, Ap,)'kp,


378
and let
ci=Miiiku,-,ku)

Cp=Minikpu...,kpi).
Then, based on the previous discussion, we can get the following results:

the deduced consequence of rule Ri is "Y is B, ", where

S, = {(v,, r]*sii), (V2, ci*;i2),..., (v^, <i*:im)};


*
the deduced consequence ol rule R2 is "Y is B,", where
A = {(Vl, <.-2*J2l), (V2, C2*;22), •••• {Vm, C2*Z2,rd};

*
the deduced consequence of rule Rp is "Y is B„", where

Bp = {(Vi, Cp*Zp\), (V2, Cp*Z,i2), - . (I'm C ^ % « ) } -

In this case, the deduced consequence of the above MISO fuzzy reasoning scheme is "Y
is Bo", where

£^ =^"' U f t U ...UB^p

and " U" is the union operator of the fuzzy sets, i.e.,

lh={{Vu S]), (V2, S2), .... (V,„, A j }

where

si=Majiici*zn,C2*Z2\, ...,Cp%i)
.V2 = MaJ((C]*Zi2< '•2*^22, •••. f'>*2p2)

i-,„ = MjJf(Ci*Zi,„, C'2*S2«i, - , C-p*ZpJ.


We also can choose a subset of rules to perform inference based on a threshold value
k, where X.e:[0, IJ, A rule R, can be fired if the degree of matching between the
379

observation facts and the antecedent portion of rule /?, is larger than or equal to X..
Otherwise, the rule R, can not be fired. For example, consider the following generalized
mtxlus ptmens:

Rule: IF X, is A, AND ... AND X, is A, THEN Y is fi


Facts: Xi is A ' AND ... AND X/is A,*
Consequence: Y is 5

«" *• *

Let A] , Aj ,..., Aj , and Aj be the vector representation of the fuzzy sets A], Aj,..., A/,
and A) , respectively. Supposed X is a threshold value, XJE[0, 1 J, and the fuzzy set B has
the following form:

B ={(Vi, Zl), (V2, Z2),..., (Vm, Zm)},

where Zi e[0, 1] and 1 ^ / s /«. Let C = M ' « ( 5 ( A ' , AI ),..., S(Ai, A,)). If ca A, then the
rule can be fired, and the deduced consequence of the rule is "Y is B"\ where

B* ={(V,, C*Zi), (V2, C*Z2), ..., (V,„, C*2,^}.

If r < ^ then the rule cannot be fired. In this case, we let

B*={(vi.0),(v2,0),...,(v,„,0)}.

Consider the SISO fuzzy reasoning scheme shown in (1) or the MISO fuzzy reasoning
scheme shown in (4). If there are some rules that were fired based on the threshold value
A,, then the deduced consequence of these rules would be combined to get a deduced
consequence "Y is HQ" of the fuzzy reasoning scheme. Finally, we can find an
approximate linguistic term for BQ. This can be accomplished by using the linguistic
approximation methcxl described in [11, p. 56] by matching BQ against a "linguistic term
base", where all allowable linguistic terms are defined by membership function curves
and the linguistic term which has the minimum Euclidean distance from BQ would be
selected as the approximate linguistic term for BQ, where the Euclidean distance between
any two fuzzy sets is calculated as follows. Let F and G be any two fuzzy sets of the
universe of discourse U, where

U = { «], M,, ..., «„}

F = {(«!, /i), («2, A), ..., («„, /„)}

G= {(III, 5 , ) , (Uj, & ) , ..., (M^ g„)}

and let F and G be the vector representation of the fuzzy sets F and G, respectively,
where
380

F- (/,. h /«>

^ = fel. i'2. ••• .^„)-

The Euclidean distance between the fuzzy sets F and G is defined by

d(F, G) = V ( / i - ^ i ) ^ + ( / 2 - & ) ' + ••• + ( / „ - & , ) ^ -

3. A Simple Example

In this section, we use an example to illustrate the fuzzy reasoning process. Consider
the following single-input-singic-output (SISO) fuzzy reasoning scheme:

Rule l : I F X i s A i T H E N Y i s B i
Rule 2: IF X is Ao THEN Y is B2
Rule 3: IF X is AT THEN Y is S,
Rule 4: IF X is Aj THEN Y is B4
Rule 5: IF X is A5 THEN Y is B5
Fact: X is AQ
Consequence: Y is £()

where X and Y are linguistic variables, AQ, A [ , AT, A3, A4, and A5 are fuzzy sets of the
universe of discourse t/, U={u\, «2,..., H14}, B\, Bi, BT„ B4, and B^ arc fuzzy sets of the
universe of discourse V, V={i'i, vo,.... V14}. Assume that Ao=A3. These fuzzy sets are
shown as follows:

Ao= {(«,, 0), (H2, 0), (K3, 0), («4, 0), («5, 0),
(H6, 0), (H7, 0), (H8, 0.5), (My, I), ( « K ) , 0.5),
(HH.0),(«I2,0),(«I3,0),(H,4,0)}

A, = {{III, 1), {112, 1). («3, 1), (114, 0.5), (H5, 0),
(Hf, 0), («7, 0), (MR, 0.5), («9, 1), («I0, 0.5),
(«ll,0),(«i2,0),(H,3,0),(Mi4,0)}

A',= {(M,, {)), (Ml, 0), («3, 0), (H4, 0.33), (M5, 0.67),
(«6, 1), ("7. 0.67), (Mg, 0.33), (M9, 0), («io, 0),
(M,|,0),(M,2,0),(M,3,0),(M,4,0)}

A3 = {(M,, 0), (M2, 0), (M3, 0), («4, 0), {lis, 0),
(M6, 0), (M7, 0), (Ms, 0.5), (Mg, 1), (MK), 0.5),
("11,0),(«12,0),(M13,0),(«14,0)}

A4= {(«!. 0), (H2, 0), (H3, 0), (M4, 0), {II5, 0),
(M6, 0), (M7, 0), (MR, 0), (Mg, 0), (HJO, 0.5),
(Ma,l),(Mi2,0.5),(M,3,0),(Mi4,0)}
381

A5= {(«!, 0), (112, 0), («3, 0), («4, 0), (//5, 0),
(H6, 0), (H7, 0), (lis, 0), (M9, 0), (Mio, 0),
( H „ , 0 ) , ( / / i 2 , 0 . 5 ) , ( / / n , 1),(«14, 1)}

Bl = {(Vi, 1). (V2, I ) , (V3, 0.5), (V4, 0), (V5, 0),


(V6,0),(V7,0),(V8,0),(V9,0),(Vio,0),
( V u , 0 ) , ( v , 2 , 0 ) , (V,3,0),(V14,0)}

flT= {(vj, 0), (vo, 0), (V3, 0.5), (V4, 1), (vs, 0.5),
(V6, 0), (V7, 0), (Vs, 0), (Vg, 0), (Vio, 0),
(V„,0),(V,2,0),(V,3,0),(V,4,0)}

^3=. {(V), 0), (V,, 0),(V3, 0),(V4, 0.1), (V5, 0.4),


(Vfi, 0.7), (V7, 1), (V8, 0.7), (Vg, 0.4), (v,o, 0.1),
(v„,0),(Vi2,0),(Vi3,0),(Vi4.0)}

fi4= {{Vl, 0), (V2, 0), (V3, 0 ) , (V4, 0), (V5, 0),
(V6, 0), (V^, 0.1), (Vg, 0.4), (Vg, 0.7), (V,o, 1),
(Vll,0.7),(V,2,0.4),(Vi3,0.1),(Vi4,0)}

B5= {(V,, 0), (V2, 0), (V3, 0), (V4, 0), (V5, 0),
(V(, 0), (V7, 0), (Vg, 0), (Vg, 0), (Vio, 0),
(Vii,0,5),(Vi2, l),(Vi3, 1),(V,4, 1)}.

By using the vector representation method, the fuzzy sets AQ, A^ , A2, Aj,, A4, A5, Bi, B2,
Bj,B4, and B5 can be represented by the vectors AQ,Ai,A2,Ai,A4,A^,B^,B2,B^,
B^ , and B5 , respectively, where

^ = (0, 0, 0, 0, 0, 0, 0. 0.5, 1, 0.5, 0, 0, 0, O)


AJ = ( 1 , 1 , 1 , 0 . 5 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 )
^ = (0, 0, 0, 0.33, 0.67, 1, 0.67, 0.33, 0, 0, 0, 0, 0, O)
^ = (0, 0, 0, 0, 0, 0, 0, 0.5, 1, 0.5, 0, 0, 0, 0>
A^ = (0, 0, 0,0, 0,0, 0,0,0,0.5, 1,0.5, 0, O)
;^ = (0,0,0,0,0,0,0,0,0,0,0,0.5,1,1)
BJ = (1, 1, 0.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
^ = (0,0, 0.5, 1, 0.5, 0, 0, 0, 0, 0, 0, 0, 0, O)
£^ = (0, 0, 0, 0.1, 0.4, 0.7, 1, 0.7, 0.4, 0.1, 0, 0, 0, 0>
S^ = (0, 0, 0, 0, 0, 0, 0.1, 0.4, 0.7, 1, 0.7, 0.4, 0.1, 0>
^ = ( 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 . 5 , 1, 1, 1).

The membership (unction curves are shown in Fig. 2.


382
memDership functions
n Al

Ui U2 U: U4 Us Ue U? Ua U9 UIOUP U'2UI3U:

membership fupctions
i.Bl B2 B3

V; V2 V3 V4 V5 V6 V7 Va V9 Vio V i : V : j V.3 VM

Fig. 2. Membership function curves.

Based on the matching function S, we get

.V(^, Aj) = _ ^ 1 ^ =0

S(A^, A;) = ,^ _'^"1^ ^ 0.078


Mf/.r(A()« A(), A2 • A2)

Mi;7.r( Ao • Ag, A3 • A3)


383

S(A^, A;) -^"-"^ - 0.167

S(A^,^). _'^L^^ = 0.

When the threshold value X, is set to 0, then all the rules can be fired. According to the
previous discussion, we get the following results:

B\ = { ( V , , 0), (V2, 0), (V,, 0), (V4, 0), (V5, 0),


(V6, 0), (V7, 0), (Vg, 0), (V9, 0), (Vio, 0),

( v n , 0 ) , (Vi2,0),(v,3,0),(vi4,0)}

B, = {(vi, 0), (V2, 0), (V3, 0.039), (V4, 0.078), (vs, 0.039),
(V6, 0), (V7, 0), (Vg, 0), (V9, 0), (Vio, 0),
(Vll,0),(Vi2,0),(Vi3,0),(Vi4,0)}
R^ = {(vi, 0), (V2, 0), (V,, 0), (V4.0.1), (V5, 0.5),
(V6, 0.8), (V7, 1), (Vg, 0.8), (V9, 0.5), (vio, 0.1),

(Vll,0), (V|2,0),(Vi3,0),(Vi4,0)}

li ={(Vl, 0), (V2, 0), (V3, 0), (V4, 0), (Vs, 0),
(V6, 0), (V7, 0.0167), (Vg, 0.0835), (vg, 0.1336), (v,o, 0.167),
(vii, 0.1336), (V]2, 0.0835), ( V B , 0.0167), ( v ^ , 0)}
BI = { ( V I , 0), (V2, 0), (V3, 0), (V4, 0), (V5, 0),
(V6,0),(V7,0),(V8,0),(V9,0),(Vio,0),
(Vll,0),(V,2,0),(Vi3,0),(Vi4,0)}.

where /^, is the reasoning result from rule 7?,, I s / s 5 . Therefore, the deduced
consequence of the fuzzy reasoning scheme is "Y is BQ", where

^ = B,' U ft U £^' U ^4 U B^
= {(vi, 0)" (V7, 0), (V3, 0.039), (V4, 0.1), (V5, 0.5),
(V6, 0.8), (V7, 1), (i^, 0.8), (V9, 0.5), (vio, 0.167),
(vn, 0.1336), ( v p , 0.0835), ( v ^ , 0.0167), (vi4, 0)}.

The reasoning result of the SISO fuzzy reasoning scheme is represented by the dotted line
shown in Fig. 3. Based on the linguistic approximation method, vvc can sec that the
approximate linguistic term of the reasoning result/^ is B3.
384

membersMip f u n c t i o n s
II A1 A2

Ui U2 UJ U 4 U5 Ue U7 Uo U9 U:oUr U)2Ui3Ui

membership fLnc'.ions
iiBl B2

Fig. 3. Reasoning result with threshold value set to 0.

When the threshold value k is set to 0.15, then by the previous discussion, only the
rules Ry, and lix can be fired. In this case, we get

B'I ={(vi, 0), (1-2, 0), (u,, 0), (V4,0), (V5, 0),
(V(„0),(V7,0),(V8,0),(V9,0),(V,0,0),
(Vll,0), (V'io,0),(v,3,0),(Vi4,0)}

ft = {(V,, 0), (v., 0), (v^, 0), (V4, 0), (vs, 0),
(V(„0),(v7,0),(v8,0),(v9,()),(vio,0),
(V,],0), (V,2,0),(V,3,0),(Vi4,0)}

/^' = {(vi, 0), (V2, 0), (v^, 0), (V4, 0.1), (V5, 0.5),
(V5, 0.8), (V7, 1), (vs, 0.8), (V9, 0.5), (vio, 0.1),
(Vll,0), (V,2,0),(Vi3,O),(Vi4,O)}

li = {(vi, 0), (V2, 0), (v,, 0), (V4, 0), (V5, 0),
(V(^ 0), (V7, 0.0167), (V8, 0.0835), (v^, 0.1336), (vjo, 0.167),
(vii, 0.1336), (vp, 0.0835), (vn, 0.0167), (V14, 0)}
385

li, = {(V|, 0), (V2, 0), (\'3, 0), (V4, 0), (V5, 0),
(V6, 0), (v^, 0), (vg, 0), (V9, 0), (vio, 0),
(Vll.O), (V,2,0), (Vi3,0),(V]4,0)}.
where B ' is the reasoning result from rule /?,, I s / s 5 . Therefore, the deduced
consequence of the fuzzy reasoning scheme is "Y is BQ", where

£b = 5i' U A U ^ ' U ^4 U /3^


= {(Vl, 0), (V2, 0), (V3, 0), (V4, 0.1), (V5, 0.5),
(V6, 0.8), (V7, 1), (Vg, 0.8), (V9, 0.5), (v,o, 0.167),
(vii, 0.1336), (vi2, 0.0835), (v^, 0.0167), (v^, 0)}.
The reasoning result of the SISO fuzzy reasoning scheme is represented by the dotted line
shown in Fig. 4. Based on the linguistic approximation method, we can see that the
approximate linguistic term of the reasoning result BQ is Ds-

membership functions

membership functions
MBI B2

Vi V2 V3 V4 Vs Vs V7 Ve V9 V;o V i i V 1 2 V 1 1 V:.>

Fig. 4. Reasoning result with threshold value set to 0.15.


386

4. Conclusions

Wc have presented a methodology to deal with fuzzy reasoning based on the


matching function S. The single-mput-single-output (SISO) fuzzy reasoning scheme and
the multi-input-single-output (MISO) fuzzy reasoning scheme were discussed in details.
The proposed fuzzy reasoning methodology is conceptually clearer than the
compositional rule ol inference approach.

References

I i I Z. Cao, A. Kandel, and L. Li, "A new mtxiel of fuzzv reasoning," Fuzzy Sets and
Systems, \ ol. 36, pp. 311 -325, 199().
|2) T. C. Chang, K. Hasegawa, and C. W. Ibbs, "The effects of membership function on
fuzzy reasoning," Fuzzy Sets and Systems, vol, 44, pp. 169-186, 1991.
| 3 | S. M. Chen, "A new approach to handling fuzzy decisionmaking problems," IEEE
Transactions on Systems, Man, and Cybernetics, vol. 18, no. 6, pp. 1012-1016,
1988.
(4| S. M. Chen, J. S. Ke, and J. F. Chang, "Knowledge representation using fuzzy Petri
nets," IEEE Transactions on Knowledge and Data Engineering, vol. 2, no. 3, pp.
311-319, 1990.
[5] Y. Ezawa and A. Kandel, "Robust fuzzy inference," International Journal of
Intelligent Systems, vol. 6, pp. 185-197, 1991.
| 6 | J. Giarralano and G. Riley, Expert Systems: Principles and Programming, Boston:
PWS-KENT Publishmg Company, 1989.
|7| J. S. Kc and G. T. Her, "A fuzzy information retrieval system model," Proceedings
of 1983 National Computer Symposium, Taiwan, 1983, pp. 147-155.
[8j A. Kandel, Fuzzy Mathematical Techniques with Applications. Addision-Wesley
Publishmg Company, 1986.
(9| C. C. Lcc, "Fuzzy logic in control systems: fuzzy logic controller-part I," IEEE
Transactions on Systems, Man, and Cybernetics, vol. 20, no. 2, pp. 404-418, 1990.
110] M. Mizumoto and H. J. Zimmermann, "Comparison of fuzzv reasoning methods,"
Fuzzy Sets and Systems, vol. 8, pp. 253-283, 1982.
[111 K. J. Schmucker, Fuzzy Sets, Natural luinguage Compulations, and Risk Analysis,
Rtx;kville, MD: Computer Science Press, 1984.
|12| I. B. Turksen and Z. Zhong, "An approximate reasoning approach based on
similarity measures," IEEE Transactions on Systems, Man, and Cybernetics, vol.
18, no. 6, pp. 1049-1056, 1988.
(131 L- A. Zadch, "Fuzzy sets," Information and Control, vo]. 8, pp. 328-353, 1965.
[14| L. A. Zadeh, "Outline of a new approach to the analysis of complex systems and
decision process," IEEE Transactions on Systems, Man, and Cybernetics, vol. 3, no.
1, pp. 28-44, 1973.
[15| L. A. Zadch, "The concepts of a linguistic variable and its application to
approximate reasoning (1)," Information Science, vol. 8, pp. 199-249, 1975.
|16| R. Zwick, E. Carlstein, and D. V. Budescu, "Measures of similarity among fuzzy
concepts: a comparative analysis," International Journal of Approximate Reasoning,
vol. l,pp. 221-242, 1987.
C H A P T E R 15

COMPUTING THE MULTIVALUED SHAPE


OF A PATTERN CLASS

Deba Prasad Mandal and C.A. Murthy

Electronics & Communication Science Unit


Indian Statistical Institute
203 B.T. Road
Calcutta -700 035, India

I. Introduction
The present chapter deals with the problem of determining the p a t t e r n class and its
multivalued s h a p e / b o u n d a r y from sampled points (training samples). Once these are
computed, some salient features of the class can then be extracted which are useful
in making decisions about a course of action {e.g., identification, classification and
p a t t e r n description) to be taken later. This will also reduce the storage requirement
of the complete pattern class.
It may be noted t h a t in most of the real life pattern recognition problems, the
complete description of a pattern class is not known. Instead, a few sampled points
are usually available which are assumed to represent the class. Hence determining
the p a t t e r n class and its shape from sampled points is an important problem in
p a t t e r n recognition.
There are various approaches described in the literature for determining the shape
of a p a t t e r n class from sampled points [1-6]. These methods are mostly heuristic in
n a t u r e and they provide an exact boundary or shape of the p a t t e r n class. One of
the inherent observations about these algorithms is that the b o u n d a r y of the class
is restricted by the sampled points. This need not be true because the resulting
boundary leaves certain regions not confined in it, although it should be. So, it is
necessary to extend the boundaries to some extent to handle the possible uncovered
portions by the sampled points. T h e extended portions should have the following
two properties:
(i) As the number of sampled points increases, the extended portions should de-
crease.
(ii) T h e extended portions should have less possibility to be in the p a t t e r n class
than the portions explicitly highlighted by t h e sampled points.
T h e second property leads to define a multivalued or fuzzy (with continuum grade of
belongingness) boundary of a p a t t e r n class. T h e basic concept of one of the existing
methods [1-6] is described below in short for illustration.
Edelsbrunner et al. fl] introduced the notion of the a-shape of a finite set of
points, for arbitrary real a. This notion is a generalization of the convex hull. Given
a set 5 of t points in a plane, the convex hull of S may be defined as the intersection of
all closed half planes that contain all points of S. T h e a-hull of S is the complement
of the union of all open discs of radius not less than 1 / Q (for arbitrary negative real
387
S.G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 387^18.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
388

a) which contains no point of S. The shape of the set is determined using a-huUs.
If the selection of a is proper then the shape of the set obtained by the method
resembles the intuitive shape of the planar set. These Q-hulls have been found to be
extremely useful in computational geometry [7]. The selection of a is very important
for the method, but the authors did not provide any criterion for the selection of a.
Also this method does not provide the multivalued shape of a pattern class.
We have formulated here a methodology for providing multivalued (fuzzyl shape
of a pattern class from a set of sampled points. The procedure can be viewea in two
phases. Phase I is concerned with the decomposition of sample set into groups of
nearly N-dimensional parallelepiped (henceforth parallelepiped) shape. The decom-
position is based on the boundary variations (geometric complexity) of the pattern
class found in the sampled points. A window approach has been incorporated here
to find the boundary variations of the sample groups or sets. Phase II determines
each of the subclasses corresponding to the groups separately, puts them together,
and finds the multivalued shape of a pattern class. The effectiveness of the procedure
has been demonstrated on some artificially generated data sets in IR^ and ff^. The
practical applicability of the method has been demonstrated on a real life speech
data set. The convergence of the estimated classes to the original ones has been
verified using HausdorfF metric and a newly defined metric.
In section / / , some basic concepts along with the block diagram of the proposed
method are discussed. Section III deals with the procedure for decomposing a
training sample set. Section IV provides an approach to determine the multivalued
boundary of a pattern class. Experimental results are provided in section V. It
is to be mentioned here that the sections / / / , IV and V concern with only two
dimensional feature space. The extension of the procedure to higher dimensional
space (M ) and its implementation to the pattern classes in ]F^ are provided in
section VI. The convergence property of the proposed algorithm is discussed in
Section VII. Section VIII deals with the conclusions. ^

II. Some Basic Concepts and Block Diagram


Some of the basic concepts which are useful in developing the proposed method are
initially stated here. The block diagram of the procedure is then provided.

A. Some basic concepts


a. Pattern class
In most of the real life problems, pattern classes are bounded. Thus the pattern
classes considered here are all bounded. A formal definition of pattern class in M'^
is given below using topological and measure theoretic concepts.
Definition 1 ; A set A C M'^ is said to be a pattern class [6] if
(t) A is path connected compact,
(u) cl{Int{A)) = A, [cl means closure, Int means interior]
(Hi) Int{A) is path connected and
[iv) X{6A) = 0 where 6A = An cl{A'^) and X is the Lehesgue measure on IR^.
389

The relevance of the properties (i), {ii), (Hi) and (iv) of Definition 1 is provided in
[6]. Let ]B= {A : A satisfies Definition 1}. iB is the collection of all classes in Hi'^.
Any A £ E is referred to as the pattern class. •

b. Accuracy factor
It has been argued in the previous section that the boundary of a pattern class
obtained from its sampled points should be extended to some extent to highhght
the possible uncovered portions of the class by the sampled points. An accuracy
factor (St) based on the number of sampled points (<) is considered here for the said
extension to manage the uncertainty. St satisfies [8]
1 . 1 ,,.
juN < ^'< ^iuum ^^>
so that as t increases, i5( —> 0 and tS^ -+ oo. Since St decreases with the increase of
t, the accuracy of the obtained boundary also increases with the increase of t. The
selection of an accuracy factor is guidea by the inequality (1) and its justification
can be found in [9, 10]. •

c. Coverage factors
Each individual sampled point represents a covered area of the pattern class in the
feature space. Hence, in order to find the possible uncovered portions of the class
by the sampled points, the boundaries are extended to some extent. The extended
portions should have less possibility to be in the pattern class than the portions
explicitly highlighted by the sampled points. To decide on the amount of extension,
a factor, named as coverage factor, is defined below corresponding to each feature
axis.
Let Xi.,X2,- • • ,Xi,... ,Xt be the training samples where X,- = (x^j, a ; , j , . . . , x,-^,..
.,Xi^y and X, denotes the jih feature value of the fth sample. Let MAXj and
MINj denote the maximum and minimum feature values respectively in the sample
set corresponding to the jth {j = 1,2,..., iV) feature i.e.,
MAXj — max Ix; 1 and MINj = min | x , )
•' 1=1,2 t ' ^ i=l,2,...,( ••

The coverage factor for the set of sampled points corresponding to the j t h feature,
denoted by £j (j = 1,2,..., A'^), is defined as
£j = {MAXj - MINj) X St (2)
where St is the accuracy factor. When the number (f) of sampled points increases,
the value of the accuracy factor {St) decreases, and correspondingly the values of the
coverage factors (e/s) also decrease and the accuracy of the boundary increases. •

d. Hole in a pattern class


A path connected and compact set is referred to here as a pattern class. If it happens
that within the range of the pattern class or set, some portions do not belong to the
390

class, then the portions are referred to as the holes. The intuitive idea behind holes
of a pattern class can be put mathematically by the following definition.
Definition 2 : A -pattern class A is said to have k holes if

A" = 5 U Ci U C2 U . . . U Cfc such that


{%) B and Ci are path connected sets for i = l,2,...,k,
(a) B is unbounded and Ci,C2,.. • iCk are bounded,
{Hi) 5 U Cij U C,j U . . . U Ci^ is a disconnected set for 1 < t'l < J2 < • • • < Jr < ^,
where 1 < r < k and
{iv) di U Cij U . . . U Cir is a disconnected set I < ii < {2 < ... < ir < k, where
2<r<k.
Then Ci,C2,... ,Cfc, in the Definition 2, are said to be the holes of A. The hole
detection procedure is described in section III. A. ik

B. Block diagram
The block diagram of the proposed multivalued shape determining procedure is
shown in Fig. 1. It consists of two parts, namely the decomposition and the fuzzy
processor. The decomposition section deals with the decomposition of the sample
set into some groups of nearly parallelepiped shape. The fuzzy processor determines
each of the subclasses corresponding to the sample groups separately and all these
subclasses are then combined to compute the multivalued shape of the pattern class.

DECOMPOSITION

Boundary Pattern
Variation Class
Calculator Sub-divider

_L
Membership Boundary ,'^ Multivalued \
Function H Pattern
Estimator J Decider V Class ,/

FUZZY PROCESSOR

Figure 1 : Block diagram.

The decomposition section consists of three blocks jis shown in Fig. 1. The hole
detector block decomposes the training sample set with holes into groups to find
the hole information. The boundary variation calculator block finds the values of
the boundary variation factors corresponding to all possible boundary directions.
These boundary variation values are analyzed in the pattern class sub-divider block
to decompose (if necessary) the sample set into groups.
391

The theory of fuzzy sets [11-13] has been used in the fuzzy processor section to
extend the boundary of the sample set and also to relate every point in the whole
feature space to its possibility to be in the pattern class. The membership function
estimator block decides about the compatibiUty/membership functions to represent
each of the subclasses corresponding to the sample groups. The boundary decider
block determines each of the subclasses separately, puts them together and finds the
multivalued shape of a pattern class. Jk
The following two sections (i.e., sections III and IV) describe in detail the opera-
tions of different blocks of Fig. 1 for pattern classes in IR^. A

III. Decomposition
The decomposition section consists of three blocks, namely hole detector, boundary
variation calculator and pattern class sub-divider. It takes the training samples of
a pattern class as an input and decomposes the training sample set into groups
if the sample set is found to be not nearly rectangular in shape. To obtain this
decomposition, a procedure based on some overlapping windows is adopted here.
Before describing the operations of various blocks of decomposition, the approach to
generate the windows is furnished below.
Generation of windows : The two features under consideration are referred to as
the first (Fi) and second {F2) feature axes respectively. In the proposed approach,
one of the axes is considered as the base axis and the other axis is considered as the
height axis. Consequently the coverage factors cori'esponding to the base and height
features are referred to as the base coverage factor (£{,) ana height threshold factor
(eh) respectively.
The sampled points are first of all arranged in ascending order according to the base
feature values. The first window starts with the first sample of the ordered sample
set and it includes all those samples one after another in ascending order until its
base coverage length exceeds £),• Assume that the generated first window ends with
the A;th sample of the ordered sample set. Then the second window will end with the
(^-f l)th sample and to find the starting point of this window, it proceeds backward
from kth sample until its base coverage length exceeds £;,. Similarly other windows
are constructed by including one new sample at the end and excluding some samples
from the beginning of the previous window such that the base coverage length would
atleast be £(,. The last window ends with the last ordered sample i.e., sample with
the highest base value. Thus, some overlapping windows of the sample points are
generated utilizing the sample base values and the base coverage factor (ej).
The maximum and the minimum height values are found from each of the windows
and these are taken to be the upper (u) and lower (/) boundary values respectively
of that window. The combination of tne upper boundary values highlights the upper
boundary of the training sample set and the combination of the lower boundary
values provides the lower boundary of the training sample set.
The way in which the boundary of a training sample set is obtained using the
aforementioned procedure for generating windows, is explained below considermg a
typical pattern class [Fig. 2(a)]. A hypothetical training sample set is shown in
Fig. 2(a), where the locations of samples in the feature space are shown by cross
( x ) marks. Initially, Fj is considered as the base and few windows are generated.
In such windows, Fj is considered as the height feature. A typical window is shown
by dotted lines in Fig. 2(6) where the samples in the window are shown by tick
392

{^/) marks. The boundary values corresponding to the lower and upper boundary
directions (referred to as 2| and 2„ respectively) are also marked for the window.
Based on these boundary values, the rough boundaries in the coded directions 2/ and
2„ are dra^vn in Fig. 2(c). To find the boundaries in the lower and upper directions
of Ft (i.e., directions 1| and 1„), some windows are first of all generated considering
F2 as the_base feature. A typical window with its sample points and boundary values
is shown in Fig. 2{d). Pig. 2(e) shows the rough boundaries in the coded directions
1| and 1„.

s )s X * ^ X X

^ a< .t * "

Figure 2 : Illustrating tlie concept of boundary in M^.

Combining the boundaries in figures 2(c) and 2(e), the complete boundary of a
pattern class is obtained [Fig. 2(/)]. To incorporate the possible uncovered portions
of the pattern class by the training set (Fig. 2(a)], these boundaries are extended
to some extent (depending on the coverage factors). To visualize the said extension,
the extended boundary of the pattern class is conceptually drawn in Fig. 2(/). The
extended portion should have lower possibiUly to be in the class than the portions
explicitly highlighted by the sample points. The extended regions decrease with the
increase of the sample size (<). •

A. Hole detector
The concepts about holes of a pattern class are provided in section II.A.d, The
adopted procedure to find holes from a set of sampled points is discussed below.
Procedure : The procedure considers Ft axis as the base feature and the F2 axis
as the height. Correspondingly gj and £2 are considered as the base coverage factor
(£i) and height threshold factor (e/i) respectively. Windows are now generated using
the aforementioned approach. The sample points in each window are then arranged
393

in ascending order according to the height (Fj) sample values. If the difference of
height values of any two consecutive samples within a window exceeds £/,, then a
hole is assumed to be present between the said sample pair. Let h! and h" be the
height feature values corresponding to two such sample points. To illustrate this
finding, a pattern class with a hole is shown in Fig. 3 in which Px and Pj are the
sample points which satisfy the above condition and the corresponding window is
shown using dotted lines.
To detect the hole, the sample set is decomposed into two groups according to
whether the height values H.e., F2 values) are less than {h' + h")/2 or not. The
decomposition leads to finding two groups where none of them possess a hole. In
Fig. 3, the line with dashes indicates the split.

Figure 3 : A typical pattern class with a hole.

The aforementioned routine is repeated until every sample group is found to be not
containing any hole. When the subclasses corresponding to the sample groups are
combined in the boundary decider block [section 4], the holes will be excluded from
the final shape of the pattern class. It is to be realized that this procedure detects not
only the holes elongated across F2 feature axis but also the holes elongated across
Fi feature axis. Note that the proposed procedure can not detect the holes with
sizes less than Si and/or £2 corresponding to the feature axes Fj and F^ respectively.
Hence the detectable minimum hole size depends on coverage factors £1 and £21 which
in turn depends on the accuracy factor {St) and finally depends on the sample size
it).
It is also to be mentioned here that the procedure decomposes a training sample
set not only for a hole, but also for some particular type of concave boundaries.
For example, sample sets having shapes like 'C', ' ± ' or 'Z' may also be decomposed
although these do not possess any hole. But this does not create any problem in
the overall shape determining procedure, since such sample sets anyway had to be
decomposed in the pattern class sub-divider block. A

B. Boundary variation calculator


This block tries to detect the geometric structure of the pattern class from a set
of sampled points. The boundaries in four perpendicular directions [Fig. 2(6)] are
considered here to find the boundary variation values. Our approach to generate
394

the windows from a sample set and consequently to find the boundary values are de-
scribed earlier. It may be recalled that the maximum and the minimum height values
of each window are considered as the boundary values in the upper and lower bound-
ary directions respectively corresponding to the height feature axis. The approach
to calculate the boundary variations is discussed below.
Calculation of boundary variations : To describe the approach, let us consider
the boundary variation values in a particular direction, say d {d E {!/, !«, 2;, 2u}.
The procedure to obtain the boundary values has already been discussed previously.
Henceforth, it is assumed that there are w windows and their boundary values are
//; {i = 1,2,... ,w). A boundary variation factor, denoted by V^ in direction d is
defined as
V, = EW-'^.-i)' /el (3)
where Ch is the height threshold factor for the direction d. Here the division factor
E.\ is used to make the variation factor Vj unitless.
Now let MAXH and MINH be the maximum and minimum of the boundary
values i/,'s (i = 1,2,... ,tu) respectively. If the difference of MAXH and MINH
does not exceed £fi (i.e., if {MAXH ~ MINH) < eh] then the sample set is assumed
to be nearly rectangular in shape. In such a case, the variation factor Vj is assumed to
be zero i.e., make Vj = 0. Otherwise the sample set is considered as decomposable
in the direction d.
Initially, Fi axis is considered as the base to generate the windows and F2 axis is
considered as the height to find the boundary variation factors V21 and V2 for the
coded directions 2; and 2,^ respectively. Similarly, by reversing the roles of Fj and
F2 axes above, the boundary variation factors Vi, and Vi„ for the coded directions 1(
and lu are calculated. Thus, the boundary variation factors for the four boundary
directions are obtained in this block.

C. Pattern class sub-divider


This block analyzes the boundary variation factors to determine whether the training
sample set is to be decomposed or not. If the sample set is to be decomposed then
this block decomposes it into few groups. Before actually dividing the sample set,
the decision about the direction of decomposition is to be made. To decide this, it
finds the direction in which the value of the variation factor is maximum. That is,
the direction D £ {1;, 1^, 2;, 2a) is found where

VD = max{Vi„Vi„,V2„V2„}.
If Vf) = 0, then the sample set is assumed to be nearly rectangular in shape and it
is not further decomposable.
Otherwise i.e., if VD > 0, then it is assumed that the sample set is not nearly
rectangular in shape and it is to be decomposed into groups. Now from the direction
of decomposition (i.e., D) the windows with their base and boundary values, and the
corresponding height threshold factor Sh are recalled. The samples are then arranged
in ascending order according to the base values.
For making a cluster of windows, the maximum boundary value is found. The
starting window for the cluster is taken as that window which have the maximum
boundary value. The position of the starting window is noted. The following windows
395

from the starting windows are assigned one after another in the cluster until the
differences between the boundary values of the current window and the starting
window exceed the height threshold factor (ch). Similarly, the preceding windows are
also put in the window cluster. The samples lying in the window cluster are assigned
to the first sample group.
The aforesaid routine is repeated on the remaining windows until all the windows
are exhausted. This leads to the formation of window clusters. Every window cluster
results in a group of sample points. Thus, the given training sample set is decomposed
into a few group of sample points.
The decomposition procedure is appUed on the sample groups repeatedly until all
the groups are found to be nearly rectangular in shape. It is to be observed that
the larger the number of groups, the greater will be the accuracy of the shape of the
multivalued pattern class obtained. ^

IV. Fuzzy Processor


The previous section dealt with the decomposition of a training set into few sample
groups of nearly rectangular shape. The present section is devoted to obtaining the
subclasses corresponding to these groups and combining them to get the estimated
multivalued shape of the pattern class. This section consists of two blocks, namely
the membership function estimator and the boundary decider.
The concept of membership functions in the light of fuzzy set theory [11-13] is
brought here to represent each of the subclasses corresponding to the groups sepa-
rately. Membership functions have also been used to relate every point m the entire
feature space to its possibility to be in the pattern class. The membership func-
tion estimator block finds the appropriate membership functions to represent each
of the subclasses corresponding to the sample groups. The boundary decider block
determines each of the subclasses separately, puts them together and obtains the
multivalued shape of the pattern class.

A. Membership function estimator


For any feature point, the possibility of being a member of a class is maximum if
it lies in the centre of the class. As its distances from the the centre increases, the
membership value decreases and ultimately goes to zero. Any function having this
property may be considered as the representative membership function for the (^sub)
pattern clciss corresponding to a sample group. As the TT function is well established
to dictate this property [11-13], it is considered here as the representative membership
function.
Thus, the subclasses corresponding to the sample groups are characterized by dif-
ferent X functions across different axes of the form ir{x; ajt^, ^i^ , 0^.-, fit , Tuj, )
where k indicates the group number {k = 1,2,...,?7, r] denotes the number of
groups); j indicates the axis number {j = 1,2); Q^^ is the peak value where the
membership value is 1.0; /?/^ and /S^^, are the lower and upper most ambiguous
points where the membership values are 0.5, and 7J^ and 7 ^ are the lower and
upper end points beyond which the membership values are zero. The functional form
396
of such a TT function [10] is stated below:

/ a a \ \ S(x;^t,^ua) if x < a
x ( a : ; a , ^ , , / J . , 7 , , 7 u ) = | il^^aj^,-,^) \i x> a (4)

where
0 if X < a
1 (f5f) if a < X < 6
S{x;a,b,c) = < (5)
1 if X > c.
Note that unlike the standard S function [11-13], here 6 ^ a+c
2 •

, " ( « ( ^ , /St, ^ u , J<. ^

"4 "<= 4* •%«.

Figure 4 : Pie (x) function.

The structure of such a TC function is shown in Fig. 4. Given a particular group


of samples and a particular feature, the domain of the TT function is [7;,7u]. It is
assumed that the extended portions are [ft,Pi] and [/?u,7u], and the highlighted
portion by the training sample set is [A»/3u]- These extended portions ultimately
provide the multivalued shape of the pattern class.
Determination of membership functions : To determine the membership functions
(which are taken as n functions), the parameters of them corresponding to various
sample groups are to be evaluated. Here each of the sample groups is considered sep-
arately. Let MAXkj and MINk^ be the maximum and minimum of the training sam-
ple set respectively corresponding to _;'th {j = 1,2) feature and A:th {k = 1,2,...,?/)
sample group. Then the parameters of the TT function corresponding to j t h feature
and A:th subclass (i.e., ^'th sample group) are assigned as follows:

MAXk +Mmk
Qk, =
MINU (6)
Ilk MINk 1.^, = MAXk,+ej ;
j = l , 2 ; fc = l,2,...,Tj
where Cj is the coverage factor for the j t h feature [Eq. (2)]. ^
397

B. Boundary decider
In the previous subsection, membership functions corresponding to all the seimple
groups along each feature axis are determined. Using these functions, each of the
subclasses corresponding to the sample groups is estimated and those are finidly
combined to obtain the estimated (multivalued) shape of the pattern class. All
planar points in the feature space are labeled with their degree of possibilities to be
in the cla.ss. To show the shape of a pattern class in the plane, the whole feature
range is divided into small rectangles and these are referred to as the Feature Space
Cells (henceforth FSCs). The size of all the FSCs are same and these are made as
small as possible such that each FSC can be distinguished in the feature space. Thus,
all these FSCs are labeled in terms of their possibility values to be in the pattern
class. The FSCs with zero possibility vaJue are considered to be outside the class.
The method of obtaining these possibility values is described below.
Procedure: Let (xi,X2)' be a typical feature values of such a FSC. Suppose fXk.
denote the membership value of the FSC corresponding to A:th [k = 1,2,...,?/)
subclass (i.e., fcth sample group) and jth {j = 1,2) feature, fik^ is calculated from
the corresponding TT function i.e.,

fik, = x [xf, ak,, Pi,^, P^,^, fi,^, 7uk^) (7)

The combined membership of the FSC corresponding to A;th {k = 1,2,..., 7) sub-


class, say /Zfc, is defined as the geometric mean of /z^, and fik^ i-e.,

fik = {fik,Xfik,f^. (8)

Now, the possibility, say 0, of the FSC to be in the estimated pattern class is
defined as the maximum of the membership values of the subclasses. That is,

0= max { Uk ] (9)
it=l,2,...,TJ '^ ^^ ' ^ '

Let r be the number of subclasses for which the combined membership values
(/i/t's) of the said FSC are positive. To incorporate the effect of the neighboring
subclasses with positive membership values in the estimated pattern class, tne value
of 0 is increased to 6^^'^ for T > 1. That is, when the possibihty values of the FSC
(/it's) are positive for two or more subclasses, then it indicates that the said FSC
has the possibihty to He in those subclasses, which in turn increases the possibility
of the FSC to be in the finally obtained pattern class. •
A method has been described above to find the possibihty Vcdue {&) of a FSC to
be in the pattern class. Note that 0 < 6 < 1. If the value of $ is zero, then the
FSC is considered to lie outside the pattern class. Otherwise the FSC belongs to the
pattern class with the possibility 6.
To obtain the complete shape of the pattern class, the aforesaid routine is repeated
for every FSC in the feature domain. Thus, all the FSCs are labeled with their
possibility values to be in the pattern class, and as a result, the multivalued shape
of the pattern class is obtained. 4
398

V. Implementation and Results


In the previous two sections (i.e., sections III and IV), we have described the multi-
valued shape determining procedure for M^. The implementation and the usefulness
of the procedure for M^ are demonstrated here on some artificiaUy generated data
sets as well as on a real life speech data set.

A. Artificially generated data


To show the effectiveness of the proposed system, different possible pattern classes
were generated artificially and the procedure was implemented on them. The ob-
tainea boundaries were found to be quite satisfactory in all the cases. Figures 5(a)-(d)
show four typical pattern clstsses in M^. Note that the pattern cljiss in Fig. 5(c) is
originally rectangular in shape, while others are not rectangular. The class shown
in Fig. 5{d) has a hole whereas others do not have any hole. Training samples of
size 50 are cnosen randomly from each of the four classes. The multivalued shape of
these classes are shown in figures Q{a)-{d) with 0.15 as the accuracy factor (St).
Initially in all the cases, the feature spaces are decomposed into smaJI rectsmgles
(which are referred to as Feature Space Cells or FSCs) and the FSCs are labeled
in terms of their possibility values {6) to be in the estimated pattern class. Recall
that 0 < 6 < 1. The multivalued shapes are shown by various gray values in figures
6{a)-{d). Here the FSCs with gray value zero (absolute white) denote that the FSCs
axe completely outside the pattern class. To obtain the crisp version of an estimated
multivalued pattern class, the FSCs with possibility possibihty values (0) less than
0.5 may be considered to be outside the class.
Observe that the algorithm has not decomposed the training sample set of the
class in Fig. 5(c) because it is nearly rectangular in shape. But the sample set of
the classes in figures 5(a) and 5(6) are decomposed into three and fourteen sample
groups respectively. Note that the class shown in Fig. 5{d) has a hole. The algorithm
initially decomposed the training sample set into two sample groups to detect the
hole and finally the sample set has been decomposed into seven sample groups. The
proposed technique is expldned below for the pattern class shown in Fig. 5(a). Fig.
7(ai) shows a training sample set corresponding to the class shown in Fig. 5(a). The
algorithm first searches for the holes, but it could not find them. It then considered
the boundaries in four perpendicular directions and found that the sample set can be
decomposed in all the four directions. The boundary variation is found maximum in
the coded direction 1/. Accordingly, the training sample set is decomposed into three
sample groups with 12, 28 and 10 samples respectively [Fig. 7(03)]. Here the sample
points of different groups are shown by three different characters. Each of these
sample groups are then analyzed and it could not find enough boundary variation
in any of the four directions for which these groups can be decomposed again. As a
result, it obtained three groups [Fig. 7(a2)] of nearly rectangular shape. The three
subclasses are determined based on the samples of these three groups. Finally these
subclasses are combined to obtain the multivalued shape [Fig. 6(a)] of the pattern
class in Fig. 5(a).
399

1 ^^•^ ^H X)
•a"
.a i
*3 iM

SI a
15 6^
a O

1 » s • o

«3
6)

•I

5" TJ

CI.

p
1

. —
' '
us

|i«
400

Figure f : (si) A set of training samples from the class in Fig. i>{a).
(02) Three decomposed groups of the trainiiig set in (ai).

I I i 1 1 T

200 300 400 500 600 700 SCO 900

F, In m

Figure 8(a) : Teliigm vowel data set.


401

B. Speech data
To examine the practical applicability, the algorithm has been implemented on a
set of Indian Telugu Vowel sounds in consonant-vowel-consonant context uttered by
three speakers in the age group 30 to 35 years. Fig. 8(a) shows the typical feature
space of six vowel classes /S/, / a / , / i / , / u / , / e / and / o / with 72, 89, 172, 151,
207 and 180 samples respectively corresponding to the features Fi and F2. Here Fi
and F2 denote the first and second formant frequencies which were obtained through
spectrum analysis of the speech data. Details of feature extraction procedure can be
found in [13, 14]. The classes are seen to be overlapping and their boundaries cire
ill-defined (fuzzy).
The proposed algorithm has been applied on each of the six vowel classes separately
where the total available data are assumed as the sampled points. That is, for the
classes /6/, / a / , / i / , / u / , / e / and / o / , the number of sampled points are 72, 89,
172, 151, 207 and 180 respectively and correspondingly the accuracy factors are
considered as 0.12, 0.12, 0.10, 0.10, 0.08 and 0.10 respectively. Fig. 8(6) shows the
obtained multivalued shapes corresponding to the vowel classes / a / and / u / ; Fig.
8(c) shows the shape corresponding to the class / e / ; Fig. S{d) shows the estimated
shapes corresponding to the classes / i / and /of, and Fig. 8(e) shows the shape
corresponding to the class /6/. In figures 8(6)-(e), the FSCs with possibility values
(6) > 0.5 are represented by the corresponding vowel characters; the FSCs with 6
satisfying 0 < ^ < 0.5 are represented by dots and the FSCs with ^ = 0 are shown
as blanks. Observe that the estimated vowel classes are good representations of their
original classes. 4

VI. Extension to Higher Dimension


So far, we have dealt with the description and the implementation of the shape
determining procedure for the pattern classes in JR . The extension concept of the
procedure to the pattern classes in M'^ {N > 2) is furnished here. For the case oi JH},
we first decomposed the training set into some sample groups of nearly rectangular
shapes and finally the subclasses corresponding to the sample groups are combined to
obtain the multivalued shape of the pattern class (in JR^). The same spirit is adopted
for ]R i.e., we first decompose (based on a window approach) the training sample
set into some groups of nearly A^-dimensional parallelepiped shapes and these are
combined to find the final shape of the pattern class (in IR^). The two parts of the
shape determining procedure i.e.. Decomposition and Fuzzy processor are first of all
described. The generalized decomposition concept is also elaborated for a pattern
class in Iv. The algorithm is then demonstrated on some artificially generated
pattern classes in ]R^.

A. Decomposition
A pattern class in ]R is represented here by a set of sampled points. The decom-
position section detects the geometric structure of the pattern class from the sample
set. The iV features axes under consideration are referred to as the first (-Fi), second
{F2), ..., A'^th {FN) axes respectively. Initially, the window generation procedure
402

g
«
O
a

JS 9^

.s s

o
o

BfwmWwmWffrf
9«!6«ie«!)
•Hi
• n^fl390 KSfffiG«l 163 E^fliffi3fiBj*«S^
H

.
1 - i g ^ f f i i Q f S B^rgaiigffi

. .Bj^SI . .
i m ^

u o
"i - 0) «
33P3
: : : [^^^ P 3 3 3 3. 3.31333
3333
3333 •
•i I '

,,.
m
-333
333S
•333 3332 3 ' •
a33S 3 • . 03
-sua 333S
•333 333333 3 3 3 3 3 3 3 ^ 3 3 3 3 3 3 3 • •
•333 333333 33333 3 3 3 3 3 3 3 3 3 3 • •
H
333333 3333:5 3 3 3 3 3 3 3 ^ 3 3 • •
. -33 3 3 3 3 3 3 3333:3

09
9

•H 3:
|i|
403

O t<3

"o o


m

5 S fo

—r" s
o
a o
^ § £^
o --^
o i«
so ^ ^
g S-S
3 I
£ - 3 0
s - ^_g
HiiilHHHjl

::i:-!J:!:!:!:!:i:!,;--jiiii3it£
s
•H X
s
404

from a sample set in R'^ is described below. T h e proposed methodology for finding
the shape is then described using the window generation procedure.
Generation of windows : A window based approach is adopted here to find the
boundary variations of a sample set in iR^ and the approach is more or less the
same as t h a t described for M in section / / / . Initially, one of the feature axes is
considered as the base feature and the corresponding coverage factor is referred to
as the base coverage factor (ej). T h e training samples are first of all arranged in
ascending order according to the base feature values. Then, depending on the base
feature values and the base coverage factor Cb, t h e same procedure, as stated for M^,
is followed here to generate windows. These windows are such t h a t base coverage
length of each window would atleast be £t.
Here for a particular window, the base feature values of the samples are assumed to
be the same and t h e rest (A'-l) features for the samples may take any value. So the
generated windows are visualized here to belong in ]R^~^ feature space; although the
original sample set belongs to iR . I n this sense, the proposed method of generating
windows always results in reducing the dimension of the sample set by one. In this
context, note t h a t , the initial training sample set may itself be considered to belong
to an TV-dimensional window.
Based on the aforesaid concepts, the multivalued shape determining procedure is
extended to JR^. T h e approach has been applied on a sample set in JR'^ in the
following way. To start with, the feature Fi^ is considered as the base feature (axis)
and correspondingly a few windows m M ~ are formed. For each of these windows,
another axis F;, is considered as the base feature and windows in R'^~^ are formed.
Repeating this process sequentially with Fi^, F;,, . . . , i^„_i as the base features
axes, some one-dimensional (l-D) windows are generated eventually. T h e values of
the left out feature F^^ are considered here as the height values. T h e maximum
and the minimum height sample values are found for each window and these are
taken to be the upper and the lower boundary values respectively for t h a t window.
T h e combination of the upper boundary values of all l-D windows, generated by
sequentially taking i ^ j , F^j, . . . , Fi^_^ as the base axes, highlights the upper boundary
of the training sample set in the Fi^^ feature direction. Similarly, the combination of
the lower boundary values provides the lower boundary of the sample set across F,-„
feature axis.

a. Hole detector

T h e operation of this block is same as that described in section IILA. T h e procedure


sequentially considers Fi, F2, . . . , F^-i as the base features (and correspondingly
£1, £2, . . . , £iv-i as the bcise coverage factors) to generate few l-D windows with F^
as the height feature. Here the coverage factor eN across the axis F^ is referred
to as the height threshold factor. T h e samples in each window are then arranged
in ascending order according to the height ( F ^ ) sample values. If t h e difference of
height values of any two consecutive samples within a window exceeds ejv, then a
hole is assumed to be present between the said sample pair. Let h' and h" be the
height feature values corresponding to two such sample points. To detect the hole,
the sample set is decomposed into two groups according to whether the height values
(i.e., FN values) are less than {h' + h")/2 or not.
T h e above routine is repeated until every sample group is found to be not containing
any hole. When the subclasses corresponding to the sample groups are combined,
405

the holes are excluded from the final shape of the pattern class. •

b. Boundary variation calculator

To find the boundary variations of the sample set in M , 2N perpendicular directions


(coded as 1;, !„, 2(, 2^, . . . , A^;, N^) corresponding to the lower and upper boundary
directions along the N feature axes are considered. The A^ features are denoted here
by F „ , Fi^, . . . , Fi^ such that 4 £ { 1 , 2 , . . . , A'^} for k = 1,2,...,A'^ and 4 7^ 4 '
for k ^ k'. The procedure to find the boundary variation values is described below
for a training sample set in IR . Though the notation used here may seem to be
cumbersome, it may be noted that the procedure is the natural extension of the 2-D
case (described in section III.B).
Initially assuming the feature /ii as the base (and correspondingly e„ as the base
coverage factor), some windows are generated from the total training set. Let the
number of windows generated be denoted by 9,-,. As mentioned earlier, in each of
these ^i, windows, the F,-, feature values of the samples are considered to be same and
so the samples are visualized to belong in JR with Fi^, Fi^,..., Fj^ as the axes. Let
a particular window, say jjth one, be denoted by W^^ where j'l — 1,2,... ,^ij. Now
assuming the feature Fi^ as the base (and correspondingly £,j as the base coverage
factor), the sample set of the window W^' (E Ft "*) results in qf^,^ •. windows in (A'^-
2) dimensional space with i^-j, Fi^, ..., F,-^ as the feature axes. Similarly, considering
sequentially the features ^^3, Fi^, ..., Fi^_^ as the bases (and correspondingly e^j,
£ii, • • •, £-iN-2 ^® ^^^ respective base coverage factors), some 2-D windows will be
generated and the number of such windows is denoted by 9^^/( (/''j (, _ )) \\ (where
j i = 1,2,..., qil(i^t}ik-AiJl--))' forfc= 1,2,..., A^-3). These windows are visualized
here to belong to M^ with Fi^_^ and F^^ as the axes. Thus the original sample set
(belonging to IR ), after the aforementioned operations, gives rise to a collection of
2-D windows.
The feature Fijj_^ is now assumed to be the base (and correspondingly e,-^_,
is assumed as the base coverage factor) so that the samples of the jV-2th win-
dow Wi'^fff^-^-i^ results in ^f/f/",'/''-','/"" 11 u I'D windows with F^ as the
feature axis. For the samples belonging to these l-D windows, the values of Fi^, are
now considered as the height values. The maximum and the minimum height sample
values are found in each of the l-D windows and these are taken as the upper and
the lower boundary values respectively for the respective windows.
Let ^i^(h(...iiN-2)-)) denote the boundary value of the kth {k — 1,2,...,
'l^llhtiiN-fiiNW-.))') ^'^ window (generated by taking Fi^_, as the base) for the
feature Fi^ in the direction d {d E {/, u} where / and u stand for lower and upper
boundary directions respectively). For each of the 9 i \ / ( (; JV; _ ii )) 2-Z) windows,
the upper and the lower boundary variation factors, denoted by V^'^,- / / •'^^ ,), are
406

defined based on their respective 1-D windows as follows


r Jl(J2(- • ( J A ' - S ) - ) )
'ilC'2(- • ( ' N - 2 ( ' N - l ) ) •
\/'N • a : 3N-2 _ /rjiN : d : k rris -.d: k-\ V
E ) • • • ) ) ~ '"••i(.-2(...(.iv-s)...))>' /^L
fc=2
(10)
>(j2(...0V-3)...))
;jv-2 = 1,2,.. '9.l(i,(...(.„_3(.>-3))...)) and d € {/, u}
where df, is the coverage factor for the feature i^^. Here the division factor ef^ is
used to make the variation factor unitless. Note that Eq. (10) is the generalized
version of Eq. (3), which was stated for Si^.
Now, let MAXH and MINH be the maximum and minimum of the boundary
values respectively in a particular direction d and corresponding to a particular two
dimensional window VVl^%\['{/^S,t.y!• ^^ ^^^ difference of MAXH and MINH
does not exceed e,„ (i.e., if {MAXH — MINH) ^ ^;N)I then the boundary vari-
ation for Fi^ in the direction d corresponding to the said 2-D window is considered
to be insignificant. In such a case, the variation factor is assumed to be zero i.e.,
make KiM-.-fiw-r)")) ~ ^' Otherwise the sample set is considered to be decompos-
able in the direction d for f,-^.
Note that the order in which the features have been considered for the above
generation of windows in M^ is »i, 12, . . . , iN~2- It may be observed that for every
such sequence, a set of 2-D windows is generated. Thus all possible such sequences of
features are considered and correspondmgly boundary variation factors for the lower
and upper boundaries across the left over two features are calculated for each of the
2-D windows.
Pattern classes in S^ : As the notations used to describe the generalized approach
seem to be little cumbersome, the procedure is now explained for the pattern class
in M^. For a better understanding, a cubic shaped pattern class, as shown in Pi
9(a), is considered. Initially, Fj is assumed to be the base feature to generate gi 2-
windows. A typical (say, jith) window W(^ (ji = 1,2,...,gi) is distinctly marked
in Fig. 9(a). The 2-D view of this window with some typical training samples is
shown in Fig. 9(6) where the Fi feature is taken to be same (as the mid value of the
ranges of Fi in the window). Then considering F2 as the base, the sample set of the
window W(^ results in ^jLj windows in F3 feature space. Now find the boundary
values of each of g^J^) 1"^ windows, which are denoted by H^Lf * (A: = 1,2,...,
q^jj) and d £ {l,u}). Based on these boundary values, the boundary variation
factors of ^3 in direction d corresponding to their 2-D windows are calculated using
Eq. (10) as follows

'1(2)
3 : 1 3 : d rr3 : d
vl(2) EK
*=i
(2) '-)' /4
ji = l , 2 , . . . , 9 i and de {/,u}.
Similarly, by taking F3 as the base feature, every sample window VKj' (gener-
ated by assuming Fj cis the base on the original sample set), gives rise to g^Jgs
407

1-D windows ia F2 feature space. Finally the boundary variation factors of F2


in the lower and upper boundary directions corresponding to their 2-D windows
are obtained. So for all the above gi 2-D windows, the boundary variation fac-
tors V^"^\ F,^3j«=^% V,%'--'\ n w " = " (ii = l , 2 , . . . , f t ) a r e c a l c u k t e d .
If F2 is initially taken to be the base, the original sample set results in q2 2-
D windows with Fi and F3, as the feature axes. A typical of such windows is
marked in Fig, 9(c). The 2-D view of the marked window is provided in Fig.
9(d). Corresponding to each of the qj 2-D windows, the boundary variation fac-
3 : I : i2 ^3 : « t h I •• h ^2(3)" ' ^^ (j2 = 1! 2 , . . . , <|2) are obtained.
tors F,2(1) ''2(1) ! •-2(3)

(a) ie)

i ' '••,..

w (f)

Figure i : Concept of windows for a pattern class in JH^.

If F3 is first considered to be the base, the initial sample set results in qs 2-D
windows «'ith Fi and F2 as the feature axes. A typical windows is marked in Fig.
9(e) and its 2-D view is provided in Fig. 9(/). Corresponding to each of the §3 2^
windows, the boundary variation factors K 5 A ' ' * , ''^li)" ' ^^ ^*(2)' ' ""^ •^3(2)
(is = 1,2,..., ga) are determined.
Thus, there are in total 4(gi + f2 + fs) boundary variation factors corresponding
to a sample set in I^. All these variation factors are analyzed in the next block i.e.,
pattern class sub-divider block. •

c. Pattern class sub-divider

This block analyzes the boundary variation factors to determine whether the training
samole set is to be decomoo.sed or not. To decide this, it finds the maximum of aJl
408

neaxly parallelepiped in shape and it is not further decomposable. Otherwise it is


assumed that the sample set is not nearly parallelepiped in shape and it is to be
decomposed into few groups. Corresponding to the 2-D window and the direction
of the maximum variation factor, the l-D windows with their ba^e and boundary
values, and the coverage factor corresponding to the height feature (referred to as
height threshold factor e/i) are marked. Based on these values, the decomposition
is made. The samples in tne particular 2-D window are then arranged in siscending
order according to the base values.
For making a cluster of l-D windows, the maximum boundary value is found. The
starting window for the cluster is taken as the l-D window having the maximum
boundary value. The position of the starting window is noted. The following 1-
D windows from the starting windows are assigned one after another in the cluster
until the differences between the boundary values of the current l-D window and the
starting window exceeds the height threshold factor (e^). Similarly the preceding 1-
D windows are also put in the window cluster. The maximum (say, MAXi,) and the
minimum (say, MINi,) base values of the samples in the window cluster are found.
Now from all the samples in the considered sample set/group, the samples with the
base lying between MINb and MAXt are assigned to the first sample group.
The aforesaid routine is repeated on the remaining l-D windows until all the
marked l-D windows are exhausted. This leads to the formation of window clusters.
Every window cluster results in a group of sample points. Thus, the given training
sample set is decomposed into a few groups of sample points.
The decomposition procedure is applied on each of the sample groups repeatedly
until all the groups are found to be nearly parallelepiped in shape, ft

B. Fuzzy processor
A training sample set is decomposed in the previous section into few groups of
nearly parallelepiped shape. Here the subclasses corresponding to these groups are
determined separately and finally these are combined to obtain the multivalued shape
of the pattern class.

a. Membership function estimator


The subclasses corresponding to the groups are characterized by different JT functions
across different axes of the form 7r(x; ajt^, 0i^ , Pu,, , It/, , 7ut ) [Eq. (4) and
Fig. 4] where k indicates the group number {k = 1,2^... ,r], -q denotes the number
of groups); j indicates the axis number (j = 1,2,..., N). The meaning of the
parameter of the ir functions are the same as mentioned in section IV.A in relation
to the pattern classes in JR^. Using Eq. (6), the parameters are determined for each
subclasses corresponding to sample groups and each feature axes. •

b. Boundary decider
To show the shape of a pattern class in the feature space, the entire feature range is
divided into small units of parallelepiped shape and these small units are referred to
as the Feature Space Cell or FSC. The size of all the FSCs are same and these are
made as small as possible such that each FSC can be distinguished in the feature
409

Space. All these FSCs are labeled in terms of their possibility values {0} to be ia the
pattern class.
Let (a^i, a;2,..., x^)' he a typical feature value of such a FSC. The membership
value (nkj) of the FSC corresponding to tth (k = 1,2,,..,»|) subclass (i.e., tth
sample group) and j t h (j = 1,2,... ,iV) feature is calculated from the corresponding
w function using Eq. (7). The combined membership (^i) of the FSC corresponding
to i t h {k = l,2,...,i]} subclass is defined as the geometric mean of pk/s i.e.,

m= {p-ki X |i|.3 X . . . X Ukuf^^-

The
. . „ possibility
r - " - — . - value
~ — (0)v / of the FSC is then determined using° -Eq.
- (^)- Depending
on the membership values •alue of the FSC in the neighboring subclasses, the value of 0
is similarly modified as done for M^. Thus, by labeling all the FSCs of the feature
domain with their possibility values, the multivalued shape of a pattern class in JR'
is obtained. The implementation of the extension concepts is provided below. •

Figure 10 : (a) A pattern class; (b)-(d) corresponding estimated versions


with 6 > 0.5, 6 > 0.25, # > 0 respectively.
410

5"?
s^m-.- V
:??'' i l i i s . •• \ • •\. C.J.2
\ / " p l k ^ ••' .
' M 3

O oj .
** B J?
+3

^ el i2
- mm. .|iiftV:^. S « A

,:^r/-'m±.\-.-' •
IK^il, o |:;Q>
>J o -
. , O lO
i' "o
' 'T3 d

vv-v-/7;V..
• y :,• , i ;.....;••
/^;;; ;rv'
.£?3AI
h "o -as

2 >
m "-S
g «

"go
R E A

S o .
•• a

»-l !:• d
o "A'

h
411

C. Implementation and results


The effectiveness of the proposed procedure has already been demonstrated in section
V on some artificially generated data sets and also on the real life speech data which
were in M^. The behaviour of the generalized procedure is demonstrated here with
three artificially generated pattern classes in JR^. The classes are shown in figures
10(a), 11(a) and 12(a). For all 3-D classes, the isometric views are provided. Note
that Fig. 12(a) shows only the lower bisecting (with respect to F^ feature) portion
of a pattern class which has the same external view with the class in Fig. 10(a).
Actually this class is having a hole and externally the hole can not be shown. For
demonstrating the hole detecting capabilities of the proposed algorithm, only the
lower bisecting portion of a pattern class is displayed in Fig. 12(a).
Training samples of size 150 are chosen randomly from each of the three classes
and correspondingly the accuracy factor {6t) is assumed to be 0.20. Note that the
extracted classes are multivalued. Hence, in order to demonstrate the concept of the
multivalued shapes, three levels of estimated classes based on the possibility values
{$), namely 0 > 0.5, 0 > 0.25, 0>0 are only shown. Figures 10(6), 10(c) and 10(d)
show the estimated shapes with 0 > 0.5, 0 > 0.25, 0 > 0 respectively corresponding
to the pattern class in Fig. 10(a). Figures 11(6), 11(c) and 11(d) show the estimated
shapes with 0 > 0.5, 0 > 0.25, ^ > 0 respectively corresponding to the pattern class
in Fig. 11(a). Figures 12(6), 12(c) and 12(d) show the lower bisected portion of the
estimated shapes with 0 > 0.5, 0 > 0.25, 0 > 0 respectively corresponding to the
lower bisected portion as shown in Fig. 12(a) of a pattern class.

VII. Convergence with Sample Size


Convergence of the estimated pattern class to the original pattern class is shown here
experimentally and analytically for any dimension N >2. For any shape determining
approach based on sampled points, the accuracy of the estimated shapes, in general,
should improve with the increase of the size (number) of the sampled points. It will
be shown in this section that the proposed multivalued shape determining procedure
also has this property. As the sample size (i) increases, the value of the accuracy
factor (St) decreases and accordingly the accuracy of the estimated multivalued shape
increases.

A. Experimental verification
Two artificially generated pattern classes have been considered in this section to
demonstrate the convergence property of the proposed algorithm. The first one is
a disc [Fig. 13(o)] with radius 2 and centre at (3,3). Five different sets of data
are chosen randomly from it with sizes 50, 100, 150, 200 and 250. The algorithm
was applied assuming these five data sets as sample points with accuracy factors
(Si) 0.16, 0.13, 0.10, 0.08 and 0.07 respectively. The corresponding estimated
multivalued classes are shown in figures 13(6)-(/).
The other considered pattern class is a sphere [Fig. 14] with radius 2 and centre at
(3,3,3). Four different sets of data are chosen randomly from it with sizes 150, 300,
500 £ind 1200 respectively and the values of 6t are considered as 0.20, 0.16, 0.13 and
0.10 respectively. Here also three levels of extracted classes are shown corresponding
to 0 > 0.5, 0 > 0.25, 0 > 0. Figures I5{a)-{d) show the estimated classes with
412

•0^5,1 ri] (O.S.O,4| (0.4,0.3| (0.3,0.2| (0.2,0,11 (0.1,OJ 0


Possibility Value {t)

fa.) (W

(C) id)

(e) if)

Figure 13 : (a) A circular class; (l>)-(f) correspondiag estimated versions based on 50,
100, 150, 200 and 250 samples respectively.
413

Figure 14 : A spherical class.

Figure 15 : (a)-(cl) Estimated versions of the class in Fig. 14 with if > 0.5
based on 150, 300, 500 and 1200 samples respectively.
414

"^8

3 o "5
Oin>
' m '~' -w
<- r^ o
«
> 9
O a)
o,

o "S-
I A i
3<S8
•^^ -^
^•^—'-^ T 3

"^ S
5 6?

PC4

09

3o

O'-' >
' ^ 13 •?.
SJ O SJ
>T3 O.
, 43 «
T ) m <a

? _ I*
.^ IN g.
wo S

2."* o

iH •
bO

tlOCi
415

9 > 0.5 based on the selected sample sets of sizes 150, 300, 500 and 1200 respectively
corresponding to the pattern class in Fig. 14. Figures 16^a)-(<f) show the estimated
classes with 9> 0.25 based on 150, 300, 500 and 1200 traming samples respectively.
Figures n{a)-{d) show the estimated classes with ^ > 0 based on 150, 300, 500 and
1200 training samples respectively.
It can be seen from these results that as the sample size (i) increases the estimated
classes are gradually converging to the original pattern class. A

B. Criteria for goodness of fit


The aforementioned convergence property is also verified analytically using two dis-
tance measures (metrics). One of them is the HausdorfF metric and the other one is
a new similarity metric {Sim) that has been defined here. It has been shown that
the values of both the metrics tend toward zero as t ^ oo.

a. Hausdorff metric
Normally, to find the similarity between sets, a distance measure is often used. Haus-
dorff metric [15] has been used here for this purpose.
Let {X, d) be a metric space. For any compact subset of ,4 of A^, define

S{y,A) = ini d{x,y)

where inf means infimum. Note that 6(y, A) is finite and BXQ G A such that S(y, A)
= d{xo,y). Now the definition of the Hausdorff metric is given below.
Definition 3 [15]: Let A and B he two compact subsets in M^ . Then the distance
between A and B, denoted by Dist[A,B), is defined as

Dist{A, B) = max I sup S{x,B) , sup 6{y,A) > (11)


I xeA yeB J
the sets A and B are non-empty. Here sup and max stand for supremum and maxi-
mum respectively. •
If the original sets are assumed to be finite, the sup and inf can be replaced by
max and mm (minimum) respectively and then Dist{A, B) is defined as

Dist{A, B) - max \ max S(x,B) , max 6{y,A) \ (12)

where 6{x,B) = min d{x,y)


and S(y,A) = min d(x,y).
This distance measure Dist{A, B) is considered here as one of the criteria for good-
ness of fit, where A is considered as the boundary of the estimated set or class and
B is considered as the boundary of the original class. This distance measure has
initially been applied on the five estimated sets or classes [figures 13(6)-(/)] with the
original set [Fig. 13(a)] in the following way.
416

The boundary of the disc [Fig. 13fa)] is approximated by 180 equally spaced points.
This set of 180 points is considered here as the set B. Note that the estimated classes
are multivalued. Hence, in order to apply this measure, three levels of estimated
boundary based on the possibihty values (#), namely 0 > 0.5, (? > 0.25 and # > 0
are considered. The values of the Dist measure are shown by a graph in Fig, 18(a).

> > 0.5 > .1 0-25 S > 0 I i > O.S • > 0.25 jl > 0

HI
--0 son 1200
Sampl« Size (Estimated Class) Siie {Estimated CiMJ)

(a)

Figure 18 : Values of Dist measure (a) between the estimated classes in figures
13(l»)-(/) and the actual class in Fig. 13(n); (b) between the actual class
in Fig. 14 and its estimated versions.

The distance measure Dist has also been applied on the estimated sets or classes
[figures 15(a)-(d), 16(a)-(d) and 17(a)^(d)] with the original set in Fig. 14. ^ The
boundary of the sphere is approximated by 5675 equally spaced points and this set
of 5675 points is considered here as the set 5 . Here also three levels of estimated
boundary based OE the possibihty values (fl), namely 0 > 0.5, 0 > 0.25 and 0 > 0
are considered. The values of the Dist measure are shom'n by a graph in Fig.
18(6). *

b. A netfl metric Sim


Note that the Hausdorff metric reflects the overall similarity between two closed
sets. In order to incorporate the similarity of each of the elements of the sets, a new
measure has been defined below.
Definition 4 : Let A and B be two finite sets with t^ and Ig elemc»fa respectively.
Then a similarity measure between A and B, denoted by Sim{A,B), is defined as

Stm{A,B) = j ^%,B) + j X^%,^) + D«l(A0) (13)

Here the first term denotes the average similarity of the dements of A to B, the
second term denotes the average similarity of the elements of B to A and the last
term Dist{A,B) denotes the overall similarity between A and B. Sim is a metric
[9, 10]. •
417

The defined metric Sim has been considered as another criterion for goodness of fit
in the proposed shape determiniDg procedure. It has initially been applied between
each of the five estimated sets (with three levels of boundaries as # > 0.5, 0 > 0.25
and 0 > 0) [figures 13(ii)-(/)] and the original set [Fig. 13(a)] in the same way as
the previous case. The values of the Sim measure are shown in Fig. 19(a).

9 > O-i S > 0.25 « > 0


i » > 0,5 9 > 0,25 # > 0
Pi

0 ISO ••• - ; 3 150 _. ._ .••..)

S i m p t a Siee ( S j l i m a t e d Cl»s») Samplea SsEif (Ealirnated Class)

(4 W
Figure 1§: Values of Sim measure (a) between the estimated classes in igures
13(i»)-(/) and the actual class in Fig. 13(a); (b) between the actual class
ifl Fig. 14 and its estimated versions.

The metric Sim has finally been apphed between the pattern class in Fig. 14 and
its estimated multivalued classes [figures 15(a)-(d), 16(a)-(d) and 17(a)-(d)]. The
values of the Sim measure are provided in Fig. 19(6).
Hence, the convergence property of the proposed shape determining procedure is
established both experimentally and analytically. •

VIII, Conclusions
In this article, we have described an approach to compute the multivalued shape of
a pattern class from its sampled points. The concept of fuzzy set theory has been
found to be appropriate here. In estimating the shape, the portions not covered by
the sampled points are assigned some fuzzy membership values denoting the degrees
of their belonging to the actual class. Therefore, unHke the conventional approaches
the proposed method does not attempt to provide crisp boundary from incomplete
sample set. The effectiveness of the methodology has been demonstrated on some
artificially generated data sets (in JR^ and JR^) and also on the real life speech data.
The multivalued shapes can be converted to the usual crisp versions by considering
only the feature points (FSC) with possibihty value (0) > 0.5, say to be within the
classes. The convergence of the estimated shape to the original one has been verified
both experimentally and analytically. la this context, a new metric Sim has been
defined which can be used to find the similarity between any two finite sets.
The parameters (like accuracy factor, coverage factors etc.) required for determin-
me the shaoe of a class are determined automatically from the sampled points. One
418

represented as a collection of some nearly parallelepiped shaped subclasses. This


concept has been found very useful in developing a multivalued recognition system
[16]. 4k

Acknowledgement
T h e authors gratefully acknowledge Professor Sankar K. Paliov his valuable guidance
and suggestions in this work.

References
[1 aH.plane,"
Edelsbrunner, D. G. Kirkpatick, and R. Seidel, "On the shape of a set of points in
IEEE Trans. Inform. Theory, vol. IT-29, pp. 551-559, 1983.

[2 R. A. Jarvis, "Computing the shape hull of points in the plane," in Proc. IEEE Comp.
Soc. Conf. on Patt. Recog. and Image Process., pp. 231-241, 1977.
[3] S. K. Akl and G. T. Toussaint, "Efficient convex hull algorithm for pattern recognition
applications," in Proc. 4th Int. jt. Conf. on Patt. Recog., Kyoto, pp. 483-487, 1978.
[4] J. Fairfield, "Contoured shape generation forms that people see in dot patterns," in
Proc. IEEE Conf on Cybem. and Soc., pp. 60-64, 1979.
[s; G. T. Tousscdnt, "Pattern recognition and geometrical complexity," in Proc. 5th Int.
Conf Patt. Recog., Miami Beach, Florida, pp. 1324-1347, 1980.
[6; C. A. Murthy, On consistent Estimation of classes in M^ in the context of cluster
analysis. PhD thesis, Indian Statistical Institute, Calcutta, India, 1988.
[7: F. P. Preparata and M. I. Shamos, Computational Geometry : An Introduction. New
York: Springer Verlag, 1985.
[8] U. Grenander, Abstract Inference. New York: John Wiley, 1981.
[9] D. P. Mandal, A Multivalued Approach for Uncertainty Management in Pattern Recog-
nition Problems Using Fuzzy Sets. PhD thesis, Indian Statistical Institute, Calcutta,
India, 1992.
[lo: D. P. Mandal, C. A. Murthy, and S. K. Pal, "Determining the shape of a pattern class
from sampled points in iR^," Int. J. General Systems, vol. 20, pp. 307-339, 1992.
[n L. A. Zadeh, "Fuzzy sets," Information & Control, vol. 8, no. 3, pp. 338-353, 1965.
L. A. Zadeh, "An outline of a new approach to the analysis of complex systems and
[12; decision processes," IEEE Trans. Syst., Man & Cybem., vol. SMC-3, pp. 28-44, 1973.

S. K. Pal and D. Dutta Majumder, Fuzzy Mathematical Approach to Pattern Recog-


[13: nition. New York: John Wiley (Halsted Press), 1986.

[14 S. K. Pal and D. Dutta Majumder, "Fuzzy sets and decision making approaches in
vowel and speaker recognition," IEEE Trans. Syst., Man & Cybem., vol. SMC-7,
pp. 625-629, 1977.
[is: K. Kuratowski, Topology, vol. I. New York: Academic Press, 1966.
[16: D. P. MEUidaJ, C. A. Murthy, and S. K. Pal, "Formulation of a multivalued recognition
system," IEEE Trans. System, Man & Cybem., vol. SMC-22, pp. 607-620, 1992.
This page intentionally blank
PART 5

APPLICATIONS
CHAPTER 16

ROBOTIC CONTROL USING FUZZY LOGIC


AND PARALLEL PROCESSING

M J . H e n d e r s o n and K.F. Gill

Department of Mechanical Engineering


The University of Leeds
W o o d h o u s e Lane, Leeds LS2 9JT, England

1 Introduction
In the last twenty five years a number of new control techniques, such as fuzzy logic, have been introduced [1].
Fuzzy logic has met with some success in the process control industries and a number of papers have been published,
typically Daley [2]. The work presented here enhances the published work by investigating the application of parstllel
processing to real time fuzzy logic in a project carried out by the authors. INMOS transputers [3] are used as the
building blocks for the multi-instruction, multi-data parallel (MIMD) computer employed in this project.

2 System Hardware
The project utilizes a small Mitsubishi industrial robot, the RM-501 [4], with the proprietary control unit removed
to allow direct access to the actuators, optical encoders and joint boundary detection switches. Counter cards
have been introduced to register the output from the optical encoders employed to measure joint position and each
actuator is controlled directly from a transputer, with voltage as the manipulated variable.
A three INMOS transputers network resident in a SENSION B004 system [5], was atdopted because it would
allow adequate software developement for the project envisaged. The "operating system" was the Transputer
Developement System [3] with Occam II [6] as the programming language. A 8048&'microproce88or based IBM
compatable computer served as the front end to support the transputer network.
The three transputers used in the network are a T400 transputer resident upon the GBUS board [6] providing a
memory mapped interface to the robot, a T&OO root transputer and a T800 host transputer. The host transputer is
connected by an interface card to the IBM computer used to provide the necessary user interface and disc storage
facilities. The digital to analogue cards (DACs), counters and joint boundary detection switches are connected to
Peripheral Interface adapter (PIA) cards which are memory mapped onto the INMOS T400 transputer by the GBUS
card, allowing the PIA cards to be accessed by the appropriate read and write operations to specific locations in
memory. The PIA cards conform to the interface protocol implemented in the GBUS and are called GESPIA cards.
A schematic representation of part of the system used is shown in Figure 1.

3 Fuzzy Logic C o n t r o l
Zadeh [1] first introduced the concept of fuzzy conditional statements and using these statements Mamdani [7]
developed his fuzzy logic controller. The Mamdani approach to the construction of a fuzzy logic controller has
formed the basis of the approach adopted by the authors. In this work the domains of discourse over which the
fuzzy logic controller is defined are integer and finite. The input domains are error ( UE ) and rate of change in
error ( URCE ) with the output domain being change in control action ( Ucv )• The integer range was selected for
practical reasons as the information read from the robot optical encoder counter cards and written to the DACs is
421

S.G. Tzafestas and A.N. Venetsanopoulos (eds.)


Fuzzy Reasoning in Information, Decision and Control Systems, 421—449.
© \99A Kluwer Academic Publishers. Printed in the Netherlands.
422

TOANSPUTEH
COMMUNICATION LINKS

MEMORY MAPPED
INTERFACE

SESPIA'CWO- GESHA-CARO'^

Figure 1 The Interface

integer, If desired, the discttssioii can readily be geoerdized to domains delned over the reaj number universe. At
each sample interral it there afe two controller inputs, error (e(i) e Mjs) and rate of change in amt (rce(t) 6 UHCE)
with change in manipulated control variable (w(i) e Mcc?) « the output. Eate of change in erioi and not change in
error is used in order to avoid the need to rcdeine the fuziy sets when a differeot sampling rate (1.) is used. The
variables e{k) and rce(k) are calcmlated from the demand {d(k)} and the joint state (t(i)), ndng the expressions:

e(lt) = cl(Ji:) - »(t) (1)

and rce(*) = - ^ ^ = '- (2)

By adopting u ( i ) m the output there is no risk of large changes in the value of the manipnlated controlvariable,
even in the presence of a "rogue" rule. The manipnlated control variable (c(i)) is evaluated from the expression:

c(it) = J 3 " ( ' ) *''*••*' "W) = 0 (3)

A fuszy logic controller is built mp from a number of rules, typically in this project between 69 and 289 rules. The
i'th rule has the form:

IF ( 4i) IS P O S I T I V E . B I G ) AND ( rce(li:) IS P O S I T l T V E . S M A t l . ) THEN ( c»(jt) IS


KEGATIYE.MEDIUM )
where P O S I T I V E . B I G , P O S I T I V E . S M A I , ! , and N E G A T I V E - M E B I D M are Bnguistic labels for the fuzzy
sets defined over the UB,UMCE and Ucu domahis of discouse. The output at sample interval i- is FCi{k) £
Ucu- This ii calcnlated from the membership grades of the input and output fuzzy sets which are labelled
Ei,, RCE,^ and CUi^ . Adopting the convention that fuzzy set charactetiBtic functions are represented by fi(.}
with the appropriate fuzzy set symbol written as a subscript, tlie characteristic function |iFC,(i:) which defines the
membership grade of the output at each point en e Ucu is defined using the minimum operator /\:

(4)

Let h,(k) = / \ [m,M^)lncE,Me{h])] (5)


then l'FCiik){m) = f\[hi(k),itctj,^(cu)] VcueUcu (6)
423

The output at sample interval k ftom all the rules are combined iiaiiig the maximiiin operator y to give a single
fuiiy set, FGH) £ Ucu- The deterministic cbaoge in the output control variable u{k) is usually calculated from
FC{k}. The membeirsbip grades of FC{k) are defined by the expiession:
K

i=\

The deterniinlstic change im control vaiiable output at sample interval t is calculated from FC{k) by the defrazifi-
cation process, DF{,)t
u,{k) = DF(FC(k)) (8)

S.l Fuzzy Set Shapes


Various methods have been investigated in the literature to determine if real time operation can be achieved with
a fuzzy logic contioller. The avenues of approach explored include requantised domains and look up tables [8] and
simplified fujissy seta and rules |9], success has been achieved for moderate sample rates, far higher sample rates are
requited in robotics.
The amtliow hawe investigated a novel approach where by the characteristic function is assumed to be of a known
form, termed a template.With this protocol it is only necessary to store the numbers which give the exact wale
and location in a domain of the characteristic function template. By cmployinh a template representation, for the
characteristic funation, "real time' caknlations becomes more realizable. The template protocol may be used to
store information describing many shapes. Unless otherwise stated, the protocol of an ordered quadruple describes
a trapasoid.

E x a m p l e 1 Consider Ikt example of the cftararferisfie fimctian shown in Figure S, defined ever an integer iemsim
of discourse. The pammeiers required to define this faneiion asssming a tmpazoiial temflaU are (5,14,25,37).

MEMBEHSHIP GRADE

DOMAIN OF DISCOURSE

Figiure 2 Trapezoid characteristic function represented by the template protocol

The development of this method of storing and using fuzzy sets allows for the defining of fuzzy sets directly over
the appropriate domains of discourse. Hence, the problem of finding the appropriate values of the input and output
gains that would otherwise be required is removed. However, the definition of the appropriate fujssy sets and rules
is still critical.
In the software developed during the investigation, tlie template parameters were stored in a data base, termed the
Fuzzy Set D a t a Base (FSDB). This data base consists of an area of memory where the parameters are held together
with a process to manage this aiea of memory and to execute the appropriate read and write operations. Consumer
processes request data from the management process, which replies with the requisit data. The relationship between
the FSDB and a consumer processes is illustrated by Figure 3, where a process is represented by an ellipse and the
area of memory holding the parameters by a tank. The linking of each process is by the point to point communication
channels [10] supported by the Occam language, which are shown as arrowed lines crossed by the symbol L This
representation is similar to that defined by MASCOT [11], a real-time software design methodology. For the system
424

V
^^IW.fl^|f A^fj:-^

Fym mi

Figure 3 The Stracture of the Fii?:zy Set Data Base

Joint angie/radians

150 200 250


Sample interval
"Triangular shapes --Rectangular shapes

Figure 4 Gomparision of joint responses produced by firaiy logic controUers using triangular amd
rectangular output fuzzy sets

described, it was found by experiment that the shape of any output fuizy set is idatiYely unimportant and hence
it was decided to use rectangular output fuiiy sets. This is illustrated by the graphs presented in Figures 4 and 5
which compares the effects of using rectangular aiid triangular diaracteristie output sets. The results displayed in
Figures 4 and 5 indicate that although two controllers may differ in their internal structuie they can still behave
similarly. This is an area worthy of further investigation as such differences can have signiicant affects upon the
computational efficiency of the controller, it is always preferable to nse computationally efficient algorthms in all
real time control applications.

3.2 Fuzzy Logic Controller Data Bases


The properties of the diaracteristie functions employed allows for a unique ordering and hence labelling of these
sets. Labels [1] which are descriptive of the relationship between faaf sets can be effectively used in the analysis
and implementation of a fuzzy logic controller. In common with general practice in control engineering, all fuzzy
sets are normalised [12|.
The scheme adopted involves specifying a reference point on each fuzzy set and defning a ranking for each of
these points. The position of a point in the ordering scheme becomes the rank of the corresponding fua^y set. The
reference point for a fuzzy set A, j = Mef(A), is choeen in the following manner:
Donlral aotion/»oHs

V„.:.;;,,/^-:

-5
: ii\J' ^
10

m
' • " ' - . ' " " ' -

- " •• '"1

15 - ' ' : • . ,: : " • •

100 150 200 250 350


50 m»
Sample intervai
— Triangylar shapes - - Rectangular shapes

Figure 5 Comparision of «>nt«jl actions produced by fuiiy logic controllers using triangulax and
rectaiigulac output fuzsy sets

1. Find the largest inembersliip grade, £», presient in A £ U:

m
2. Find the smidletit element yeU such that pA{y) = ". This element in t a m e d the reference point of fumzy set
A, Ref{A).
This scheme is realiiable because of the operational domains over wbich the fuz^y logic controller operaks. Gener-
alisation to variables of type real is a simple operation, if desired. This method was chosen for three reason:
• Ease of implementation.
• Computational requirements.
• Rigour of approach.
E x a m p l e 2 Consider ike three fuzsy sets shown in Figure 6. T*e reference peimto forfiazf sets A, B md C are *,
go mi S4 mspecUvely. The erier ani lafcfj of A,B and C with rasped to eack other is 1, S and J.
This ordering scheme can lead, in certain circumstances, to some minor anomalies depending upon the nature of
the fuzzy sets involved. Any "reasonatle" set of "meta-niles" governing the definition of th« fuszy sets and the
rules employed in the controller will not allow for such anomalies, though their presence will still be of no practical
importance.
From equation 4 it is seen that each rule Mi is built, up from three fuzzy sets Bj,, iiCJS,-, and CUi,. The labels for
these fuzzy sets can be written in an ordered triple which then describes the rule. For example, rule Ri m represented
by the ordered triple (ii,i2,>s). The fuwiy logic control policy, defined by a number of rule., is then described by
an equivalent number of triples. Storing these triples in a structured manner aids the search for rules contributing
to the controller output, a more detailed description of wbich is given in Section 3.4. A segment of a typical rule
base is illustrated in Figure 7, a cross indicating that no rule is present. This segment of a rule base is equivalent
to the following fuzzy conditional atatements, where the subscripts are the labels shown on the appropriate edge of
the grid in Figure 7.
I F Eo A N D RCEa T H E N CUw E t S E
I F El A N D RCEt, T H B N CUa E t S K
I F Eo A K D RCEi T H E N CUm E L S E
I F El A N D RCBi T H E N Ct/ia E L S E . . .
426

4 8 12 1« 20 24 28 34 DOMAIN OF DISCOURSB

Figure 6 Refeience points of some fuzzy sets

ERROR FUZZY SET LABELS


0 1 2 3

Figure 7 Segment of a rmle base

3.3 Defuzziication Processes


Three diiferent defusziflcation strategies were investijsated: the meao of maxima defuMificatioii process, OFMOMi-};
t i e centre of moments deftiziifleation process, DFCOM(.) md a novel strategy, the centre of gravity defuzzilcation
process, DFcoai-).
The mean of maxima defuzziication process tales the mean of all those elements with maximum membership
value in FC{k). It there are m such elements, which are for notationai purposM relabelled a ( l ) , , . . , a(m), the value
of w(t) is given by:

u(m) = DFMOM{FC(k})
1 "
= Z-I]l*FC(i)(e«(«)) (10)

The centre of moments defuziification process usee all the membership grades of FC(k) in calculating the deteimistic
cotttrol output. If t i e output fuzzy set is thought of as a two dimensional shape, the deterministic output produced
427

by DFCOM(.) 18 the centroid of the shape produced by the action of the maximum operator on the outputs of the
individual rules and is defined by the expression:

The advantages and disadvantages of the previous two methods are well documented [13]. The centre of gravity
defuzzification strategy is a novel defuzzification strategy developed for this project. Its difference lies in the use
it makes of the outputs from the individual rules and manner in which u){k) is calculated. The DFcoAti) and
DFnfOM{-) defuzzification strategies wilt allow the output from a single "rogue '* rule to affect the deterministic
output in a disproportionate manner. This results because a single rule can drastically alter the shape of FC{k)
and hence the value of uf{k), see equations 4, 7 and 8. A better approach is to calculate the deterministic output
in a manner which places more reliance upon a consensus between rules. This approach reduces the effect a single
rule can have on the value of Li;(jb). The centre of gravity defuzzification strategy achieves this by using the output
from each rule and not their product under the maximum op«rator, FC{k). The output u>{k) is the centroid of the
individaul outputs of the rules and not the centroid of FC(k). Improved computational efficiency is an additional
benefit since the deterministic output can be calculated directly from the inputs to the controller and the fuzzy
set templates. Analytical expressions can be easily determined and two examples of which are presented. This
defuzzification technique has three important advantages over the methods more frequently applied:
• Ease of computation.
• More representative of the decision reached by individual rules.
• More robust in the presence of badly chosen rules.
Example 3 Lei u(ib) € Ucu (^ ihe deterministic change in control action at sample interval k and the moment of
the output for rule /J, be m , ( i ) , as illustrated in Figure 8. let the p contributory ruUa be labelled Ri,..., Rp. The
moment of the output with respect to ui(ir) is m,(ik). Hence, for all the rules by definition ofu{k) as the centroid:

£"».(*) = 0 (12)

For the Hi, the value of mi(k) can be calculated. For the output shown in Figure 8, a rectangular output fuzzy set:

m<(i) = ( 6 i - a O A < ( t ) [ a , ( i ) - ^ i ± ^ ] (13)

Nence j^C' ' "OA-C*) [«(*) - ^ 4 " ^ ] = 0 (14)

nJl.(*) = iM^ilMJ) 05)


Example 4 / / the ontput fviiy sets are equatatenl trianglet and the fuzzy sets art defined by their width (2li) and
the mid-point of their base (at), see Figure 9, it is seen that:
hi = h[l- hi(k)] (16)
The moment of the output from rule Ri, FCi(k), with respect to u ( t ) is given by:
,r„(k) = IMk) [2 - A.(*)] [w(t) - aj] (17)
As previously, it is required that for the moments of the p contributory rules with respect to u(k) be zero:

J2m,{k) = 0
i=l
P
Hence 5]|/.7.i(it)[2-Ai(t)] K * ) - a,J = 0 (18)
428

MEUBEnSHIP GWOE

DOMAIN OF DISCOURSE

m.m
Figure 8 Centre of gravity defuszificafcion strategy for rectangular output fussy sets

MEMBERSHIP GFIADE

h,-4-.

L ^
wik)

DOMAIN OF DISCOURSE

Figure 9 Centre of gravity defuszification strategy for triangular oMtput fuzzy sets
429

It can be seen fiom the two previous examples that the expression derived for u(k) can be updated as eaeli
contributory rule is discovered. T h b explains the improved computational efficiency of the novel defuziification
strategy. The DFcoci-} is far less sensitive to the presence of a rogue rule, and can in some ciicumstances behave in
a manner similiar to the DFcomi-), as illustrated hj Figures 10 and 11, although some divergence in behaviour will
ol>viouBly ooaur as the nmmber of contributory rules increase. The calculation time for the DFcoai-} is not affected
by the shape of the output fujiy sets when the template protocol is used, as indicated by the results presented in
Table 1. It is possible to derive expressions for the determini»tic output for other output ckaiacteristic function
shapes if so desired.

Joint slala/radians
0.05

10 20 30 40 50 60 70 80 « 100
Sample intareal

—Centre of moments - - C e n t r e of gramty

Flguee 10 ComparisioD of joint states produced by a fuzzy logic controller using DFCOGQ and
DFCOM(^)

FC(k) Update tediiuque TViajigular output fuzzy sets Rectangular output fuzzy sets
Modal evaluation timc/ms 0.64 0.64
Minimum evaluation time/ms 0..51 0.51
Maximum evaluatioo time/ms 1.1,5 1.09
Range in evaluation times/ms 0.61 0.58

Table I Comparision of evaluaiion times using rectangular and triangular output fuszy sete
430

Control action/¥olls

10 20 30 40 50 60

Sampi9 inlereal

— Canira of m o m m t t - - Cenlre of grawlf

F i g u r e 11 Comparisioii of control actionH produced by fnszy logic comtfoller using DFcoaQ and
DFCOMQ

3.4 Search for Contributory Rules


Wliate¥ei the process of defuzzification, only a relatively small number of the riiku in the RDB actually make a
coBtrlbution to the shape of FC{k) and hence the value of w(Jt). For any given inpat, less than 2.8% (4 rules) and
BometiiDies less than 1% (1 rule) of the rule base contribute to the value of w ( t ) . It can be seen from equation 6
that for a rule «,- with inputs e(l:) and rce(l;), if hi(k) = 0 then that rule cannot contribute to the output, whatever
defusszification strategy is adopted. This forms the basis of the "iatelligenf rule base search by the author to improve
the operational efficiency of the controller.
Three rule search processes have been investigated to determine the importance on controller performance of the
search method. The irst, termed the Full Search Process (FSP), seeks out valid rules in the RDB for evaluation. The
second search process, the Step Search Process (SSP), is more "intelligent" and uses knowledge of the structure of
the rules and the rule base to isolate inappropriate segments of the RDB which cannot contribute to the final output.
The final search process implemented, a Hippie Search Process (HSP), uijes knowledge of the rale structure, rule data
base and the previous contributory rules, A further operational improvement to the RSP is made by commencing
the current search at the location of the last contributory rule in the previous interval. The results show not only is
t i e calculation time for a fuzzy logic controller less than that achieved with the other search processes, see Tables 3
and 4, the search time using the BSP is relatively unaffected by the size of the RDB. The FSP and SSP calculation
times are variable with size of the RDB and number of contributory rules present because of the need to search the
RDB for contributory rules.
The different rule searches are demonstrated in the sequence of illustrations given in Figures 12, 14 and 16 for a
hypothetical rule base made up using 13 fuzzy sets and containing 42 rules. Each square contains the memberahip
grades for the input e(l:) and ree(k), for the appropriate fuBy sets. The a»rowed dashed line and shaded region
indicates the directiom taken by each search proeea. The starting point for each search process is identified by a
"bullet". For the RSP the search starts from one of the previous contributory rules and can change from one search
to the next. The FSP increments sequentially throught the EDB and sends to the Fuzzy logic Control Engine
(FLCE), which executes the various fuzzy logic operations, all the rules prisent for evaluation. This results in
redundant calculations being made and the addditional time penalty resulting from the aissociated data requests and
retrivals from the PSDB by the FLCE. The flow diagram for this search process is given in Figure 13, the variables
identiied by E . P T B . and B C E . P T B . hold the position of the current location in the RDB under investigation. For
example, in Figure 16 for the RSP the starting point of the rule search process h E . P T R = 2 and IICE.PTH. = 4.
Figure 12 shows the path taken by the FSP in a rule base for a typical input. In this example, all 42 rules present
in the RDB and the 13 fuzzy set membership grades arc evaluated. The SSP, illustrated by the flow diagram in
Figure 15, uses the ordering of the rules to search the RDB in a specified manner. If an input is linked with a lero
431

HATE OF CHANGE IN ERROR


fUZa SET LABELS

I I I I I

R3
Is

F i g u r e 12 Example of the FSP

F i g u r e 13 Flow diagram for the FSP


432

RATE OF CWW6E !N BHROH


FUZTf SET LAKLS

F i g u r e 14 Example of the SSP

membetsiip grade for a fmsiisy set, the rules employing that fuazy set are not evaluated because the output fuzzy sets
will have meiiil>e»hip grades that are all equal to zero. For example, enppcBe the input to the controller at sample
period k is:

Rom equation 6, the output of rule IJ,- is given by:

WftCtjC") = A ['»4*).l*CD-.,(«)] Veil € Ucu

Suppose tliat:
!*«(,(«(*)) = 0 where t'l = 2
Then fn(jt) = »
Hence, |Jrc,(*)(<=") = 0 V CM 6 Ua)
Then if foi some other rule B j , jEj, = Si it cam be seen that hj{k) = 0, hence:

ffFCiityiev) = 0 V c« e Ucv

That is, rule Rj will make no contribution to the output. Tliis will be true of amy other rule using the fuzzy set ,i?j,.
A similiar arguetnent will hold for the fnj«y sets deined over UHCE- T M " explanation illustrates why the SSP will
mo¥e to seaidi the rules in the next row or column, dependant upon whether the fuzzy error set or the fuzzy rate
of change in error set haw a zero membership grade for the current input. The SSP anchor point is static and has
been set to the (0,0) location in the EDH. For this example, twelve fuzzy set membership grades were evaluated by
the SSP during the search of the B B l .

Definition 1 Tie jearei will ie stopped for one of three reasons;


1. The &DB has leen /til% sarchei.
S. The wmsimum number o/ c&nirikutory rules hum hee.n found. This uumher can be determined 6f the number
of input fnzzf sets which hare a n&n~iero membership §rtiie f&r the inpui and the structure of the rslcs.
S. A nBinier of comtribsiory rules, less than the mazimvm, have ieeii found with no pomiUlitf ef fimdinf any
further coniributoTf rules.
433

Figuire 15 Flow diagram for the SSP

RATE OF CHUMGE IN ERROR


FUZZf SET UBEIS

3)1 p-°) I io.a)

IttO)

jp.0.7} (0,0.31
_m_ P.e>

F i g u r e 16 Example of the RSP


434

Tke first coniHion is satisfied what all of the rsks havt teea tetied; a properly mhviucei as a defavH stop conditim.
Far ofif fttrtieatar infvi there tj a n»aj;ifn»in M%mher of cemtriisioTy raks defined I j the order of the cantmller and
the iefnzzificaiion process. When the maximim is reached the search is terminaiei.
The mnderlj/mi reasoning iehini lit third coniiliou is more cempki and results from the, relationship hetween
fuzzy sets. Let e(k) € Ue ie an error input to ike conlraller and E„ £ UE be the first fszzjj set defined ever the
errvr domain that has a non-zero membership §rmie for e.{k). Then any other fsziy set, ssf E'l £ UE, which has
a noa-zero memierakip grade for e{k) will be "clo.se' to E„; thai is, tis rank I is 'similiar' to w. Let A he a /sizf
set defined ever a rfotnain 0/ discourse U. Then the number of ampperl sets which iBtersect Supp{A) is denoted Jf
S,(A).

E x a m p l e 5 Consider the fuzif sets illustmted by Pignre 17 and iepnei omr the error domsin; thef are typical of
those in the controller developed in this project. For the input e(k) = 13, liE,ieih)) = 0.5, and Si{Ei) = 2 for the
fnzzg error sets shown, it is only necessarg to evahaie the membership grades of ike .^ets Ei,E2,E4 and E§; a
rtsslt dieieiei ig the order of the fmzzji logic coniroUer.

MEMBERSHIP G R » E

8 « 10 1 ^ 16 22 24 26 28 32 36 38 42

I DOMAIN OF DISCOURSE

F i g u r e 17 Deinition of S/(-)

The ESP is the most sophisticated of the three searches irnnlemented. The approach utilizes the B D l ordering
in a manaei similar to the SSE The additional knowledge, however, of the location of past contributory rnlea is
also employed to locate an anchor point from which to start the search for the next group of contributory rales.
A default anchor point position is available when no previous contributory rules exist, this occurs during the first
sample period of the controller.
In addition to employing this extra information, the actual pattern of the search is different. The search does
not step through rows or columns of the EDB but ripples out from the anchor point, fust searching for non-zero
membership grades close to the anchor point, llien progressing to the more distant fuzzy sets. The iow diagram
given in Figure 18 illustrates the operation of the RSP and Figure 19 gives a more detailed description of the stop
condition. Sets that have labels smaller than that the corresponding set at the anchor point are described as to the
left and those to the rif Al have higher valued labels. Separate software roiitiiiei have been developed to search to
the left and to the rigM. The operation of tlie routine M G H T . S T E P is shown in Figure 20 and the structure of
the l E F T - S T E P routine is similiar. The C O N T I N U E process tests the stop conditions illustrated in the iow
diagram Figure 17.
The stimulus for a change in search pattern came from the experience gained with the SSP. This experience
indicated that contributory rules in successive sample periods are bnilt up using the same or neighbouring fazzy
sets. The labels for the fuszy sets used in deining a typical sequence of contributory rules, generated by the controller
incorporating the RSP, are shown in Table 2. Starting from an anchor point, the HSP looks for error sets that have
a Eon-xero membership grade for the input, the RSP Irst testing the membership grade of the error set at the
anchor point and then on either side of this location. Pollowing this, the RSP evaluates membership grades of sets
more distant from the anchor point. This process is illustrated by Figure 21 on a typical collection of fuzzy sets. In
435

Figure IS Flow diagram for the RSP

,TBU6 ^

TRUE

Figure 19 Flow diagram for the ftSP stop condition


436

F i g u r e 20 The Iliglit.step search teat

Sample interval E fuzzy set label RCE tuay snot label CIJ fuzzy set label
838 12 1 7
839 12 1 7
1 8
n
840 12 1 7
11 1 9
841 12 1 7
12 2 7
11 1 9
11 2 8

Table 2 Constituent fussy sets for conwjcutive groiipe of contributory rule^

step 1 the aachof point fussy set (C) is t ^ t e d for a oon-sero membership grade for the input. Following that, the
search process jumps left, in step 2 and then tigh-i in step 3. Having found a fuKzy set with a non-sero membership
grade for the input, the mMch proems continues the search, for any other non-^ero membership grades. Due tc> the
ordering of the fuzsy sets^ the search continues by jumping to the right again. The EDB search is terminated using
the same stop criteria as outlined for the SSP.
The examples given show the operation of the different rule search processes and illustrate that each proems
km a dramatically different operation time of eaacli process. In Figuras 12j 14 and 16 the aumber of r u l « which
ar<j evaluated are 42, 12 and 6 respectively. The ratio of these nurabere aie of the same order of magnitude as the
calculation times required for the fusgy logic controllei incorporating these different search strategies^ the rule h a ^
remained the same in each CIK©.
The r^iilts given in Tables S and 4 were generated WiSing two rule ba*^ containing, one containing 81 and the
other 289 rules, Prraented in the tabira are the modal, minimum and maximal values of the controller calculation
periods for combinatioiia of rule search and rule base sise. The results show that the FSP is the least efficient of
the thrM! search processes, the SSP is more efficient and the RSP is the most efficient with the least variation in
calculation kimm; the benefit to be gained from using a more sophisticated gearch strategy. The evaluation time of
the fuzsy logic controller with the ESP is shown to be relatively unafffi«;ted by the sise of the rule data base.
One property of the ESP is that the time spent searching the EDB will be relatively independant of the number
437

DOMAIN OF MSCOUHSe

F i g u r e 21 The BSP searching through neighbomrimg fuzzy sets

of rules or sets prewJiit m the fuzzy logic controller. This results ia the fiizgj logic controller haYing a relatively
constant evaluation time whatever the size of the BDB, an important property in the application to the control
of dynamic systems. This property will be of added importance in seltorganising fuisy logic controllers where the
number of rules apd fumj sets can change.

Rule Search Process rsp SSP RSP


Modal evaluation time/ms 13.25 1.47 0.64
Miriimuin evaluation time/ms 13.25 1.41 0.64
Maximum evaluation time/ms 13.5 2.24 0.83
Eaiige in evaluation time«/ms 0.25 0.83 0.19

Table 3 Search procesi evaluation times for a 81 element rule base

Rule Search Process FSP SSP ESP


Modal evaJuatioo, time/nis 39.74 2.94 0.51
Miiiirniiin evaluation tiine/ms 39.S6 1.98 0.51
MaAiiimm evaluaiion time/ms 40.51 2.94 0.96
Range in evaluation t=im«»/ms 1.15 0.96 0.45

Table 4 Search process evaluation times for a 289 element rule baae

3.S C o m p e n B a t i o n for A c t u a t o r D y n a m i c s
The Fuzzy logic Controller (FLC) so far discussed has e(ilr) and rce(i;) as inputs, hence it is not capable of
compensating for the characteristics of the robot joint actuator. A typical speed-voltage curve for a robot dc-servo
motor actutor is given in Figure 22. The dead-uone represents upto 20% of the total voltage range [16] and can
adve»ly affect the system response if not compensated for by the control policy. The use of fuzzy logic offers two
distinct methods for introdacing the necessary compensation.
In the extended fusay logic controller, the individual rules of the fuzsy logic controller are altered to take into
consideration the characteristics of the joint actuator. The additional variable required for incorporation into the
rules is the value of the manipulated control variable c(k). The more sophisticated fuzsy conditional statecoents
438

MOTOR VELOCtlY/
RADIANS PER SECOND

VOLTAOE/VOLTS

Figure 22 Speed-Voltage Curve for a Typical Joint Actuator

required in this case have been discussed by Zadeh [1]. In this particular case the inputs at the k'th sample interval
are e(ib), ri:e(ib) and c(k — 1), the latter being the value of the manipulated control variable in the previous sample
interval. The fuzzy conditional statements used are of the form;
IF (error IS POSITIVE SMALL) AND
(rate in change of error IS POSITIVE M E D I U M AND
(current control variable IS NEGATIVE SMALL) THEN
(change in control action IS NEGATIVE MEDIUM)

where, POSITIVE.BIG S UE
POSITIVE-MEDIUM £ URCE
NEGATIVE.SMALL £ Uc
NEGATIVE.MEDIUM £ Uc
Using previously introduced notation, the characteristic function of the output from the i'th rule is defined by:

fFCik) = A ['•((*). W[/,,(c«),/ict/„(cii(t - 1))) (20)

An alternative approach is to divide the fuzzy logic control policy and the corresponding calculations into two
separate processes or components, creating a distributed fuzzy logic controller (DFLC). This approach is based
upon the chain of reasoning, discussed by Zadeh [1], with each component equivalent to a block of reasoning within
the chain. This form of controller has been termed distributed fuzzy logic controller, since the control policy for
each joint is computed by two distinct algorithms.
The first of these calculates, or reasons, from an initial premise based on knowledge available. This knowledge is
stored in the rules used by this process. The initial premise consists of the values of e{k) and rce{k); the resulting
output is a suggested change in control action (^/(ib)) which is used to produce the suggested new manipulated
control variable C(i) and cui(k), where:
c/(i) = c(t - 1) + cu/(t) (21)
The second of these processes continues the reasoning using as additional knowledge the known behaviour of the
joint-actuator shown in Figure 22. The input, or premise, for this second block is the output of the first process.
The fuzzy conditional statements in the second component of the DFLC have the form:
IF ( ci(k) IS SMALL ) AND ( cu/(i) IS POSITIVE SMALL ) THEN
( cu(t) IS POSITIVE M E D I U M )
439

The diitributed controUei can now be seen to consist of two sets of fnsisy conditioaal statements. This method
allows complex control policies to be implemented by a series of simpler processes. This apptoach conformi to the
Zafcdeh [1] idea of how the human mind operates, An initial premise, generated from an input, is modifled hj later
reasoning based upon additional information.

3.6 Implementation of the Distributed Controller


Since the first component of the D F i C already exist in the form of the FLC, it is only necessary to implement
the second component. The second component consists of fuzzy conditional statements wbieh implement a control
policy dictated by the cliaracteristics of the joint actuator shown by Figure 22. The aim of the second component
of the DFLC is to compensate for the dead zone shown in the speed-Yoltage characteristic. Tkis is achieved by
ensuring the final value of the manipulated control variable to ensure that it passes through the actuator dead none,
notationally this is rpresented by the closed intetwl in the control variable domain [D<„ Dj] C Uc, in the minimam
possible time. For example, suppose at some sample interval k that c{k} is within the dead Sione and u(k} is positive,
one possible cause of action would be to assign c(jfc) the maidmum value of the dead gone, plus 3 volts.
A control policy utilizing a variable output gain will adequately compensate for the dead-zone, hence the fuuy
conditional statement can be replaced by » btancMng statement under the control of a Boolean «

3.6.1 C o n t r o l of Variable C h a t t e r
In the initial implementation of this component, the manipulated control variable was switched directly across the
dead zone using the following algorithm:

IF[c(l;) 6 [D^.Di A N D w(t) > 0 ] T H E N c ( t ) = Dj E L S E


I F lc(k) € [£>., O J A N D u{k) < 0] THEMc(l:) = U .
It was found experimentally that this approach led to rapid changes in the manipulated control variable "chatter* aa
the joint approadied the steady state value. An example is given in Figure 23, where the joint state and manipulated
control variable value, are plotted on the f-axis with sample interval along the i-axis.

Joint angle/fKlians Control action/votis

0.3
; : .- || . ..: : ; • • :•'• "•' •': . ' " : ' -

•-.;; 7 ; / i : - - --/.;,;. ,. , '-' ' - " •' • . • - . . ; „ • ; , ,: •- •

-,• - . - - . / . ^ i . . - . , • .
0,2 -•• - / t

HWIBWBMIBMMiBHI

0 1C» 2CM 300 400 5CMJ 600 700


Sample interval
— Joint angls/radians --Control variatile/volts

F i g u r e 23 Chatter in the second component of the D F t C

These results were generated from an input demand to the shonlder joint of 0.343 radians. An oscillation of
±0.07 radians around tlie desired value, with a period of approximately 0.5 seconds, can be observed in the data
displayed in Figure 23. For negative voltages the output torque from the motor will oppose the gravitational force
exerted on the shoulder joint which explains the negative bias in the values of the manipulated control variable. The
440

dead band has been highlighted in the graph, the zone between -3.? volts and +4 volts, where shatp changes in the
manipulated control variable can be observed due to the action of the second component of the DFLC.
The problem of chatter was overcome by using the l i s t component of the DFLC to alter the value of c(i) IB
the small zone around 0 volts, [Di„J?J C Uc- By experimenl., the authors discovered that Di = - 0 . 8 volts and
De = +0.6 volts were adequate for all joints. The benefit of this approach can be obseived in Figure 25, wlieie
the conditions remain the same x for Figmr« 23. It should be noted the changes in value of e{k) are both smaller
in magnitu<le then those illustrated in Fignre 23 and ijHiost entirely negative in value during the period that the
second component of the DFLC is active.
These results demonstrate acceptable steady state response is Mliieved by the manipulator under test, in contrast
lo the steady state holding problems experienced by other researcheis. Sormally at the steady state a fazy logic
controller will allow the manipulated control variable to vary in the dead zone. The aim of the second component in
the DFLC was not entireley to negate the presence ot the dead zone but fa minuiiiBe any disadvantages with respect
to the performance of the system. The full control policy implemented in the second component of the DFLC,
including the technique to overcome chatter, is illustrated in Figure 24.

K g e p e 24 Flow diagram representation of the control policy of the second component in the DFLC

3.7 The Hybrid Controller


The Hybrid Controller (HC) consists of three components. The ftiziy logic controller which caa be either the basic
or distributed version, which operates over the domain UB- The second component is a standard deterministic PID
controller which operates over a small subset of UE and inally the supervisory process. This latter process dictates
which component of the HG is active at any particular sample interval. A schematic representation of the HC is
given by Figure 26.
The components of the hybrid controller operate in different regions of UE • Experience gained in the use
of the FLC and DFLC indicates improved dynamic behaviour is possible in the steady state region ( ±0.2% =
(±0.012 radians) ) if the requirement exists.
The supervisory process activates the d«iied component, either the fuzzy or determinisitic controller element
and the activated control process, euFUZE(t} or ctiDErit) is used to update the manipulated control variable, c(k).
The default values for eafvzglk) and caDBrfi) are aero, these are altered only if the appropriate component of the
distributed controller is activated and calculates a value other than leio for either ctiji-i/zz(i) « eUDBT(k)- Hence,
441

the value of e(i') is given by:


e(k) = 4*= - 1) + cuFi/zzC*) + euDKrC*) (22)
The program stmctnre of the hybrid controller is ilhstratexl by Figure 27, The authora chose to investigate a

.loint anglo/radiana Control acliDn/¥oKs


0.4 25

0.35 20
^
0.3 ^15
0.25 ^10
0.2
5
Q.15
0
0.1
•" /I .\ '• . l\ '', f " -5
O.CS

0
L_l^
0 50 1C»150 2 » 2 5 0 300350400450S<MS50
.10

SamplB int#real
— Joint angto/radians —Control wariaMs/voltss

F i g u r e 25 Reduced cliatter in tlie rnodified second component of the D F i C

DEMAND d|k)| „(•'>

«(m ,

L.»»-j =%f*)
STATE t W CONTROLIEF
INPUT

COirmOL ACTION

F i g u r e 26 Schematic representation of tlie hybrid controller

l i e that comprises ti»e DFLC and PID components because of the lesulte obtained earlier in tlie project. It is
interesting to note that during the development phase of the of the HC, both PD and PI algotithme were used as
the deterministic controller components and the results showed little difference in lesponse.
The FLG omtlined earlier does not require any modiication to be made and can be simply used directly in the
hybrid controller. Similiaily, the control policy executed by the DFLC can be left undianged. There is, however,
one major dificulty. In operation it was found that a HC containing the DFLC as the (mif controller component
will experience relatively large "kicks* in the value of c{je) as the system approaches the steady state value and this
442

UPDATE.DQNWtOC AC 1K>N

K g n i « 27 Pseudo code and flow diagram for the supervisory process

leads to oscillatory uiotion of umaeceptably large amplitude. This b e h a w u r is moat obvious in the waist joint.
The magmitiide and frequency at the waist joint ia illustrated by the dashed lime in Figure 28. This behaionr,
however, is BOt as pronounced in the remaining robot joints and can be attributed to the low reaction torgue of
the waist joint actuator as the Joint reaches the selected point. There are two possible solutions to this problem.

Joint angto/radians

80 100 120 140 150 180 2C»


SamplB intarval

— Improved DFLC --UnaJtered DFLC

F i g u r e 28 Conflict b«tweeB components of the EC

The irst involves tcsttncturing the hybrid controller so botli control components are active together with adjustable
"weights" on each component output value. The value of the manipulated variable will then be obtained from the
sum of these components. Suppose GFazz(4>')} " d GDMTie(k)} are the chosen weights, as shown in Figure 29,
443

MEMBERSHIP QRAOE

ERROR DOMAIN/RADIANS

CHANQE IN CONTROL ACTION GAIN


FOR DCTERMINISTIC CONTROLLER

CHANGE IN CONTROL ACTION GAIN


FOR FUZZY LOGIC CONTROLLER

F i g u r e 29 Variable gain values for the hybrid controller

then the value of the manipulated control variable is defined by:

c(t) = <:(* - 1) + [GFi,zz(e(i)) x curuzz(.k)] + [GoErMk)) x CUDETC*)] (23)

The second solution, which was adopted, is computationally less demanding and more elegant. In this latter
approach, the various components of the distributed fuzzy logic controller are switched off in a predefined sequence
as e{k) tends to 0. It was found by trial and observation that if the second component of the distributed fuzzy logic
controller was deactivated when the joint luigle B{k) was within the range of ±0.004 radians of the desired value,
the previously observed *'kicks^ did not occur. The result of using this approach is shown by the continous line in
Figure 29.
It was assumed that the robot joint could be modelled adequately using a second order equation, since similiar
models have been used successfully [14]. The assumption is reasonable in this particular case because the nnodel
only represents the behaviour of the joint in a small region around the steady state value. The model properties
were evaluated using a technique based upon the logorithmic decrement application to under-damped system [15],
and were estimated to be ( = 0.6 and w„ = 5.0. Using these values, an initial set of PID controller coflicients were
derived. By trial and observation these values were tuned to the robot, yielding:

iCd = O.I, /Ci = 2,0, /Cp = 2.5 (24)

The PID velocity controller was implemented, both for safety and for bumpless transfer. The problems encountered
in implementation were created by the digital feedback signal from the optical encoder and the limitations of the
Occam language which introduces rounding errors. Both these factors reduced the stability margin. It was further
noticed that the performance of the velocity algorithm resulted in different outputs depending on the number of
rounding or truncation operations that occur. The problems that arise in the digital implementation of algorithms
when dealing with rounding errors and variable sample rates is discussed by Moroney [16] and an explanation is
given for the relatively poor response of digital controllers. The expression used to implement the velocity PID
algorithm use in the HC is:

-'(*) = t. (e(t) - 2e(t - 1) + e(k - 2)] + K, [e(J:) - e(t - 1)] + Kie{k)t. (25)

The supervisory process of the hybrid controller consists of two routines and these are error driven. The first routine
switches between the DFLC and the PID components of the HC using the boundary values discussed earlier. The
second routine ensures both of the components ( DFLC and HC ) cannot be evaluated together.
444

jQ'mi angle/radians

0 ?0 40 60 80 100 1» 140 160 180 ?00


Sample Intsfvat

— SFLC " - H 0

Figiiice 30 Conipariaion of the behaviour of the FLC and HC to s step demand


Figure 30 shows the waist joint responses for both the FLC and HC for a step dieturbance of 0,0343 radians.
The FLC has a superior transient response to thai of the DFLC, wliich lias a noticable and also a better steady
itate performance. In addition, the HC exhibits a greater overshoot and increasing the damping parameter value in
the PID component of the HC results in a longer rise time with a larger steady itate error. Figure 31 shows typical
responses for the shoulder joint when under the control of either the FLC ot the HC; the perturbation was caused
by the motion of the elbow joint.

Joint angle/radians

150 200 2S0


Sampla interval

— SFLC ^-HFLC

Figure 31 Comparision of the beliaviout of the shoulder joint in the presence of a disturbance

It should be noted that all the experimental results were obtained using the lame data bases were appK)priate,It
can be seen that the response of the joint is superior when the FLC algorithm is employed. Not only ate the
oBcillations experienced by the shoulder joint smaller, the steady state response is much reduced.
It can be seen from these results that the performance of the "pure" fuzzy controllers ia superior to the hybrid
controller. This result confirms that the fuzzy controllers can respond more positively to both digital input data
and externa] perturbations.

4 Project Software
The experimental investigation of the proposed controllers required the development of appropriate software. The
origianl design problem was decomposed into a number of simpler tasks before coding was undertakene. The design
goals were:
• Control the major robot joints using fuzzy logic.
• GBUS board to be operated by a distinct process.

• Simple interface between the controller software, user and host computer filer system.
• Modular structure, provision for the upgrading of the individual units comprising the software package.

4.1 Top Level Design


The algorithms used, reviewed earlier, form the core of the controllers implemented and studied. The design
requirements enabled several distinct features to be identified:
• User interface. This facility allows the controller to be initialized and modifications to be made during opera-
tion.
• Interface from the transputer system to the host computer system, an INTEL 80486 based personal computer.
This enables the control software to access the data bases and store run time data on the hard disc.

• Process to control the GBUS interface card.


• Joint coordinate process. Includes a simple path planner and inverse kinematic solution process.

• Joint controllers.
• Collision detection. Actuator overload detection for each joint.
An "engineering approach" was adopted to the design of the concurrent control software. A combination of techniques
were adopted, such as a top-down design methodology using MASCOT like primitives, flow diagrams and pseudo
code. The approach to testing is bottom-up, allowing for the resolution of communication deadlocks and other
common problems common to Occam software. A discussion of these techiques is presented by Henderson [18].

4.2 Mapping Software Processes onto the lYansputer Network


The most effective use of a network occurs when individual transputers require the minimum of communications
with one another. Figure 32 displays the mapping employed for the processes used in this project. This configuration
was found by experimentaticm to be the most efficient. A number of alternative arrangements were tested which
were similiar and most likely to achieve the same desired goal.

4.3 Controller Input and Output Processes


Input and output processes are required to support the operation of the controller. The input process provides data
in the appropriate form to the controller and the output process examines the output from the controller to identify
possible collisions or actuator overloads. Each joint controller is supported by a dedicated input and output process.
The input process calculates e{k) and rce{k) from the difference in desired and actual joint states as described
in Section 4. The desired joint state, or demand, is available from the control interface process and the current joint
values from the GBUS card.
446

HOST
l TFIAMSPLrrER T800
TFWWSPUIEB

F i g u r e 32 Mapping Processes onto the Transputer Network

4.4 Internal Structure of the Fuzzy Logic Controller


The basic fuasssy logic coiitroller is made up of five processes:
1. Puszy logic eagine.
2. Kmle seaich process.
3. Rule data base.
4. Fuziy s«t data base.
5. Data base inter-relatioEal procesii.
The structure of the basic fuzzy logic contiolkt is illustrated in Figure 33, The moie sophisticated D F i C and
hybrid controllers hme addional processes, dependant upon the additional complexity of the control policy. They
are discussed in a later section.
The fuzzy logic engine i« the centre of the controller, its exact form of implementation is dependant upon the rule
search and defmziification processes used. Rules ate presented by the rule search procesB for evaluation to the fuizy
engine which can then calculate the deterministic output. The basic rule search pioeese sends all rules to the fuzzy
logic engine while the more complex search processes send contributory rules for evaluation. The sophisticated rule
search processes partially evaluate the rules in their search and to avoid duplicating calcualation, partially evaluated
rules are sent directly to the fuzzy logic engine together with the identity of contributory tules.

4.5 Operations upon the Data Base


The fuzzy set data base stores the template parameters used by the fuzzy logic engine to evaluate rules. Because
dynanjic arrays are not available in Occam, the template parameters ate stored in faed size arrays. Control characters
are also included in these array, to indicate whether particular segments of the array hold valid template parameters.
The arrays used were of type [N][5]!ST where N is the maximum number of fuzzy sets used, typically 17. The array
is of width 8, to store the 4 trapezoid template parameters and a control character. For a single joint three such
arrays ate neccessary, one for each of the fuzzy sets deflned over UE, UKCE and Ucu-
A management system executes all read and write operations on the arrays, processes wishing to interogate the
data base do so through the managament system and in addition also carries out all the required data base "house
FROM CONTROL .
INTERFACE - T

FROM CONTROL
INTERFACE

F i g u r e 33 The Fuzzy Ixsgic Controller Processes

keeping" aclivities. For example, rearranging the data in the anay when new template parameters are added or
deleted. It ensures that the data is held contiguoysly, an airangtnent which will simplify the operatioE of the data
base and lience improve the run time efficiency of the program.
The template paramteis within the data base are stored in rank order. The array offset is equal to the ranking
of the fuzzy set. The deletion or addition of a fuzzy set can result in changes to the ranking of the other fuzisy sets.
To maintain contiguous use of the array this implies mo¥iiig template parameters. This action is carried out by the
management system which governs the area of memory holding the array.

4.6 Rule Search Process


The rule search processes implemented have been discusaed in detail in Seclioo 3. Their fole is to find the appropriate
rules for evaluation. In the simplest rule search process all rules are evaluated. The mofe sophisticated rule search
processes identify only those rules which can contribute to the final deterraiiii.'stic output.
In these search processes, the rules are partially evaluated during the search an<i the data is passed to the fuzzy
logic engine to avoid duplication of calculation, that is the evaluation hi(fc).

4.T The Coordiaation Level


The coordination level is made up of several processes which calculate the appropriate demand values for the local
controllers and send these ¥alues to the local joint controllers in a synchronised manner. From the end effector
location, an inverse kinematic model is used to calculate the joint angles.

4.8 H y b r i d and Hierarchical Fuzzy Logic Controller


The hierarchical controller is, as previously described, the single layer controller extended to include an additional
control phase. The second layer testa for one of several conditions and executes a particular option depending on
which condition is T H U E .
The hybrid controller is a combination of the hierarchical controller and a deterministic controller. A decision
procesSj which activates the appropriate component of the hybrid controller, is required. The relationship between
the constituent processes of the hybrid controller is shown in Figure M.
448

FHOM INPUT PRCXESS

% ^

'*i
FBOM

vt ^
FROM
CONTHOL CONTBOL
INTERFACE

TO OirTPUT PROCESS

Figm-e 34 Tke Hybrid Controller

5 Concliision
The results given in this paper show that fiijiy logic can be used in robotic control and that the steady slate problem
often encountered in the application of fuisaj- logic control can be overcome through the use of a hybrid controller.
A fuzzy logic controller caw be designed to operate in the real time enviromemt with high sampling rates without
modiication of the controller's structnre. It has been shown that parallel processing using a transputer network
caa be successfully applied to real time control in robotics. The design and development of small to medium siaed
programs (8000 lines), written in the language Occam, can readily be cli¥i8e€l for applicatioES requiring real time
operation.

References
[1] Zadeh, L. A.
Outline of a New Approach to the Analysis of Comp-lex Systems and Decision Processes.
IEEE. S M C , January 1973, 3(1), 28-34.
p ! Daley, S. and Gill, K. F.
Attitude control of a spacecraft udng an extended self-organising fuizy logiccontroller.
Proc. Int. Eng., 1987, 20(12), 97-106.
p ] INMOS htd.
The Transputer Developement System.
Prentice-IIall, 1988,

[4j Poutaiii, D. and May, D.


A Tutorial Introduction to Occam Programming.
BSP Profeasional Books, 1987,
PI Mitsubishi Electrical Coorpoiation 1980.
Move Master II: The EM-501 Model Industrial Handbook,
[6| Sension l t d .
Sension Transputer Products: The TDS Delivery Manual.
November, 1988.
This page intentionally blank
[7] Sension Ltd.
Sension TVansputer Products: The GBUS96 Delivery Manual.
Issue C, February 1989.
[8] Mamdani, E. H.
Applications of fuzzy algorithms for the control of a dynamic plant.
Proc. lEE., 1974, 121(12), 1585-158S.

[9] Procyk, T. J. and Mamdani, E. H.


A Linguistic Self-Organising Process Controller.
Automatica, 1985, 15, 15-30.

[10] Andersen T. R. and Nielsen, S. B.


An efficient Single Output Fuzzy Control Algorithm for Adaptive Applications.
Automatica, 1985, 21(5), 539-549.
[11] Bennett, S.
An Real Time Computer Control: An Introduction.
Prentice-Hatl International (UK) Ltd, 1988.
[12] Kaufman, S. and Gupta, M. M.
Fuzzy Mathematical Methods in Engineering and Management Science.
North-Holland, 1991.
[13] Lee, C. C.
Fuzzy Logic in Control Systems.
IEEE. SMC, 1990, 20(2), 404-431.
[14] Fu, K. S., Gonzalez, R. C. and Lee, C. S. G.
Robotics; Control, Sensing, Vision and Intelligence.
McGraw-Hill International Industrial Engineering Series, 1988.
[15] Raven, F. H.
Automatic Control Engineering.
McGraw-Hill Mechanical Engineering Series, Fourth Edition, 1987.
[16] Electro-Craft Ltd.
DC Motors, Speed Controls, Servo Systems
5th Edition 1980.

[17] Moroney, P.
Issues in the Implementation of Digital Feedback Compensation.
The MIT Press, 1983.
[18] Henderson, M. I.
Use of Parallel Processing in the Fuzzy Logic Control of a Robot.
Doctoral Thesis, May 1993.
The University of Leeds, England.
C H A P T E R 17

FUZZY CONTROL OF ROBOTIC MANIPULATORS


AND MECHANICAL SYSTEMS

R. Gorez and M. De Neyer

Centre for Systems Engineering and Applied Mechanics


University of Louvain, Bdlg Euler, Av. G. Lemaitre, 4-6
B-1348 Louvain-La-Neuve, Belgium

1 Introduction
The Robotic Institute of America (R.I.A.) gives the following definition of robots:
" A robot is a reprogrammable multifunctional manipulator designed to move ma-
terial, parts , tools or specialized devices through variable programmed motions for
the performance of a variety of tasks" [55]. Based on this definition it is apparent
that a robot must be able to operate automatically. This implies that in most of the
robots it is possible to distinguish the following major subsystems: a manipulator
(mechanical unit which can be compared to the skeleton of living beings), sensors
and actuators (sensory organs and muscles of living beings), a controller (the brain),
appropriate power supplies, and very often a computer system which takes care of
the monitoring and control functions relative to the robot operation and which al-
lows exchange of d a t a between the robot and human operators a n d / o r other parts
of the manufacturing process in which the robot is performing some specified tasks.
T h e motions of the manipulator must be controlled and the control system obeys
the same basic principles as for control of motions of any mechanical system from
simple servomecbanisms up to complex machines or vehicles. It implies that positions
and velocities or displacements of the various parts of the mechanical system must be
monitored and that related data must be transinitted to the control system. Then the
latter is able to determine the driving forces a n d / o r torques which must be applied
to the mechanical system in order to force the actual positions and displacements to
track the desired ones.

T h e next section of this chapter is dedicated to the dynamics and control of robotic
manipulators as they are relatively complex mechanical systems. Then the basic
principles of control of motions in mechanical systems are reviewed in the following
section. T h e two major classes of conventional position controllers are introduced in
a unifying presentation. This presentation aims at introducing fuzzy control in the
following section, fuzzy control appearing then as a natural extension of multilevel
discontinuous control. T h e advantages of simplicity and reliability of discontinuous

' T h i s paper present.s research results of the Belgian Programme on Interuniversity Poles of At-
traction initiated by the Belgian State, Prime Minister's Office, Science Policy Programming. The
scientific responsibility rests with its authors.
451
S.G. Tzafestas and A.N. Venetsanopoulos (eds.j
Fuzzy Reasoning in Information, Decision and Control Systems, 451-491.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
452

control are retained by fnzzy control, but not its main drawback which is contin-
uous cycling between different types of operation. Therefore fuzzy control can be
viewed as an intermediate class between discontinuous and linear control systems,
resulting in an acceptable compromise between advantages and drawbacks of both.
Positions and velocities or displacements are the usual state variables defining the
state of a mechanical system. Control laws based on measurements or estimates of
those variables allow some changes in the dynamics of the system, in particular the
stabilization of unstable or neutrally stable systems, and give them the capability
of reproducing desired motions with an accuracy which depends on the gains of the
control system. However in such control systems static errors due to steady-state
loading forces cannot be avoided. T h e only way to cope with such disturbances and
reject their effect on the system is the introduction of a reset action in the control
system. This can be achieved through parallel controllers using control laws basetl
on triples instead of pairs of data. However it may result in some deterioration of the
dynamic performances and lead to more difficulties in the design of fuzzy controllers.
Self-organizing controllers are a possible solution to the latter problem. Nevertheless
there is another way since an indirect reset action can be introduced via model-based
control schemes. These allow a neat separation of the two basic tasks of the control
system: following the desired trajectory (tracking) on one hand and reducing the
effect of disturbances (regulation or disturbance rejection) on the other hand. Such
control schemes consist of two control loops, one of them including a basic position-f-
velocity controller and the other one a model of the system. The basic controller
a n d / o r the model can be implemented as numerical or fuzzy systems as it is shown
in the fourth section of this chapter.

Position or displacement control is not the only type of control which may be re-
quired in the performance of robotic tasks. In some of them one has to control
contact forces between the robot-end-effector and the robot environment. Often the
complete control system of a robotic manipulator is hybrid in the sense that displace-
ments are controlled directly along some directions in the robot workspace and forces
along others. Then force control is generally implemented as an external control loop
around usual displacement control loops. Here again use of fuzzy logic is possible.

Other applications of fuzzy logic in robotics are also mentioned or presented briefly
in this chapter, and some paths for future developments of fuzzy control of roliotic
manipidators and more generally of mechanical systems are evoked in the concluding
section.

2 Dynamics and control of robotic manipulators


2.1 Dynamics of a robotic manipulator
A robotic manipulator is a relatively complex mechanical system with a joint-link
structure. Basically there is a serial collection of mechanical linkages connected by
joints to form an open-loop kinematic chain. The first structural part of the chain is
the robot arm; it aims at moving the robot-end-effector through the robot work space
and includes the major joint-link pairs, these being generally located closest to the
robot base and also the most robust from a mechanical viewpoint. A second part of
the chain is the wrist which includes the minor linkages and must give the end-effector
453

fine positioning and the desired orientation. Joints may be revolute joints producing
pure rotary or rotational motions or they may be prismatic joints allowing linear or
translational relative displacements. Each joint defines a robot axis around or along
which there is a relative rotation or translation of the subsequent linkage of the chain
with respect to the antecedent one. These axes are usually but improperly called
degrees of freedom (DOFs) by engineers. Most of the manipulators fall into one of
the following classes; Cartesian, cylindrical, spherical or jointed devices, according
to the coordinate system which is appropriate for describing the configuration of the
major axes. Fig. 1 shows a six-DOF jointed-arm manipulator. Very often indeed the
number of DOFs is five or six, three for positioning and two or three for orientation
depending on the tasks the robot is designed for. However the number of DOFs
may be as small as four or even two in a few robots; on the contrary it is larger in
others which have redundant axes giving the manipulator more flexibility in adapting
its own configuration to a particular task. Besides in some applications the base of
the robot is carried by a vehicle allowing large linear displacements in at least one
direction.

Figure 1: P u m a 760C manipulator


(Reproduced by permission of Staubli Unimation)

T h e motion of the robot-end-effector is obtained through coordinated simultaneous


displacements along the various robot axes. Then the kinematics of the complete
454
chain and the dynamics of all the manipulator axes must be taken into account.
Each link is driven by a joint actuator and has mass and inertia associated with
it, the inertia depending on the configuration of the subsequent Hnks. There are
also frictional forces in the joint and forces due to the gravity may act upon the link.
Besides when several linkages are moving simultaneously their motions are interacting
due to Coriolis and centrifugal forces which are exerted on bodies moving with respect
to a moving reference frame. All these forces are nonlinear in nature and the dynamics
of the complete link chain is complex. However a dynamical model is desirable for
the design of the robot control system. Equations of motion of the manipulator can
be obtained via a Lagrangian or a Newton-Euler formulation [55, 79]. T h e second
formulation has been found to be superior for fast calculations, either for computer
simulation or for real-time dynamics computation in some control systems. However
Lagrange's equations are in a simple form allowing the analysis of the effects of various
parameters on the motion. For this reason it has been a standard approach over
the past twenty years [55, 76, 79]. T h e Lagrangian formulation utilizes generalized
coordinates and forces; typically, if the links can be assumed to be rigid bodies and
if spring effects in the joints can be neglected, generalized coordinates and forces
are respectively the relative displacements in the joints and the forces or torques
associated to the manipulator axes:

Mi^l) • q = ~9i(l) - /(</) - Ciq, q)-q-T, + T,„ (1)

• q is the n-vector of joint displacements, n being the number of robot axes,

• q and q are respectively the vectors of joint velocities and accelerations,

• T denotes a vector of generalized torques or forces, the subscripts m and /


referring to the driving and loading torques respectively,

• M{q) and C[q,q) are the inertia matrix of the manipulator and the matrix
relating centripetal and Coriolis forces to the generalized velocities,

• g{q) and /(</) represent gravitational and friction torques.


Taking into account flexibility of the links and compliance in the joints would increase
considerably the complexity and the order of the dynamical model of the manipula-
tor. T h e present days industrial robots have heavy structural elements (what results
in a relatively small load capacity compared to the robot own weight, on the contrary
of living beings). Moreover industrial robots are usually operated at relatively low
speeds so that flexibility and compliance effects can be neglected as well as Coriolis
and centripetal forces. Besides the structural elements of the link chain are often
statically and dynamically balanced so that in many robots gravitational forces can
be neglected and the inertia matrix of the manipulator is predominantly diagonal
with small variations of the moments of inertia. All these assumptions will simplify
the design of the robot control system. However it should be noted that nowadays
a lot of research and development efforts is performed in many universities and re-
search centers with view of producing light-weight robots operating at high speed.
In this case interactions between the robot axes as well as flexibility of the links and
compliance in the joints must be taken into account in the dynamical model of the
manipulator and in the design of the control system.
455

2.2 Control of a manipulator


Roughly speaking from a control viewpoint, it can be said that the tasks a robot has
to perform fall into two classes: position control and force control [55].

Position or trajectory control is used when the robot-end-effector must be moved


with or without load along a prescribed trajectory through the robot workspace. Ex-
amples of such tasks are spray painting, welding, parts handling, palettizing, . . . .
Only the endpoints of the motion are specified (point-to-point control) in many of
those applications, but often the user is allowed specifying also some intermediate
points a n d / o r the average velocity of the manipulator. In those applications the
trajectory connecting the specified points is free and the robot control system de-
termines itself a velocity program for each robot joint in order to satisfy the above
prescriptions. In many industrial robots the user can also prescribe the manipulator
to proceed from one point to the following one along a linear or a circular trajectory.
In other applications the desired trajectory of the end-effector is completely specified
beforehand and positions and velocities corresponding to a sequence of points along
the desired trajectory (up to several thousands) are stored in the computer memory
(continuous path control).
T h e control system of most industrial robots is simply a collection of joint controllers
each of which is dedicated to a single joint and drives it individually (Fig. 2). T h e
reference signals for these controllers are supplied by a joint-trajectory generator de-
termining the desired joint trajectory from the desired trajectory of the end-effector.
Oenerally the joint controller is a feedback controller having two terms respectively
proportional to position and velocity errors and introducing proportional and deriva-
tive actions (P-D control) or it is a three term feedback controller with proportional,
derivative and integral actions (P-I-D control). Besides the controller may include
a feedforward term corresponding to the desired acceleration and a feedforward or
feedback compensation of the major disturbing torques, in particular those due to
gravity. In some cases compensations of the variations of the moment of inertia are
also introduced in the controller gain with a view of achieving dynamic performances
independent of the robot position and configuration. Other control systems includ-
ing linear quadratic optimal controllers, adaptive controllers, disturbance observers,
variable structure control s y s t e m s , . . . are proposed in the literature; see e.g. [94, 105].

In all the previous applications it was assumed that neither the end-effector nor
any other moving part of the manipulator comes in contact with any object in the
robot environment. Then the implementation of the control system need only joint
position and velocity measurements and some knowledge of a dynamical model of
the manipulator. Other tasks such as assembly, deburring, polishing, cooperative
work with other robots, . . . require the control of the position and also of some forces
exerted by the end-effector upon an object. This can be achieved via two different
schemes: impedance control and hybrid control. Impedance control aims at adjusting
the mechanical impedance relating the end-effector displacement to the forces due to
contact with the environment of the robot. Impedance control may be passive or
active. In the first case a kind of elastic suspension including springs and dampers is
inserted in the connection between the robot-end-effector and the manipulator wrist.
In active impedance control the feedback controller utilizes measurements of posi-
tion and velocity of the end-effector with respect to the object and measurements of
the contact forces between them. A noteworthy difference between position and force
456

desired trajectories
driving torques positions and velocitie;
for
of of
joint 1
Controller joint 1 joint
for joint 1

joint 2
Desired C'ontroller joint 2 joint 2
joint trajectory for joint 2 Robot
generator

joi it n
Controller joint n joint n
for joint n

Sensors
for joint n

Sensors
for joint 2

Sensors
for joint 1

Figure 2: Control system of a n - D O F industrial robot

control is t h a t position control in general should be very accurate while force control
may be looser; usually all that is required is that the actual contact force or torque
lies within a given range. Then qualitative control and fuzzy concepts appear to be
very natural in that field. Hybrid control includes feedback loops providing separate
control of displacements along some directions and forces in others. It should be noted
that many of the previous control systems require measurements in the workspace and
actuation of the joints; this implies a lot of on-line calculations for transformations
from the workspace into the space of joint coordinates and vice-versa. Then some
implementations of the control system are two-stage structures including inner loops
for joint-position control and outer loops for force, impedance or hybrid control in the
robot workspace. For this reason joint position control is the main topics which will
be considered in the followings. Thanks to the simplifying assumptions explained
in the previous section it is generally sufficient to consider separately each joint,
by regarding changes in the manipulator dynamics, joint interactions, friction and
gravitational forces and possible loading forces, as external disturbances the position
controller of the considered joint has to cope with.
457

3 Control of mechanical systems


With the above assumptions the model relating the applied torques or forces to
the position of a one-DOF mechanical system is a double integrator (Fig. 3). The
controllers which are the most frequently used for position control of such a system
are two- or three-term linear controllers and discontinuous controllers.
External Disturbances

\, Interna 1
>' Disturbances
.
Tl
\ , <? r (1
) ' M J J

Figure 3: Model of a one-DOF mechanical system

3.1 Linear control


As it can be found in most textbooks on control engineering, see e.g. [19, 74], the
basic linear controller for position control of a simple mechanical system is a P-D
controller with two terms respectively proportional to position and velocity errors
(Fig. 4). Then the state equations of the controlled system are:

dq
Tt = '
M.- = r„.-r^ (•2)

and the input-output relationships of the controller are:

e-v = (Id- q (3)


Tjj^ — •'"•p * ^ P f Ji-t/

where q and q are position and velocity, subscript d refering to the desired position
and velocity, Cp and e„ are respectively the position and velocity errors, A'p and A'„
the corresponding controller gains, T„^ and r; are the driving and loading torques
respectively and M denotes either the mass or the moment of inertia of the system.
T h e closed-loop system can be described by the following second-order differential
equation relating the position error e to the desired acceleration and the loading
torque:
M • E + K^ • e + Kp • e = M • qi + Ti (4)
458

External Disturbances

(Id +

Figure 4: PD control of a mechanical system

Setting this equation in the standard form of a second-order linear differential equa-
tion:
e -I- 2Cw„ • e 4- uj^ ' '^'' ^ 'i'l + ^ "^i (5)

it is well known that the complementary solution [74] of this differential equation is
a linear combination of two independent functions;

• exp{(-C + y e ^ n " ) a ; „ < } and e x p { ( - C - v T ^ " ^ T ) a;„<}


in the overdamped case (( > 1),
• exp{—Cu;„<} • cos{w„(} and exp{—C'^,,^} • sin{a;„<}
in the underdamped case (C < 1),
• exp{—Cw,ii} and t • exp{~(uj,it}
in the critically damped case (C =

It appears that u;,i determines the response time of the closed-loop system
K
and C = is related to the aperiodic or oscillatory feature of the transients
2Miu„
and to their decay ratio. As indicated by these relationships the characteristics of
the dynamics of the closed-loop system can be adjusted independently by a proper
choice of the values of the proportional and derivative gains Kp and / \ „ . It is also
obvious from Eq. 4 t h a t the steady-state error due to a static loading torque is in-
versely proportional to the servo stiffness A'p.

Then the accuracy of the position control system is directly related to the servo
stiffness A'p. ffowever it can be improved by adding in the control action an estimate
•f( of the loading torque a n d / o r a feedforward term M -qri corresponding to the desired
motion {M is an estimate of the inertia of the controlled system). On the contrary
the dynamic error could be higher if the derivative term in the control action contains
only a velocity feedback — A'„(j instead of the velocity error A'„ • e„.
459

Another way towards the rejection of disturbances, more precisely towards the reduc-
tion of errors due to slowly varying disturbances, is the introduction of an integral
action in the controller:

T,n = Kp • Bp + Ky • e„ + I<i- Cp dt (6)

This additional action results in a cancellation of the position error in steady-state;


for this reason it is called the reset term in many textbooks on control engineering,
see e.g. [74]. It should be noted however that the closed-loop system is now a third-
order system, which may lead to a possible deterioration of the transient dynamics
and to some risks of instability. Nevertheless these problems can be passed around
by decoupling the tracking and regulation dynamics through a model-based control
scheme as explained further.

3.2 Discontinuous control


Another controller which can be used in some applications of position control is a
discontinuous controller with only two or three possible values of the manipulated
variable. T h e first controller of that type is the on-off or two-position controller where
the control action can take only two values depending on whether the input signal
of the controller is positive or negative. In position control of mechanical systems
these values are -\-TM and —TM, TM being the maximum value of the driving torque,
and the input signal is given by a so-called switching function 5 the arguments of
which are the position error and either the velocity error or the actual velocity. Then
the binary control law can be expressed by the following very simple mathematical
relationship:
Tm = TM • signjs} (7)
where sign{.} denotes the sign-function:

signjus} = -f 1 if .s > 0
signjs} = - 1 if s < 0 (8)

It can be seen on Fig. 5 and 6 that the phase plane (e, e) is divided by the switching
line s — (] in two parts inside each of which the driving torque is constant. Neglecting
the loading torque and other inhomogeneous terms such as the desired acceleration
the equation of the closed-loop system can be written down as follows:

• de de 1 . r i /„x

and clearly it has the solution:

M
e+ • e^ • signj^s} = constant (10)

In other words, due to the fact that a constant driving torque is always applied either
in a positive or in a negative sense, the controlled system is bound to be driven back
and forth in a cyclic manner, the trajectory in the phase plane of the closed-loop
system being a sequence of alternating arcs of parabola.
460

0.5-

-0.5

-1.5

Figure 5: Discontinuous control


(switching function is optimal for M — I)

0.5 -

-0.5-

Figure 6: Discontinuous control (linear switching)

T h e best behaviour t h a t can be achieved is the so-called bang-bang control where


461

the trajectory corresponding to simple cases such as free response or step response is
composed of two arcs only, the first one starting from the initial point in the phase
plane and the second one passing through the origin of the phase plane. This would
be the minimum time response for any driving torque bounded to take its values
in the interval {—TM,+TM), as shown in [74]. Then the switching line in the phase
plane must be made of the two arcs of parabola passing through the origin of the
phase plane (Fig. 5), and the switching function can be represented by any of the two
following expressions:

s = e + ~—-e-lel or .s = \ / - r ^ • |e| • signjfi} + e (11)


J,TM V ^
However it is clear that this bang-bang control is very sensitive to model mismatches
such as a wrong estimate of the system inertia, friction or spring forces, . . . For in-
stance, if the inertia is underestimated (M < M) there will be overshoots, the tran-
sient vanishing in an oscillatory manner, on the contrary, if the inertia is overestimated
( M > M) the system will be driven back and forth across the switching line and it
will be sliding towards the origin along this line. This is called a sliding mode and in
fact it can be viewed as an equivalent or averaged behaviour on which is superposed
an oscillation called chattering [74]. For these reasons it is often preferred to force
the system towards the origin of the phase plane in a sliding mode motion by means
of a simpler switching function which is a pure linear combination of the position and
velocity errors (Fig. 6):
s = LO • e + e (12)

Remark that this control mode could also be presented as a limit case of a P-U con-
trol system: r„i = A'„ • (a; • e -|- e), where the gain A',, is increased to infinity but
the controller output is bound to stay in the interval {—TM^+Tm). When Ky goes to
infinity the transients of the closed-loop linear system are combinations of two ex-
ponential modes: one of them vanishes infinitely fast and the other one corresponds
to a time-constant approaching oj~^. In practice however due to the bounds on the
control variable the first part of the transient is a parabolic trajectory in the phase-
plane. This is what really occurs in discontinuous control: at first the system is forced
towards the sliding mode motion and the latter corresponds to an exponential decay
characterized by a time-constant w " ' .

Anyway the motion will ultiinately reach the origin of the phase plane, but then,
if the controller is not switched off, in other words if the driving torque can only take
the two values —TM and +TM, there will be a limit cycle, that is an oscillation around
the origin of the phase-plane. Theoretically both this limit-cycle and the possible
chattering motion are oscillations with infinitely high frequency and infinitely small
amplitudes. In practice, due to unmodeled dynamics such as small time-constants,
dead-times, .. . these oscillations will have finite amplitudes and frequencies. In par-
ticular, in case of sampled-data systems the minimum period of the limit-cycle is twice
the sampling interval. Such oscillations may be acceptable in other applications of
ou-off controllers such as residential beating-cooling systems. In position control of
mechanical systems they are generally not acceptable because of problems such as
p r e m a t u r e wear of some parts of the system, excitation of undesirable vibrations, . . .
A remedy for such a behaviour could be the use of a three-position controller with
462

between the two above "on" positions, a neutral or dead zone where the driving
torque is set to zero:

Tm = 0 for l^l < e , ,


T,n - TM-sign{5) for |-s| > e ^ ''

This may eHminate the limit-cycle, in general it does not avoid sliding motions the
sliding line s = 0 being now replaced by two parallel lines s = +t and s = —f. In
order to eliminate chattering superposed to these sliding motions it is necessary to
smooth the transitions from 0 to +rM or —TM'-, this can be achieved by replacing the
sign-function in the control law by a sat-function:

Tm = TM • sat
0 ;i4)

where:
= -1 if .s < —f
.s .s
iat{-} = - if \s\ < e :i5)
( f
= +1 if s > e

but this is nothing else than coming back to a linear control with bounds on the
magnitude of the controller output.

It should be noted t h a t the above two- or three-position controller is in fact a kind of


logical controller: the range of the input variables is divided in two or three classes
and the controller o u t p u t is assigned a given value depending on the class the in-
put variable belongs to. Such a partition of the input range can be expressed in
qualitative terms, for instance:

5 < —f <^ switching variable is negative big


< e "^ switching variable is very small
1,s^1 > e •^ switching variable is positive big

In the same way the values of the controller output can be indicated by qualitative
labels and assignment of these values can be expressed by literal "If... t h e n . . . e l s e . . . "
statements, such as:

/ / the switching variable is very small, then apply no driving torque.


If the switching variable is positive, then apply constant positive driving torque.
If the switching variable is negative, then apply constant negative driving torqw.

Then the control law is expressed in a pure verbal formulation consisting of a set of
conditional statements. This set is nothing else than a rule base. In other words the
previous discontinuous or logical controller can be viewed as an elementary qualita-
tive controller and it is a first step towards a pure qualitative control system with
arbitrary numbers of classes in the universes of discourse of the input and output
variables and a proper number of rules in the controller rule base. Pure qualitative
control has a major drawback: due to the abrupt transitions between adjacent classes
of the controller inputs there are discontinuities in the controller output whatever the
number of classes in the universe of discourse may be; this may induce sliding mo-
tions and chattering of the controlled system. For instance, if .s is still the single
463

input variable of the controller and there are A' classes in its universe of discourse
the only change with respect to the two- or three-position controller considered above
would be that there are now N — 1 parallel shding lines in the phase plane (e, e). In
order to eliminate chattering it is therefore necessary to smooth transitions between
adjacent classes in the universes of discourse of the input variables. In quantitative
control systems this can be achieved by relating the controller output to the inputs by
suitable continuous mathematical relationships, which can be linear or not. Such a
smoothing can be obtained in a way which may seem more appealing and closer to the
human way of thinking by introducing fuzzy logic in the interfaces between the rule-
based logical controller and the real world. Then it could be said that fuzzy control
is an intermediate stage between simple logical control and more complex continuous
control, trying to achieve a trade-ofF between the advantages and drawbacks of these
two kinds of control systems: simplicity, robustness, ease of maintenance and low
cost are nice features of logical control, but chattering is undesirable in many tech-
nical or industrial applications; at the opposite continuous control is more complex,
more sensitive to disturbances and to perturbations in the controlled system, more
expensive and requiring more skilled technicians for operation and maintenance, but
it results in a smooth dynamical behavior of the plant.

4 Fuzzy control of robotic manipulators


Fuzzy logic and fuzzy set theory were introduced by L. Zadeh in the sixties [106].
Less than ten years later applications of these concepts to the control of industrial
processes were proposed based on the following arguments:
• fuzzy control makes use of qualitative reasoning, thereafter it is able of repro-
ducing the behaviour of a human operator a n d / o r using his expertise, without
the limitations of the human behaviour;

• fuzzy control requires only a qualitative understanding of the static and dy-
namic characteristics of the plant to be controlled, using imprecise, vague and
possibly ambiguous linguistic representations of the real world; this allows the
implementation of a control system without the need of an explicit m a t h e m a t -
ical model of the plant;

• fuzziness in the control system gives it some capability of coping with external
disturbances a n d / o r internal perturbations, as well as with uncertainties or
variations over time of the plant parameters.

T h e pioneering work by Mamdani, van Nauta-Lemke, Zadeh and co-workers in this


area is well known [52, 54, 68, 107]. The applications that they considered are mainly
stable dynamical plants, such as heat exchangers, engines, cement kilns, water and
waste t r e a t m e n t plants, . . . However very soon some authors also investigated the
application of fuzzy logic to the control of motions of mechanical systems, although
often those are by nature unstable or at least neutrally stable. One of the very first
published works in this field is probably the paper by Van Amerongen and co-workers
dealing with the design of a fuzzy autopilot for ships [98]. However after this paper it
took several years before the publication of other results on the application of fuzzy
logic to the control of mechanical systems. The next papers were published in the
middle of the eighties and were the premises of an explosion of publications dealing
464

with applications of fuzzy logic in robotics. Those papers can be classed in several
categories:

• position control of robotic manipulators and more generally of servo systems;


see e.g. [37, 58, 63, 65, 72, 77, 83, 94, 99]; in the same area some other papers
deal with self-organizing controllers [56, 69, 84, 88, 93];

• force or impedance or hybrid force-position control of robotic manipulators;


in some cases there is a two-level hierarchical structure where fuzzy logic is
exploited only in a high level of coordination [14, 20, 34, 38, 47, 85, 96, 103];

• control of motions of unmanned vehicles and mobile robots, see e.g. [4, 7, 16,
26, 35, 40, 42, 44, 48, 57, 9 1 , 90, 95];

• path generation for robots, including coordinate transformations and teleop-


eration of manipulators, and operation planning in automated manufacturing
systems [1, 6, 18, 46, 73, 87, 97, 108];

• use of fuzzy logic in knowledge-based control systems for robotic applications


and in modeling a n d / o r monitoring of robotic systems [13, 18, 23. 25. 43, 59,
64, 87, 108];

• use of fuzzy logic in vision systems and other sensory devices for robotic appli-
cations; see e.g. [17, 39, 62].

In the foUowings only the application of fuzzy logic to the control of servo systems
and robotic manipulators will be considered, with the emphasis on position control
of a one-DOF servo system. As said in previous sections, the control system of a
multi-link manipulator is a collection of joint controllers each of which is dedicated
to a single joint and drives it individually.

4.1 Position control of mechanical systems


There is a major difference between the application of fuzzy logic to the control of
stable industrial processes and to position control of mechanical systems, because in
general the latter are unstable or neutrally stable. In the first case, when a single out-
put of the plant must be controlled, the fuzzy control system can often be compared
either to a proportional controller (P) or to an incremental or integral controller (I)
or to an incremental P-1 controller. In P-control or in I-control the single input of
the controller is the error signal that is the difference between the desired and ac-
tual values of the controlled variable, and the controller determines the value of the
control variable (P-control) or of an increment of the latter (I-control) according to
the current value of this error signal. If the controlled plant is stable both P-control
and I-control are allowable, if it is only neutrally stable, in other words if there is a
pure integrating process in the plant, I-control would generally lead to an unstable
loop. In P-I incremental control the controller determines the control increment on
the basis of the current value of the error and also of the error change or the change
of the controlled variable, that is the change of the current value with respect to the
past value of the signal which is considered. So there are two inputs to the rule base
which is the core of the fuzzy controller, one of them stabilizing the closed-loo]) if the
465

controlled process is neutrally stable and the other one providing rejection of distur-
bances and reset of the controlled variable in steady-state. Then, with a P-controlJer
or a P I incremental controller if the controlled plant is neutrally stable, with any
of the three controllers if it is stable, the closed-loop system is stable as long as the
control action is not too strong, in other words as long as the gain of the equivalent
"linear" controller is not too high.

The situation is quite different in the position control of most mechanical systems.
If there is no viscous friction providing some damping in the controlled system the
model of a one-DOF mechanical system is usually a double integrator. Then, as it
can he seen by relationships (4) and (5), in order to stabilize the closed-loop and give
it appropriate damping, the control law must include a term related to the velocity
error or to the actual velocity, both in linear and in discontinuous control systems.
This is the same for a fuzzy control system. The simplest fuzzy controller for po-
sition control of a mechanical system has two inputs, the first one being naturally
the position error and the second one being a velocity signal in order to stabilize
the closed-loop: either the actual velocity of the mechanical system or the velocity
error or the change in the controlled position or the change in the position error. If
the torque or force driving the mechanical system is proportional to the output of
the controller the latter can be compared either to a linear P-D controller or to a
P-D discontinuous controller. Then assuming no spring force and no external loading
force such a control system has no steady-state position error in its normal operating
range. However such a control system is unable to cope with disturbances, so that
there will a position error due to static loading. The only way to achieve disturbance
rejection is the inclusion of an integral action in the control system. This can be
obtained via a three-input controller which can be compared to a linear P-I-D con-
troller. Now three terms are necessary in the control system: the first of them is the
natural control action, the second one is required for stabilizing the control loop and
the third one aims at rejecting disturbances. However, when it is relatively simple
to design a two-input rule base or the equivalent decision table, by establishing some
correspondence between the decision table and the phase plane of the control sys-
tem, this becoines more difficult with a three-input rule base. There are some recent
results concerning that approach, they are reported in a following section. Another
way is the use of a model-based control structure which allows a neat separation of
the tracking and disturbance rejection functions of the control system [32, 28].

4.2 Two-term fuzzy control


The control loop of a one-DOF mechanical system the position of which is controlled
by a two-term fuzzy controller can be represented by the block-diagram of Fig. 7. T h e
control system consists of three parts. The core of the control system is the fuzzy
controller itself, that is in this application a two-input-single-output controller which
is processing two fuzzy input variables using a rule base and an inference engine.
Then, on one side there is a fuzzyfier or Real-to-Fuzzy Interface (RFI) for interpret-
ing d a t a from the real world in the universes of discourses of the fuzzy variables, and
on the other side there is a defuzzyfier or Fuzzy-to-Real Interface (FRI) converting
the fuzzy controller output into a real control variable. As the controller itself utilizes
a rule base and an inference engine it can oidy process discrete-time data. Then the
fuzzyfier must include a scaler for mapping the range(s) of the real inpTit variable(s)
466

External Disturbances

Rule
base

nference [! ' 111


•- FRI —-<
engine +
E„ E„
RFI RFI

Kp K,

(Id
<>

Figure 7: Fuzzy control of a one-DOF mechanical system

onto the universe(s) of discourse of the fuzzy variable(s), a sampler for sampling
data, and possibly also analog to digital converter(s). T h e sequence of these opera-
tions depends on the actual implementation of the interface. On the other side the
defuzzyfier contains a sample-and-hold device, in general together with a digital to
analog converter, and a scaler or amplifier for mapping the universe of discourse of
th<^ fuzzy controller output into the range of the real control variable. In position
control one of the input variables is the position error, the other one is a velocity
signal which can be the actual velocity of the mechanical system or the velocity error
or the change in the controlled position or the change in the position error. In the
two latter cases the position or error change must be computed in the input inter-
face of the control system. In the two first cases velocity measurement is required
in addition to position measurement; moreover the use of the velocity error requires
the knowledge of the desired velocity, which is the case for robotic manipulators and
some other servo systems where the desired trajectory is programmed in advance and
ilesired positions and velocities can be stored in the computer memory.

In some papers on fuzzy control of servo systems the universe of discourse of each
fuzzy variable may be divided in up to thirteen different classes, in most works this
number is limited to seven classes. Sometimes those classes are defined by numbers,
but usually the following linguistic labels are assigned to them:
467

Zero (ZE) or Around zero (AZ)


Negative small (NS) Positive small (PS)
Negative medium (NM) Positive medium (PM)
Negative big (NB) Positive big (PB)

For simplicity most authors use for the various fuzzy sets membership functions
having trapezoidal or very often triangular shapes. However it should be noted that
in some works on autonomous drive a n d / o r parking of vehicles the number of fuzzy
sets may be different and the shape of the membership functions may be tailored to
the type of variable, being different for acceleration, speed and position [50]. Often it
is desired to have a fine control for small position errors while control can be coarse
for big errors. Some authors deliberately use two different decision tables for that
purpose [63]. In many cases it is sufficient to introduce a nonlinear mapping of the
range of the real variable onto the universe of discourse of the corresponding fuzzy
variable. This can be achieved by means of a piecewise linear function or a sigmoidal
function like atan (.). Another way to obtain the same effect is the use of asymmetric
triangular membership functions like in Fig. 8 [29].

NB NM NSAZPS PM PB

Universe of discourse

Figure 8: Asymmetric triangular membership functions

In a two-input fuzzy control system the control strategy consists of a set of rules or
qualitative statements which can be expressed by linguistic or verbal expressions such
as:

If input N"! is Ej and input N°2 is E2 then apply U control

where Ei , E2 and U are linguistic expressions of fuzzy values or labels of fuzzy


sets assigned to the input and output variables of the controller. For instance for a
position-velocity controller :

If position error is positive big and velocity error is negative small


then apply positive medium driving torque

If there are rn fuzzy sets for the first input and n for the second one the number of
such rules may go up to rn * n. For a two-term position controller with seven sets
for position and as many for velocity this gives 49 rules. T h e most concise way of
representing that rule base is a decision table like Table 1, where there are two entries
corresponding to the two input variables of the controller.If one thinks of that table
as a qualitative partition of the (e, e) phase-plane of the control loop one sees clearly
t h a t there are five "parallel" switching lines in that plane. This analogy between
fuzzy logic and multilevel relay control had been pointed by [92]. This set of rules
468

may not give the closed-loop system the best transient performances. The responses
in the neighbourhood of the setpoint can be improved by changing some control rules
or as in [63] by the use of two lookup tables, one for coarse control the other one for
fine control, the controller switching from one lookup table to the other depending
whether the error is within given limits or not.

Table 1: Decision-Table of a Position-Velocity Fuzzy (,'ontroller

PB AZ PS PM PB PB PB PB
PM NS AZ PS PM PB PB PB
PS NM NS AZ PS PM PB PB
Velocity AZ NB NM NS AZ PS PM PB
Error NS NB NB NM NS AZ PS PM
NM NB NB NB NM NS AZ PS
MB NB NB NB NB NM NS AZ
NB NM NS AZ PS PM PB
Position Error

It is well known that, in fuzzy control on the contrary of pure qualitative control,
several control rules can be active at the same time with various degrees of fulfilment
and contribute to the final control action to the extent of the latter. So all the active
rules must be combined in an appropriate way to produce a resulting fuzzy control
action. T h e degree of fulfilment of a given rule is obtained as the minimum or the
product of the membership grades of the values of the two input variables which
are able to activate the rule. Then the membership function of each rule control
action is either clipped to a maximum value equal to its degree of fulfilment or it
is simply multiplied by the latter. T h e resulting rule contributions are combined
in a final fuzzy control action through the union or the sum of their membership
functions, and the control action is defuzzyfied in the defuzzyfication part of the
control system. Several defuzzyfication methods can be used, such as the ''nieau-
of-maxima" method, the "centre-of-gravity" method and the "fuzzy-mean" method.
Analysis and experiments [45, 61] show that the first method reduces the "fuzziness"
of the control system and may lead to steady-state errors a n d / o r oscillations (limit-
cycles). So this method is not suitable for fuzzy control. The second method is that
which preserves the best the fuzziness of the control system, but its usual continuous
form is not suitable in terms of computations for practical applications. The "fuzzy-
mean" method can be viewed as a discrete version of the "centre-of-gravity" method,
using discrete representations of the fuzzy sets at the output of the controller and
rej)lacing integrals by sums for determining the centre of gravity [45, 80]. Then the
defuzzyfied value of the control variable is given by:

u— (16)

where A^ is the number of tiiscretizatlon levels in the universe of discourse of the


controller o u t p u t , u^ is the real value of the controller output attached to the k~
level and 7^ is the value of the membership function of the controller output at Uk-
If the fuzzy sets at the controller output are crisp and the sum is used for combining
the rule contributions the sums in (16) have simply to be extended to all the active
469

rules (that have a non null degree of fulfilment), A' being now the number of active
rules and 7^,. the degree of fulfilment of an individual rule.

The role of defuzzification methods in fuzzy control is analyzed in [45]. For simplic-
ity and speed of calculations in position control one often chooses the "fuzzy-mean"
method with crisp o u t p u t fuzzy sets, summing for all the active rule their contribu-
tions weighted by their degrees of fulfilment and dividing the weighted sum by the
sum of the degrees of fulfiment. W h a t may be more important for the control system
performances is the distribution of the fuzzy values in the universes of discourses of
the inputs and the output of the fuzzy controller. Fig. 9 and 10 show the transient
responses of the control loop for various distributions of the universes of discourses,
which may be different for the inputs and the output of the controller. Fig. 8 is an
example of classes that are inequally distributed over the universe of discourse. It
can be seen that distributions corresponding to equivalent controller gains which are
higher for small errors than for bigger errors result in better performances. Then
fuzzy logic appears as a clever way of introducing nonlinearities in the control sys-
tem in view of better performances. At the opposite if the choice of the universes of
discourses for the inputs and the o u t p u t of the controller leads to a fuzzy controller
which is equivalent to a linear controller the performances of both are similar as it
can be seen from Fig. 9 and 10 . Other ways of introducing nonlinearities and so
some intelligence in the fuzzy control system were proposed bv several authors, see
e.g. [:?6].

4.3 Three-term fuzzy control


The previoTis theoretical analysis as well as results presented in Fig. 9 and 10 show
that position control systems using only d a t a on position and velocity, either with
conventional numerical processing or with fuzzy logic, have steady-stale errors when
the mechanical system undergoes a static loading. The rejection of this disturbance
implies an integral action be introduced in the control system, such that the latter
combines three actions, one of them being the natural control action, the second one
for stabilizing the control loop and the third one for disturbance rejection. Several
implementations of three-term controllers were proposed in the literature. In [58] six
different structures of linguistic P-I-D controllers were considered and applied to the
model of an industrial process. Authors concluded that for their application controller
structures represented at Fig. 11 lead to the best performances. Those structures add
up the defuzzified output of an usual P-D fuzzy controller and t h a t of an incremental
P-I or I fuzzy controller. Then only rule bases with two inputs or only one single
input are to be implemented and the gain of the output stage of the P-F or I controller
could be viewed as an additional parameter which can be selected by the designer
of the control system. Trial and error procedures or fuzzy translation of the gains
obtained by conventional techniques for linear P-I-D controllers are allowable, for in-
stance starting with a P-D controller which gives satisfactory transient performances
one could increase progressively the coefficient of the integral action. Application
of this work to the control of servo systems is obviously possible. In [86, 88] the
controller is an incremental three-term controller determining the increment of the
control action on the basis of three inputs: the position error e, the error change
c and the rate of chatige in error r. Then ndes with three inputs are required; [88]
470

Figure 9: Tracking responses (ramp-wise reference signal)

Figure 10: Responses to a constant disturbance

Input space Output space


1 inequally distributed classes equally distributed classes
2 inequally distributed classes inequally distributed classes
3 equally distributed classes equally distributed classes
4 discrete-time linear control
5 equally distributed classes inequally distributed classes
471

presents an application to the position control of a two-link manipulator, using an


individual three-term controller for each link; a priori setting of the control rules being
difficult, the latter are determined automatically inside a self-organizing controller.
e„ , , -J,
Fuzzy PD Cv Fuzzy PD ^
T -I-

^
Fuzzy PI Fuzzy I

Figure 11: Fuzzy PID controller structures (fuzzyfier and defuzzyfier are included in
the two blocks]

4.4 Self-organizing fuzzy controllers


A self-organizing fuzzy control system acquires its own control rules through expe-
rience. Such a control system is represented in Fig. 12; there are two hierarchical
layers: the basic layer is a fuzzy controller with two or three inputs, the other layer
is a learning module which generates a n d / o r modifies control rules in order to obtain
a predetermined control performance. Modification is achieved in two steps: first,
assessment of the control performance, second modification of the control strategy if
the performance is not satisfactory. Performance assessment is achieved by means
of a performance index which is a measure of the difference between the desired and
actual outputs of the controlled system. Performance assessment can be described
by linguistic rules similar to the rules of the fuzzy controller itself:

/ / error is E and change, of error is C then assign value P to the performance index .

A possible modification of control rules can be based on the assumption that the
current value of the performance index is mainly due to the controller o u t p u t n sam-
pling intervals in the past. If the performance index has value zero no modification
is needed. On the contrary a non null value of the performance index is a measure
of the correction which is required at the system output. Then the linguistic output
value of a control rule which was active n sampling intervals before is changed, the
new value being equal to tlie previous one plus the current value of the control index.
Such a self-organisation of the control rule base was used in two- and three-term fuzzy
controllers for position control of three-link manipulators [88, 93]. Moreover in [88] a
third layer was introduced in view of automatic self-tuning of the scaling coefficients
related to the three inputs of the fuzzy controller (Fig. 13). Self-tuning is based on
a small number of tuning rules relating increments of the input gains to variations
of some performance ratios (integral squared error, rise-time, % of overshoot). The
gains are updated through a cyclic procedure allowing successive refinements of each
performance ratio. However an initial guess motivating a stable control loop is nec-
essary to start the tuning procedure. The tuning rules may be defined by analogy
with Ziegler-Nichols rules for tuning P-l-D parameters [74] taking into account the
peculiarities of the present control structure.
472

R-^Q Estimate Learning


of PI Module

Rule
Modifier

Rule
base
Fuzzy
('ontroUer

Inference
Scaler RFI engine FRI Scaler —i

Basic control loop


sctpoint +
<> Process

Figure 12: Self-organizing fuzzy control system

- R - Q - —^ Estimate
of PI
Learning
Module

Rule
Modifier
Estimate of
Performances

' Tuning Module


Rule
Gain Tuner
base Fuzzy
("ontroller

Inference
S Cider RFI engine FRI • Scaler

Basic control looi )


setpoint +
K^
'CJ^
Figure 13: Self-tuning self-organizing fuzzy control system
473

Self-organizing controllers (SOC) give very good performances for a given task but they
may be not so good for other tasks which would very different from the task performed in
the learning phase. Moreover it is obvious that learning requires a lot of successive ex])eri-
ments and involves many calculations. Then the use of such controllers is the most efficient
when the manipulator has to repeat many times the same task, the latter l)eing known a
priori or not.

4.5 Force control of manipulators


Several schemes were proposed in the literature either for force control or for hybrid posi-
tion/force control or for the control of the mechanical impedance; see e.g. [12, 41, .51, 70, SI,
101]. The major difficulty in force control is that the stiffness or the mechanical impedance
which is related to contact forces arising during the manipulator operation is not known or
may change; as it may take very high values this leads to stabihty problems for high values
of the controller gain or , on the contrary if the controller gain has been set to a low value,
to poor dynamic performances resulting in sluggish motions [2, 101]. Because of those dif-
ficulties and due to the fact that force control should not be very accurate this problem
seems to be a good topic for application of fuzzy logic. Nevertheless it is only recently
that this problem has been considered on a fuzzy basis [14, 20, 34, 38, 47, 8.5, 96, 103]. In
[38] authors propose a hybrid position/force control using only the normal position control
loops of the manipulator and a wrist force/torque sensor. It means that the control system
has a cascade structure involving two hierarchical layers: the normal position control loo])s
as secondary loops at the lower level and at the higher level force control loops su])plying
corrections of the desired positions as it can be seen on Fig. 14. In this control scheme
S is a diagonal matrix and each diagonal element being equal to 1 or 0 si)eciiies which
degree of freedom in the robot workspace is under force control or position control. Desired
positions and displacements are specified and forces are measured in the workspace of the
robot. However the motion is obtained by actuation of the joints. Then in the force control
loops there must be coordinate transformations from the workspace into the space of joint
coordinates and vice-versa. Setting q the vector of joint coordinates and x the vector of
linear and angular coordinates in the workspace of the manipulator one has:

x^fiq) (17)

and for small displacements:


6x^J{q)-bq (18)

where Jiq) is the .Jacobian matrix ,/•' = —-^ . Then, a princijile of virtual works yields
dqj
the following equalities:
T'^ -Sq = F'^ -fix ^ F'^ •J{q)-6q (19)
which imply:
T = r{q) • F (20)
where r and F are the vector of torques and forces respectively on the joints and in the
workspace of the manipulator. Therefore the changes in the setpoints of the joint position
control loops are:
tq^ = J-\q) • (/ - S) • 8x^ -H A'-' • Tj (21)
where K = J^{q) • lix " •^(9)1 A'^ is a stiffness matrix in the workspace and TJ is the vector
containing the outputs of the force controllers. As it can be seen on Fig. 14 there are
474

several nonlinearities and time-varying gains in the force control loops, moreover there are
uncertainties in the stiffness matrix related to the contact forces between the robot and its
environment. Then in [38] authors use P-I controllers in the force control lines and they
introduce a fuzzy tuning of the gains of these P-I force controllers on the basis of the errors
and the error changes in the force control loops. This control scheme vifas tested through
simulation on a two-link manipulator in [38].

forces Robot
environment

contact forces
])ositions
setpoints Force -|- Position in
Joint Robot
in Control System ControDers workspace
workspace

joint positions -)- velocities

Adaptation
Mechanism

desired T/
PI
forces Controllers A'-

setpoints for
desired I - S joint position
positions J-
controllers

Force -t- Position C'ontrol System

Figure 14: Hybrid position/force control of manipulators

4.6 Flexible manipulators


As previously said present industrial robots are usually operated at relatively low speeds so
that the flexibility of the links and the compliance of the joints can generally be neglected
as well as interactions between the motions of the various links. This greatly simplifies
the design of the robot control system, which is a simple collection of joint controllers
each being dedicated to a single joint and driving it individually. It means that all the
effects mentioned above are considered as small disturbances and/or unmodeled dynamics
and that the control system is given a sufficient robustness versus all these disturbances
and perturbations. However there is a trend towards light-weight robots operating at high
speed. In such manipulators flexibiUty of the links and compliance in the joints can lead
475

to vibrations of the links. Then it is necessary to take into account flexibility of the links
and compliance in the joints as well as the interactions between different axes in the design
of the robot control system. Many papers on the control of manipulators with flexible
arms and the suppression of vibratory motions were pubUshed in the last years; see e.g.
[5, 15, 22, 66, 100, 104]. Again it is only recently that the use of fuzzy controllers has
been considered for that purpose. A study of fuzzy control of a flexible arm is reported in
[!)'i]. Authors use a two-term fuzzy controller for position control like in Fig. 15, but they
introduce a second two-term fuzzy controller for suppression of structural vibrations on the
basis of data supplied by a strain gauge fixed on the arm. Then the outputs of the position
controller and the vibration controller are combined in a fuzzy synthesizer which produces
a single control variable according to the following decision table (Table 2). Experimen-
tal results reported in [53] show that if the strain gauge location is carefully selected this
control scheme is very effective for suppressing the effect of the first vibration modes the
higher modes vanishing quickly thanks to the internal damping in the arm. It seems that
this fuzzy control system may be more robust than conventional optimal control when there
are some parameter changes in the controlled system.

Strain + ChaLUge
'
Vibration
Suppressor
Fuzzy •
Robot
Synthesizer
Position
Controller

Position -f Vel ocit Y

Figure 15: Fuzzy control of a flexible arm

Table 2: Decision-Table of a Fuzzy Synthesizer for Vibration Suppression

PB AZ PS PM PB PB PB PB
PM NS AZ PS PM PB PB PB
Vibration PS NM NS AZ PS PM PB PB
Controller AZ NB NM NS AZ PS PM PB
Output NS NB NB NM NS AZ PS PM
NM NB NB NB NM NS AZ PS
NB NB NB NB NB NM NS AZ
NB N M N S AZ P S P M PB
Position Controller Output
476

5 Separation of tracking dynamics and distur-


bance rejection problems
Fuzzy control loops have the same basic properties as conventional quantitative control
loops; in particular disturbance rejection in steady-state operation can be achieved if and
only if there is a reset action in the controller. If the plant to be controlled is stable it
is allowed to iinplenient discrete-time incremental controllers providing at each samphng
time an update of the actual control variable based on two inputs: an error signal and the
change of this error or that of the controlled variable. This is close to the way of reasoning
of a human operator; unfortunately this implies the presence of an accumulator or an in-
tegrator in the control line and for closed-loop stability the controller gain should be kept
relatively low and the sampling rate rather slow, which forbids fast closed-loop dynamics.
Faster dynamics can be achieved only with three term-controllers. Besides, if the controlled
system is open-loop unstable or even neutrally stable, which is the case of many mechanical
systems and specially of manipulators, three controller inputs are required, one of them
for stabilizing the control loop and giving it fast dynamics and another one for rejecting
the effect of disturbances. Then the complexity of the closed-loop is increased and it is
not so easy to achieve the desired dynamic performances. Moreover an appropriate a-priori
weighting of the three control actions in the ride-base of a fuzzy controller may be difficult.
However there is another way for solving this problem; it is the use of two control loops, one
of them for giving the complete system satisfactory dynamics and stabihty and the other
one for rejection of external disturbances and for possible enhanced robustness to internal
perturbations and unmodeled dynamics. This is the case in model-based control schemes
where there is a neat separation between the two functions: tracking and disturbance re-
jection of the control system [28].

Various analog or digital control systems based on a model of the controlled plant have
been proposed for process control applications since the fifties, see e.g.[3, 24]. Roughly
speaking a model-based control scheme is composed by three basic parts: the system that
unist be controlled, a controller or compensator driving this system and a model of the con-
trolled system, the difference between the outputs of the controlled system and its model
being used for correcting either the output or the setpoint of the previous controller or com-
pensator. Obviously the plant to be controlled cannot be altered, but the control systein
itself can be set up independently of the particular implementations of the controller and
the model of the process. Therefore as pointed in [29] either the controller or the model
or both of them can be implemented in the process computer using fuzzy and qualitative
control concepts. Hybrid implementation including fuzzy or qualitative implementation of
some parts of the control system and numerical or quantitative implementation of others is
also possible. Besides different sampling rates may be used in different parts of the control
system, for instance in the basic controller and in the model, which results in a multi-rate
control system.

The analogy of such a control scheme with the human behaviour is straightforward. It
can be reasonably thought that the control strategy of a human operator is based on a
qualitative understanding of the process that he has to control: in other words the oi)erator
would have in his mind a qualitative model of the process response, the latter being either
a static model (gain ) or even a dynamic model ( the process i.<; stable or not, it.s traii.sient
response is oscillatory or damped, the operator has a rough estimate of the ])rocess set-
tling time, . . . ) . Then a human operator would correct the manipulated control variable
according to the deviation of the actual process output from the output which had been
forecast by this internal model. Furthermore the basic control action taken by the operator
and the correction of this action can be performed at different time scales. Therefore the
477

introduction of fuzzy or qualitative models in control systems is a natural extension of the


use of fuzzy concepts in control.

There may be different model based control schemes, depending on the way the control
system uses the "return-difference" signal (difference between output signals of the actual
controlled process and its model; note that the output of the actual process is not neces-
sarily the controlled output variable, it can be an auxiliary output variable, but obviously
the latter must be measurable). First, this signal can be used for correcting the setpoint
of the basic controller like in Fig. 16, the control input being the same for the controlled
process and its model. This control scheme is known as "Internal Model (Control" (I.M.('.)
and is probably the oldest and the best known model-based control system; see e.g. [71].
In two other schemes, the return signal is used for correcting only either the control input
of the model or that of the controlled process. In the first of these two schemes the return
signal is used for forcing the state of the model to track that of the actual system, in fact
it is nothing else than the well known Luenberger observer [67]. The second of these two
schemes (Fig. 17) is the dual of the first one and as such, it has the same nice properties as
shown in [32, 60]. It can be said that in this control scheme the return signal aims to force
the output of the actual system to track that of the model and the effect of unmodelled
disturbances acting upon the system is counteracted by the effect of the return signal. The
latter scheme is nothing else than "Model Reference Control" or "Model Following Control"
[60].

disturbance

1
process on tput
Process
reference

tn cs)
V' .
Model
model out put

Correction return
Mechanism signal

Figure 16: Internal model control

As shown in [32] all these control schemes have the same basic properties: first, the nominal
tracking dynamics is the same whether the return signal is used or not in the control system;
second, the regulation dynamics can be tailored to the designer's objectives, thanks to a
suitable filter processing the return signal; third, the three schemes are equally robust.
The first pro])erty is obvious, as in case of exact model match and no disturbance the
return signal is null and therefore it cannot change the tracking dynamics of the controlled
system. As a consequence of that property control schemes of Fig. 16 and 17 can be used
as such if and only if the system to be controlled is open-loop stable. If not there must bo
another feedback loop for stabilizing the system and giving it the desired dynamics. This
loop may be either a secondary loop inside the model-based control scheme or an external
loop around it. In the first case the model must be that of the resulting stable closed-loop
478

system. On the contrary, in the second case, the model is that of the system which must
be controlled and it allows a correction of the control input to this system. Under some
general conditions this correction can be seen as an estimate of an equivalent disturbance
signal acting upon the system input. Then the latter model-based control scheme is also
called a "disturbance observer". Mechanical systems are generally unstable or neutrally
stable. Then several model-based control schemes are allowable for position control. The
case of a one-DOF servo system is considered in the followings.

disturbance

process output
Process

reference C'orrection return


Mechanism signal y ^

Model
model output

Figure 17; Model following control

5.1 Position control with disturbance observer


In this control scheme there is inside the main control loop stabiUzing the process and/or
giving it the desired dynamics, a disturbance observer using a secondary feedback loop
(Fig. 18); the main loop is a two term (position + velocity or P-D) control loop, the
secondary loop may be a velocity control loop only. The model of an ideal servo system
being a double integrator this control scheme appears as cascading a P I compensator with
the main I ' D feedback controller and implementing a secondary feedback loop inside the
main loop, in such a way that the dominant pole of this secondary loop is aiitomatically
cancelled by the zero of the P-I compensator. Then the use of this disturbance observer
results in a complete rejection of steady-state disturbances; simulation and experimental
results showed the effectiveness of this control scheme for the control of servo systems and
robotic manipulators, whether the main controller and/or the model were implemented as
numerical or fuzzy systems [9, 33, 30, 29, 31, 82]. In [30, 31, 82] the main controller and
the disturbance observer were conventional quantitative systems either in continuous- or
in discrete-time. In [9, 33, 29] the main controller was a two-term fuzzy controller using
fuzzy values of position and velocity errors, and inside the main control loop there was a
disturbance observer based on the model relating the velocity to the driving torque: with
the above assumptions this model is a simple integrator. Several implementations of this
model were tested: numerical, qualitative or hybrid (combination of the two previous ones).
All these different implementations of the main controller and the model gave similar results
[8]. The effect of the model-based control on disturbance rejection is clearly seen in Fig. 19.
479

disturbance

Process process outputs


^

reference Main Correction return/-


eturuAN
(Controller Mechanism sign
ienalV.
f +

Model
model output

Figure 18: Control with disturbance observer inside the main control loop

0.5

0.45 -

0.4 - fl D = 0.5
p
O 0-351
s
i 0.3-- D = 0.25
ill
t

n
E 0-2 ^
X^ \j\
r D = 0.125 \ 1 i1 \
r
o 0.15 -•
r
0.1 -

0.05 (;/
ij
'r '•''• '1
|/A /i^l'"'--,—. 1 . ""••--
10 15 20 25 30 35 40 45
Time [s]
Figure 19: Responses to constant disturbances: D = 0.125, 0.25, 0.5
Full lines: fuzzy PI) control
Dashed lines: fuzzy PD control + model-based control
480

5.2 Model reference control of positioning systems


Another way to cope with disturbances in neutrally stable or unstable systems is to equip
them with a stabilizing feedback loop and to use internal model control (Fig. 16) or a model
following control (Fig. 17) for the resulting stable closed-loop system. In position control
of a one-DOF servo system stabilization and the required dynamics are obtained via an
auxiliary position + velocity feedback loop, using either a numerical or a fuzzy controller.
Outside this stabilizing loop there is a qualitative model of the desired response which can
be used either in the internal model control scheme of Fig. 20 [10, 11, 27, 29] or in model
following control as in Fig. 21 [29]. The model can be viewed as a one-step ahead predictor

disturbance

o Stabilizing
CJontroUer
Process
process output

6=
Model
model output

Correction return
Mechanism signal

I-'igurc 20: Internal mode! control of a process stabilized by a secondary feedback


loop

disturbance

Stabilizing process output


Process
Controller

reference Correction return A


Mechanism signal " v .

model output

Figure 21: Model following control of a process stabilized by a secondary fecdb


loop
481

which, at each sampling time, predicts the next value that the actual system output should
reach given the current data, and the difference between predicted and measured values is
used for correcting the control variable at the next sampling time. Due to the robustness
of model-based control schemes modeling must not be accurate: an approximate model
representing roughly the static gain and the settling-time of the controlled system should
be satisfactory in most cases. If the sampling interval for the model-based control scheme
is at least equal to the settling-time of the closed-loop controlled system the simplest model
is even a one-step ahead shift operator, (it can be seen as a "wait and see" strategy leading
to small updates of the control variable). This model can be embedded in any of the two
control schemes of Fig. 16 and 17. It was shown in [11, 29] that the disturbance rejection
capabibties are the same in the two cases (Fig. 22), but obviously the errors when tracking
time-varying signals are different; in particular for a ramp-wise varying desired position
the internal model control scheme leads to a constant error which is nothing else than the
so-called "velocity error" defined in textbooks on control systems (see e.g. [74]); this error
could decreased or even cancelled at the price of an increasing complexity of the model.
Another model which can be used in the control schemes of Fig. 16 and 17 is a first-order
predictor with a sampling interval approximately equal to half the rise-time of the closed-
loop controlled system [11, 29]. Obviously decreasing the sampling interval allows faster
reactions of the model-based control system as it can be seen on Fig. 22 (curve in dotted
Une).

0.5

0.4

D = 0.25

D = 0.125

-0.2

-0.3
0 10 20 30 40 50 60 70
Time [s]
Figure 22: Responses to constant disturbances: D — 0.125, 0.25, 0.5
Fxdl lines: model following control
Dashed lines: internal model control with one-step ahead shift operator
Dotted lines: internal model control with first-order predictor
482

5.3 Implementation of qualitative or fuzzy models


A complete fuzzy implementation of the above control systems requires qualitative adders
and subtracters and above all either a qualitative or fuzzy implementation of the integrator
in the disturbance observer of Fig. 18 or that of the model used in the control schemes of
Fig. 20 and 21. The rule-ba.se of a qualitative adder can be represented by the decision table
given as Table 3. Obviously the same decision table is valid for a qualitative subtracter
provided that each of the values of the subtracted variable is replaced by its opposite value.

Table ',i: Rule-Base of a Fuzzy .^dder

PB AZ PS PM PB PB PB PB
PM NS AZ FS PM PB PB PB
PS NM NS AZ PS PM PB PB
Input 2 AZ NB NM NS AZ PS PM PB
NS NB NB NM NS AZ PS PM
NM NB NB NB NM NS AZ PS
NB NB NB NB NB NM NS AZ
NB NM NS AZ Ps PM PB
Input 1

The discrete-time representation of an integrator is an accumulator the output of which is


u])dated at each saTUpling time by combining the last values of the output and input data:

Vu = y + M (22)
where u and y are respectively the input and the output variables and subscript u means an
u])dated value. (Uearly the accumulator is nothing else than an adder with a regenerative
feedback loop as shown in Fig. 23, and its qualitative implementation can be represented
by the same rule-base as in Table 3 just replacing one of the inputs by the last output
(Table 4).
1
^ Backward
Time shift ^

F A^ ¥•

Figure 23: Fuzzy accumulator (F.a. = fuzzy adder)

Table 4: Rule-Base of a Fuzzy Accumulator

PB AZ PS PM PB PB PB PB
PM NS AZ PS PM PB PB PB
PS NM NS AZ PS PM PB PB
Last Qniput Z NB NM NS AZ PS PM PB
NS NB NB NM NS A'Z PS PM
NM NB NB NB NM NS AZ Pb
NB NB NB NB NB NM NS AZ
NB NM NS AZ PS PM PB
Input
483

However pure fuzzy implementation of the neutrally stable closed-loop subsystem shown in
Fig. 23 would lead to an explosion of fuzziness, i.e. the support set of the output variable
would increase at each sampling time. Explosion of fuzziness is due to the type of fuzzy
rules "If X is A then Y is fl" used in the implementation, namely possibility riiles. Seman-
tic behind possibility rules is : the more X is A , the more possible Y is B. If several rules
are triggered, i.e. several control actions are possible, the union of these actions is possible.
More precisely in the case of the fuzzy accumulator, if the input and the last output of the
accumulator have respectively two and q simultaneous values the use of a decision table like
Table 4 may lead to ^ -|- 1 simultaneous values of the updated output. Then the number of
possible simultaneous values of the output could increase at each sampling time! Obviously
this number has an upper bound which is the number of classes in the universe of discourse
of the output variable, but it means that ultimately the accumulator output would have
simultaneously all the allowable qualitative values! Therefore the information would be
scattered over all the universe of discourse, which means a complete loss of information.
This is what has been called "explosion of fuzziness" [9]. Such situations could be avoided
by using another type of rule like certainty or gradual rules [21]. Implementation of the
operations related to these types of rules being harder, it was chosen to roughly limit the
fuzziness of the output: in the feedback loop of the accumulator the qualitative variable is
defuzzyfied at first, refuzzyfied immediately after and then fed back to the adder (Fig. 24).
Then the quaUtative values of the accumulator output which are fed back to the adder keep
some membership grades, and this prevents the explosion of fuzziness.

Backward Fuzzyfier Vu De-


Time shift fuzzyfier

Vu

Figure 24: Hybrid fuzzy accumulator (F.a. = ftizzy adder)

Table 5: Rule-Base of a First-Order Fuzzy Predictor

PB PS PM PM PM PM PM PB
PM AZ PS PS PS PS PM PB
PS NS AZ AZ AZ PS PM PM
Last Output AZ NS NS NS AZ PS PS PS
NS NM NM NS AZ AZ AZ PS
NM NB NM NS NS NS NS AZ
NB NB NM NM NM NM NM NS
NB NM NS AZ PS PM PtJ
Input

The risk of explosion of fuzziness is weaker in a first-order predictor. In a numerical imple-


mentation of the latter the updated value of the output would be a convex combination of
the last values of the input and output variables:

2/u = A-t/ + (l - A) •« (23)


484

which results in coniplenientary attenuations of the input and feedback variables. If A has
a value around 1/2, in other words for values of the predictor time-constant approximately
equal to the sampling interval, the rule-base corresponding to qualitative implementation of
the predictor can be represented by Table 5. Here the attenuation of the feedback variable
lowers the regenerative effect and therefore the risk of explosion of fuzziness.

6 Conclusions
The numerous works which have been quoted in this chapter prove the effectiveness of fuzzy
control for position and/or velocity control of some mechanical systems such as servomech-
anisms, manipulators, robots, mobile robots, unmanned vehicles, . . . Most often the fuzzy
controllers used in those applications are position -|- velocity or P-D control systems and
their rule bases result from a straightforward qualitative interpretation of multilevel relay
control rules. Then the question is: as P-D hnear controllers are so well known and so
simi)le is it worthwhile to introduce fuzzy controllers in such appUcationsV There is no
unique answer to that question. For one-DOF servo systems with known parameters linear
controllers and fuzzy controllers with uniform distributions of the values in the universes
of discourses perform equally well. However even in that case modifications of those dis-
tributions allow the introduction of nonlinearities in the control system, which may lead
to better performances. Moreover if there are uncertainties or variations over time of some
parameters of the controlled servo system or if there are some nonUnear feedback terms such
as friction or gravitational forces a fuzzy control loop may perform better than a numerical
control loop, due to the fact that fuzziness implies by itself some robustness against the
influence of such pertnrbations. This is still more true for perturbations due to unmodeled
dynamics such as compUance in a mechanical transmission or flexibility of an arm. In the
latter case the work reported in [53] seems to be very promising as the control is based on
two separate two-term fuzzy controllers, one for usual position-|-velocity control and the
other one for vibration suppression. This idea of separating different tasks of the control
system is basically the same as that which can be found in the works on separation of
tracking dynamics and disturbance rejection in [9, 10, 11, 33, 27, 29, 28]. After all those
ideas are nothing else than apphcations of the ancient separation principle: ''Divide ut ini-
peraa" which should be the first of the basic C'omiuandments for any control engineer who is
facing tlie problem of designing a control system for a complex plant. This is the same idea
which is the basis of most control systems for multi-DOF manipulators where each joint is
actuated by its own controller the interactions between the motions of different jiarts being
considered as external disturbances. In that case also fuzziness in the control system may
imi)rove the overall performance.

Eventually there is another case where fuzzy controllers are more attractive than conven-
tional numerical controllers, it is the case where the control objectives and/or the control
strategy are only defined in loose terms; examples are not uncommon: driving and/or
parking a vehicle, path planning and control of unmanned vehicles or mobile robots, force
control, collision avoidance and/or cooperative tasks for robotic manipulators. Sucti a])])li-
cations were considered in several papers, see e.g. [47, 78, 102] and it is likely that further
developments of fuzzy controllers are to be expected in those areas. In most of the works
presented in the previous paragraph fuzzy control was applied at the lower level of acttia-
tion of a mechanical system that is position and/or velocity control. On the contrary, in
many of the a]>plications mentioned here fuzzy control is often applied at a higher level in
a liierarchical control system.

In some apphcations also fuzzy concepts are used for scheduling or tuning the parame-
ters of numerical controllers or for combining the outputs of several parallel controllers.
485

For instance in [89] a robot with a compliant joint is controlled by four controllers, each of
them having been calculated for a given area of the robot workspace, and the final control
variable is a fuzzy convex combination of the outputs of those four controllers. In [38] the
setpoints of some of the conventional position controllers of a manipulator are supphed by
P I force controllers the gains of which are tuned by a kind of fuzzy adaptation mechanism.
Sometimes also the controUer includes a numerical controller and a fuzzy controller acting
in parallel. This basic idea of such a hybrid control scheme is that numerical control and/or
compensation should be used for the known part of the controlled system and fuzzy control
introduced in order to cope with the additional unknown or uncertain parts. Such a hybrid
controller was used in [49] for position control of a servo system. In some sense all these
schemes can be related to the fuzzy supervision of control systems, see e.g. [75]; this is also
an area of active research.

References
[1] R.A. Aliev, G.M. Oulanov, and A.E. Tserkovnyi. Decision making in intelligent
robots. Soviet Physics Doklady, 31(10):780-782, 1986.
[2] C. An and J. Hollerbach. Dynamic stability issues in force control of manipulators.
In IEEE Conference on Robotics and Automation, pages 1890-896, 1987.
[3] C.B. Brosilow and B. Joseph. Inferential control of processes. A. I. Ch. E. J., 24:48,'3
500, 1978.
[4] M. Brown, R. Fraser, C.J. Harris, and C.G. Moore. Intelligent self-organizing control
for autonomous guided vehicle: comparative aspects of fuzzy logic and neural nets.
In '91 FEE International Conference on Control, pages 134-139, 1991.
[5] R.H. Cannon and E. Schmitz. Initial experiments on the end-point control of a flexible
one-link robot. The International Journal of Robotics Research, 3(3):62-75, 1984.
[6] R. Cassinis, E. Biorh, A. MeregaUi, and F. Scalise. Behavioral model architecture: a
new way of doing real-time planning in intelligent robots. International Society for
Optical Engineering, 852:275-280, 1988.
[7] Hai Quan Dai, G.R. Dalton, and J. Tulenko. Fuzzy control system for a mobile robot.
Trans, of American Nuclear Society, 65:464-465, 1992.
[8] M. De Neyer and R. Gorez. Fuzzy and quantitative model-based control systems for
robotic manipulators. International Journal of Systems Science, to appear, 93.
[9] M. De Neyer, R. Gorez, and J. Barreto. Disturbance rejection based on fuzzy models.
In M.G. Sing and L. Trave-Massuyes, editors. Qualitative Reasoning and Decision
Support Systems, pages 215-220. North-Holland, Amsterdam, The Netherlands, 1991.
[10] M. De Neyer, R. Gorez, and J. Barreto. Fuzzy controllers using internal models. In
IMA CS - IFA C Symposium on Modelling and Control of Technological Systems, pages
726-731, LiUe, France, 1991.
[11] M. De Neyer, R. Gorez, and J. Barreto. Simulation analysis of control systems with
internal fuzzy models. In ESS '91: Intelligent process control design and scheduling.
pages 145-150, Gent, Belgium, 1991.
[12] J. De Schutter. A study of active compliant motion control methods for rigid manip-
ulators based on a generic scheme. In IEEE Conference on Robotics and Automation,
pages 1060-1065, 1987.
486

[13] C'.W. De Silva and A.G.J. McFarlaiie. Knowledge-based control approach for robotic
manipulators. International Journal of Control, 50(l):249-273, 1989.
[14] S. Deepak, M.C. Repko, N.C. Mood, and R.B, KeUey. A fuzzy approach to the
interpretation of robot assembly forces. International Society for Optical Engineering.
1002:426-433, 1989.
[15] K. Desoyer, P. Kopacek, P. Lugner, and I. Troch. Flexible robots: modeling and
control. In S.G. Tzafestas, editor, Intelligent Robotic Systems, pages 421-453. M.
Dekker, New York, 1991.
[16] R. Deyong, J. Poison, R. Moore, C. Weng, and J. Lara. Fuzzy and adaptive control
simulation for a walking machine. IEEE Coiitrol Systems Magazine, r2(3):43-50.
1992.
[17] D.R. Dodds. Fractals, fuzzy sets and image representation. International Society for
Optical Engineering, 1001:87-94, 1988.
[18] D.R. Dodds. Fuzziness in knowledge-based robotic systems. Fuzzy Sets and Systems.
26(2): 179-193, 1988.
[19] E.O. Doebelin. Control System Principles and Design. J. Wiley and Sons, New York,
1985.
[20] Y. Dote, A. Suyitno, and M. Strefezza. Fuzzy learning grasping force controller
for manipulator hand. In lECON '90: 16th Annual Conference of IEEE Indu,<itrial
Electronics Society, pages 1259-1265, 1990.
[21] D. Dubois and H. Prade. Fuzzy rules in knowledge-based systems - modelling grade-
ness, uncertainty and preference. In R. Yager and L. Zadeh, editors, An introduction
to fuzzy logic applications in intelligent systems, pages 45 68. Kluwer Academic Pub-
lishers, Dordrecht, The Netherlands, 1992.
[22] A.R. Fraser and R.W. Daniel. Perturbation techniques for flexible mantpulaiors.
Kluwer Academic Publishers, Dordrecht, The Netherlands, 1991.
[23] T. Fukuda, Fujiyoshi, F. Aral, and H. Matsuura. Design and dextrous control of
micromanipulator with 6 dof. In IEEE International conference on Robotics and
Automation, pages 1628-1633, 1991.
[24] C.E. Garcia and M.Morari. Internal model control - a unifying review and some new
results. Ind. Eng. Chem. Process Des. Dev., 21, 1982.
[25] A. Garcia-Cerezo, A. Barreiro, and A. OUero. Design of robust intelligent control
of manipulators. In IEEE International Conference on Systems Engineering, pages
225-228, 1991.
[26] .1. Gasos, M.C. Garcia-AUegre, and R. Garcia Rosa. Fuzzy local navigation of a
simulated real robot in unknown environment. In IEEE International Worksliop on
Intelligent Motion Control, pages 445-449, 1990.
[27] R. Gorez, M. De Neyer, and J. Barreto. Fuzzy internal model control. In S. G. Tzafes-
tas, editor, Engineering Systems with Intelligence - Concepts, Tools and Applications,
pages 41.5 422. Kluwer Ac. PubL, Dordrecht, The Netherlands, 1991.
487

[28] R. Gorez, M. De Neyer, and J. Barreto. Model-based fuzzy control systems, hi


P. Borne, S.G. Tzafestas, and N.E. Radhy, editors, Mathematics of the Analysis and
Design of Process Control, pages 613-622. Elsevier Science Publishers, Amsterdam,
The Netherlands, 1992.
[29] R. Gorez, M. De Neyer, D. Galardini, and J. Barreto. Model-based control systems;
Fuzzy and qualitative realizations. In IFAC' Syrnp. on Intelligent Components and
Instruments for Control Applications, pages 681-686, Malaga, 1992.
[30] R. Gorez and 1). Galardini. Robot control with disturbance observers. In ICAR '91:
Fifth IEEE International Conference on Advanced Robotics, pages 417-422, 1991.
[31] R. Gorez and D. Galardini. Sensitivity analysis of robot control systems based on dis-
turbance observers. In I. Troch, K. Desoyer, and P. Kopacek, editors. Robot Control,
pages 123-128. Pergamon Press, Oxford, U.K., 1992.
[32] R. Gorez, D. Galardini, and K. Y. Zhu. Model-based control systems. In P. Borne.
S.G. Tzafestas, and N.E. Radhy, editors, Mathematics of the Analysis and Design of
Process Control, pages 223-232. Elsevier Science Publishers, Amsterdam, The Nether-
lands, 1992.
[33] R. Gorez, M. De Neyer, and ,J. Barreto. Disturbance rejection in fuzzy control of
manipulators. In ESS 90: European Simulation Symposium, pages 38-43, 1990.
[34] K.A. Han-Gyoo. A new interpretation of force/servo control of robot arms. In IROS'
91 International Workshop on Intelligent Robots and Systems, pages 1623-1627. 1991.
[3.5] C.J. Harris and M. Brown. Intelligent control for autonomous guided vehicles. In
lEE Colloquium on Intelligent Control, pages 3/1-4, 1991.
[36] R. Herrero, .1. Landaluze, C.F. Nicolas, and R. Reyero. A highly nonlinear fuzzy
control algorithm for servo systems positioning. In IFAC Symp. on Intelligent Com-
ponents and Instruments for Control Applications, pages 289-294, Malaga, 1992.
[37] K. Hirota, Y. Aral, and S. Hachisu. Fuzzy control robot arm playing two-dimensional
ping-pong game. Fuzzy Sets and Systems, 32(2):149-159, 1989.
[38] Suh. II Hong, Jong Hyuck Hong, Sang-Rok Oh, and Kwang Bae Kim. Fuzzy rule-
based position/force control of industrial manipulators. In IROS '91 International
Workshop o7i Intelligent Robots and Systems, pages 1617-1622, Osaka, 1991.
[39] Suh. 11 Hong, Tae Won Kim, Shin Heu, and Sang-Rok Oh, Visual servoing by fuzzy
reasoning methods. In IROS '91 International Workshop on Intelligent Robots and
Systejns, pages 111-116, Osaka, 1991.
[40] K. Ishii and S, Misra. Uncertainty management in intelligent task planing of mobile
robots. International Journal of Computer Integrated Manufacturing, 3(l):l3-23.
1990.
[41] H. Ishikawa, C. Sawada, K. Kawase, and M. Takata. Stable compliance control and
its implementation for a 6 d.o.f. manipulator. In IEEE Conference on Robotics and
Autojnation, pages 98-103, 1989.
[42] S. Ishikawa. A method of indoor mobile robot navigation by using fuzzy control. In
IROS' 91 International Workshop on Intelligent Robots and Systems, pages 1013-
1018, 1991.
488

[43] ('. Isik. Inferfiicp engines for fuzzy rule-based control. International Journal of
Approximate flca.foru'ng, 2(2): 178-188, 1988.
[44] (', Isik and A.M. Meystel. Pilot level of a hierarchical controller for an unmanned
mobile robot. IEEE Journal of Robotics and Automation, 4(3):241-25.'j, 1988.
[45] R. Jager, H.B Verbruggen, and P.M. Bruijn. The role of defuzzification methods in
the application of fuzzy control. In Symp. on Intelligent Components and Instruments
for Control Applications, pages 111-116, Malaga, 1992.
[46] CI.S. Kalley and K.J. McDermott. Using expert systems to incorporate the principles
of motion economy as a means of improving robot manipulator path generation.
Computers and Industrial Engineering, 16(32):207-213, 1989.
[47] H. Rang and G. Vachtsevano.s. An intelligent strategy to robot coordination and
control. In CDC '90: 29th IEEE Conference on Decision ajid Control, pages 2208-
2213, 1990.
[48] C. Kemal. Fuzzy rule-based motion controller for an autonomous mobile robot. RobcA-
ica, 7(l).-37 42, 1989.
[49] ('hen Ken, Lin ,Jinn-Ya, and Lu Yong Xiang. Fuzzy control of robot manipulators.
In 1988 IEEE International Conference on Systems, Man and Cybernetics, pages
1210-1212,1988.

[•)0] K. Kevin. Self - designing with fuzzy logic. IEEE Spectrum,, pages 42-44. November
1990.
[.51] 0 . Khatib and J. Burdick. Motion and force control of robot manipulators. In IEEE
Conference on Robotics and Automation, pages 1381-1386, Malaga, 1986.
[52] W.,J.M. Kickert and H.R. van Nauta Lemke. Application of a fuzzy controller in a
warm water plant. Automatica, 12:301-308, 1976.
[53] J.W. Kim, Y.K. Ha, and Y.P. Park. Vibration control of a flexible arm using fuzzy
control theory. In Eirst International Conference on Motion and Vibration Control,
|)ages 517-522, Yokohama, 1992.
[54] P.,J. King and E.H. Manidani. The application of fuzzy control systems to industrial
processes. Automatica, 13:235-242, 1977.
[55] B.D. Klafter, Th.A. ("hmielewski, and M. Negin. Robotic Engineering - An integrated
approach. Prentice-Hall International Editions, Englewood (Jliffs, N.J., 1989.
[56] K.C. Koh, A.H.S. Cho, S.K. Kim, and I.S. Jeong. AppUcation of self-organizing fuzzzy
control to the joint control of a puma 760 robot. In IROS '90 IEEE Intertiational
Workshop on Intelligent Robots and Systems, pages 537-542, 1990.
[57] T.K. Kubota and H. Hashimoto. A strategy for collision avoidance among moving
obstacles for a mobile robot. In 1 Ith IFAC World Congress on Automatic Control in
the Ser-vice of Mankind, pages 105-110, 1990.
[.58] D.P. Kwok, P. Tam, C.K. Li, and P. Wang. Linguistic PID controllers. In 11th IFAC
World Congress on Automatic Control in the Ser-vice of the Mankind, pages 192- 197,
Tallin, Estonia, 1990.
489

[59] 1). Lakov. Adaptive robot under fuzzy rontrol. Fuzzy Sets and Systems, 17(1):1 S,
1985.
[60] Y. Landau. Adaptive control: The model reference approach. M. Dekker Inr., New-
York, 1979.
[61] Ch. Lee. Fuzzy logic in control systems: Fuzzy logic controller, part II. IEEE Trans,
on Systems, Man mid Cybernetics, SMC-20('2):419—135, 1990.
[62] Y. Li. The automatic recognition of mechanical parts on membership's principles of
fuzzy sets. International Society for Optical Engineering, 697:175-180, 1986.
[63] Y.F. Li and C.(!. Lau. Development of fuzzy algorithms for servo systems. IEEE
Control Systc7ns Magazine, 9(3):65-71, 1989.
[64] ('.M. Lim and T. I Hiyama. Application of fuzzy logic control to a manipulator. IEEE
Trans. o7i Robotics and Automation, 7(5):688-691, 1991.
[65] C.E. Lin and Y.R. Sheu. A hybrid control-approach for pendulum-car control. IEEE
Trans, on Industrial Electronics, 39(3):208-214, 1992.
[66] K.H. Low and M. Vidyasagar. A Lagrangian formulation of the dynamic model for
flexible manipulator systems. ASME Journal of Dynamics, Measurement and Control,
110:17.5-181, 1988.

[67] D.G. Luenberger. An introduction to observers. IEEE Trans, on Automatic Control,


AC-16(3):596~602, 1971.
[68] E.H. Mamdani. Application of fuzzy algorithms for control of simple dynamical ])lant.
P7-0C. /Efi", 121:1585-1588, 1976.
[69] N.J. Mandic, E.M. Scharf, and E.H. Mamdani. Practical application of a heuris-
tic fuzzy rule-based controller to the dynamic control of a robot arm. Proc. lEE,
132(4):190-203, 1985.
[70] J.P. Merlet. Force feedback control in robotic tasks. In S.G. Tzafestas, editor, Intel-
ligent Robotic Systems, pages 283-311. M. Dekker, New York, 1991.
[71] M. Morari and E. Zafiriou. Robust p7-ocess control. Prentice-Hall International Edi-
tions, Englewood Cliffs, N.J., 1989.
[72] S. Murakami, F. Takemoto, H. Fujimura, and E. Ide. Weld-line tracking control of
arc welding robot using fuzzy logic controller. Fuzzy Sets and Systems, 32(4):221-237.
1989.
[73] A. Nedungadi and D.J. Wenzel. A novel approach to robot control using fuzzy logic.
In '91 IEEE International Conference on Systems, Man and Cybernetics, pages 1925-
1930, 1991.
[74] K. Ogata. Modern Control Engineering. Prentice-HaD International Editions, Engle-
wood CMs, N.J., 1990.
[75] P. Oliveira, P. Lima, and J. Sentieiro. Fuzzy supervision on intelligent control systems.
In '91 European control conference, pages 1226-1231, 1991.
[76] R. Ortega and M.W. Spong. Adaptive motion control of rigid robots: a tutorial.
Automatica, 25:877-888, 1989.
490

[77] R. Palm. Fuzzy controller for a sensor guided robot manipulator. Fuzzy Sets and
Systems, 31(2): 133-149, 1989.
[78] R. Palm. Control of a redundant manipulator using fuzzy rules. Fuzzy Sets and
Systems, 45(3):279"298, 1992.
[79] R.C;. Paul. Robot Manipulators: Mathematics, Programming and Control. The MIT
Press, Cambridge, Mass., 1981.
[80] B. Postlethwaite. Basic theory and algorithms for fuzzy sets and logic. In M. Criniblp
J. McGhee and P. Mowforth, editors. Knowledge-based systems for industrial control.
Peter Peregrinus Ltd, Stevenage, UK, 1990.
[81] M. Raibert and J. Craig. Hybrid posit ion/force control of manipulators. Journal of
Dynamic Systems, Measurement and Control, 1Q3(2):26-133, 1981.
[82] B. Robyns, D. CJalardini, R. Gorez, F. Labrique, and H. Buyse. Asservissement de
Vitesse d'un actionneur asynchrone par modele de I'actionneur ct de sa cominande
vectorielle. In Journees d'etudcs S.E.E. sur les asscrxnssements electromecaniques
rapides: modelisation et regulation avancees, pages 3-51, Metz, France, 1992.
[83] E. Scharf. f^uzzy logic could redefine robot control. Automation, 21(2);11-14, 1985.
[84] E.M. Scharf and N.J. Mandic. The application of a fuzzy controller to the control of
a multi-degree of freedom robot arm. In M. Sugeno, editor. Industrial Applicatioiis
of Fuzzy Control. North-Holland, Amsterdam, The Netherlands, 1985.
[85] K. Seung-Woo and P. Mignon. Fuzzy compliance robot control. In IROS' 91 Inter-
national Workshop on Intelligent Robots and .Systems, pages 1628 1631, 1991.
[86] L. Shiyong, H. Hengzhang, and S. Andong. A three dimensional fuzzy intelligent
controller. In 1988' International Conference on Systems, Man and Cybernetics.
pages 1060-1061, Malaga, 1988.

[87] K.M. Stellakis and K.P. Valavanis. Fuzzy logic-based fonnvdation of the organizer of
intelligent robotic systems. Journal of Intelligent and Robotic Systems: Tlieoi-y and
Application.% 4(1):1 -24, 1991.
[88] I). Stipanicev, M. De Neyer, and R. Gorez. Self-tuning self-organizing fuzzy robot
control. In I. Troch, K. Desoyer, and P. Kopacek, editors, Robot Control, pages
171 176. Pergamon Press, Oxford, U.K., 1992.
[S9] ,). Swevers. Linear identificatio7i and contwl of flexible robots. PhD thesis, K.U.
Leiiven, 1992.
[90] T. Takeuchi. An autonomous fuzzy mobile robot. Advanced Robotics, 5(2):215-230.
1991.
[91] T. Takeuchi, Y. Nagai, and N. Enonioto. Fuzzy control of a mobile robot for obstacle
avoidance. Information Sciences, 45(2):231-248, 1988.
[92] K.L. Tang and R.J. Mulholland. Comparing fuzzy logic with classical controller
designs. IEEE Trans, on Systejns, Man and Cybernetics, SMC-17(6):1085-1087,1987.
[93] R. Tanscheit and E.M. Scharf. Experiments with the use of a rule-based self-organizing
controller for robotics appUcations. Fuzzy Sets and Systems, 26:195-214, 1988.
This page intentionally blank
491

[94] S.G. Tzafestas. Adaptive, robust and fuzzy rule-based control of robotic nianiprilators.
In S.G. Tzafestas, editor, Intelligent Robotic Syfitems, pages 313-419. M. Dekker, New
York, 1991.
[95] M. Uragami, M. Mizumoto, and K. Tanaka. Fuzzy robot controls. Journal of Cyber-
neticse, 6(l-2):39~64, 1976.
[96] G.J. Vachtsevanos, K. Davey, and K.M. Lee. Developenient of a novel intelligent
robotic manipulator. IEEE Control Systems Magazine, 7(3):9-15, 1987.
[97] K.P. Valavanis and K.M Stellakis. A general organizer model for robotic assemblies
and intelligent robotic systems. IEEE Trans, on Systems, Man and Cybernetics,
SMC-21(2):302-317, 1991.
[98] .]. Van Amerongen, H.R. van Nauta Lemke, and J.C.T. Van der Veen. An autopilot
for ships designed with fuzzy sets. In H.R. van Nauta Lemke, editor, Digital Computer
Applications to Process Control. North-Holland, Amsterdam, The Netherlands, 1977.
[99] B.A.N. Wakileh and K.S. Gille. Use of fuzzy logic in robotics. Computers in induMry,
10(l):35-46, 1988.
[100] D. Wang and M. Vidyasagar. Transfer functions for a single flexible link. International
Journal of Robotics and Automation, 10(5):540-549, 1991.
[101] D. Whitney. Historical perspective and state of the art in robot force control. In
IEEE Conference on Robotics and Automation, pages 262-268, Malaga, 1985.
[102] Hyun Woong Keun, II Hong Suh, and Kyong Gi Kim. Intelligent control of redundant
manipulators in an environment with obstacle. In IROS' 91 International Workshop
on Intelligent Robots and Systems, jiages 161-166, 1991.
[103] Y. Xu, R.P. Paul, and H.Y. Shun. Fuzzy control of robot and comphance wrist
systems. In IEEE Indu.ftry Applications Society Annual Meeting, pages 1431 1437,
1991.
[104] W. Yim, J. Zuang, and S. Singh. Experimental dual-mode control of aflexible robotic
arm. International Journal of Robotics and Autoination, 10:135-145, 1992.
[105] T. Yoshikawa. Foundations of Robotics: Analysis and Control. The MIT Press,
Cambridge, Mass., 1990.
[106] L.A. Zadeh. Fuzzy sets. Information and Control, 8:338-353, 1965.
[107] L.A. Zadeh. A rationale for fuzzy control. Trans.A.S.M.E., ser.G, 94:3-4, 1974.
[108] H.J. Zimmermann. Approximate reasoning in manufacturing. In A. Kusiak, editor.
Intelligent Design and Manufacturing, pages 701-722. Wiley-Interscience, New York,
1992.
CHAPTER 18
FUZZY CONTROL FOR ROBOT MANIPULATORS
WITH ARTIFICIAL RUBBER MUSCLES

Keigo Watanabe^*), Sangho Jin(*) and Spyros G. Tzafestas(**)

(*) Department of Mechanical Engineering,


Faculty of Science and Engineering
Saga University
Honjomachi-1, Saga 840, Japan
(**) Intelligent Robotics and Control Unit
Department of Electrical and Computer Engineering
National Technical University of Athens
Zografou, Athens 15773, Greece
1. I N T R O D U C T I O N
W h e n controlling a robot manipulator by applying the well-known c o m p u t e d
torque control law, we usually need the mathematically accurate model. However,
it is not necessarily easy t o make a rigorous model, because the dynamic modeling
of the robot manipulator essentially include some uncertainties such as system pa-
r a m e t e r s , disturbance inputs amd nonlinear elements. T h u s we can be faced with
t h e problem of designing a robust controller t h a t achieves a stable control, even
t h o u g h we use inaccurate modeling information. Some different approaches to the
problem of robust control design for uncertain systems have been proposed for a case
when the botmds on the uncertainties are known (Hui and Zak, 1992); two major
approaches to the deterministic control of uncertain systems are the deterministic
control using Lyapunov functions (Corless and Leitmann, 1981: Corless,1989) a n d
the variable structure control (or sliding m o d e control) m e t h o d s (Utkin, 1977; De-
Carlo et al., 1989). T h e approaches without using the b o u n d information on the
uncertainties can also be found in Chen (1990) or Imura et al. (1991).
A fuzzy control is a t t r a c t e d as a practical control strategy for controlling a
robot manipulator, because we need no m a t h e m a t i c a l models a n d can easily apply
it to nonlinear systems as well as linear systems. It should be noted, however, t h a t ,
when designing a fuzzy logic controller, we must t u n e some controller p a r a m e t e r s
such as scalers (or gains) for the input d a t a and the o u t p u t d a t a of the fuzzy logic
controller. For this problem, some self-organizing fuzzy controllers ( S O F C s ) have
been already examined by several authors (Procyk and M a m d a n i , 1979; Yamazaki
a n d Sugeno, 1984; Daley and Gill, 1986; Linkens and Hasnain, 1991; Tanji and Ki-
noshita, 1987; M a e d a and Murakami, 1988). On the other hand, some (iterative or
repeated) learning-type fuzzy controllers (LFCs) t h a t incorporate a neural network
have been also reported recently ( W a t a n a b e and Ichihashi, 1990; Hayashi et al.
1990; Horikawa, et al, 1991; W a t a n a b e et al, 1992; W a t a n a b e and Tang, 1992).
In this study, we apply a fuzzy logic controller for making a robust control
system of a robot manipulator with rubber muscles. We first consider a fuzzy logic
493
S.G. Tzafesias and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 493-510.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
494

controller as a robust compensator in the problem of tracking control of the robot


m a n i p u l a t o r , in which it is assumed t h a t the computed torque control m e t h o d has
already been included. We next apply an iterative L F C in which several elemental
fuzzy controllers with incompletely t u n e d p a r a m e t e r s are processed in parallel and
t h e degree of the usage of each inferred consequent is determined by using a linear
neural network, which is called a multiple fuzzy controller. Consequently, when
there are modeling uncertainties such as the m o m e n t s of inertia a n d / o r there exist
u n t u n e d feedback gains, we will show t h a t two fuzzy control m e t h o d s presented
here are effective for controlling a robot manipulator with r u b b e r muscles t h r o u g h
some simulations.

2. C O N T R O L OBJECT

T h e r u b b e r muscles considered are RUB-825 and RUB-420 which are m a d e


by Bridgestone. T h e personal computer, as a digital controller, is a PC-9801 FA,
whose cpu is 486sx (16 MHz) with an overdrive processor. T h e m a n i p u l a t o r is re-
stricted so as to move only on the horizontal plane, so that the gravitational effect
is neglected. The m a n i p u l a t e d voltage from the computer is first transformed into
an analogue quantity and further t r a n s m i t t e d into a V / A converter. By supplying
t h e m a n i p u l a t e d electric current signal (4 ~ 20 [mA]) to the servo-valve, the elec-
tromagnetic proportional valve can control the inlet air flow a n d therefore the inner
pressure (0 ~ 6 [Kgf/cm'^]) of the rubber muscle can be changed. E a c h joint angle
of the m a n i p u l a t o r is measured by a rotary-encoder (2000 P / R ) and the measured
signal is fed back, through a pulse counter, to the computer. Figure 1 shows t h e
block diagram of t h e total control system and Fig.2 depicts the action principle of
t h e r u b b e r muscle.

[Compressor J

Regulator

'
Personal D/A V/A Servo
computer -»- converter converter
—»- valve
—^- Manipulator
PC-9801
1

Encorder
-

Fig.l Control system for a manipulator with r u b b e r muscles


495

Reducing pressure
Air

Air - ^
Adding pressure

Fig.2 Action principle of a rubber muscle

3. C O M P U T E D T O R Q U E C O N T R O L L E R
As a mathematical model of the rubber muscle manipulator, consider the usual
SCARA-type robot manipulator model described by

M(f)0 + V{0, ff) = T (1)

where 0 e TZ" is the joint angle vector,^ T e W is the driving input, M(ff) £ K"''^"
is the positive inertia matrix and V(0,0) <E K" is a iionHnear term which represents
the Coriolis force, centrifugal force and gravitation, etc. It is assumed that we set
the desired reference joint angle 64, angular velocity 0i and angular acceleration 64.
H we have the output joint angle 9, the angular velocity 0, and the model matrices
M(l?) and V(ff, 0), then the computed torque can be constructed by

T^M{0)0* +V(0,6) (2)

r - 0,1 + K„e + Kpe (3)


where Ji„ £ ^ " X " jg the different ial gain of diagonal matrix, Jlp € K"^" is the
proportional gain of diagonal matrix, and e(t) = [ei(*),.... Cn.]"^ denotes the tracking
error vector defined by
e(t)^0dt)^m (4)
If matrices M{ff) and V(9, 0) are completely identified as actual matrices M(6) and
V{6, 0), then the equation of the error vector satisfies tlie following linear equation:

B{t) + K„6{t) + Kpe{t) (5)


496

Fuzzy
compensator

e
Torque Robot
computation e
II a

Fig.3 C o m p u t e d torque control system with a fuzzy compensation

It is readily found t h a t , when K„,Kp > 0, the equation (5) is asymptotically


stable. However, this relation m a y be destroyed for a case when M{d) ^ M{6)
a n d / o r V{d,'B) ^ V ( ^ , ^ ) . Furthermore, for a case when the feedback gains K^,Kj,
are not optimally t u n e d , we will not be able to obtain a relatively fast convergence
of error response, rather we will have a oscillatory error response, even though
A/(^) = M{6) and ¥{9,6) = V{eJ).

4. D E S I G N O F A F U Z Z Y L O G I C C O N T R O L L E R

T h e purpose of this section is to design a robust control system, as shown in


Fig.3, by applying the fuzzy logic compensation, under the assumption t h a t a com-
p u t e d torque control law is simultaneously appHed t o the n-link robot manipulator.

4.1 Dependent Reasoning Method


T h e fuzzy logic controller as a compensator used here is described bj' using a
simphfied fuzzy reasoning (Mizumoto, 1989), in which the basic reasoning is that
of M a m d a n i ( M a m d a n i , 1974, 1976), b u t with a constant value for the consequent
p a r t . Following this reasoning, we can write any i-th control rule as

R, : If Cj = Ail and ... and e„ = A,„


and ei = Ai(n+i) a n d ... a n d e„ = A^^n)
then Ml = 5,1 and ... and w„ = B,n (6)

for 2n-input variables ( e i , . . . , e„, e j , . . . , e„) and n-output variables ( u j , . . . , Un). Here.
R, is the i-th control rule, A,j is the fuzzy set of antecedent part corresponding to
497

the j-th input variable in the i-th control rule, and B,j is the constant value corre-
sponding to the j-th o u t p u t variable in the i-th control rule. Using 2n confidences
fiAniei),..., fj.An„^{en), fJ-An^^i^iei),..; tJ.An2„)(^n), we have t h e confidence of the
antecedent part in the i-th control rule, hi, as follows:

h, = /i^,i(ei)A/J^,.,(e2)...A/iA,„(e„)A/i^.,„^;j(ei)A/iA,(„+j,(e2).-A^A,(,,,,(en) (7)

where A denotes the minimum operator. T h e n , the j - t h inferred consequent is given


by

« ; - ^ ^ ' , = i,...,„ (8)

where r denotes the total number of control rules; generally r = f^" if the n u m b e r
of labels is i.
In order to transform the input variables to the values on the support set,
for example, on [—6, 6], we need the scalers for the i n p u t - o u t p u t d a t a of the fuzzy
reasoning. Here, we define t h a t GIN(i),? = l , . . . , 2 n are the input scalers for the
input d a t a e i , . . . , e„, ii,..., e„ and G O U ( i ) , i = 1,..., n are the o u t p u t scalers for the
inferred consequents u*, ...,u*.

4.2 Independent Reasoning Method


Generally, the trajectory tracking control problem for the multi-link manipu-
lator is of multi-input multi-output. As seen from the above statement, if we apply
the usual (dependent) fuzzy reasoning method, then the number of control rules
increases exponentially as the numbers of fuzzy label and link increase. Therefore,
if we use t h e dependent reasoning m e t h o d , then a successful fuzzy controller can
not be necessary designed.
One solution to this problem is to press the properties of a multi-link ma-
nipulator into the I F - T H E N forms consisting of some eff"ective rules bj- using the
so-called fuzzy modeling technique. T h e other solution to the problem is to use the
so-called independent joint control m e t h o d which is adopted for many industrial
robots. From the fact t h a t the equation of motion for the multi-link m a n i p u l a t o r is
not decoupled each other, this m e t h o d is considered to be an approximate technique
b u t has a merit that n single i n p u t - o u t p u t control system can be independently de-
signed for the n-Iink manipulator. Following this approach, we can design the fuzzy-
control rule such t h a t the trajectory tracking error of the j-th link and its deriva-
tive are the inputs to the reasoning, and the corresponding consequent is an input
torque to the j ' - t h link, if the j - t h reference joint angle and its angular velocity are
specified. Consequently, we can n times apply the same fuzzy control rule to the
n-link case, but with different i n p u t - o u t p u t scalers. This concept is depicted in Fig.
4.
498

GIN(l)
Calculation GOU(l)
of Defuzzi-
Ae minimum fication
grades
GIN(3)

GIN(2)
G0U(2)
G(
Calculation ^ \
of Defuzzi- U ^ 2f
Ae minimum fication
^ grades
h^
GIN(4)

Fig.4 Block diagram of two independent fuzzy controllers

4.3 Adaptive Input Scaling


T h e initial constant input scalers can be easily determined from the m a x i m u m
value of the d a t a which are obtained through the control experiments using only
the computed torque control m e t h o d . However, we sometimes fail to transform the
input d a t a into the predetermined support set, because of the addition of the fuzzy
compensator to the control system.
To overcome the above problem, we propose here a simple adaptive m e t h o d
for scaling the input d a t a e i , . . . , €„ described by

0.91
if |GIN(i)oM X e,| > I
GIN(One (9)
GIN(i)oia otherwise

This means t h a t if the scaled error of the joint angle is scaled out from the support
set [ ~ i , X], then the input d a t a is rescaled to fall on the 90% range of the support
set. Similarly, the scalers GIN(i + n ) , . . . , GIN(2n) for the input d a t a (i.e., the error
of the joint angular velocity) e j , . . . , e „ can also be adaptively determined by the
similar condition.

5. Multiple Fuzzy Controller


Consider the following nonlinear plant with n-input and ?i-output vectors

x{t) = f(x{t),u{t),t) (10)


499

9{t) = g{xiilt) (11)


where x(t) is the 2n-dimensional vector, u{t) is the n-dimensional input vector,
u{t) — [ui{t), ...,«„(<)], /(•) is a 2n-dimensional nonhnear vector-valued function,
g{-) is an n-dimensional nonlinear vector-valued output function and 6{t) is the
n-dimensional plant output vector 6{t) = [Oi(t),..., 6n{t)] •

5.1 Construction Method


When defining the reference vector as Oi(t), we iise the output deviation
eit) ^ 64t) - 9{t) (12)
and the corresponding rate e(i) (or increment Ae{kT)) as the inputs to the an-
tecedent part of the fuzzy reasoning, where A = 1 — z~^, z~^ is the one-step delay
operator, k is a positive integer and T is a sampling period. We then drive M
elemental fuzzy controllers in parallel with incompletely tuned controller parame-
ters, e.g., the input and output scalers GIN(?), i = 1, ...,2n and GOU(?),; = 1,..., n.
Note here that we further allow a situation where each elemental fuzzy controller
has a different number of fuzzy labels, a different width of membership functions,
and a different number of control rules, etc. The control input to the plant can
then be constructed by
M
u{t) = '^w,Ui{t) (13)
1=1
where Ui(t) — [u\(t),...,u'^{t)] ,i = 1,...,M denotes the scaled inferred consequent
generated from the i-th elemental fuzzy controller and w, is a weighting factor.

5.2 Learning Method


Among existing several learning architectures (Psaltis et al., 1988), we will
adopt here the so-called specialized learning architecture. That is, for the learning
of the connection weight u;;, we consider the cost function consisting of the squared
norm of the output deviation,

J{k)^\Y.\\e{kTW (14)
and construct the learning algorithm based on minimizing this function. Here, N
denotes the total number of samplings. Figure 5 shows the block diagram of a
multiple fuzzy control system. From equations (12)-(14), the gradient of J with
respect to w, becomes
dJ{k) dJ{k) de{kT)du{kT)
dwi " de{kT) du(kT) dw,

*:=0 ^ '
500

Learning
mechanism
+ e
Fuzzy «i

[^Le controller
1

Plant

H Fuzzy
Uu
controUer
M
Linear NN

Fig.5 Block diagram of a multiple fuzzy controller

Therefore, using the delta rule (Rumelhart et al., 1986) gives the following u p d a t e
equation for w,:
N
de{kT)
o,{i +1) = «,.(/) + , Y. ^^(^^)^;7Pf("'(^-^) ;i6)
dv{kT)
fc=0

where / denotes the l-ih. u p d a t e time and r; is a small positive constant. Since in the
application of a fuzzy control the plant structure or p a r a m e t e r s may be unknown,
we will evaluate the Jacobian 89 jdu in equation (16) as

de,{kT) AOiikT)
l,...,m,j = l,...,p (IT)
dujikT) Auj{kT)

where Auj{-) and A^i(-) are generated from the input a n d o u t p u t data. If the plant
is originally a discrete-time system with no any time-delay of the input, then we
must evaluate d6i[kT)/duj[(k — 1)T] instead of (17). Note however t h a t if the plant
s t r u c t u r e and parameters are completely known, then we can obtain the Jacobian in
an accurate form. Note furthermore t h a t we can readily apply the s t a n d a r d linear
identification algorithm, for example, by the K a l m a n filter ( W a t a n a b e f.t al., 1991)
t o estimate toi, because equation (13) is linear with respect to iv,.

6. E Q U A T I O N O F M O T I O N F O R T H E MANIPULATOR
We consider a two-link manipulator model as shown in Fig.6. T h e equation of
motion is assumed to be given by (1), but with

M n =Ii+l,+ m,l]^ + m2illi + ll^ + 2/„Wj2Cos(^2))


501

joint 1
Fig.6 Two-link m a n i p u l a t o r model

Mi2 = M 2 1 = I2+ m 2 ( / j 2 + lnllg2COs{e2)), M22 = h + "^2/^2

V, = -m2lnilg2sm(e2)i29i + 62)82, V2 = m2/„W,2sin(6l2)^f

where M = [Mjk],V = column{y^}(i = 1,2; it =- 1,2), 6 = [6»i 02^, r =


[''"1 ^•2]'^- Here, 6^ is the j - t h joint angle, r, is the driving torque a r o u n d the j ' - t h
joint, Ij is the moment of inertia for the j-th. link, rrij is the mass of t h e j - t h link,
l„j is the length of the j-th link, Igj is the distance from the joint j to the center
of gravity of the j - t h link. T h e measured real parameters of the m a n i p u l a t o r are
given by Table 1.

7. S I M U L A T I O N EXAMPLES

To simulate the motion for the above r u b b e r muscle manipulator, we use the
4th-order Runge-Kutta-Gill m e t h o d . It is assumed t h a t the control sampling period
is T = 25 [ms], the step width of t h e integration is 0.5 [ms], and the initial states are
01 = 0.7304 [rad], 02 = 0.4858 [rad], ^i = ^ 2 = 0 . Further, assume t h a t the reference
A
trajectories Xd{t) x{t) y{t)] in the work-coordinate systems are given by

x{t) = 25cos(7ri/5) + 300 (18)


502

Table 1 Real parameters of a r u b b e r muscle m a n i p u l a t o r

Mass Inertia Length Length of c.


m , (kg) li (kgm^) /„,(m) Igi (m)

nominal actual
Link 1 1.39 0.02734 0.03281 0.385 0.160
Link 2 0.65 0.00117 0.00189 0.110 0.057

NB NM ZO PM PB

0
-12
Fig.7 Membership functions for 5 labels

y(t) = 25sin(7r</5) + 3 6 0 (19)

which are the circular trajectory with 25 [mm] radius, and the corresponding cycle
is 10 [s]. From solving the inverse kinematics problem, the reference angles Oj{t) =
[Odi{t) ^d^]^ in the joint-coordinate systems are also given by

e j j ( i ) = atsai2{y,x) ~ g,ttin2{k,x'^ + y^ + /? - l\) (20)

0d2{t) = atan2(«;,a;^ + y"^ - l\ ~ ll) (21)

K = yj{x^ + y^ + q + qy - 2[{x^ + y^y + it + it] (0-7)

T h e reference angular rates are assumed to be ed{t) = [^di(t) 6d2]'^ = 0. In the


following simulations, note t h a t the nominal p a r a m e t e r s of Table 1 arc assumed
t o be used for a controller design, b u t the actual values are used in the numerical
model.
503

7.1 Fuzzy Compensation


In this simulation, the fuzzy compensator was apphed to the computed torque
control system. Five membership functions and the control rule table t h a t were
applied to the simulation are shown in Fig.7 and Table 2, respectively. Here, each
label means t h a t N B : negative big, NM: negative medium, ZO: zero, P M ; positive
m e d i u m , and P B : positive big. T h e membership functions were also assumed to
consist of discrete sets with the support set [—12,12]; they took the discrete grades
[0,1.6,3.3,5.0,6.6,8.3,10]; and their values were stored as a look-up table in the
computer.
We first considered a case when we does not tune the feedback gains Kp =
d\^g{kj,i,kj,2),Kv = diag(/;„i, ^£,2) to obtain the desired tracking error responses,
in which the feedback gains t a b u l a t e d in Table 3 were determined by k\,i = 2\Jkj,t.
T h e i n p u t / o u t p u t scalers for fuzzy controllers used here are also t a b u l a t e d in Tabic
4.
T h e control results are shown in Figs.8 ~ 11, in which Fig.8 represents the
results due to only a C T (computed torque) m e t h o d with u n t u n e d gains; Fig.9
stands for the results due to adding the F C (fuzzy compensator) to the C T method;
Fig. 10 represents the results due to only a C T m e t h o d with tuned gains; and Fig. 11
is the work coordinate trajectory corresponded to Fig.9. It is seen from these figiu-es
t h a t the performance of the C T controller with u n t u n e d gains is improved by adding
the fuzzy compensator having adaptive input scalers.

Table 2 Control rule table


for 5 labels

Ae,

NB NM ZO PM PB
NB -12 -12 -12 -6 -6
NM -6 -6 -6 -6 6
ZO -12 -6 0 6 12
PM -6 6 6 6 12
PB 6 6 12 12 12

7.2 Multiple Fuzzy Control


In this simulation, we simulated a multiple fuzzy controller having two elemen-
tal fuzzy controllers F C l a n d F C 2 , in which the F C l has the control rule given by
Table 2 and the FC2 has the control rule given by Table 5.
504

Table 3 Feedback gains of computed


torque control

k„ [1/s^] fcm [1/s] k. . [1/s']


Fig.9 Link 1 10 3 *

Link 2 40 6 *
Fig.ll Link 1 30 8 150

Link 2 100 9 300

Table 4 I n p u t / o u t p u t scalers for


fuzzy compensation

GIN(f) GIN(2 + i) GOU(0

Link 1 1000 10000 0.03


Link 2 1000 10000 0.00007

In the following, we assumed t h a t the weighting factors Wi are u p d a t e d every


sampling, so t h a t the s u m m a t i o n in (11) or (14) is excluded, and t h a t the trial of
one learning is m a d e within the control interval 10s. Note t h a t if the input torque
is constant t h e n Auj{kT) becomes zero, so t h a t wc can not c o m p u t e (17). To
overcome such a singularity, we modified (16) and (17) such as Wi(l -f 1) = I'^iJ) if
Auj(fcT) is approximately zero.
T h e results of a case when each elemental fuzzy controller is singly applied to
the plant are shown in Fig.12, where i n p u t / o u t p u t scalers for F C l and F C 2 are
t a b u l a t e d in Tables 6 a n d 7. It is seen from this figure t h a t the control results are
not necessary t o be satisfactory. It is observed, however, t h a t the result due t o
the multiple fuzzy controller gives a good control response after one learning trial
as shown in Fig.13, where T] = 0.0001, tz;i(0) = W2(0) = 0.5. T h e associated work
coordinate trajectory is also depicted in Fig.14.
505

T 1 I 1 1 1 1 1 1 r
Set point
55 0.8 Response

0 5 10
1 1 1 1 1 1 1 1 1 1 1
^1.2
T3
(0 - ,f^
// ^
^0.8 - // ^ V
CD
- //// \
\ -
3 //
// -
3-04 " \ //
• \
//
O 1 1 I l l 1 ""

5 10
Time (s)

Fig.8 Control results due to the computed torque method


with untuned feedback gains

~1 1 1 1 r "1 I V
Set point
"i 0.8
Response

J I ] L
0 5 10
1 1 1 1 1 1 1 1 1 1 1
1?
T3
km.

^^-^
(M
OR \
O)
+-•
3 \ -
Q. -
3
0.4
o " 1 1 1 1 1 1"

5 10
Time (s)
Fig.9 Control results due to the computed torque inethod
with fuzzy compensation
306

1—I—I—I—r

roO.8 — Set point


— Response

f 0.4

5
Time (s)
Fig.10 Control results due to the computed torque method
with tuned feedback gains

1 1 1 1 1 1 1

400 - Desired trajectory


- Actual trajectory

I 380 //
//
// \
i
I
\\
' 360 1
>- ll
1
//
//
//
//
340- >>•
1 1 1 1 1 1 1

260 280 300 320 340


X-Axis (mm)

Fig.11 Control result in work-coordinate systems due to


the computed torque method with fuzzy compensation
507

Table 5 Control rule


table for 3 labels

ei Ae,-

NB ZO PB
NB -12 -12 -12
ZO -12 0 12
PB 12 12 12

Table 6 Input/output scalers


for fuzzy controller FCl

GIN(i) GIN(2 + i) GOU(0


Link 1 100 5000 0.1
Link 2 100 5000 0.01

Table 7 Input/output scalers


for fuzzy controller FC2

GIN(i) GIN(2 + 0 GOl]{i)


Link 1 500 10000 0.05
Link 2 500 10000 0.005
508

1 1 1 1 r
l i 0.005

CD

o
I™
CD

g-O.OOSh

W 0.02
CD

m
"3 -0.02h
f
Time (s)
Fig. 12 Control results due to the elemental fuzzy
controllers FCl and FC2

1 I I—I I—I—I—I—I—1—r
2 0.004 0 th

f: -0,004
zi
a.
3 -O.OOBi -J t J I I L I .J I __1__iZ
0 5 10
g 0.02
CM
CD

B- ^0.02
J i L I I i I I I I I I

Time |s)

Fig.13 Control results due to the multiple fuzzy controller


509

400 Desired trajectory


Actual trajectory

"E* 380

.2
T 360

340:

260 280 300 320 340


X-Axis (mm)

Fig. 14 Control result in work-coordinate systems due to


the multiple fiizzj controller

8. C O N C L U S I O N S
We have applied the fuzzy logic controller for controlling a irmlti-link robot
manipulator with rubber muscles. We usuallj can not obtain the perfect physical
parameters to mathematically model the manipulator and we also require some
trials and errors to tune the feedback gains of the computed torque controller, even
though we have a considerably accurate model. Using the independent fuzzy rea-
soning, we have first shown that the simple fuzzy controller is useful for designing a
robust computed torque control system. Kext, we have also shown that an iterative
learning fuzzy controller is eiiective for controlling the same manipulator without
any modehbased controller.

9. R E F E R E N C E S
C h e n , Y.H., R o b u s t Control System Design: K o n - A d a p t i v e Versus A d a p t i v e , Int. J. Contro!, 51-6,
pp.1457^1477 (1990)
Corless, M . J . , Tracking Coiitrolleis for Uncertain Systems: Application to a Mantitec R3 R o b o t , ASME
J. of Dt/namic Syaiems, Meas. and ConiToI, 1 1 1 , pp.609^618 (1,989)
Corless, M.,1. and L e i t m a n n , G., Coiitiiiuoiis S t i t e Feedbaclt G u a r a n t e e i n g Uniform U l t i m a t e Bounded-
ness for Uncertain Dynamical Systems, IEEE Trans. Aut. Control, A C - 2 0 , p p . H S 9 - H 4 4 (1981)
Daley, S. and Gill, K . F . , A design s t u d y of a self-organising fuzjy logic controller, Proc. htsi. Meek.
Eng., 2 0 0 - C l , pp.59^69 (1986)
510

DeCarlo, R.A., Zak, S.H., and M a t t h e w s , G.P., Variable S t r u c t u r e Control of Nonlinear Multivariable
Systems: A Tutorial, Proc. IEEE, 7 6 , pp.212-232 (1989)
Linkens, D.A. and Hasnain, S.B., Self-organising fuzzy logic control and application to muscle relaxant
anaesthesia, lEE Proceedtngs-D, 1 3 8 - 3 , pp.274-284 (1991)
Hayashi, I., Nomura, H., and Wakami, N., Acquisition of Inference Rules by Neural Network Driven
Fuzzy Reasoning, J. of Japan Society for Fuzzy Theory and Systems, 2-4, pp.585-597 (1990) (in
Japanese)
Horikawa, S., Furuhashi, T., O k u m a , S., and Uchikawa, Y., A Learning Fuzzy Controller Using a Neural
Network, Trans, of the Society of Instrument and Control Engine€rs,27-2, pp.208-215 (1991)
(in J a p a n e s e )
Hui, S. and Zak, S.H., R o b u s t Synthesis for U n c e r t a i n / N o n l i n e a r Dynamical Systems, Automatica, 28-2,
pp.289-298 (1992)
Imura, J., Sugie, T., and Yoshikawa, T., A d a p t i v e R o b u s t Control for R o b o t M a n i p u l a t o r s , Trans, of
the Society of Instrument and Control Engineers, 2 7 - 3 , pp.314-319 (1991) (in J a p a n e s e )
Maeda, M. and M u r a k a m i , S., Self-Tuning Fuzzy Controller, Trans, of the Society of Instrument and
Control Engineers, 24-2, pp.191-197 (1988) (in J a p a n e s e )
M a m d a n i , E.H., Application of fuzzy algorithms for control of simple d y n a m i c plant, Proc. lEE, 121-12,
pp.1585-1588 (1974)
M a m d a n i , E.H., Advances in t h e Linguistic Synthesis of Fuzzy Controller, Int. J. Man-Machine Studies,
8-6, pp.669-679 (1976)
M i z u m o t o , M., Fuzzy Reasoning M e t h o d s for Fuzzy Control, J. of the Society of Instrument and
Control Engineers, 2 8 - 1 1 , pp.959-963 (1989) (in J a p a n e s e )
Procyk, T . J . and M a m d a n i , E.H., A Linguistic Self-Organizing Controller, Automatica, 1 5 , pp.15-30
(1979)
Psaltis, D., Sideris, A. and Y a m a m u r a , A.A., A Multilayercd Neural Network Controller, IEEE Control
System Mag.,, 8, pp.17-21 (1988)
R u m e l h a r t , D.E., McClelland, J.L., and the P D F Research G r o u p , Parallel Distributed Processing, 1,
M I T Press (1986)
Tanji, J. and Kinoshita, M., A Fuzzy Controller with a R o b u s t Learning Function, T r a n s , of ikt Society
of Instrument and Control Engineers, 23-12, pp.1296-1303 (1987) (in J a p a n e s e )
Utkin, V.L, Variable S t r u c t u r e Systems with Sliding Modes, IEEE Trans. Aut. Control. AC-22,
pp.212-222 (1977)
W a t a n a b e , K., Fukuda, T. and Tzafestas, S.G., Learning algorithms of layered neural networks via
extended K a l m a n filters, Int. J. Systems Set., 22-4, pp.753-768 (1991)
W a t a n a b e , K. and Tang, J., Learning Controller based on Fuzzy Gaussian Neural Network, Proc. of
2nd Symposium, on Intelligent Systems, Nagoya, 920-87, pp.255-260 (1992) (in J a p a n e s e )
W a t a n a b e , K., Shiramizu, K., and Fukuda, T., Multiple Fuzzy Controls, Trans. JSME, Series G,
Vol.58, No.554, pp.2970-2976 (1992) (in J a p a n e s e )
W a t a n a b e , T. and Ichihashi, H., Fuzzy Control of a Robotic M a n i p u l a t o r by the Feedback Error Learn-
ing, Trans, of the Institute of Systems, Control and Information Engineers, 3-7, pp.212-217
(1990) (in J a p a n e s e )
Yamazaki, T. and Sugeno, M., Self-Organizing Fuzzy Controller, Trans, of the Society of Instrument
and Control Engineers, 20-8, pp.720-726 (1984) (in J a p a n e s e )
CHAPTER 19

FUZZY PETRI NETS AND APPLICATIONS

Carl G. Looney

Computer Science Department/168


University of Nevada
Reno, NV 89557, U.S.A.

I. INTRODUCTION
Networks for information flow were invented in the dissertation of C. A. Petri (1961) [21]
at the University of Bonn. A. W. Holt and F. Commoner (1970, [9]) extended them and
called them Petri nets. Peterson (1981, [20]) and Reisig (1985, [23]) provide treatises on
the theory of Petri nets, that are used nowadays to model flows such as parts and
materials in manufacturing processes (Zhou and Leu, 1991 [32]), and logical truths in
machine reasoning systems (Looney, 1988, [15], and Murata et al, 1991, [19]).
For our purposes, a logic Petri net P consists of i) a net architecture; and ii) an
operational procedure. Architecturally, it is a directed graph that consists of two kinds
of nodes: a) conditions, designated by circles; and b) events, denoted by bars. The
conditions and events are connected by arrows according to two rules: 1) an arrow may
connect from a condition to an event, or from an event to a condition; and 2) an arrow
may never connect two nodes of the same kind. Figure 1 is an example of such a scheme.
Procedurally, the net uses tokens, represented graphically by dots inside condition
nodes, to activate the conditions where they appear. A token denotes a Boolean truth
value of 1 for the condition, while the absence of a token indicates a value of 0. An event
is enabled when every arrow entering it comes from a condition that contains a token. An
enabled event fires to activate (i.e., make true) all conditions to which its departing
arrows directly connect, by sending them tokens. In Figure 1, Condition C2 is activated,
i.e., made true, with a token. A clock is implicit in the net in that it connects to each
event so that upon being enabled, an event fires on the next clock pulse. A clock is
necessary to maintain sequential order.
A logic Petri net that interacts with the external world has boundary nodes that
connect to the external environment. In Figure 1, Condition Cj, and Events Ej, and E^,
are boundary nodes. Arrows enter boundary conditions from the environment, and arrows
depart boundary events to the environment. External events that activate boundary
conditions are called sources, while external conditions that are activated by boundary
events are called sinks. The operation of a logic Petri net is initiated when certain source
events fire to activate boundary conditions. These enable events that fire to activate other
conditions, which may in turn enable other events to fire to activate other conditions, etc.
511
S.G. Tzafestas and A.N. Venetsanopoulos (eds.)
Fuzzy Reasoning in Information, Decision and Control Systems, 511-527.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
512

FIGURE 1 - A L O G I C PETRI NET

SOURCE BOUNDARY ____^^^ .

•oF' /^^2 ^
~1
\^)—
1 EG'N. fs '
I )K}__ ^C^
1 ^r
1 '^ET^" "^'1
1 C g ^ CyM 1
1 "cP
I -^6 J
——. / — — /
SINK/ BOUNDARY SINK/

FIGURE 2 - A LOGIC PETRI NET AFTER FIRING


e m 1 RCE BOUNDARY

\oJ—^
1
1
•^10

Ep ^ " ^ ^ ^
~ ^ 1
1
1
1
CPN
" ^
^H-^1
L J
SINKi^7 BOUNDARY SINK/

Conditions are propositions, i.e., statements that must be either true or false. In Figure
1, conditions Cj, Cj and C^Q are true initially, as designated by the tokens. This causes
Event Ej to be enabled by Cj and Cj, so that Ej fires on the next clock pulse to activate
513

conditions C3 and C4, as shown in Figure 2. The truth of C4 enables Event E3, which fires
to activate Condition C^, and C3 enables Ej, which fires to activate both conditions C5
and Cg. Further enabling, firing, and activation cause Event E5 to fire to propagate a truth
token to a sink. Note that there is no conservation of tokens, which may split or combine.
The firing of events corresponds to the modus ponens syllogism. Figures 1 and 2
show that the net architecture contains the built-in rule [(Cj AND Cj) - • (C3 AND C4)],
which is equivalent to the two rules [(C^ AND Cj) -» C3] and [(C^ AND Cj) "* C4].
When the rule antecedent (C^ AND C2) is activated (made true), then the rule events
(implications) are enabled to fire and activate the rule consequents C3 and C4. Thus AND
logic can be modeled in both antecedents and consequents of rules. Condition Cg can be
activated by the firing of either Event E3 or Ey, so OR logic is implemented. We
incorporate NOT into the net by putting a small circle on the end of an arrow to denote
negation, as shown at Event E7 in Figures 1 and 2, to signify the rule [NOT CJQ - • Cg].
Nonspecific rules of the form [C^ - • (C^ OR C„)] are not modeled because they do not
specify which of the consequent conditions is activated. Rules of the form (C OR C^) -*
Cn, may be considered to be two separate rules: [Cj -» C^], and [C^ -» C^].
Now let C = {Cj,...,C„} be the conditions of a logic Petri net P. A marldng of P is
a vector M = (mi,...,mj that distributes truth values over the n conditions, where raj =
1 denotes a token (truth value of 1) for Condition Cj, else m; = 0 indicates that C; is false.
We also call M the truth state of P. In Figure 2 the truth state is M =
(1,1,1,1,0,0,0,0,0,1). Because a Petri net is dynamic, there is particular interest in any
sequence {Mo,Mj,...,Mf} of markings that ensues from firings of events due to an initial
marking MQ. We say that a marking Mj is reachable from MQ if and only if there is a
sequence of such markings MQ,...,Mf. When an initial marking M^ starts a sequence of
markings (truth states), the net may eventually reach a marking Mj that does not change
further. In such a case, Mj = (mj^^,...,m„^^ is the final truth state and indicates all of the
true conditions that can be deduced from the initial truths in MQ. Deadlock is a situation
where the logic Petri net has no enabled events, in which case no rules can fire to
propagate truths. A deadlocked Petri net remains in a fixed state (marking).

n . FROM FUZZY SETS TO FUZZY VARIABLES


Fuzzy control arose in response to difficulties in the control of complex systems.
According to D'Ambrosio (1989) [1]: i) there may be no detailed model of the process
to be controlled, ii) known models may be too complex, nonlinear, or time-varying to be
handled by tractable mathematical methods, iii) necessary assumptions may be
unacceptable, iv) the derived models may not respond adequately to noise in certain of
the variable measurements, and v) the performance and stability may be unsatisfactory.
Mamdani (1974) [16] applied Zadeh's ideas (1965 [30], and 1973 [31]) to the problems
of control, and thereby initiated fuzzy control with qualitative fuzzy rules that emulate an
expert human operator using heuristic rules (see Mamdani, 1975, [17], and 1976, [18]).
Tong (1977) [28] described the logic for fuzzy rules in fuzzy control systems, and
Sugeno (1985) [26] provided an overview of fuzzy control. Expert systems are rule-based
systems restricted to a particular domain of expertise (see Hayes-Roth (1985) [7]).
Efistathiou (1987) [3] applied rule-based systems to industrial control. Looney (1988) [14]
514

used fuzzy truth state operated on by fuzzy rule matrices with MIN/MAX logic to reason
forward, and also used a fuzzy Petri net (1988) [15] to model fuzzy reasoning for control.
Lipp (1983) [13] also used a Petri net for modeling a complex controller, but it did not
implement logic flow. Postlethwaite (1990) [22] discusses fuzzy expert systems.
A fiazy set F (with respect to a universal domain set X) is the set of all elements x
e X, along with a membership Junction fif(x), where 0 « ^p(x) s 1, that gives the extent
to which each x in X belongs to F. For fuzzy sets F and G on the domain X, the fiazy
intersection is the set FDG of all elements in X with the fuzzy membership function
defined via: fifpfjOi) = min{Mp(x),/Zo(x)}. Thus x belongs to FflG only to the (least)
extent that it is a member of both F and G. The fiizzy union is the set FUG of all
elements x e X with fuzzy membership % U G W ~ ^^^{f^^)^(^)}- Then x belongs to
FUG to the (greatest) extent that it belongs either to F or G. The fuzzy complement of
F is ~F with fuzzy membership function yM_p(x) = 1 - fif(x), so that x belongs to ~F to
the extent that it does not belong to F.
When let X and Y be two different universes of discourse, and F is a fuzzy set on X
and G is a fuzzy set on Y, then what is the meaning of FflG and FUG? Because / ^ x )
and ^ ( y ) each take on values between 0 and 1, they are comparable, so we define E =
FOG to be the fuzzy set on XxY that has set membership function fij:fya{^,y) =
m[n{/if(x),fiQ(y)} for any (x,y) E XXY. This is the extent to which it is true that x belongs
to F and y belongs to Y. Similarly, H = FUG is a fuzzy set with /HpjQix,y) =

We adopt a nonstandard perspective that a fuzzy set F is a fiazy variable, analogous


to a Boolean variable. While a Boolean switch is either OFF or ON (0 or 1), a Zadeh
(fuzzy) switch can be any proportion of the way between OFF or ON. A fuzzy variable
F that represents a condition has an associated fuzzy truth value |F|. If F is the condition,
"Temperature is MEDIUM," then |F(x)| = |Up(x) provides the extent to which the
temperature belongs to the fuzzy set MEDIUM, defmed on the range of temperature
values of X (this fiazifies the temperature readings x). Now let G be the fuzzy variable
for the proposition, "The valve is OPEN." Then ~G is the proposition for, "NOT the valve
is OPEN", or, "The valve is CLOSED." If |G(x)| = 1/4 (the valve is 1/4 of the way open
for x), then |~G(x)| = 1 - |G(x)| = 3/4 (the valve is 3/4 of the way closed). The AND and
OR logical operations of Boolean logic can be defmed, respectively, as MIN and MAX
(for minimum and maximum), which is included in the fuzzy case. The NOT Boolean
operation is also included in the fuzzy complement ~F = 1 - F.

n i . FUZZY LOGIC SYSTEMS


We can now define a fiazy logic as a triple J ^ = (V,T,IH), where V = {A,B,C,...} is a set
of fuzzy variables, T = [0,1] is an interval of truth values, and "H - {MAX, MIN, NOT,
-», • } is a set of logic operations on VxV into V (or V into V for the unary NOT). Table
1 displays the truths of the mapped variables. The first row is MIN (AND), the second
is MAX (OR), the third and fourth apply to implication (-^), the fifth is equivalence (•),
and the sixth is NOT. If A and B are Boolean variables, then they are restricted to the
values 0 and 1, in which case MIN (AND), MAX (OR) and NOT hold. Fuzzy equivalence
includes the Boolean case, but the fuzzy case allows a fuzzy degree of equivalence.
515

TABLE 1 - FUZZY TRUTH TABLE


INPUT LOGIC FUZZY/BOOLEAN FUZZY TRUTH
VARIABLES OUTPUT VARIABLE OUTPUT
1. A B C = (A MIN B) |C| = |A| MIN |B|
2. A, B C = (A MAX B) jcj = |A| MAX |B|
3. A,B C = (A—B) |C| = 1, | A | s l B |
4. |C| = 1-(|A| - |B|). | A | ^ | B |
5. A, B C = (A - B) |C| = 1 - I |A(x)|-|B(x)| |
6. A C = NOT A jcj = 1 - |A|

Implication is a combinational operation that assigns a fuzzy truth to the result, and
is not the same as the modus ponens law of logic [A AND [A -»(f) B] that means: the
implication fuzzy truth f of [A -* B] and the fuzzy truth |A| of A imply the fuzzy truth
|B| of B. The fuzzy truth f is a proportion of openness of a fuzzy switch, so an
implication [A -»(f) B] with truth |A -»(f) B| = f > 0, and the fuzzy truth |A| of A, imbue
B with the truth of A up to the truth (openness) f of the implication switch. On the other
hand, the implication truth f can not pass a truth to B that is greater than the source truth
of A. Therefore, the model for the truth of B is |B| = min{|A|,f} = |A| MIN (f). This
model also holds for implication in Boolean logic. Of course, B may have a truth value
due to some other implication or due to fuzzification. We may restrict the implied truth
of B to the A-context, i.e., the truth contribution to B only from A, designated by jB^^^J.
Contextual fuzzy implication holds for Boolean logic also.
Fuzzy modus ponens: This is the basic implication law: (A AND [A -»(f) B]) - • B.
The transferred fuzzy truth due to A and [A - • B] is defined to be |B/^J = |A| MIN f,
according to the above discussion. A must be initialized with a positive truth value, i.e.,
become a fUzzy fact, to fire and activate B with a fuzzy truth value. Fuzzy modus ponens
and contextual implication allow the building up of evidential truth for B from the various
contextual implications, and then combining all truths logically for a final truth value, say
|B| = max{|B,y^-,|,|B,D-,|}, where A and D each implies B. For example, let (A ^•(0.3) B)
and (D -»(0.8) B) be propositions. For |A| = 0.6 and |D| = 0.7, B^^) is activated (only
from A) with the truth min{0.6,0.3} = 0.3, but B-^s is activated (only from D) with the
truth min{0.7,0.8} = 0.7. Thus the truth of B fi-om A OR D is |B| = max{|B, J.lD,^)!} =
max{0.3,0.7} = 0.7.
Not all laws of Boolean logic extend to fuzzy logic (see Sugeno and Takagi, 1983
[27], Dubois and Prade, 1987 [2], and S. Weber, 1985 [29]). Kosko (1986) [10]) questions
the truth of the law of contraposition (modus tollens) in the world of partial (fuzzy)
implication (i.e., (A - • B) is true if and only if (~B - • ~A) is true). His example is that
(smoking -» lungcancer) is true to some extent, but that does not imply the extent to
which (NOT lung_cancer -* NOT smoking) is true. We demonstrate that fuzzy
contraposition holds under constraints.
Fuzzy Contraposition: Let |A| s f and 1-|A| s f. Then X = (A -»(f) B) has fuzzy truth
f if and only Y = (~B -•(f) ~A) has fuzzy truth f. For the Boolean case where f = 1, this
always holds. We note that this is not the fuzzy modus tollens logic law: (NOT B AND
[A - • B]) -^ NOT A).
516

Proof: Let |A| s f and |~A| = 1-|A| s f. Then X = (A -»(f) B) means that |B| =
min{|A|,f} = |A|. Thus 1-|B| = 1-|A| so that |~B| = |~A|. Then we can write (~B -•(f) ~A),
because |~A| = |~B| = min{|~B|,f}. By symmetry due to ~(-F) = F, the argument in the
reverse direction holds.'
For a counterexample, let |A| = 0.2 and f = 0.6, so (A -*[0.6] B) means that |B| =
min{0.2,0.6} = 0.2. But |~B| = 0.8, so that (~B -*[0.6] ~A) means that |~A| =
min{0.8,0.6} = 0.6 ^ 0.8 = 1 - 0.2 = 1 - |A|. Thus contraposition fails here, and f < 1 -
|A|. For another counterexample, let |A| = 0.75 and f = 0.5, so that |B| = min{0.75,0.5}
= 0.5. Then contraposition (modus tollens) means that |~A| = min{|~B|,f} = min{0.5,0.5}
= 0.5 K = 0.25 = 1 - 0.75 = 1 - |A|. For an example that satisfies the hypothesis of fuzzy
contraposition, let |A| = 0.4 and f = 0.8. Then |B| = min{0.4,0.8} = 0.4. Contraposition
then implies that |~A| = min{|~B|,f} = min{ 1-0.4,0.8} = 0.6, so that |A| = 1 - |-A| = 0.4,
which is consistent.
The fuzzy operations NOT, MIN, MAX, contextual implication, and equivalence are
sufficient for our needs, and they imply the truths of certain laws such as the De Morgan
laws, which are needed to convert to conjunctive normal form (CNF) or disjunctive
normal form (DNF) (see Schalkoff, 1990 [25], or Rich and Knight, 1991 [24]). The
former form is the conjunction (ANDing, or MINing) of disjunctions (ORing, or MAXing,
of variables), e.g., (A MAX B) MIN (C MAX D MAX E) MIN (F). The latter form is
the disjunction (ORing, or MAXing) of conjunctions (ANDed, or MINing, of variables),
e.g., (A MIN B MIN C) MAX (D) MAX (E MIN F). These are also known as product-
of-sums and sums-of-products, respectively.
Fuzzy De Morgan Laws: i) ~(X MIN Y) = (~X MAX -Y); ii) -(X MAX Y) = (~X
MIN ~Y).
Proof: The first one follows from the fact that ~(X MIN Y) has the truth value 1 -
min{X,Y} = 1 - (1 - max{l-X,l-Y}) = max{l-X,l-Y} = (~X MAX ~Y). The second
argument is similar.'

IV. FUZZY RULE-BASED SYSTEMS


R. C. T. Lee (1972, [11]) investigated the principle of resolution in fuzzy logic. Forsyth
(1984) [4] discusses expert systems with fuzzy values providing certainty factors.
Recently, Garg et al (1991, [5]) addressed the question of reducing fuzzy clauses to check
consistency in a fuzzy knowledge base. Informally, a fuzzy proposition is any statement
that can be assigned a fiizzy truth value. Formally, a Jiizzy proposition is: i) any fuzzy
atom (an indivisible fuzzy proposition); ii) any result of MINing or MAXing two fuzzy
propositions; iii) the complement of any fuzzy proposition; iv) any contextual implication
(A -*(T) B) for any fuzzy propositions A and B; and v) any finite combination of the
above. We will use fuzzy variables to represent propositions.
Afiizzy rule is a fuzzy proposition of the form X = (A -»(f) B), where A and B are
fuzzy variables that represent fuzzy propositions (conditions) that assume fuzzy truth
values |A| and |B|. A and B are, respectively, the antecedent and consequent propositions,
or conditions, of the rule X. A fiazy knowledge base is a set of fuzzy propositions 9 that
contains both a subset C of conditions and subset 91 of fuzzy rules connecting the
conditions to model the behavior of a system, or environment. The rules have nonzero
517

fuzzy implication truths. Conditions may have zero truth values until initialized with fuzzy
truths for a process of fuzzy deduction, at which time they become fuzzy facts. Others
may obtain nonzero fuzzy truths upon being activated by the firing of one or more rules.
Aft4zzyrule-based system contains: i) a fuzzy knowledge base; ii) a condition initializing
function to post fuzzy facts; iii) an inference function for scheduling and interpreting
rules (to fire each rule or not); iv) a user interactive procedure; and v) an editor.

V, FUZZY PETRI NETS


A fuzzy Petri net is a logic Petri net that uses fuzzy logic rather than Boolean logic. The
architecture softwires a specific set of rules of the forms: i) (Aj AND...AND A^) - • (Bj
AND B2 AND...AND B„); ii) (Ai OR Aj OR...OR A„) - • (Bj AND...AND B„); iii)
[(All AND...AND Ai J OR...OR (A^i AND...AND A^.^] — (Bj AND...AND B„); or iv)
[(All OR...OR Aj J AND...AND (\i OR...OR A^p)] -* (Bi AND Bj AND...AND B„);
for k, m, n * 1, where the Aj and Bj are fuzzy variables that represent conditions. Of
course, we use MIN in place of AND and MAX in place of OR. As in the case of the
logic Petri net, we do not use nonspecific rules that have ORed consequents. We also
break up ORed antecedents to form separate rules, similar to Prolog. For example, ((A
OR C) -» B) becomes (A - • B), (C -»• B). Figure 3 shows a fuzzy Petri net.

FIGURE 3 - A SIMPLE FUZZY PETRI NET

-^02
Cs
E X ^ ^^^A^
1—
z
'y^"uT^ LJ
z-

^3/
>
C*\ •-10 / Z
UJ

V^Cg Q r^s K
A3 %

^02
^03 E^,Ir><C_
^^01

The procedures for enabling events to fire on the next clock pulse, and for the
activation of fuzzy truths of conditions by event firings, are more complicated than in the
Boolean case. We describe them with two new definitions. For any node Nj of either kind
(condition or event), the set of all nodes from which arrows enter Nj is called the preset
of Nj, denoted Nj. The set of all nodes that are entered by arrows departing Nj is called
518

the postset N; of Nj. For example, in Figure 3, Ej = {€^,€5} is the preset of E^, Ej
{Cg} is the postset of Ej, and Cj^* = {Ej.Es} is the postset of CJQ.

FIGURE 4 - EXAMPLES OF ACTIVATING AND MARKING UPDATES

(a) Example o f Enabling U p d a t e

nj = 0,6

e, = 0 . 6

Qj = 0.6

fg= 0.76

r:^= 0.76

(b) Example o f Marking Update

The Event Ej of Figure 4(a) is enabled only if each condition in its preset Ej
contains a token that represents a nonzero truth value (a nonzero fuzzy marking). These
fiizzy values from the preset conditions are MINed to obtain a fuzzy enabling value Cj
= min{mi:Cj£*Ei} at Ej. Because an Event Ej represents an implication, it must have a
fiizzy implication value fj. The activating value propagated across the implication event
is then a^ = min{fj,ej} = min{0.65,0.6}, and this activates each of the conditions in E^'
with the fuzzy truth aj = 0.6. In Figure 4(a), the Event E^ enabling value was obtained
via Bj = min{mi,m2,m3} = min{0.6,0.7,0.8} = 0.6.
The Condition C^ of Figure 4(b) is activated by more than one event in its preset C^.
Each Event E- e C4 activates C4 with an activating value a: that provides evidence for
the truth of C4 only from Ej (contextual implication). Another Event E^ e *C4 also
activates C4 and provides its contextual implication (evidence) a,^ only from E^^. But the
existing truth (fuzzy marking) of C4 also represents evidence obtained previously from
some other origin. Then the updated activating truth, or evidence, for C4 is 34 =
max{|C4|,a^aj} = max{m4,a,j,aj}. On the clock pulse where a4 becomes the fuzzy truth of
Cj, then a4 becomes the new marking (state) m4 for C4, where j = 1 and k = 2 in Figure
4(b) that shows the computation of a new marking m4 for Condition C4, where the present
fuzzy truth of C4 is m4 = 0.7. The new marking is assigned a new fuzzy value via m4 «-
max{aj,a2,m4} = max{0.6,0.76,0.7} = 0.76.
A thresholded fuzzy Petri net uses a fuzzy activation threshold value X- at each jth
Event Ej. When Event Ej with threshold t has a fuzzy implication value f, and an
519

enabling value e,, then the enabled Event E: fires only if the activating value aj =
min{£,ej} satisfies aj s tj. Thresholds guarantee that decisions are not made based on
weak evidence.

VI. A FUZZY PETRI NET ALGORITHM


The fuzzy truth state of a fuzzy Petri net with n conditions Cj .Cj,—, C„ is the current
vector of fuzzy markings M = (mi,m2,—,m„), where m-^ is the current fuzzy truth of Cj.
Let E = (ej,e2,.".e„) be the vector of event enablings, where the Event Ej has the enabling
value Cj given by the minimum of all marking values (activations) of its preset conditions
in Ej. An algorithm to propagate the initial fuzzy truths of the conditions through the
system needs two stages: i) for each Event Ej, j = 1 m, get the markings of the
conditions in the preset Ej, compute the event enabling value Cj by minimizing these
markings, and then compute the activating value aj = min{ej,fj}; and ii) for each
Condition Cj, get the activating values of its preset events in 'Cj and compute the new
marking m as the maximum of the current marking mj of Cj and all activations from
preset events.
An algorithm requires data structures. For n conditions and m events, EP[j,i] is the
event preset matrix, where the jth row represents the jth Event Ej, 1 s j s m, and the ith
column, 1 s i s n, of the jth row holds the marking from the preset Condition Cj E *EJ.
For example, EP[2,3] = g denotes that Ej has preset Condition C3 with current marking
mj = g. Then the enabling value Cj for Ej can be computed via Cj = min{EP[2,i]: 1 s i
s n}. The activation aj from E2 is then determined to be aj = min{e2,f2}-
Similarly, we define CP[i,j] to be the condition preset matrix, I s i s n , I s j s m . Then
CP[ij] = g means that Condition C^ has activation value aj = g = CP[i,j] from Event Ej
E Cj. Then the new marking for Cj is computed via mj = max{mi,aj: 1 s j s m}, where
aj = CP[i,j] for each j . Note that any external conditions that can be activated by boundary
events must be listed in the data structure so they can be updated, and any external events
that feed into boundary conditions must be listed, and updated by an external function.
We present here the high level description of the algorithm.

A Fuzzy Petri Net Algorithm:


Inputs: {data structures EP[j,i], 1 s j s m, 1 s i s n; and CP[i,j], 1 s i s n, 1 s j s m;
initial marking M^ = (mj m^); fuzzy implication vector F = (fj,...,f^)}
Outputs: {current marking M = (mj,...,mn), current enabling vector E = (ei,...,e„), current
activation vector A = (ai,...,a^)}

Step 0: Initialize (EPO.i], CP[i,j], F, M„)


Step 1: Update_Extemal_In /* update inputs to boundary conditions */
Step 2: Update_Enablings /* update enabling values C: */
Step 3: UpdateActivations /* update activating values aj */
Step 4: Update_Markings /* update markings mj */
Step 5: UpdateExtemalOut /* update outputs from boundary events */
Step 6: IF (Stopping_Criterion) THEN Exit
ELSE Goto_Step_l
520

Any external fuzzification and defuzzification may be done by the


Update_Exteraal_In and UpdateExternalOut functions. The functions UpdateEnablings,
UpdateActivations, and UpdateMarkings update the enabling, activating, and marking
vectors, respectively. We present lower level procedures for UpdateEnablings,
Update_Activations, and Update_Markings.

Procedure Update_Enabiings:
FOR j = 1 to m DO /* m events to be enabled */
emin = 1.0;
FOR i = 1 to n DO /* minimize up to q preset conditions */
IF (EP[j,i] s emin) THEN emin = EP[j,i];
e[j] = emin; /* enabling value is minimum value */

Procedure Update_Activations:
FOR j = 1 To m DO
IF (fjj] < elj] THEN aU] = f|j] /* min. result with fuzzy implication */
ELSE a[j] = e[j] /* to obtain fuzzy activation */

Procedure Update_Markings:
FOR i = 1 to n DO /* n conditions to be updated */
amax = 0.0;
FOR j = 1 to m DO
IF (CP[i,j] a amax) THEN amax = CP[i,j];
IF (amax i m[i]) THEN m[i] = amax; /* maximum of old marking*/
/* and amax */

Vn. TRAINING FUZZY PETRI NETS AS DECISIONMAKERS


A fuzzy Petri net is a model for decision making via a fuzzy rule-based system. It is not
a traditional fuzzy controller. We simplify the fuzzification and defuzzification processes
by using proportional mappings. For example, the four inputs of Figure 3 could be
temperature, pressure, volume, and velocity, each of which has a range of the form [a,b],
where a is the lower bound and b is the upper bound. The linear map x -» y = (x-a)/(b-a)
takes a into 0, b into 1, and x that is p of the way between a and b into p. The fuzzy
outputs also represent proportions that can be mapped back into a range [a,b] via: y -*•
y(b - a) + a. A nonlinear squashing function could also be used, such as the sigmoid x
- • 1/[1 + exp(-ax+6)], or x - • V^[l + tanh(ax)]. Instead of fuzzy sets such as LOW,
MEDIUM, and HIGH, this implements a continuum.
The fuzzy Petri net designer must have available certain rules that model the
qualitative behavior of a process to be decided, e.g., a plant to be controlled. The net
schematic is drawn to represent these rules, and then softwired into data structures by
inputting the matrices EP[j,i] and CP[i,j] that represent the architecture of the fuzzy Petri
net. The fiizzy implication values F = (fj,...,f^) for the events need not be known: they
may be initially set to 0.5 or to subjective coarse values. The fuzzy Petri net can be
trained to adjust these for near optimal performance.
521

We consider here the case of supervised training of a fuzzy Petri net for control
decisions. A time trajectory of desired plant outputs must be known. Figure 5 shows a
general trainable fuzzy controller. For output variables, e.g., y and z, a given desired
output {target) trajectory over time k is denoted by {(yd(k),Zj(k))}|j, while the actual plant
outputs due to fuzzy Petri net decisions are designated by {(ya(k).ZaO'))}k- ^ ^ ^^"'^'
squared error (SSE) is then computed over time k = 1,...,K as
E = 2(k=i.K) lya(k) - yd(k)P + k(k) - zM"-
FIGURE 5 - A GENERAL TRAINABLE FUZZY RULE-BASED CONTROLLER

Target Plant
State
MMSE
I TRAINER
^ 1
• da
\
< - ^onnanc
^ FUZZY ^
"
1 EXPERT PLANT •
CONTROLLER

Plan-t
State

The process of training entails an initial computation of the SSE using the coarse
fiizzy implication values. Then each single fuzzy implication value fj in turn is perturbed
and the SSE is computed to determine whether or not the SSE decreases. If so, the new
£ is kept, else it is discarded. This continues over all events Ej, 1 s j s m. When the SSE
stops decreasing for a particular fj, then the process is repeated for the fuzzy implication
fj+j, etc. When all fuzzy implications iy,...,ij^ have been adjusted to approximately
minimize the SSE E, the training is done.

The Fuzzy Controller Training Algorithm:


Inputs: {Petri net architectural data structures EP[j,k], CP[i,r]; initial fuzzy implication
vector FQ = (fi^,...,f^^; initial marking Mo = (m^^ m„J; sequence t(l) t(K) of target
states, where t(k) = (tj(k),...,tj(k)); 6Q = fuzzy implication increment, stop criterion e, and
Max_Loop_Count}
Outputs: {actual plant states s(l),...,s(K); total sum square error E over target sequence;
and final fuzzy implication vector F^}
522

Step 0: input initial fuzzy implication vector FQ; input target trajectory {t(k)}; input initial
marking MQ; input EP(j',i]; input CP[i,j];
Step 1: input stop criteria s; input Max_Loop_Count; input fuzzy increment delta 6Q
Step 2: compute the SSE E = S^^^i K) ^(i=\^) I tj(k) - s^Ot) I ^
Step 3: REPEAT /* repeat minimization until change is small */
LoopCount = 0

FOR j = 1 to m DO /* for each jth event, minimize f */


6-5o
count = 0
REPEAT
fnewo) "^ fj + 6 such that 0 s f„^^j s 1;
compute SSE E „ ^ with f^
IF (E„^ > E) THEN 6 = •-6*0.96; count = count + 1
ELSE E *- E „ ^ ; f. *- f^,,^,; 6 = 6*0.96;
UNTIL count = 6
increment Loop_Count
UNTIL (I E^oij - EI < £) OR (Loop_Count > Max_Loop_Count)

If the rules are partitioned into a binary tree of disjoint cases with the rules that
involve the single fuzzy implications f as leaf nodes, then we say that the rules are
orthogonal. In this case each f need be minimized over a single turn (adjustments of
other fuzzy implications f^ (k 4= j) do not affect it). Under feedback noise, the net deals
with behavior in an average sense, and is equivalent to the minimum mean square error
methodology, invented independently by Gauss (1809) [6] and Legendre (1810) [12], and
implemented frequently nowadays (see any textbook on least mean-squares filtering, e.g.,
Haykin, 1991 [8]). The inner loop adjusts each fuzzy weight to lower the overall SSE. To
obtain near-optimal fuzzy implications, the target trajectory must be sufficiently varied
to invoke all rules so each can be adjusted. This process can be extended to also adjust
the fuzzy values given to the conditions, based on plant feedback over k = 1,...K.

Vni. A FUZZY LOGIC RULE-BASED CONTROL APPLICATION


A fuzzy rule-based mapping is appropriate when some knowledge is known about the
qualitative input/output behavior of a nonlinear plant. No mathematically tractable model
need be known for the inner workings of the system. We present here a simple example
where the control of a train is modeled by a fuzzy Petri net.
In this example, Metrocity has two major downtown areas called North Center and
South Center. Two passenger trains of a few cars each are to travel simultaneously in the
same counterclockwise direction on an oval shaped track that connects the two centers.
Train 1 will leave the South Station at the same time that Train 2 departs the North
Station. Figure 6 shows the situation. The system is to satisfy the following specifications.
523

FIGURE 6 - AN EXAMPLE OF A TRAIN SYSTEM TO BE CONTROLLED


NORTH CENTER
Platform • Station N
1 \ - A p p r o a c h Sensor
7 \ - 7 / 8 - V a y Sensor
—/ \= 3 / 4 - V a y Sensor

- = l / 2 - V a y Sensor
V Dne-Woy Rail Line
=\ /~ 1 / 4 - V a y Sensor

-\ J Direction o f Trains
PlQtforn Q Station S
SOUTH CENTER
METRDCITY

1. Both trains are to start at the same time when the Doors_Secure,
OtherTrainReady, Emergency, and CIock_Start signals are appropriate, which causes
the Start signal to enable and activate the application of power increments until the train
reaches the 1/4-way point, provided that the Emergency signal is 0.0.
2. At each of the half-way and 3/4-way points, there are to be two sensor strips
a short distance apart for the purposes of sensing the positions and ascertaining accurate
velocities. The speed of the trains will then be adjusted up or down toward the desired
maximum speed.
3. The Emergency signal is to take two values: i) 0.0 means that there is no
emergency; and ii) 1.0 means that an emergency exists. In the first case, all applications
of power, and other functions, are enabled. An emergency automatically applies the
brakes at the full nonlocking level. An emergency disables all applications of power.
4. At the 7/8-way points, power is reduced to approximately half-power.
5. At the Approach points, power is reduced to zero level (the trains coast).
6. At the Station-Entry points, brakes are applied at 1/2 level.
7. At the Platform-Edge points, brakes are applied at full nonlocking level.
8. When stopped, all fuzzy logic values are reset for the next trip, and the clock
is started for a two-minute wait.
Figure 7 shows a fuzzy Petri net that is a simplified high level model. When the
Emergency signal at Node C is set to 0.0, it outputs a fuzzy value of 1.0 to enable power
conditions. It and Nodes B, D, and E enable the event between B and I so that power
incrementation is activated at Node I to enable a sink event. As long as the 1/4-way point
has not been reached. Node F will be 0.0, and will output a 1.0 value to enable further
increases in power. After the 1/4-way point is reached, the power increase by Node I is
524

FIGURE 7a - FUZZY PETRI NET TRAIN CONTROLLER

FIGURE 7b - FUZZY PETRI NET TRAIN CONTROLLER continued


[Continued]

Enei-g. /AA

CContinued in
BOUNDARY 2) Next Frane]

disabled per the event between Nodes I and J. When the half-way point is reached, L is
activated with fuzzy truth value 1.0, which makes it possible for the power to be
increased at N or decreased at Q, depending upon what fuzzy values the Speed_Too_High
or Speed_Too_Low signals take from the sensing of the speed at the 1/2-way sensing
525

Strips. The fuzzy values provided to one of these two signals determines the value to
which the power will be changed, because each is MlNed with values of 1.0 of the 1/2-
way signal.

FIGURE 7c • FUZZY PETRI NET TRAIN CONTROLLER continued

[Continued]

Power
Dff

The fuzzy sensor values come in from the external world, while the fuzzy power level
controls are sent out to the external world when a decision is made. At the 3/4-way point,
the power level is adjusted again by a fuzzy value from Node CC, depending upon
whether the speed is too high or too low, provided that there is no emergency. At the 7/8-
way point, the speed is adjusted to half speed in the absence of the Emergency signal.
When the Approach signal is activated (and the Power signal is present from Node GG,
then the PowerOff signal is activated at Node JJ. When the Station point is reached, the
brakes are applied, at the fiizzy value 1/4, and then applied at fuzzy value 1/2 at the
Platform signal. When stopped, the logic is cleared and the two-minute clock is started.
When an enabled event fires, its enabling value is consumed, and that event must be
enable again if it is to fire again. When an event is enabled by fuzzy tokens in its preset
conditions, those tokens are consumed in the enabling. The control variables are usually
fuzzy in order for proper adjustments to be made. It is obvious that a fuzzy Petri net
model is not unique. For example, we have adjusted the power for speed change via two
different structures: i) by Nodes N or M, one of which decreases and the other which
increases. However, Node CC sets the power level through a new fuzzy value, determined
either by DD or EE, that is either a decrease or increase from what it was. The designer
may develop multiple versions before one is accepted as being advantageous in some
manner, e.g., by being simpler.
526

REFERENCES
[1] B. D'Ambrosio, Qualitative Process Theory Using Linguistic Variables, Springer-
Verlag, NY, 1990.
[2] D. Dubois, and H. Prade, The management of uncertainty in fuzzy expert systems and
some applications, in Analysis of Fuzzy Information, Vol. II, ed. by J. Bezdek, CRC
Press, Boca Raton, 1987, 39-58.
[3] J. Efstathiou, Knowledge-based systems for industrial control, Computer-Aided
Engineering Journal, 4, 7-28, 1987.
[4] R. Forsyth, Fuzzy reasoning systems, appeared in Expert Systems (Edited by
Forsyth), Chapman and Hall, London, 1984.
[5] M. L. Garg, S. I. Ahson, and P. V. Gupta, Fuzzy Petri net for knowledge
representation and reasoning. Info. Proc. Ltrs., vol. 39, no. 3, 1991, 165-171.
[6] K. F. Gauss, Theoria Motus Corporum Coelestium in Sectionibus Conicus Solem
Ambientum, Hamburg (translation: Dover, NY, 1963), 1809.
[7] F. Hayes-Roth, Rule based systems, ACM Comm. 28, 921-952, 1985.
[8] S. Haykin, Adaptive Filter Theory, Prentice-Hall, Englewood Cliffs, 1991.
[9] A. W. Holt, and F. Commoner, Events and Conditions, New York: Applied Data
Research, also in Rec. Project MAC Conf. Concurrent Systems and Parallel
Computation, New York: ACM, 1970, 1-72.
[10] Bart Kosko, Fuzzy cognitive maps, Int. J. Man-Machine Studies 24, 1986, 65-75.
[11] R. C. T. Lee, Fuzzy logic and resolution principle, J. ACM, vol. 19, no. 1, 1972,
109-119.
[12] A. M. Legendre, Methodes des mondres quarres, pour trouver le milieu le plus
probable entre les resultats de differences observations, Mem. Inst. France, 149-154,
1810.
[13] H. P. Lipp, The application of a fuzzy Petri net for controlling complex industrial
processes, IFAC Conf. Fuzzy Info. Contr., Marseille, Jul. 1983, 459-465.
[14] C. G. Looney, Expert control design with fuzzy rule matrices, Int'l J. Expert
Systems, vol. 1, No. 2, 159-168, 1988.
[15] C. G. Looney, Fuzzy Petri nets for rule based decisionmaking, IEEE Trans. Systems,
Man, and Cybernetics, Vol. 18, No. 1, 178-183, 1988.
[16] E. H. Mamdani, Applications of fuzzy algorithms for control of simple dynamic
plant, Proc. lEE, vol. 121, no. 12, 669-678, 1974.
[17] E. Mamdani, and S. Assilian, An experiment in linguistic synthesis with a fuzzy
logic controller, Int'l J. Man Machine Stud., 7, 1-13, 1975.
[18] E. Mamdani, Advances in the linguistic synthesis of fuzzy controllers, Int'l J. Man
Machine Stud., 8, 669-678, 1976.
[19] T. Murata, V. S. Subrahmanian, and T. Wakayama, A Petri net model for reasoning
in the presence of inconsistency, IEEE Trans. Knowledge and Data Engineering, vol.
3, no. 3, 1991, 281-292.
[20] J. L. Peterson, Petri Net Theory and the Modeling of Systems, Prentice-Hall,
Englewood Cliffs, 1981.
This page intentionally blank
527

[21] C. A. Petri, "Kommunikation mit Automaten," Schriften des Rheinish-Westfalischen


institutes fiir Instrumentelle Mathematik an der Universtat Bonn, Heft 2, Bonn, W.
Germany, 1962.
[22] B. Postlethwaite, Basic theory and algorithms for fuzzy sets and logic, appeared in
Knowledge-Based Systems for Industrial Control, Ed. by J. McGhee, J. Grimble, and
P. Mowforth, Peter Peregrinus Ltd., London, 1990.
[23] W. Reisig, Petri Nets, Springer-Veriag, Berlin, 1985.
[24] Elaine Rich, and Kevin Knight, Artificial Intelligence, Second Edition, McGraw-
Hill, NY, 1991.
[25] R. J. Schalkoff, Artificial Intelligence: and Engineering Approach, McGraw-Hill, NY,
1990.
[26] M. Sugeno, "An introductory survey of fuzzy control," Inform. Sci., vol 36, 1985,
59-83.
[27] M. Sugeno, and T. Takagi, Multi-dimensional fuzzy reasoning. Fuzzy Sets and
Systems 9(3), 313-326, 1983.
[28] R. M. Tong, A control engineering review of fuzzy systems, Automatica 13, 1877,
558-569.
[29] Siegfried Weber, A modification of Lukasiewicz logic and its applications to
fuzziness and distances, in Approximate Reasoning in Expert Systems (ed. be M. M.
Gupta, A. Kandel, W. Bandler, J. B. Kiszka), North-Holland, Amsterdam, 1985,123-
137.
[30] L. A. Zadeh, Fuzzy sets. Information & Control, Vol. 8, 338-353, 1965.
[31] L. A. Zadeh, Outline of a new approach to the analysis of complex systems and
decision processes, IEEE Trans. Systems, Man, & Cybernetics, vol. 3, no. 1, 28-44,
1973.
[32] M-C. Zhou, and M. C. Leu, Petri net modeling of a flexible assembly station for
printed circuit boards, Proc. 1991 IEEE Int'l Conf. Robotics and Autom.,
Sacramento, 2530-2535.
CHAPTER 20

FUZZY LOGIC-BASED TOOLS FOR THE ACQUISITION


AND REPRESENTATION OF KNOWLEDGE
IN BIOMEDICAL APPLICATIONS
Elisabeta Binaghi

IFCTR-CNR
Via Ampere 56
Milano, Italy

Abstract

This paper illustrates the use of fuzzy logic-based tools, including a hybrid system based
on neural networks and fuzzy set representation techniques, in building medical expert
systems. These tools have been employed in several medical diagnostic situations
presenting different complexities. The first set of applications concerns diagnostic
problems in the field of gynecology; the second includes biomedical image
interpretations using radiological and colposcopic images.

1. Introduction

Knowledge-based techniques are widely used in the design of computer-based medical


diagnostic systems to model the complex strategies and decision-making rules involved
in the solution of diagnostic problems [1]. Unfortunately, these systems present
limitadons when the knowledge to be represented is of any real complexity. The
problem lies principally in the difficulty of defining new knowledge bases to deal with
different diagnostic problems (this usually involves lengthy consultation with experts)
and in that of defining a knowledge representation formalism which can provide for
human flexibility and variability in formulating diagnostic judgements while ensuring a
rigorous, quantitative interpretation of the knowledge underlying the diagnostic
process concerned. In biomedical image interpretation and, in medical diagnosis in
general, domain knowledge is strongly structured and the assignment of medical
significance to signs is based on complex and obscure criteria which may be difficult to
assess direcdy and transform into a suitable machine representation. An invariant
characteristic of the medical domain is the intrinsic, unavoidable uncertainty arising from
the complexity, multiplicity and vagueness of the concepts involved, even when these
concepts are rigorously applied in a rational scheme, and expressed in a language
generally accepted by the medical community.
529
S.G. Tzafestas and A.N, Venetsanopoulos (eds,)
Fuzzy Reasoning in Information, Decision and Control Systems, 529-551.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
530

Fuzzy set techniques are widely used in the solution of various practical problems in
medicine: the current literature provides various examples of medical expert systems
with fuzzy inference models and of medical applications using fuzzy expert system shells
[2].
A major concern of these systems has been the development of fuzzy logic based
methods for handling uncertainty which are both theoretically sound and computationally
tractable. However the solutions adopted by a medical expert system will be of little
value, unless it can guarantee the reliable acquisition of expert information. A knowledge
acquisition strategy must be provided which can actively support systems by translating
medical knowledge into a machine readable expression.
The neural network approach has received renewed attention in the last few years. This
approach offers the advantage that, unlike the rule-based approach which relies on expert
input, the knowledge base is derived directly from accumulated data [3]. But, as in
medicine both of these source of information are extremely important, it seems a good
idea to incorporate both approaches into a single comprehensive framework. Cohen and
Hudson propose the integration of neural network techniques with approximate
reasoning in a knowledge system for the treatment of carcinoma of the lung [4].
Machado and Rocha present a fuzzy connectionist expert system for diagnosing renal
syndromes [5].
This paper illustrates the use of fuzzy logic-based tools, including a hybrid system based
on neural networks and fuzzy set representation techniques, in building medical expert
systems. These tools have been employed in several medical diagnostic situations
presenting different complexities. The first set of applications concerns diagnostic
problems in the field of gynecology; the second includes biomedical image
interpretations using radiological and colposcopic images.

2. Fuzzy set representation of medical diagnostic reasoning

Medical diagnostic reasoning consists in the deduction of conclusions regarding a given


case, the premises of which are the signs the patient presents and the diagnostic rules
in the knowledge base. Diagnostic rules describe how combinations of clinical signs
(information drawn from the patient's history and from clinical findings) relate to
diagnostic classes. In diagnosis, considered as a cognitive process, the description of
clinical signs and subsequent decision activity are performed not on the basis of a mass of
numbers but by "elicitation Unks" between linguistic descriptions of clinical signs and
qualitative diagnostic judgements. Medical experts do not use formal languages to
represent knowledge and reasoning with it. The formal basis lies in deeper theory,
such as physics, and this complex knowledge may be subject to imprecision and
vagueness. However, physicians have developed fairly stable procedures and a generally
accepted language for representing knowledge and reasoning with it. Any effective
solution to the acquisition and representation of knowledge in medical domains must take
into consideration the following aspects:
531

• the acquisition of medical diagnostic knowledge is inherentiy biasing. A strategy


with a relaxed structure may facilitate data elicitation and improve the quality of the
acquired knowledge;
• success in representing uncertain knowledge depends on the compatibility of the
language used with both the mental representation of concepts in the human mind
and the computational constraints of machine representation.
An approach that deals with all these aspects consists in combining the use of fuzzy
sets as the representational framework with a machine-aided knowledge acquisition
strategy which includes fuzzy learning techniques, neural networks and structured
interviews for the generation of fuzzy knowledge. Fuzzy sets, as proposed by Zadeh [6],
address the representation problem by providing adequate knowledge structures when
the information is uncertain due to vagueness and imprecision [7]. Machine learning
and neural networks can faciUtate the process of knowledge acquisition by transforming
readily available knowledge, such as examples, into a useful form and by reducing ill
defined interactions between expert and engineer.
There are several potential alternatives for the acquisition and structuring of fuzzy
knowledge in medical expert systems. The choice depends on the characteristics of the
domain, on the problem-solving method used by the experts involved, and on the
previous experience and perception of the knowledge engineering. The fuzzy set-based
approach to knowledge representation has been amply investigated and has its roots in
a seminal paper by Zadeh [8]. The general methodology proposed there, is descriptive
rather than normative and several specific questions must still be solved in order to
transform the methodology into an effective strategy.
We have defined several solutions for acquiring and structiuing fuzzy knowledge and
inference models in medical diagnosis, drawing on the strenghts of the most suitable
approach for each situation. The solutions adopted have been implemented with a
general and flexible set of tools addressing the following main tasks:
• membership function elicitation techniques
• definition of fuzzy knowledge structures, including:
• fuzzy logic to represent declarative propositions
• fuzzy frames describing hierarchies
• fuzzy production rules for causal knowledge representation
• elicitation and generation of diagnostic decision rules

3. Fuzzy declarative propositions for the description of clinical signs in


gynaecological problems

The fuzzy representation model interprets qualitative concepts involved in the diagnostic
problem as fuzzy sets. In particular, a clinical sign may be interpreted as a linguistic
variable and its description represented as a fuzzy declarative proposition of the form X
is A, where X is the linguistic variable representing a given sign and A is a term
belonging to the term set of the linguistic variable and denotes a fuzzy set in a given
universe of discourse f/ = (M,,....,M„) characterized by the membership function |i^(M).
The set U contains all the possible numerical or, more generally, crisp values assumed
532

by X. The fuzzy set denoted by A defines a possibility distribution of X . In this


context, the definition of a strategy to acquire and interpret expert data to characterize
fuzzy declarative propositions concerned with the problem under investigation, is a crucial
step, which may drastically affect the performance of the knowledge representation
process in general. A relaxed strategy in acquiring knowledge is essential here to
preserve the variability of expert judgements, but at the same time an objective
procedure which can quantify and aggregate expert answers must be introduced. The
elicitation strategy must take into account the fact that due to the nature of fuzziness,
people will not evaluate a subjective attribute identically and that different answers will
be collected from different assessors. It is important to select an appropriate group of
experts selected for the elicitation session in the sense that they must hold well-
defined opinions on element membership in the fuzzy sets in question and shared
concepts. Experts are therefore considered fuzzily consistent if a 6 exists depending on
the experiment in hand, such that |J.^,(x^O-ii^,(Xy) < 8 , in which |x^, , \i.^, are
membership functions for fuzzy sets f] as perceived by a and b , in which a , b is
any subject of the 'group' [9].

3.1.Membership function elicitation techniques

A fundamental task in acquiring fuzzy knowledge is the defmition of representative


membership functions for the fuzzy sets concerned. Analytical formulations of the
distribution of possibility over a given numerical range must be provided, but these are
difficult to obtain directly from experts.
In our approach the construction of membership functions proceeds from the selection
of an appropriate group and is based on a statistical surve^. Different approaches have
been investigated to construct membership functions using statistical data and
constrained optimization techniques are indicated to find the optimal membership
function [lOJ. Our method is to ask the group of experts for a scaled response. Once N
responses concerning the degree of confidence have been obtained, the representative
response is found by averaging the N responses and applying fitting operations on the
resulting rough distribution. This may seem to contradict the inherently individual nature
of uncertainty, but, if the focus of attention is not individual's evaluation of a
phenomenon, but the phenomenon itself, the approach is justified.

3.1.1.Representation of clinical signs in the domain of postmenopausal osteoporosis

In some cases experts could refer the distribution of possibility associated with a given
fuzzy label to a standard function and the system then elicits membership functions by
adjusting suitable parameters in standard piece wise functions [11]. The parameters are
cardinality measures of intuitive information about the distribution of possibility and
may be elicited directly from the experts without the risk of creating artificial
information.
This above technique has been amply applied to build a forwardchaining fuzzy rule-
based system in the domain of postmenopausal osteoporosis [11]. The application
533

has had to cope with the huge number of clinical signs involved and the lack of
standardization in defining borderline conditions. A l clinical signs and diagnostic classes
have been encoded as linguistic variables and their descriptions fo^rmalized in trams of
fuzzy declarative propositions. Diagnostic rules have been formalized and stored in terms
of a set of fuzzy conditional statements. The elements considered were 29, including
hematic and chemical parameters, mineralometric parameters, generic risk factors aad
specific risk factors. Most of the clinical signs involved in the diagnosis had terms
represented by standard functions. Figure 1 shows the standard membership functions
of the linguistic tenms used by physicians to characterize the Bone Mineral Content of
the Radius.

Figure 1 -Membership functions for tlie clinical sign bone mineral - content

Tliese functions result from an elicitation process, in which preliminary data are acquired
(in the example in figure 1, the numerical range and the type of instrument with which
the numerical values are obtained).
For each function, the experts partition the numerical range, identifying the intervals in
which they judge the compatibility of numerical values with the linguistic label
concerned high, medium or low. Parameters for the specification of standard piecewisc
functions are computed directly from this information, taking the values at the extremes
of the intervals estabhshed by the experts, and applying the "mean" operator to
average the different values obtained.
534

This procedure has been applied to elicit membership functions for 62 terms. The
physicians interacted directly with an intelligent interface, providing data and validating
results.
A fuzzy matching procedure has then applied for a quantitative evaluation of the
membership functions elicited. The degrees of compatibility between the numerical
values of clinical signs and the linguistic terms were collected firom the experts, the
corresponding degrees of membership computed using the analytical formulation of
membership functions. The comparison took into account the intrinsic variability in
experts' answers. Exact matching would not provide a reliable evaluation of the
agreement between experts and automated procedure. The problem has been addressed
by estimating, for each degree of similarity resulting from the implemented
membership functions, a range of acceptance R = [\xia)-t,[i(a) + t] where / is a value
related to the variabiUty in experts' answers [12]. They were assessed to agree if the
human degree of compatibility lies within the corresponding R
A test set of 700 samples from the universes of discourse of all the memberships (62
terms) showed an agreement of 82%. Disagreement was confined to membership
functions representing borderhne conditions.

3.I.2.Representation of clinical signs in the clinical assessment of body hair


growth in women

There are complex situations in which it is difficult to predict the trend of the
membership functions. In these cases data elicited from experts serve to determine not
only representative values for parameters of known functions, but the overall
distribution of an unknown trend as well. This technique has been used in a medical
application aimed at formaUzing and automating the clinical assessment of body hair
growth in women for use of hormonal disorders. This chnical problem has usually been
approached as if there were a clear dividing line between the normal and the abnormal
state and assessment has been based on a quantitative, crisp method providing a
numerical score to represent the clinical evaluation [13]. The resulting discrepancies
among experts and unpredictable subjectivity in the diagnosis have suggested that a
fuzzy medical expert system could better guarantee an objective, expUcit and
deterministic assessment of the diagnostic process. The clinical signs involved in the
evaluation of hair growth are density, consistency and area. The difficulties encountered
in creating fuzzy sets for these signs are due principally to the global visual perception
underlying the clinical evaluation.. Visual data, in the form of scenes and pictures, are
often processed in visual terms alone, without any corresponding translation or
recording as verbal labels or representations [14]. This was a crucial aspect in the
elicitation of fuzzy sets for the area sign. Experts were unable to qualify linguistically
it and required of contextual information to provide reliable evaluations. We addressed
the problem by implementing a graphical interface displaying all the elements of the
body as parts of an integrated whole, and not as separate and independent items. Figure
2 shows the interface window for the acquisition of membership functions related to the
sign area evaluated in the chin site.
535

firade
nwr

m
YES 2

J. jpm-
_-J HO 1

NO 4

NO 5

NO S

» S

Figure 2 - Elicitation of the membership fanctions of thesign area

The global region of ioterest was divided into 5 items. Progressive combinations of
these items were displayed: they constituted the range on which the membersMp
functions for the linguistic terms significant, borderline, unsignificant are defined.
Because it was impossible to procure explicit descriptions of the sign area, these terms
were semantically related to a meta^diagnosis in which, together with the area,
consistency and density parameters are evaluated by the experts. Following the
membership function exemplification method [15], the experts were asked to express the
compatibility of each term with each combination of items by answering yes or no and
assigning a number from 0 to 5 to kidicatc their degree of confidence in the answer.
The collected data were then processed to produce the representative value |i,(x)of the
membership function for the term t and the combination of area items x.. The following
formula were used:

\i,{x) = - + dx(—)
2 10

where d-l if the answer was yes and d-Q if the answer was no. The degrees n,(x),
quantifying the compatibihty between the linguistic term t and the crisp value assumed by
the cliflical sign concerned for each expert, were aggregated. Several measures were
536

used to group the different answers; among these were the mean, median, expected value
and the fuzzy expected value. Of all these, only the fuzzy expected value seemed to
give consistent results: extreme values did not greatly affect it, as they did the other
measures, and, despite the great variability in answers, it provided a measure indicative of
some sort of a central tendency [16],
Figure 3 shows membeiship functions for the sign area obtained by applying a spline-
based fitting operation on the representative values computed with the fuzzy
expected value.
The fuzzy matching procedure was applied to compare membership functions values
and expert judgements. Global agreement, of 75%, evaluated on a training set of 50
sample values, was found. A partial agreement of 90% was found for clinical signs for
which the fuzzy consistency was fully respected.

Figure 3 - Membership function of fuzzy sets for the sign area

4. Fuzzy Frames for Highly-Structured Descriptive Knowledge

Knowledge-based systems for biomedical appMcations are often called upon to formalize
and store strongly structured descriptive knowledge regarding medical descriptions of the
anatomical parts concerned, feature descriptions and static relations among objects. In
particular, when dealing with biomedical image interpretations, the underlying knowledge
is characterized by a large number of items and complex hierarchical relations among
them.
537

a-priori anatomical knowledge about intrinsic properties of human organs and image-
processing knowledge about properties of the image involved in the application. The
fuzzy frames are used as a generalization of the knowledge structures introduced in AI
with the aim of representing in a unified framework multi-typed objects characterized
by multiple uncertainty. The frames represent objects in terms of a set of attributes
which may be value-attributes, specifying by means of assignment or procedure
computation the value or range of values the attribute of a given object should have,
or relational attributes denoting links with other objects. In real applications, where
attributes are very often fuzzy in nature, independent levels of uncertainty may be
integrated in the frame structure to represent the degree of certainty with which a value
is assigned to a given object attribute, or to define gradual multivalued predicate links
among objects. Several attempts to formalize the concept of fuzzy frames are described
in the literature [17]. We have focused our attention on fuzzy frame representation for
biomedical image recognition purposes, introducing two kinds of frame: model frames,
representing models of anatomical parts and object frames, representing the description
of specific objects in the current image and created when an object is recognized as
an istance of a given anatomical model. Frames representing models are predefmed on
the basis of the knowledge provided by the experts and describe classes of objects. In
each model-frame, own-slots list characterizing attributes of the class, and member slots
describe those attributes that characteriaze an element of the class and assume a
significant role in the development of the interpretation process of the final image. Object
frames are instances of model frames and contain a member-of link to the class to
which the object represented by the frames belongs. Slots of the object frames are own
slots and represent the attributes of the object; these slots are coincident with the
member-slots of the corresponding model frame. In order to deal with situations in which
knowledge related to a given object is qualitatively or intrinsically imprecise, fuzzy slots
are introduced in model and object frames, and a fuzzy inheritance mechanism is defined
to represent partial belongingness of an object to a class represented by a model frame.

4.1 The use of fuzzy frames for the representation of knowledge in the analysis of
CT images of the vertebrae

To assist the presentation of the methodology with an explanatory example, we refer


to the problem of the analysis of CT images of the vertebrae (figure 4).
The expected result of the analysis is a quantitative evaluation of the bone inineral
content, related to metabolic pathologies of the skeleton, such as osteoporosis. The
analyst's procedure consists in identifying the spongy bone, outlining the Region of
Interest (ROI), excluding the area of high vascularity, and computing the bone mineral
content in the ROI on the basis of conversion factors obtained from analysis of
calibration phantom regions.
In this application context, the knowledge base contains model frames representing
anatomical parts such as lombar vertebra, cortical bone, spongy region.
Figure 4 - A multiwindow interface for the recognition of CT images of vertebrae

Object frames are related to those objects in the current images that are recognized or
created in accordance with the goals set. In particular, object frames for cortical bone
and spongy region are created as a result of the recognition procedure. An example
of the model and object frames involved in the analysis of CT images of Vertebrae is
given in table 1. The o&jert/rame SP-RE is a fuzzy frame in two respects. First, the
degree of property inheritance from the model frame in the member-of slot may be
specified as a number between [0,1] (in the case of no values specified, the default
value 1 is assumed). Second, the other slots may contain fuzzy sets as values.
The degree of membership specified in the member-of slot documents the results of the
fuzzy reasoning process underlying the frame structure and dedicated to the
recognition task. The reasoning activity for recognizing as Spongy Region a candidate
Obj-i , resulting from a previous segmentation procedure, is based on the evaluation of
the degree of matching between attributes in own slots of model frame of Spongy
Region and attributes of the candidate object. The matching evaluation impMes the
execution of procedures contained in the own slots of Spongy Region model frames.
The procedures Below and Surrounded require that object frames for Spinal Canal and
Cortical Bone respectively be already recognized. A metarule in the Knowledge-Base
subordinates the activation of the recognition rule to this condition. Spinal Canal is
recognized by a thresholding procedure, and Cortical Bone is recognized as the region
539

expresses the discriminant condition that the shape of the spongy region is circular,
conceiving as circular a fuzzy concept with an intrinsic variability in its definition.

Model Frame : Spongy Region Object Frame : SP-REl


Part of: Lombar Vertebra; Member of : Spongy region [1]
Own-slot: Position-below Own-Slot: Density
Own-slot : Position-surrounded Own-Slot: Position of Centroid
Fuzzy Own-Slot: Shape Circulr Fuzzy Own-Slot "Homogeneity
Fuzzy Own-Slot: Shape-Ray
Member Slot: Density
Member-Slot: Position of Centroid
Fuzzy Member Slot: Homogeneity

Table 1- Structure of Frames

The evaluation of the degree of circularity of a given object is made by applying a


measure of fuzzy entropy to the accumulation matrices produced by Hough transform
procedure. Entropy provides a measure of the degree of "spreading" in accumulation
matrices and then a measure of the degree of circularity. Entropy values are the
universe of discourse of a fuzzy set whose inembership function provides the degree of
circularity of a given object in correspondence with its entropy value.
The resulting advantage of having represented the recognition procedure in a frame
structure and in underlying fuzzy recognition rules is that the overall knowledge has
been explicitly represented and its role synthetically codified. Partial belongingness of an
element to a real-world class is quantified in fuzzy member-of slots. The degree of
property inheritance results from the recognition activity which is based on the evaluation
of fuzzy and/or nonfuzzy attributes.
This application has successfiiUy addressed the problem of accelerating the quantitative
analysis of vertebral bone mineral content and of providing more objective procedures
for reaching a consensus among experts. A complete evaluation of the results may be
found in [18].

5. Machine learning techniques for knowledge acquisition in fuzzy


environments

Difficulties may arise in ehciting the overall set of diagnostic rules directiy from the
experts of a given medical domain. The interview technique, although it may be more
successful than other methods in revealing the detailed structure of a concept, presents
the risk that the knowledge elicited may be an artificial creation produced under the
pressure of questioning. Leaming-by-example strategies offer domain experts tools
for the direct transfer of their specific, exemplified diagnostic knowledge and provide
inductive algorithms to induce knowledge in a general abstract form. Various methods for
generating fuzzy production rules or, fuzzy relations in general, have been proposed in the
540

literature [19]. Our approach focuses on an empirical learning strategy which provides a
reasonable explanation and monitoring of intermediate results and is consistent with the
possibilistic, rather than probabilistic, nature of uncertainty [20].

5.1.Fuzzy logic-based classification of cendcography images

An empirical learning procedure has been applied to the problem of designing an


automatic image interpretation system to support the classification of colposcopic images
for the identification of neoplastic and preneoplastic regions. This could be a valuable
contribution to the generation of diagnostic rules in a sector where the intrinsic
complexity of the scene and the large amount of information the physician must correlate
in his visual analysis make interview techniques inappropriate.
Cervical intraepithelial neoplasia and small invasive cancer of the cervix are in most
cases asymptomatic diseases and consequentiy active screening and early detection are
essential. Recent studies advise integrating the traditional Papanicolaou Smear with
visual inspection (colposcopy) [21], But colposcopy, in spite of its amply proved
capability of reducing the percentage of wrong diagnoses ("false negatives"), is not
widely employed, basically because it is both expensive and time consuming.
Cervicography is a recent technique introduced as a new screening model for
colposcopic examination. The basic idea of cervicography was to develop an optical
instrument, the cerviscope with which any health care person, even without any
knowledge of colposcopy, can take a standardized picture of the cervix and send it to an
expert for evaluation. The possibility of defining standardization protocols and
employing cervicography in large population groups suggested the application of
automatic image interpretation techniques to digitized cervicography pictures in order
to identify patients at risk for neoplasia of the cervix. In this situation, an automatic
system supporting medical diagnosis, by selecting from a large number of subjects those
showing some suspect alteradon of uterine epithelial tissues, could substandally reduce
(by about 60%) the population group for which further examination is recommended.
The first important goal is to be able to classify subjects in groups identified on the
basis of characteristic features of an epithelial region called the "transformation zone",
where the anomalous alterations appear in the early stage of the desease. The
diagnostic group ranges from subjects for which no further investigation is currendy
required to subjects for which visual inspection or additional colposcopically
directed biopsy is recommended.

5.2. The image model

In the cervicography images, the scene observed is the uterine cervix with its different
types of epithelial tissues. The region of interest is the squamocolumnar junction,
that is, the transformation zone in which possible alteration processes are located. This
is the locus where metaplastic or neoplastic lesions generally appear.
Figure 5 presents details of cervocographic images showing the region of interest of
several subjects.
541

Figure 5 - Eegions of interest in cervicographic images

In his visual inspection , the expert bases his judgement on botli variations in the color of
tlie different tissues, and on featurc-s of the sqoamocoliimnar junction .
Several types of lesions can be differentiated by the expert. We restrict our analysis to
three classes, to reduce the complexity and in view of the fact that even this first,
simplified level of classification may have a significant and immediate impact in the
screening activity. Tlie classes identified are:
• ECTOPIA, grouping normal subjects, which present under colposcopy only normal
malpighian and colnmnar epithelia and no abnormal lesions. The junction zone
has a sharp and imegular boundary and the color varies from the internal to the
external region, from dark to light.
• NTZ, where an immature squamus metaplasia is present. The junction is fuzzy and
dark to light.
• ATZ, identifying subjects for which colposcopically diiBcted biopsy is prescribed.
The junction is well defined and regular and the color difference is from light to dark.
Classification is achieved with a complex interpretation strategy which consists mainly in
selecting and performing those ¥isual procedures which first focus analysis on
significant regions in the scene and subsequently allow the extraction of discriminant
features. For the sake of brevity, only classification tasks are described here. A
542

detailed description of the preprocessing and processing activities involved in the


application may be found in [22].
The classification procedure involves the evaluation of the selected features which
characterize the structure of interest, and the decision to assign these structures to a
given diagnostic class.
Wide and intrinsically uncertain knowledge underlies the visual inspection of the
scene. The huinan decision-making activity of assigning medical meanings to image
patterns is based on implicit criteria which are difficult to assess and transform into a
suitable machine representation.
We have addressed these problems by designing the classification procedure as a fuzzy
rule-based system and by using automatic learning techniques to generate fiizzy
classificatyion rules [ 11,22].
The classification rules are encoded in fuzzy production rules structured as evaluation-
decision pairs . They define a fuzzy relation between the qualitative description of
features and decision classes. The strength of implication in fuzzy production rules is
approximated by a linguistic variable reflecting the intrinsic human variability and
vagueness with which a conclusion may be inferred.
Difficulties may arise in eliciting fuzzy production rules direcdy from experts and, in the
expression of the different strengths of implication, which may vary from rule to rule in
particular. We propose an intuitive learning by examples technique which uses fuzzy
reasoning operators in the form of fuzzy induction to automatically infer the strength of
implication, given a training set of already classified images.

In this application, classes were assigned on the basis on the selected features: sharpness,
morphology, color tranmsition . In the fuzzy classification scheme each feature is
considered a linguistic variable with the following associated term sets:
• Sharpness = ( well defined, medium, fuzzy)
• Morphology = ( regular, medium, irregular)
• Color Transition = ( light-dark, dark-light)
Terms in the above term sets are fuzzy sets having as their universe of discourse the
numerical ranges of the corresponding features , provided by the described above
measuring procedures.
The classification rules were modeled in terms of fuzzy production rules having the
following general form [8]:

/4i is a fuzzy compound declarative proposition aggregating linguistic descriptions of the


featiu^es sharpness, morphology and color transition. D^ belongs to the set of
diagnostic classes D= ( Ectopia, NTZ, ATZ). w^ belongs to the term set of the linguistic
variable W, the values of which are the possible linguistic expressions of the strength of
implication. Terms in the term set are fuzzy sets defined in the interval [0,1]. We reduce
them for the sake of simplicity to a fuzzy number by applying a suitable defuzzification
algorithm.
543

The problem of learning fuzzy classification rules is formulated in terms of how to


automatically induce , from a training set of examples T* the strength of implication H;*
for each rule /?, and for a given diagnostic class D*. These examples are classified
image structures , each of which may be formalized in the following form:

t'=lu,J^]u'eT'
where u, is the vector of measurements obtained in correspondence with the selected
set of features, ;* is the expert's judgement expressing the strength or degree of
satisfaction with which the image structure represented by u, may be assigned to class

The experts use predefined linguistic labels, such as very high, medium, low, very low to
express their mental judgements; these labels are automatically translated into numbers in
the interval [0,1].
Given the diagnostic class D^, let:
• /, be the cardinality of the set of all the possible antecedents ( -4, )
• m, the cardinality of the training set T^
• p, the cardinality of the term set W containing the terms with which the strength of
implication may be expressed

Matrices A/* and Mj are then defined in the following form:

\^A>^) ^i.,(«J
A/r = M,
H^,(«l) \^A,(UJ ^i^.0'^) ^.,0•»)

Using max-min operators, we perform the matrix product:

G = A/*oM*

to obtain matrix G with dimension Ixm. The element g^ expresses the induced degree of
certainty with which the corresponding rule may be generated.
This learning procedure has been applied to the classifcation of cervicographic images
using a training set of 120 images. Twenty-six classification rules have been generated.
When these were applied on a test set of 50 subjects, they gave an accuracy of 79%.
Table 2 shows a mle describing a typical case of ATZ. Figure 6 shows the main phases
of the overall image interpretation procedure, including segmentation, contour detection
and classification, applied to three different subjects.
544

'colposcopic

6. A symbiotic fuziy neural approach for the acquisition and representation of


medical knowledge

Current trends in designing inteligent systems focus on integrating fuzzy logic-based


(FL) tools and neural network (NN) techniques, to combine the suitability and flexibility
of fuzzy logic in representing cognitive processes with the effectiveness of neural
networks in learning knowledge from examples.
The symbiotic relationship between the two computational paradigms has attracted the
attendon of many researchers in the last few years who integrate FL tools in connectionist
models, or NN techniques in fuzzy logic frameworks [3J.
These hybrid systems can support different levels of interaction where NNs and FL are
used in cooperation on the same task.
A unified framework supporting both low and high interaction between the two models is
presented here and applied to the acquisition and representation of medical diagnostic
knowledge in the domain of hormonal disorders.
545

The application has been introduced in section 3.1.2, detailing the strategy adopted to
elicit and representing the fuzzy sets characterizing the linguistic descriptions of visual
clinical sign concerned.
In this application, a fuzzy neural franiework has been designed and implemented to
model diagnostic relationships between clinical signs and diagnostic judgements.

6.1.The clinical assessment of body hair growth in women

The clinical assessment of body hair growth in women used in the study of hormonal
disorders, proceeds by evaluating clinical signs, such as area, density and consistency in
9 different body sites.
A metadiagnosis is made for each body sites and partial diagnostic judgements are then
aggregated to perform the final diagnosis.
The overall diagnostic process has been implemented by an hybrid intelligent system
which uses fuzzy trained NN and fuzzy production rules in a unified framework.

6.2. The neural stage

The metadiagnostic reasoning designed aimed to produce a diagnostic judgement for a


given body site has been implemented with a connectionist model.
Knowledge underlying the diagnostic stage is complex, difficult to assess, and difficult to
represent in symbolic form, due partially to the global visual perception underlying the
clinical evaluation of each body site.
Neural network (NN) techniques can successfully address these problems by providing
accurate learning mechnisms capable of generating and/or modifying knowledge
structures autonomously. In particular NNs offer the means to overcome some of the
major drawbacks of conventional knowledge acquisition techniques, such as the lengthy
consultation with experts required in structured interview techniques, and the design of
complex conceptual models when symbolic machine learning algorithms are adopted.
NN learning mechanisms mantain their ability to learn in uncertain and unknown
environments.
We propose for building NNs into the hybrid framework for medical diagnostic
reasoning the use of a feed forward one hidden layer neural network with an adaptive,
problem-dependent back-propagation learning algorithm. A detailed description of the
NN model and of the learning mechanism adopted can be found in the references Binaghi
te al. [23].
The reasoning activity involved in the evaluation of body hair growth has been modeled
in any single given body site as a classification process which can assign an event, i.e. a
set of linguistically qualified clinical signs (for example area is significant, density is
sparse, consisteny is terminal), to one or more of several predefined categories.
The implemented NN classifier must compute the degree of similarity (membership of
possibility) of the event being analyzed to each one of the prototypal hypotheses defined
in the model.
.•546

Thus each sub-diagnosis (of a body part) is characterized by a set of input events, a set
of output hypotheses, and a NN implementing a fuzzy relationship between input and
output.
The NN assumes a feed-forward topology with three layers. Each input node represents
the value of an attribute of the object (or event) to be classified; in our approach each
term linguistically qualifying a clinical sign is represented by a different neuron .
The degree of confidence in each of these terms (obtained by evaluating its membership)
is represented by the state of activation of the neuron. Hidden neurons represent
intermediate abstractions.
The output layer represents the hypothesis. In particular the state of activation of each
output neuron represents the degree of possibility of the event under analysis to the
hypothesis represented by the neuron.
In our application there is one diagnostic class, corresponding to the clinical assessement
of body hair growth in women; the different hypotheses are linguistically qualified
degrees of severity, ranging from very low to very high.
The sigmoid function is used to determine the output state. The output value V, from the
i-th node is:

1
V.=-

l + e '"

where m is the number of nodes contributing and V. is the output value of the j-th node.

6.3.Problem dependent learning rule in feed-forward neural networks

Back-propagation, which is also known as the generalized delta rule, is one of the most
popular and widely investigated learning methods used to train feddforward neural
networks.
The back-propagation learning algorithm is based on nonlinear optimization technique of
gradient descent on the sum of the squared differences between the activation of the
nodes in the output layer and the desired output. Application of the gradient descent
method yields iterative weight update rules [24].
The application of neural network learning mechanisms presents some limitations, despite
their ability to leam in an uncertain or unknown environment.
A comparison of experimental results in classification application shows advantages, but
also disadvantages, with respect to other methods employing knowledge-based
approaches [25].
The main drawback of the NN method lies in the fact that the generalized delta rule is
computationally complex: when the training data are numerous the learning time can be
very long. Moreover, the generalized delta rule can not guarentee that the global error
minimum will be found, and the solution strategy depends on the initial network
configuration (often assigned at random).
547

Several attempts have been made to improve the performance of back propagation
algorithms; fast learning algorithms heve been proposed to accelerate the training phase
[26].
Our approach integrates problem-dependent knowledge in the analytical formulation of
the back propagation algorithm in order to control and subsequently improve the weight
update procedure.
TTie central concept is that of subordinating the activation level of one or more hidden
neurons to the presentation of certain input pattern configurations to input layer.
The fuzzy logic framework is used to support the representation of this knowledge, which
may be uncertain and/or linguistically qualified. The flexibility of the fuzzy reasoning
approach makes it easy to define and update rules until a reasonable performance Ls
achieved, and to introduce new intuitive knowledge at different levels of abstraction in a
natural and controlled way.
Fuzzy production rules, structured as evaluation-decision pairs, are used as knoweldge
structures to represent all the ingredients of the fuzzy reasoning process. In the
antecedent of the rules, conditions related to input patterns are expressed in terms of
compound fuzzy declarative proposistions. The decision part of the rules contains fuzzy
declarative propositions which describe linguistically the values that variables related to
hidden neuron activation assume when the corresponding evaluation part of the rules is
satisfied.
We have defined a forward chaining fuzzy inference mechanism to interpret these rules: it
assigns a degree of confidence to each rule in the knowledge base, using a fuzzy matching
procedure, and deduces the best hidden neuron activation through a defuzzification
process applied to the variables in the consequent part of rules.
We use the fuzzy logic based learning algorithm to train the networks devoted to each
diagnostic subproblem involved in the medical application concerned.

6.4.Neural network implementation

At the present stage of our experiments, preliminary versions of the NN classifiers have
been implemented for each of the 11 body sites examined.
Figure 7 shows the topology of the neural network used. The number of input nodes is
determined by the dimension of the input patterns, which are degrees of evidence
specified for each term of the clinical signs.
Input neuron activation lies to the range [0,1]. Each output neuron represents a degree of
possibility of assigning the current event to a certain degree of severity and also has
activations in the range [0,1].
548

veiylow low medium high vciyhigfa

o
density consistency

Figure 7 - Neural network topology

Each of the NNs implemented have been trained using training sets constituted by
diagnosed clinical cases.
A total number of 400 examples have been considered.
The fuzzy logic-based NN has been implemented using different knowledge bases in
function of the site.
For the chin for example, 1 hidden neuron has been constrained to the presentation to the
input layer of evidence confuming a low degree of severity.
Table 2 lists a subset of rules in the knowledge base for the chin site.

• 1/ density.sparse is excited and consistency.vellum is excited


Then
hidden neuron-1 is excited
• If density.sparse isrelaxedand consistency.vellum is excited
Then
hidden neuron-1 is relatively relaxed
• / / density.sparse is relaxed and consistency .vellum is relaxed
Then
hidden neuron-1 is relaxed

Table 2 - Rules in the knowledge base

Suitable membership functions have been elicited to characterize linguistic terms in the
rules.
549

6.5.Preliminary results

To assess the diagnostic accuracy of the implemented neural networks and their
classification capability, a test set of examples, consisting of already diagnosed clinical
cases referred to specific body sites, has been used. The testing data considered were 200.
The diagnosis was confirmed in 82% of the cases.

6.6.Work in progress

We are currently engaged in experimental work to conclude the application and the
model the overall diagnostic process.
The cognitive problem underlying this application has been broken down into a hierarchy
of classification tasks:

• first level: diagnoses applied to the body sites


• second level: aggregation of first level classification results to produce a final
judgement on total body hair growth.

We are working on the second level task at present, experimenting procedures to


aggregate partial results:

• a procedure using an higher level NN; in this case the outputs of the first level are the
input for the higer NN;
• a procedure using a fuzzy rule-based system; in this case the symbolic learning
procedure presented in previous section is adopted to the problem under
investigation.

The two solutions present unique advantages and disadvantages and further
experimentation has been designed to exploit and evaluate each.

References

1. Szolovits P., Patil R.S., Schwartz W.B., Artificial Intelligence in medical diagnosis.
Annals of internal medicine, 108, pp.80-87, (1988).
2. Adlassnig K.P., Kolarz G., SheithauerW., Present State of the Medical Expert System
Cadiag-2, Meth. Inform. Med., 24, 1, pp.13-20, (1985).
3. Kandel A., Langholz G. (Eds.),"Hybrid Architectures for Intelligent Systems", CRC
Press, Boca Raton (Florida), 1992.
4. Hudson D.L., Cohen M.E., Banda P.W., Blois M.S., Medical Diagnosis and
Treatment Plans Derived from a Hybrid Expert System. In "Hybrid Architecture for
Intelligent Systems", (Kandel A., Langholz G. Eds.), CRC Press, Boca Raton
(Florida), 1992.
550

5. Machado R.J., Rocha A.F., A hybrid Architecture for a Fuzzy Connectionist Expert
System. In "Hybrid Architecture for Intelligent Systems", (Kandel A., Langholz G.
Eds.), CRC Press, Boca Raton (Florida), 1992.
6. Zadeh L.A., Fuzzy Sets, Information and Control, 8, pp.338-353, 1965.
7. Zadeh L.A., The concept of Linguistic variable and its Application to Approaximate
Reasoning. In "Fuzzy Sets and Applications", (Yager R.R., Ovchinnikov S., Tong
R.M., Nguyen H.T. Eds.), pp. 193-329. John Wiley & Sons, 1987.
8. Zadeh L.A., PRUF - a Meaning Representation Language for natural Languages. In
"Fuzzy Reasoning and its Applications", (Mamdani E.H. and Gaines B.R. Eds.),
Academic Press, 1981.
9. Hall L., Szabo S., Kandel A., On the Derivation of Memberships for Fuzzy Sets in
Expert Systems, Information Science, 40, pp.39-52, 1986.
10. Civanlar M.R. and Trussel H.J., "Constructing Membership Functions using Statistical
Data", Fuzzy Sets and Systems, 18, pp 1-13, 1986.
11. Binaghi E., A fuzzy Logic Inference Model for a Rule-based System in Medical
Diagnosis, Expert System, 7, 3, pp. 134-141, (1990).
12. Binaghi E., Delia Ventura A., Rampini A., Schettini R., A fuzzy Reasoning Approach
to Similarity Evaluation in Image Analysis, Int. J. of Intelligent Systems, 1993, in
press.
13. Ferriman D.M., Gallwey J.D., Clinical Assessment of Body hair Growth in Women,
J. Clin. Endocr. Metab., 21, 1440-1447, 1961.
14. Freedman J., Haber R.N., One Reason Why We Rarely Forget a Face, Bull. Psychon.
Soc.,3,pp.l07-109, 1974.
15. Chameau J., Santamarina J., Membership Functions I: Comparing Methods of
measurements, //;/. J. of Approaximate Reasoning, pp.288-317, 1987.
16. Pal S.K., Fuzzy Tools for the Management of Uncertainty in Pattern Recognition,
Image Analysis Vision and Expert Systems, Int.J. System Science, 22, 3, pp.511-
549, 1991.
17. Yager R. R., Linguistic representation of default values in Frames, IEEE Tran. on
Systems Man and Cybernetics, SMC-14, No.4, 1984.
18. Binaghi E., Delia ventura A., Rampini A., Schettini R., A Fuzzy Knowledge-Based
System for Biomedical Image Interpretation. In "Uncertainty in Knowledge Bases",
(Bouchon-Meunier B., Yager R.R. Eds.), Springer-Verlag, Beriin, 1991.
19. Delgado M. Gonzalez A., The frequency of Fuzzy Domains and its Application to the
System Identification, in Proceedings of the 2nd International Conference on Fuzzy
logic and neural networks, Ilzuka (Japan), 1992.
20. Binaghi E., Empirical Learning for Fuzzy Knowledge Acquisition, in Proceedings of
2nd International Conference on Fuzzy Logic and Neural networks, Ilzuka (Japan),
1992.
21. Darnell Jones D.E., Creasman W.T., Dombroski R.A., Lentz S.S., Waeltz J.L.,
Evaluation of the atypical Pap Smear, Am. J. Obstet. Gynecol., pp. 157-544, 1987.
22. Schettini R., Low-Level Segmentation of Complex Color Images. In "Signal
Processing VI: Theories and Applications", (Vandewalle J., Boite R., Moonen M.,
Oosteriinck Eds.), pp.535-538, Elsevier Science Publishers, 1992.
This page intentionally blank
551

23. Binaghi E., Mazzetti A., Orlando R., Rampini A,, Integration of Fuzzy Reasoning
Techniques in the Error Back-Propagation Learning Algorithm, in Proceedings of
6th Italian Workshop on Neural Nets, Vietri sul Mare (Salerno), 1993.
24. Rumelhart D.E., Hinton G.E., Williams R.J., Learning Internal Representation by
Error Propagation. In "Parallel Distributed Processing", (Rumelhart D.E., Mc
Clelland J.L. Eds.), MIT Press, Cambridge MA, 1986.
25. Binaghi E., Rampini A., Fuzzy Decision-Making in Classification of Multisource
Remote Sensing Data, Optical Engineering, 1993, in press.
26. Vogl T.P., Mangis J.K., Rigler A.K., Zink W.T., Alkon D.L., Accelerating the
convergence of the back-propagation method, Biological Cybernetics, 59, pp.257-
263, 1988.
CHAPTER 21

FUZZY LOGIC DESIGN OF A NONDESTRUCTIVE ROBOTIC


FRUIT COLLECTOR
S.G. Tzafestas, F.V. Hatzivasiliou^*) and S.K. Kaltsounis

Intelligent Robotics and Control Unit (IRCU)


Coinputer Science Division
National Technical University of Athens
Zografou 15773, Athens, Greece
(*) Also with: Hellenic Air Force Research Center
Terpsithea, Ano Glyfada, Athens 16501, Greece

1.INTRODUCTION
After many years of research, the "repetitive movement robot" seems to have reached its
peak of evolution and has become nowadays a routine in the product line. Recently,
research was directed towards the development of machines that are able to perform more
complicated tasks. Examples are robots equipped with vision, built-in intelligence, double-
arms and so on [1,2]. In this paper an attempt is made to create a higher level robot
equipped with vision and artificial intelligence. An interesting application of artificial
intelligence in robotics can be found in the Hirota - Aral - Hachisu project [5] where a
fuzzy algorithm of twenty four rules is used to estimate the distance that the gripper must
traverse according to the speed and the present distance between the gripper and the object
on a belt conveyor. Fuzzy logic theory was first introduced by Zadeh [4] and suggests a
mathematical formulation for the linguistic sets and human reasoning. In this way the
human style of reasoning can be simulated by a computer. The fuzzy logic has been
successfully applied to industrial and chemical process control [6,8] and recently attempts
have been made to apply its methods to the control of robot arms.
In this paper, by "non destructive collection of fruits" we mean the process of collecting a
fruit without destroying the actual tree. Two main issues that must be considered in any
attempt to create a machine capable of non-destructive collection of fruits are the following:
a) The fruits of most types of trees, and particularly the apple tree, are found in
bunches. The fruits of a certain bunch are connected to some point of the tree and thus, as
a result of this, each fruit of a certain bunch must be detached towards the side at which it
is connected with a bunch. The robot, through the picture it receives, must determine the
side on which it must be detached.
b) It is possible that a fruit of the bunch may not be directly visible to the robot, as its
line of sight may be blocked from another fruit of the same bunch. This must be taken
under consideration.
From the above it is seen that the task of non-destructive collection, demands a robot
with vision (in order to recognise the fruits) as well as with artificial intelligence (in order
to infer a direction in which each fruit must be grabbed and detached). The fact that a fruit
must be detached from a certain side and not in a specific direction, gives an error tolerance
which is very helpful as far as the final solution of the problem is concerned. The direction
553
S.G. Tzafestas and A./^. Venetsanopoulos (eds.)
Fuzzy Reasoning in Informalion, Decision and Control Systems, 553-561.
© 1994 Kluwer Academic Publishers. Printed in the Netherlands.
554

of approach and detachment of each fruit is inferred through a fuzzy algorithm giving an
approximate result. The advantages of this method are:
a) It gives an approximate result by simulating the subconscious human way of
thinking.
b) It successfully combines the vague information taken from a picture with the error
tolerance result.

c) It gives a quick response, since, in discrete analysis, the results of all input
combinations can be pre-calculated and stored as a matrix.

2.IMAGE PROCESSING

The purpose of the image processing unit is to identify the fruits in the picture taken from
the camera. Specifically the position, the size, and the boundary of each fruit that appears
in the picture is determined.
It was found that image analysis of 64x64 pixels with four bits (16 grey levels) was
adequate for our experiment. A powerful source of light is used from the point of
observance in order to eliminate shadows on the fruits that may be created by natural light,
and to make the system able to function during the night. The location of the fruits is
determined in two stages using a modification of the region growing method [3,7].
Initially, certain "seed areas" are chosen (using appropriate criteria) which in turn are
enlarged step-by-step. At each step, if a pixel neighbours an area and fulfils certain
requirements, it is embodied and the procedure is then repeated. In this case the image
processing unit locates the areas of high density. This is because, due to the way of
lighting, the intensity is high at the central area of the fruits, which gradually decreases
towards the boundary surface. After this, at every stage of enlargement, the neighbouring
pixels of each area are checked. If the intensity of a certain pixel is less or equal to the
intensity of the neighbouring border pixel, the pixel is embodied in the main area. This
process is repeated until the enlargement of the seed area is completed.
It is noted that with this procedure, all areas of high intensity are located (not only the
fruits), i.e. parts of the sky (during the day) as well as the reflection of light on leaves.
Based on the smooth changes of intensity of the areas which represent the fmits in contrast
with a sudden change of other areas, the program distinguishes which of the located areas
are actually fruits and which are not.

3.BRIEF REVIEW OF FUZZY LOGIC

3.1 Fuzzy sets


A fuzzy subset A of a Universe of Discourse U is characterised by a m^embership function
I: U -> [0,1] which associates with each element x of U a number l\{x) in the closed
interval [0,1] which represents the grade of membership of x in A. The fuzzy subset A
will be denoted as:
555

i=l
where E stands for union.
For example if U = 0+1+2+..+9 then a fuzzy subset could be ;
A = small digits = 1|0 + 1|1 + 1|2 + 0.7|3 + 0.3|4 + 0|5 + ... + 0|9

where the symbol (+) stands for union.


Three basic operations on fuzzy sets are:

i) The union of fuzzy subset A and B of Universes of Discourse U is denoted by AUB


with a membership function defied by :

^'AUB(X) = inax[ H\(x), HB(X) ] , x€U

This corresponds to the connective "OR"

ii) The intersection of the fuzzy subsets A and B is denoted by A^B with a
membership function defined by

»*AnB(x) = "Jn[ MA(X). ^B^*) 1 , xCU

This corresponds to the connective "AND".

iii) The complement of the fuzzy subset A is denoted by -,A with a membership
function defined by:

H-.A^'^) = 1 - HA(X) , x€U


3.2. Fuzzy conditional statement and compositional rule of inference.

Let A and B be fuzzy subsets of two different Universes of Discourse U and V,


respectively. Consider the fuzzy conditional statement (Linguistic implication):

R: "if A then B" or "A => B"

The relation R is a fuzzy subset of the cross product U X V with a membership function
defined by [6]

MR(x,y) = min[ fi\{x), fiB(y) 1 , xCU, y€V

Given a fuzzy relation R and a new fuzzy subset A' (the antencent) the consequent B is
inferred from the compositional rule of inference [5]:

B' = A' 0 R
556

The membership function is defined by :

ftB'(y) = maxinin[ \i\{x), HR(x,y) ] , xeU, y€V


X

Finally two or more rules R; can be combined using the connective ELSE to give a fuzzy
algorithm R which describes the relation between linguistic variables leading to an
approximate result. The algorithm R is given by the relation:

R = R l u R2 U R 3 u . . u R j

3.3. Defuzzification
The result which is given by the a fuzzy algorithm is a fuzzy subset B'. Various
procedures may be used to select a certain value for the output. Here, the element with the
maximum membership value is chosen. In case there are more than one elements with
maximum membership value in B' the average of the maximum and minimum of these
elements is chosen.

4. THE PROBLEM OF THE DIRECTION OF APPROACH


Initially, Cartesian co-ordinates are defined as shown in fig.l with centre of axis where the
bunch and the branch connect. This point, due to the similarity of the fruits, is considered
a little higher than the bunch 's centre of mass

Fig.l. Direction approach: Cartesian coordinates


In order to infer the direction of approach two angles need to be determined. Using
spherical coordinates (r,cp,8) these angles are cp and 6, where 0 is the angle
between the direction of approach and z-axis.
The gripper must approach the fruit towards the direction of the vector
which begins at the fruit's centre and ends at its point of connection with the
branch. The projection trace of this vector on the x-y plane is approximately
557

considered as the section connecting the centre of the fruit's image (Kx,Ky)
with the considered point of connection. Thus, the angle q) is determined by :

Ky
tf= arctan
Kx
If the centre of the fruit's image is to the right of the point of connection, then the solution
in the interval (-n/2, n/2) is accepted, otherwise the solution is sought in the
interval (jt/2, 3jt/2).
The angle 8 is determined through the fuzzy algorithm. The input variables here are the
following:
a) The visible percentage of the fruit from the observing point.
b) The distance of the images centre from the point of connection with the branch.
For example if the fruit is fully visible and the point of connection lies behind it then the
approach should be attempted from the front side (6=0 ). On the other hand if the point of
connection lies towards the fruits outermost points then the approach should be attempted
from the side (6=90 ). The entire fuzzy algorithm consists of seven rules.
The Universe of Discourse of the variable "Area" (A) is:

U = 1 + 2 + ... + 10

where the value 10 specifies a fully visible fruit. Three labels were chosen: SmalUS),
Medium (M) and Large(L). The appropriate sub-sets are given in Table 1.

Table}: Support subsets for the labels of variable "Area".


Area 1 2 3 4 5 6 7 8 9 10
small 10 7 3 0 0. 0 0 0 0 0
med. 0 0 3 7 10 7 3 0 0 0
large 0 0 0 0 0 0 3 7 9 10

The universe of Discourse of the variable Distance (D) is

V = 0 + 1 + 2 + ... + 10

The "Distance" may be: Short(S), Medium(M), Long(L). The support subsets are
shown in table 2.

Table 2: Support subsets for the labels of "Distance"


D 0 1 2 3 4 5 6 7 8 9 10
short 10 9 7 3 0 0 0 0 0 0 0
med. 0 0 0 3 7 10 7 3 0 0 0
long 0 0 0 0 0 0 0 3 7 9 10
558

The variable "Angle" (8) is quantised into 13 levels ranging from 0 up to 180° (every
15°). The Universe of Discourse is

W = 0 + 1 + 2 + ... + 12

Seven normalised labels where chosen: ©1 (front) 92, 0 3 , 0 4 (sidewise), 05, 06,
0 7 (Back). The corresponding support subsets are given in table 3.
Table 3: Support sets for the labels of "Angle"

e 0 1 2 3 4 5 6 7 8 9 10 11 12
»i 10 7 3 0 0 0 0 0 0 0 0 0 0
02 3 7 10 7 3 0 0 0 0 0 0 0 0
®3 0 0 3 7 10 7 3 0 0 0 0 0 0
©4 0 0 0 0 3 7 10 7 3 0 0 0 0
es 0 0 0 0 0 0 3 7 10 7 3 0 0
©6 0 0 0 0 0 0 0 0 3 7 10 7 3
07 0 0 0 0 0 0 0 0 0 0 3 7 10

The fuzzy algorithm consists of the next seven rules:

IF A=Large AND D=Short THEN e=Very 0 1


ELSE
IF A=Large AND D=Medium THEN 6= 0 2
ELSE
IF A=Large AND D=Long THEN 0= 0 4
ELSE
IF A=Medium AND D=(Short OR Medium OR
Long)
THEN e= 0 3
ELSE
IF A=Sman AND D=Short THEN 9= 0 7
ELSE
IF A=Small AND D=Medium THEN 8= 0 5
ELSE
IF A^Small AND D=Long THEN 8= 0 6

For the single fruits the following values are chosen:

q)=270O , 8=450

taking into account the possibility that the second fruit may be hidden behind the visible
fruit.
559

5.RESULTS

The values of 9 for all combinaiions of the input variables are given in the next look-up
table:
^'A 1 2 3 4 5 6 7 8 9 1 0
0 173 165 135 120 120 120 75 8 8 8
1 173 165 135 120 120 120 75 8 8 8
2 165 165 135 120 120 120 75 8 8 8
3 143 143 135 120 120 120 75 38 38 38
4 135 135 128 120 120 120 83 45 45 45
5 135 135 128 120 120 120 83 45 45 45
6 135 135 128 120 120 120 83 45 45 45
7 128 128 128 120 120 120 83 68 68 68
8 120 120 120 120 120 120 105 90 90 90
9 120 120 120 120 120 120 105 90 90 90
10 120 120 120 120 120 120 105 90 90 90
Two examples of the program's execution are given bellow. The first picture (a) is the
image taken from the camera, the second (b) depicts the values of intensity of every pixel,
the third (c) gives the "seed areas" and the fourth (d) providesthe areas which have been
located as fruits. Values of intensity greater than nine have been replaced with the value of
nine for reasons that are connected to the representation of the picture. For the same
reason, in pictures (c) and (d) intensities of zero value are not typed.

1) First example:

(a) (b)

(c) (d)
Fig.2: First Example
560

The program locates a single fruit on the left side and a branch consisting of three fruits on
the right.-
Results; Single fruits: f=27l* , 8=45®
Bunch; Fruit No 1: f=-f« , §=90®
Fruit Mo 2; f=189« , i=l§5<»
Fruit No 3: f^-SS® , i=12iO
2) Second example:

la} (b)

. " j i - J , - ----J - • ] .

ic) (di
Mg.?- Secotid E.«iump!e
The program locaies live iruiis in two bunches;
Tlie upper bunch c^.n.si^ts of ibrcc frjits and the lower one consists of two fiiiits:
Results:
Upper hunch- first fruit. ip^fo , i=f§o
second fruit : f=172'' , e=fi*
third fruit: f=2630 , i=12§o

Lower bunch: first fruit:


second fruit: f=2i7» , f=l©50
561

It is noted, that after the removal of a fruit from a bunch, the positions of the other fruits
change and the procedure must be repeated.

6.CONCLUSIONS

This paper, belongs to the area of designing robots that function in the natural
environment. Such robots are equipped with vision and artificial intelligence. The
problems that are faced in the attempt of locating the fruits are many, since in each case the
position of the fruits in the picture are random and the background different. Through the
study of ways to surpass these problems, useful conclusions of the importance of
characteristics, such as colour, shape and intensity, in order to locate the fruits, are drawn.
The principal issue of the present paper is the fuzzy algorithm. The central problem in
constructing this algorithm was the description in linguistic terms of the way the human
infers in which direction the fruit must be detached from the bunch. Since this problem
was surpassed the fuzzy algorithm was easy to construct. This is actually the main
advantage of fuzzy logic, i.e. from the moment the control strategy can be expressed
linguistically as a set of fuzzy conditional statements, the fuzzy logic system is readily
synthesized.
Here, the fuzzy algorithm was shown to be of a greater success than expected,
encouraging future studies of the fuzzy logic in image processing too. In conclusion fuzzy
logic theory proves to be a helpful tool in the human attempt to create robots with "human"
abilities such as fruit's collection, etc..

REFERENCES
[1] S.G.Tzafestas .: Expert Systems in Engineering Applications, Springer -
Verlag, Berlin, 1993.
[2] S.G. Tzafestas.: Intelligent Robotic Systems, Marcel Dekker, New York, 1991.
[3] R.G Gonzalez and R.E. Woods. : Digital Image Processing, Addison Wesley,
pp.574-5,I992.
[4] LA. Zadeh: Outline of a new approach to the analysis of complex systems
and decision processes. IEEE Trans. Syst., Man, Cybern.,vol.SMC-3,no.l,pp28-
44,Jan.l973.
[5] K.Hlrota, Y.Arai and S.Hachisu: Moving mark recognition and moving
object manipulation in fuzzy controlled robot. Control: Theory and Adv.
Techn.,vol 2, no.3, pp 399-418, Nov.1986.
[6] E.H.Mamdani: Application of fuzzy logic to approximate reasoning using
linguistic synthesis. IEEE Trans. Computers, vol c-26,no. 12,Dec.l977.
[7] K.S.Fu, R.C.Gonzalez, C.S.G.Lee: Robotics: Control, Sensing, Vision and
intelligence. McGraw-Hill 1987.
[8] R.M.Tong: A control engineering review of fuzzy systems.
Automatica,vol.l3,pp.559-569.1977.

Вам также может понравиться