FUZZY SYSTEMS - A TUTORIAL


     by


     James F. Brule'



   (c) Copyright James F. Brule' 1985. Permission to copy without fee all or 
part of this material is granted provided that the copies are not made or 
distributed for direct commerical advantage, the copyright notice and the 
title and date appear, and notice is given that copying is by permission of 
the author. To copy otherwise, or to republish, requires a fee and/or specific 
permission.



     INTRODUCTION


   Fuzzy sytems is an alternative to traditional notions of set membership and 
logic that has its origins in ancient Greek philosophy, and applications at 
the leading edge of Artificial Intelligence. Yet, despite its long-standing 
origins, it is a relatively new field, and as such leaves much room for 
development. This paper will present the foundations of fuzzy systems, along 
with some of the more noteworthy objections to its use, with examples drawn 
from current research in the field of Artificial Intelligence. Ultimately, it 
will be demonstrated that the use of fuzzy systems makes a viable addition to 
the field of Artificial Intelligence, and perhaps more generally to formal 
mathematics as a whole.



     THE PROBLEM:  REAL-WORLD VAGUENESS




   Natural language abounds with vague and imprecise concepts, such as "Sally 
is tall," or "It is very hot today." Such statements are difficult to 
translate into more precise language without losing some of their semantic 
value: for example, the statement "Sally's height is 152 cm." does not 
explicitly state that she is tall, and the statement "Sally's height is 1.2 
standard deviations about the mean height for women of her age in her culture" 
is fraught with difficulties: would a woman 1.1999999 standard deviations 
above the mean be tall? Which culture does Sally belong to, and how is 
membership in it defined?


   While it might be argued that such vagueness is an obstacle to clarity of 
meaning, only the most staunch tradtionalists would hold that there is no loss 
of richness of meaning when statements such as "Sally is tall" are discarded 
from a language. Yet this is just what happens when one tries to translate 
human language into classic logic. Such a loss is not noticed in the 
development of a payroll program, perhaps, but when one wants to allow for 
Šnatural language queries, or "knowledge representation" in expert systems, the 
meanings lost are often those being searched for.


   For example, when one is designing an expert sstem to mimic the diagnostic 
powers of a physician, one of the major tasks i to codify the physician's 
decision-making process. The designer soon learns that the physician's view of 
the world, despite her dependence upon precise, scientific tests and 
measurements, incorporates evaluations of symptoms, and relationships between 
them, in a "fuzzy," intutive manner: deciding how much of a particular 
medication to administer will have as much to do with the physician's sense of 
the relative "strength" of the patient's symptoms as it will their 
height/weight ratio. While some of the decisions and calculations could be 
done using traditional logic, we will see how fuzzy systems affords a broader, 
richer field of data and the manipulation of that data than do more 
traditional methods.



     HISTORIC FUZZINESS


   The precision of mathematics owes its success in large part to the efforts 
of Aristotle and the philosophers who preceded him. In their efforts to devise 

a concise theory of logic, and later mathematics, the so-called "Laws of 
Thought" were posited [7]. One of these, the "Law of the Excluded Middle," 
states that every proposition must either be True or False. Even when 
Parminedes proposed the first version of this law (around 400 B.C.) there were 
strong and immediate objections: for example, Heraclitus proposed that things 
could be simultaneously True and not True.


   It was Plato who laid the foundation for what would become fuzzy logic, 
indicating that there was a third region (beyond True and False) where these 
opposites "tumbled about." Other, more modern philosophers echoed his 
sentiments, notably Hegel, Marx, and Engels. But it was Lukasiewicz who first 
proposed a systematic alternative to the bi-valued logic of Aristotle [8].


   In the early 1900's, Lukasiewicz described a three-valued logic, along with 
the mathematics to accompany it. The third value he proposed can best be 
translated as the term "possible," and he assigned it a numeric value between 
True and False. Eventually, he proposed an entire notation and axiomatic 
system from which he hoped to derive modern mathematics.


   Later, he explored four-valued logics, five-valued logics, and then 
