|
|
|
|
FUZZY SYSTEMS - A TUTORIAL
by James F. Brule
INTRODUCTION
Fuzzy systems 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 traditionalists 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 system 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," intuitive 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 Aristotelian 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 numeric 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" old, or some other term
corresponding 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 <>
- 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 grade 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 assignment 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, lay 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 combine 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 areas in which fuzzy logic could possibly be demonstrated 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 objections, 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 thresholds, there must be significant care taken to
insure that oscillations do not develop in the "dead spaces"
between threshold 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 predicative 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 meteorological 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.
REFERENCES RELATED TO DEFINITIONS OF OPERATORS:
Gougen, J.A. (1969) The logic of inexact concepts. Synthese, Vol. 19,
pp 325-373.
Osherson, D.N., & Smith, E.E. (1981) On the adequacy of prototype
theory as a theory of concepts. Cognition. Vol. 9, pp. 35-38.
Osherson, D.N., & Smith, E.E. (1982) Gradedness and conceptual combination.
Cognition, Vol. 12, pp. 299-318.
Roth, E.M., & Mervis, C.B. (1983) Fuzzy set theory and class inclusion
relations in semantic categories. Journal of Verbal Learning and Verbal
Behavior, Vol. 22, pp. 509-525.
Zadeh, L.A. (1982) A note on prototype theory and fuzzy sets. Cognition,
Vol. 12, pp. 291-297.
BASIC REFERENCE ON PROTOTYPE THEORY IN COGNITIVE PSYCHOLOGY:
Mervis, C.B., & Rosch, E. (1981) Categorization of natural objects.
Annual Review of Psychology, Vol. 32, pp. 89-115.
SELECTED REFERENCES ON FUZZY SET THEORY GENERALLY & AI APPLICATIONS:
Jain, R. Fuzzyism and real world problems. In P.P. Wang & S.K. Chang
(Eds.), Fuzzy Sets, New York: Plenum Press.
Zadeh, L.A. (1965) Fuzzy sets. Information and Control, Vol. 8, pp. 338-353.
Zadeh, L.A. (1978) PRUF - A meaning representation language for natural
languages. International Journal of Man-Machine Studies, Vol. 10, pp.
395-460.
Zadeh, L.A. (1983) The role of fuzzy logic in the management of uncertainty
in expert systems. Memorandum No. UCB/ERL M83/41, University of California,
Berkeley.
|