Fuzzy logic: Difference between revisions
Line 69: | Line 69: | ||
* [[fuzzy control system]] |
* [[fuzzy control system]] |
||
* [[major appliance]] |
* [[major appliance]] |
||
* [[Pattern recognition]] |
|||
* [[Rough set]] |
* [[Rough set]] |
||
Revision as of 15:25, 23 April 2005
Fuzzy logic is an extension of boolean logic dealing with the concept of partial truth. Whereas classical logic holds that everything can be expressed in binary terms (0 or 1, black or white, yes or no), fuzzy logic replaces boolean truth values with degrees of truth. Degrees of truth are often confused with probabilities, although they are conceptually distinct, because they need not add up to 100%. Fuzzy logic allows for set membership values between and including 0 and 1, shades of gray as well as black and white, and in its linguistic form, imprecise concepts like "slightly", "quite" and "very". Specifically, it allows partial membership in a set. It is related to fuzzy sets and possibility theory. It was introduced in 1965 by Dr. Lotfi Zadeh of Berkeley.
Fuzzy logic is controversial: it is widely accepted within the engineering and computer science communities, but generally rejected by mathematicians and statisticians because it seems to contradict the principle of bivalence. Critics also argue that it cannot be a superset of ordinary set theory since membership functions are defined in terms of conventional sets.
Applications
Fuzzy logic can be used to control household appliances such as washing machines (which sense load size and detergent concentration and adjust their wash cycles accordingly) and refrigerators.
A basic application might characterize subranges of a continuous variable. For instance, a temperature measurement for anti-lock brakes might have several separate membership functions defining particular temperature ranges needed to control the brakes properly. Each function maps the same temperature value to a truth value in the 0 to 1 range. These truth values can then be used to determine how the brakes should be controlled.
In this image, cold, warm, and hot are functions mapping a temperature scale. A point on that scale has three "truth values" — one for each of the three functions. For the particular temperature shown, the three truth values could be interpreted as describing the temperature as, say, "fairly cold", "slightly warm", and "not at all hot".
Common misconceptions
Fuzzy logic has suffered many misconceptions, partly due to its name. "Fuzzy" often has negative connotations, either suggesting something cute or something imprecise; the latter sometimes causes people to equate "fuzzy logic" with "imprecise logic". However, fuzzy logic is not any less precise than any other form of logic: it is an organized and mathematical method of handling inherently imprecise concepts. The concept of "coldness" cannot be expressed in an equation, because although temperature is a quantity, "coldness" is not. However, people have an idea of what "cold" is, and agree that something cannot be "cold" at N degrees but "not cold" at N+1 degrees — a concept classical logic cannot easily handle due to the principle of bivalence.
Another common misconception is that fuzzy logic is a new way of expressing probability. However, Bart Kosko has shown that probability is a subtheory of fuzzy logic, as probability only handles one kind of uncertainty. He also proved a theorem demonstrating that Bayes' theorem can be derived from the concept of fuzzy subsethood. This should not by any means suggest that all those who study probability accept or even understand fuzzy logic, however: to many, fuzzy logic is still a curiosity.
Fuzzy logic is also sometimes said to be used only in AI, control systems, and/or expert systems (note that these fields can have significant overlap). These are by far the most common applications, but by no means the only possible: fuzzy logic can be applied in any situation requiring the handling of imprecision or uncertainty.
Examples where fuzzy logic is used
- Automobile subsystems, such as ABS and cruise control
- Air conditioners
- The MASSIVE engine used in the Lord of the Rings films, which helped show huge scale armies create random, yet orderly movements
- Cameras
- Digital image processing, such as Edge detection
- Rice cookers
- Dishwashers
- Elevators
- Washing machines and other home appliances.
- Video game artificial intelligence
Fuzzy logic has also been incorporated into some microcontrollers and microprocessors, for instance, the Motorola 68HC12.
How fuzzy logic is applied
Fuzzy logic usually uses IF/THEN rules, or constructs that are equivalent, such as fuzzy associative matrices.
Rules are usually expressed in the form:
IF variable IS set THEN action
For example, an extremely simple temperature regulator that uses a fan might look like this:
IF temperature IS very cold THEN stop fan IF temperature IS cold THEN turn down fan IF temperature IS normal THEN maintain level IF temperature IS hot THEN speed up fan
Notice there is no "ELSE". All of the rules are evaluated, because the temperature might be "cold" and "normal" at the same time to differing degrees.
The AND, OR, and NOT operators of boolean logic exist in fuzzy logic, usually defined as the minimum, maximum, and complement; when they are defined this way, they are called the Zadeh operators, because they were first defined as such in Zadeh's original papers. So for the fuzzy variables x and y:
NOT x = (1 - truth(x)) x AND y = minimum(truth(x), truth(y)) x OR y = maximum(truth(x), truth(y))
There are also other operators, more linguistic in nature, called hedges that can be applied. These are generally adverbs such as "very", or "somewhat", which modify the meaning of a set using a mathematical formula.
See also
- Artificial intelligence
- Artificial neural network
- Biologically-inspired computing
- combs method
- control system
- defuzzification
- dynamic logic
- Expert system
- fuzzy associative matrix
- Fuzzy Control Language
- fuzzy control system
- major appliance
- Pattern recognition
- Rough set
Bibliography
- Earl Cox, The Fuzzy Systems Handbook (1994), ISBN 0-12-194270-8
- Frank Höppner, Frank Klawonn, Rudolf Kruse and Thomas Runkler, Fuzzy Cluster Analysis (1999), ISBN 0-471-98864-2
- George Klir and Tina Folger, Fuzzy Sets, Uncertainty, and Information (1988), ISBN 0-13-345984-5
- George Klir and Bo Yuan, Fuzzy Sets and Fuzzy Logic (1995) ISBN 0-13-101171-5
- Ronald Yager and Dimitar Filev, Essentials of Fuzzy Modeling and Control (1994), ISBN 0-471-01761-2