declared that in principle there was nothing to prevent the derivation of an 
infinite-valued logic. Lukasiewicz felt that three- and infinite-valued logics 
were the most intriguing, but he ultimately settled on a four-valued logic 
because it seemed to be the most easily adaptable to Aristotlean logic.


   Knuth proposed a three-valued logic similar to Lukasiewicz's, from which he 
speculated that mathematics would become even more elegant than in traditional 
Šbi-valued logic. His insight, apparently missed by Lukasiewicz, was to use the 
integral range [-1, 0 +1] rather than [0, 1, 2]. Nonetheless, this alternative 
failed to gain acceptance, and has passed into relative obscurity.


   It was not until relatively recently that the notion of an infinite-valued 
logic took hold. In 1965 Lotfi A. Zadeh published his seminal work "Fuzzy 
Sets" ([12], [13]) which described the mathematics of fuzzy set theory, and by 
extension fuzzy logic. This theory proposed making the membership function (or 

the values False and True) operate over the range of real numbers [0.0, 1.0]. 
New operations for the calculus of logic were proposed, and showed to be in 
principle at least a generalization of classic logic. It is this theory which 
we will now discuss.



     BASIC CONCEPTS


   The notion central to fuzzy systems is that truth values (in fuzzy logic) 
or membership values (in fuzzy sets) are indicated by a value on the range 
[0.0, 1.0], with 0.0 representing absolute Falseness and 1.0 representing 
absolute Truth. For example, let us take the statement:


     "Jane is old."


   If Jane's age was 75, we might assign the statement the truth value of 
0.80. The statement could be translated into set terminology as follows:


     "Jane is a member of the set of old people."


   This statement would be rendered symbolically with fuzzy sets as:


     mOLD(Jane) = 0.80


where m is the membership function, operating in this case on the fuzzy set of 
old people, which returns a value between 0.0 and 1.0.


   At this juncture it is important to point out the distinction between fuzzy 
systems and probability. Both operate over the same numberic range, and at 
first glance both have similar values: 0.0 representing False (or non-
membership), and 1.0 representing True (or membership). However, there is a 
distinction to be made between the two statements: The probabilistic approach 
yields the natural-language statement, "There is an 80% chance that Jane is 
old," while the fuzzy terminology corresponds to "Jane's degree of membership 
within the set of old people is 0.80." The semantic difference is significant: 
the first view supposes that Jane is or is not old (still caught in the Law of 
the Excluded Middle); it is just that we only have an 80% chance of knowing 
Šwhich set she is in. By contrast, fuzzy terminology supposes that jane is 
"more or less" oild, or some other term correspondig to the value of 0.80. 
Further distinctions arising out of the operations will be noted below.


   The next step in establishing a complete system of fuzzy logic is to define 
the operations of EMPTY, EQUAL, COMPLEMENT (NOT), CONTAINMENT, UNION (OR), and 
INTERSECTION (AND). Before we can do this rigorously, we must state some 
formal definitions:


Definition 1:  Let X be some set of objects, with elements noted as x. Thus, 
   X = {x}.


Definition 2:  A fuzzy set A in X is characterized by a membership function 
   mA(x) which maps each point in X onto the real interval [0.0, 1.0]. As 
   mA(x) approaches 1.0, the "grade of membership" of x in A increases.


Definition 3:  A is EMPTY iff for all x, mA(x) = 0.0.


Definition 4:  A = B iff for all x: mA(x) = mB(x) [or, mA = mB].


Definition 5:  mA' = 1 - mA.


Definition 6:  A is CONTAINED in B iff mA <= mB.


Definition 7:  C = A UNION B, where: mC(x) = MAX(mA(x), mB(x)).


Definition 8:  C = A INTERSECTION B where: mC(x) = MIN(mA(x), mB(x)).


   It is important to note the last two operations, UNION (OR) and 
INTERSECTION (AND), which represent the clearest point of departure from a 
probabilistic theory for sets to fuzzy sets. Operationally, the differences 
are as follows:


   For independent events, the probabilistic operation for AND is 
