521 lines
22 KiB
Plaintext
521 lines
22 KiB
Plaintext
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
|
||
<EFBFBD>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
|
||
<EFBFBD>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
|
||
<EFBFBD>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:
|
||
<EFBFBD>
|
||
|
||
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.
|
||
<EFBFBD>
|
||
|
||
|
||
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
|
||
<EFBFBD>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).
|
||
|
||
<EFBFBD>
|
||
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].
|
||
|
||
|
||
<EFBFBD>
|
||
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.
|
||
|
||
|
||
<EFBFBD> [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.
|
||
|