multiplication, which (it can be argued) is counterintuitive for fuzzy 
systems. For example, let us presume that x = Bob, S is the fuzzy set of smart 
people, and T is the fuzzy set of tall people. Then, if mS(x) = 0.90 and 
uT(x) = 0.90, the probabilistic result would be:


     mS(x) * mT(x) = 0.81


whereas the fuzzy result would be:
Š

     MIN(uS(x), uT(x)) = 0.90


The probabilistic calculation yields a result that is lower than either of the 
two initial values, which when viewed as "the chance of knowing" makes good 
sense.


   However, in fuzzy terms the two membership functions would read something 
like "Bob is very smart" and "Bob is very tall." If we presume for the sake of 
argument that "very" is a stronger term than "quite," and that we would 
correlate "quite" with the value 0.81, then the semantic difference becomes 
obvious. The probabilistic calculation would yield the statement


     If Bob is very smart, and Bob is very tall, then Bob is a quite tall, 
smart person.


   The fuzzy calculation, however, would yield


     If Bob is very smart, and Bob is very tall, then Bob is a very tall, 
smart person.


   Another problem arises as we incorporate more factors into our equations 
(such as the fuzzy set of heavy people, etc.). We find that the ultimate 
result of a series of AND's approaches 0.0, even if all factors are initially 
high. Fuzzy theorists argue that this is wrong: that five factors of the value 
0.90 (let us say, "very") AND'ed together, should yield a value of 0.90 
(again, "very"), not 0.59 (perhaps equivalent to "somewhat").


   Similarly, the probabilistic version of A OR B is (A+B - A*B), which 
approaches 1.0 as additional factors are considered. Fuzzy theorists argue 
that a sting of low membership grades should not produce a high membership 
gradel instead, the limit of the resulting membership grade should be the 
strongest membership value in the collection.


   Other values have been established by other authors, as have other 
operations. Baldwin [1] proposes a set of truth value restrictions, such as 
"unrestricted" (mX = 1.0), "impossible" (mX = 0.0), etc.


   The skeptical observer will note that the assignement of values to 
linguistic meanings (such as 0.90 to "very") and vice versa, is a most 
imprecise operation. Fuzzy systems, it should be noted, kay no claim to 
establishing a formal procedure for assignments at this level; in fact, the 
only argument for a particular assignment is its intuitive strength. What 
fuzzy logic does propose is to establish a formal method of operating on these 
values, once the primitives have been established.
Š


     HEDGES


   Another important feature of fuzzy systems is the ability to define 

"hedges," or modifier of fuzzy values. These operations are provided in an 
effort to maintain close ties to natural language, and to allow for the 
generation of fuzzy statements through mathematical calculations. As such, the 
initial definition of hedges and operations upon them will be quite a 
subjective process and may vary from one project to another. Nonetheless, the 
system ultimately derived operates with the same formality as classic logic.


   The simplest example is in which one transforms the statement "Jane is old" 
to "Jane is very old." The hedge "very" is usually defined as follows:


     m"very"A(x) = mA(x)^2


   Thus, if mOLD(Jane) = 0.8, then mVERYOLD(Jane) = 0.64.


   Other common hedges are "more or less" [typically SQRT(mA(x))], "somewhat," 
"rather," "sort of," and so on. Again, their definition is entirely 
subjective, but their operation is consistent: they serve to transform 
membership/truth values in a systematic manner according to standard 
mathematical functions.


   A more involved approach to hedges is best shown through the work of 
Wenstop [11] in his attempt to model organizational behavior. For his study, 
he constructed arrays of values for various terms, either as vectors or 
matrices. Each term and hedge was represented as a 7-element vector or 7x7 
matrix. He ten intuitively assigned each element of every vector and matrix a 
value between 0.0 and 1.0, inclusive, in what he hoped was intuitively a 
consistent manner. For example, the term "high" was assigned the vector


     0.0 0.0 0.1 0.3 0.7 1.0 1.0


and "low" was set equal to the reverse of "high," or


     1.0 1.0 0.7 0.3 0.1 0.0 0.0


   Wenstop was then able to combne groupings of fuzzy statements to create new 

fuzzy statements, using the APL function of Max-Min matrix multiplication.


   These values were then translated back into natural language statements, so 
Šas to allow fuzzy statements as both input to and output from his simulator. 
For example, when the program was asked to generate a label "lower than sortof 
low," it returned "very low;" "(slightly higher) than low" yielded "rather 
low," etc.


   The point of this example is to note that algorithmic procedures can be 
devised which translate "fuzzy" terminology into numeric values, perform 
reliable operations upon those values, and then return natural language 
statements in a reliable manner.


   Similar techniques have been adopted by others, primarily in the study of 

fuzzy systems as applicable to linguistic approximation (e.g. [2], [3], [4]). 
APL appears to be the language of choice, owing to its flexibility and power 
in matrix operations.



     OBJECTIONS


   It would be remarkable if a theory as far-reaching as fuzzy systems did not 
arouse some objections in the professional community. While there have been 
generic complaints about the "fuzziness" of the process of assigning values to 
linguistic terms, perhaps the most cogent criticisms come from Haack [6]. A 
formal logician, Haack argues that there are only two ares in which fuzzy 
logic could possibly be semonstrated to be "needed," and then maintains that 
in each case it can be shown that fuzzy logic is not necessary.


   The first area Haack defines is that of the nature of Truth and Falsity: if 
it could be shown, she maintains, that these are fuzzy values and not discrete 
ones, then a need for fuzzy logic would have been demonstrated. The other area 
she identifies is that of fuzzy systems' utility: if it could be demonstrated 
that generalizing classic logic to encompass fuzzy logic would aid in 
calculations of a given sort, then again a need for fuzzy logic would exist.


   In regards to the first statement, Haack argues that True and False are 
discrete terms. For example, "The sky is blue" is either true or false; any 
fuzziness to the statement arises from an imprecise definition of terms, not 
out of the nature of Truth. As far as fuzzy systems' utility is concerned, she 
maintains that no area of data manipulation is made easier through the 
introduction of fuzzy calculus; if anything, she says, the calculations become 
more complex. Therefore, she asserts, fuzzy logic is unnecessary.


   Fox [5] has responded to her objetions, indicating that there are three 
areas in which fuzzy logic can be of benefit: as a "requisite" apparatus (to 
describe real-world relationships which are inherently fuzzy); as a 
"prescriptive" apparatus (because some data is fuzzy, and therefore requires a 
fuzzy calculus); and as a "descriptive" apparatus (because some inferencing 
systems are inherently fuzzy).

Š
   His most powerful arguments come, however, from the notion that fuzzy and 
classic logics need not be seen as competitive, but complementary. He argues 
that many of Haack's objections stem from a lack of semantic clarity, and that 
ultimately fuzzy statements may be translatable into phrases which classical 
logicians would find palatable.


   Lastly, Fox argues that despite the objections of classical logicians, 
fuzzy logic has found its way into the world of practical applications, and 
has proved very successful there. He maintains, pragmatically, that this is 
sufficient reason for continuing to develop the field.



     APPLICATIONS


   Areas in which fuzzy logic has been successfully applied are often quite 
concrete. The first major commercial application was in the area of cement 
kiln control, an operation which requires that an operator monitor four 
internal states of the kiln, control four sets of operations, and dynamically 
manage 40 or 50 "rules of thumb" about their interrelationships, all with the 
goal of controlling a highly complex set of chemical interactions. One such 
rule is "If the oxygen percentage is rather high and the free-lime and kiln-
drive torque rate is normal, decrease the flow of gas and slightly reduce the 
fuel rate" (see Zadeh [14]). A complete accounting of this very successful 
system can be found in Umbers and King [10].


   The objection has been raised that utilizing fuzzy systems in a dynamic 
control environment raises the likelihood of encountering difficult stability 
problems: since in control conditions the use of fuzzy systems can roughly 
correspond to using threshholds, there must be significant care taken to 
insure that oscillations do not develop in the "dead spaces" between 
threshhold triggers. This seems to be an important area for future research.


   Other applications which have benefited through the use of fuzzy systems 
theory have been information retrieval systems, a navigation system for 
automatic cars, a predictive fuzzy-logic controller for automatic operation of 
trains, laboratory water level controllers, controllers for robot arc-welders, 
feature-definition controllers for robot vision, graphics controllers for 
automated police sketchers, and more.


   Expert systems have been the most obvious recipients of the benefits of 
fuzzy logic, since their domain is often inherently fuzzy. Examples of expert 
systems with fuzzy logic central to their control are decision-support 
systems, financial planners, diagnostic systems for determining soybean 
pathology, and a meterological expert system in China for determining areas in 
which to establish rubber tree orchards [14]. Another area of application, 
akin to expert systems, is that of information retrieval [9].


Š
     CONCLUSIONS


   Fuzzy systems, including fuzzy logic and fuzzy set theory, provide a rich 
and meaningful addition to standard logic. The mathematics generated by these 
theories is consistent, and fuzzy logic may be a generalization of classic 
logic. The applications which may be generated from or adapted to fuzzy logic 
are wide-ranging, and provide the opportunity for modeling of conditions which 
are inherently imprecisely defined, despite the concerns of classical 
logicians. Many systems may be modeled, simulated, and even replicated with 
the help of fuzzy systems, not the least of which is human reasoning itself.



     REFERENCES


   [1]  J.F. Baldwin, "Fuzzy logic and fuzzy reasoning," in Fuzzy Reasoning 
and Its Applications, E.H. Mamdani and B.R. Gaines (eds.), London: Academic 
Press, 1981.





   [2]  W. Bandler and L.J. Kohout, "Semantics of implication operators and 
fuzzy relational products," in Fuzzy Reasoning and Its Applications, E.H. 
Mamdani and B.R. Gaines (eds.), London: Academic Press, 1981.


   [3]  M. Eschbach and J. Cunnyngham, "The logic of fuzzy Bayesian 
influence," paper presented at the International Fuzzy Systems Association 
Symposium of Fuzzy information Processing in Artificial Intelligence and 
Operational Research, Cambridge, England: 1984.


   [4]  F. Esragh and E.H. Mamdani, "A general approach to linguistic 
approximation," in Fuzzy Reasoning and Its Applications, E.H. Mamdani and B.R. 
Gaines (eds.), London: Academic Press, 1981.


   [5]  J. Fox, "Towards a reconciliation of fuzzy logic and standard logic," 
Int. Jrnl. of Man-Mach. Stud., Vol. 15, 1981, pp. 213-220.


   [6]  S. Haack, "Do we need fuzzy logic?" Int. Jrnl. of Man-Mach. Stud., 
Vol. 11, 1979, pp.437-445.


   [7]  S. Korner, "Laws of thought," Encyclopedia of Philosophy, Vol. 4, 
MacMillan, NY: 1967, pp. 414-417.


   [8]  C. Lejewski, "Jan Lukasiewicz," Encyclopedia of Philosophy, Vol. 5, 
MacMillan, NY: 1967, pp. 104-107.


Š   [9]  T. Radecki, "An evaluation of the fuzzy set theory approach to 
information retrieval," in R. Trappl, N.V. Findler, and W. Horn, Progress in 
Cybernetics and System Research, Vol. 11: Proceedings of a Symposium Organized 
by the Austrian Society for Cybernetic Studies, Hemisphere Publ. Co., NY: 
1982.


   [10]  I.G. Umbers and P.J. King, "An analysis of human decision-making in 
cement kiln control and the implications for automation," Int. Jrnl. of Man-
Mach. Stud., Vol. 12, 1980, pp. 11-23.


   [11]  F. Wenstop, "Deductive verbal models of organizations," Int. Jrnl. of 

Man-Mach. Stud., Vol. 8, 1976, pp. 293-311.


   [12]  L.A. Zadeh, "Fuzzy sets," Info. & Ctl., Vol. 8, 1965, pp. 338-353.


   [13]  L.A. Zadeh, "Fuzzy algorithms," Info. & Ctl., Vol. 12, 1968, pp. 94-
102.


   [14]  L.A. Zadeh, "Making computers think like people," I.E.E.E. Spectrum, 
8/1984, pp. 26-32.
������������������������������������������������������������