Fuzzy logic
|
|
This article may require cleanup to meet Wikipedia's quality standards. Please improve this article if you can. (April 2010) |
Fuzzy logic is a form of multi-valued logic derived from fuzzy set theory to deal with reasoning that is approximate rather than precise. In contrast with "crisp logic", where binary logic, fuzzy logic variables may have a truth value that ranges between 0 and 1 and is not constrained to the two truth values of classic propositional logic.[1] Furthermore, when linguistic variables are used, these degrees may be managed by specific functions.
Fuzzy logic emerged as a consequence of the 1965 proposal of fuzzy set theory by Lotfi Zadeh.[2][3] Though fuzzy logic has been applied to many fields, from control theory to artificial intelligence, it still remains controversial among most statisticians, who prefer Bayesian logic, and some control engineers, who prefer traditional two-valued logic.
Contents |
[edit] Degrees of truth
Fuzzy logic and probabilistic logic are mathematically similar – both have truth values ranging between 0 and 1 – but conceptually distinct, due to different interpretations—see interpretations of probability theory. Fuzzy logic corresponds to "degrees of truth", while probabilistic logic corresponds to "probability, likelihood"; as these differ, fuzzy logic and probabilistic logic yield different models of the same real-world situations.
Both degrees of truth and probabilities range between 0 and 1 and hence may seem similar at first. For example, let a 100 ml glass contain 30 ml of water. Then we may consider two concepts: Empty and Full. The meaning of each of them can be represented by a certain fuzzy set. Then one might define the glass as being 0.7 empty and 0.3 full. Note that the concept of emptiness would be subjective and thus would depend on the observer or designer. Another designer might equally well design a set membership function where the glass would be considered full for all values down to 50 ml. It is essential to realize that fuzzy logic uses truth degrees as a mathematical model of the vagueness phenomenon while probability is a mathematical model of ignorance. The same could be achieved using probabilistic methods, by defining a binary variable "full" that depends on a continous variable that describes how full the glass is. There is no consensus on which method should be preferred in a specific situation.[citation needed]
[edit] Applying truth values
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, the meaning of the expressions cold, warm, and hot is represented by functions mapping a temperature scale. A point on that scale has three "truth values"—one for each of the three functions. The vertical line in the image represents a particular temperature that the three arrows (truth values) gauge. Since the red arrow points to zero, this temperature may be interpreted as "not hot". The orange arrow (pointing at 0.2) may describe it as "slightly warm" and the blue arrow (pointing at 0.8) "fairly cold".
[edit] Linguistic variables
While variables in mathematics usually take numerical values, in fuzzy logic applications, the non-numeric linguistic variables are often used to facilitate the expression of rules and facts.[4]
A linguistic variable such as age may have a value such as young or its antonym old. However, the great utility of linguistic variables is that they can be modified via linguistic hedges applied to primary terms. The linguistic hedges can be associated with certain functions. For example, L. A. Zadeh proposed to take the square of the membership function. This model, however, does not work properly. For more details, see the references.
[edit] Example
Fuzzy set theory defines fuzzy operators on fuzzy sets. The problem in applying this is that the appropriate fuzzy operator may not be known. For this reason, fuzzy logic usually uses fuzzy associative matrices.
Rules are usually expressed in the form:
IF variable IS property THEN action
For example, a 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
There is no "ELSE" – all of the rules are evaluated, because the temperature might be "cold" and "normal" at the same time to different 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. 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.
[edit] Logical analysis
|
|
This article's factual accuracy is disputed. Please see the relevant discussion on the talk page. (April 2010) |
In mathematical logic, there are several formal systems of "fuzzy logic"; most of them belong among so-called t-norm fuzzy logics.
[edit] Propositional fuzzy logics
The most important propositional fuzzy logics are:
- Monoidal t-norm-based propositional fuzzy logic MTL is an axiomatization of logic where conjunction is defined by a left continuous t-norm, and implication is defined as the residuum of the t-norm. Its models correspond to residuated lattices.
- Basic propositional fuzzy logic BL is an extension of MTL logic where conjunction is defined by a continuous t-norm, and implication is also defined as the residuum of the t-norm. Its models correspond to BL-algebras.
- Łukasiewicz fuzzy logic is the extension of basic fuzzy logic BL where standard conjunction is the Łukasiewicz t-norm. It has the axioms of basic fuzzy logic plus an axiom of double negation, and its models correspond to MV-algebras.
- Gödel t-norm. It has the axioms of BL plus an axiom of idempotence of conjunction, and its models are called G-algebras.
- Product fuzzy logic is the extension of basic fuzzy logic BL where conjunction is product t-norm. It has the axioms of BL plus another axiom for cancellativity of conjunction, and its models are called product algebras.
- Fuzzy logic with evaluated syntax (sometimes also called Pavelka's logic), denoted by EVŁ, is a further generalization of mathematical fuzzy logic. While the above kinds of fuzzy logic have traditional syntax and many-valued semantics, in EVŁ is evaluated also syntax. This means that each formula has an evaluation. Axiomatization of EVŁ stems from Łukasziewicz fuzzy logic. A generalization of classical Gödel completeness theorem is provable in EVŁ.
[edit] Predicate fuzzy logics
These extend the above-mentioned fuzzy logics by adding universal and existential quantifiers in a manner similar to the way that predicate logic is created from propositional logic. The semantics of the universal (resp. existential) quantifier in t-norm fuzzy logics is the infimum (resp. supremum) of the truth degrees of the instances of the quantified subformula.
[edit] Decidability issues for fuzzy logic
The notions of a "decidable subset" and "recursively enumerable subset" are basic ones for classical mathematics and classical logic. Then, the question of a suitable extension of such concepts to fuzzy set theory arises. A first proposal in such a direction was made by E.S. Santos by the notions of fuzzy Turing machine, Markov normal fuzzy algorithm and fuzzy program (see Santos 1970). Successively, L. Biacino and G. Gerla showed that such a definition is not adequate and therefore proposed the following one. Ü denotes the set of rational numbers in [0,1]. A fuzzy subset s : S
[0,1] of a set S is recursively enumerable if a recursive map h : S×N
Ü exists such that, for every x in S, the function h(x,n) is increasing with respect to n and s(x) = lim h(x,n). We say that s is decidable if both s and its complement –s are recursively enumerable. An extension of such a theory to the general case of the L-subsets is proposed in Gerla 2006. The proposed definitions are well related with fuzzy logic. Indeed, the following theorem holds true (provided that the deduction apparatus of the fuzzy logic satisfies some obvious effectiveness property).
Theorem. Any axiomatizable fuzzy theory is recursively enumerable. In particular, the fuzzy set of logically true formulas is recursively enumerable in spite of the fact that the crisp set of valid formulas is not recursively enumerable, in general. Moreover, any axiomatizable and complete theory is decidable.
It is an open question to give supports for a Church thesis for fuzzy logic claiming that the proposed notion of recursive enumerability for fuzzy subsets is the adequate one. To this aim, further investigations on the notions of fuzzy grammar and fuzzy Turing machine should be necessary (see for example Wiedermann's paper). Another open question is to start from this notion to find an extension of Gödel’s theorems to fuzzy logic.
[edit] Fuzzy databases
Once fuzzy relations are defined, it is possible to develop fuzzy relational databases. The first fuzzy relational database, FRDB, appeared in Maria Zemankova's dissertation. Later, some other models arose like the Buckles-Petry model, the Prade-Testemale Model, the Umano-Fukami model or the GEFRED model by J.M. Medina, M.A. Vila et al. In the context of fuzzy databases, some fuzzy querying languages have been defined, highlighting the SQL statements, like fuzzy conditions, fuzzy comparators, fuzzy constants, fuzzy constraints, fuzzy thresholds, linguistic labels and so on.
[edit] Comparison to probability
Fuzzy logic and probability are different ways of expressing uncertainty. While both fuzzy logic and probability theory can be used to represent subjective belief, fuzzy set theory uses the concept of fuzzy set membership (i.e., how much a variable is in a set), probability theory uses the concept of subjective probability (i.e., how probable do I think that a variable is in a set). While this distinction is mostly philosophical, the fuzzy-logic-derived possibility measure is inherently different from the probability measure, hence they are not directly equivalent. However, many statisticians are persuaded by the work of Bruno de Finetti that only one kind of mathematical uncertainty is needed and thus fuzzy logic is unnecessary. On the other hand, Bart Kosko argues that probability is a subtheory of fuzzy logic, as probability only handles one kind of uncertainty. He also claims to have proven a derivation of Bayes' theorem from the concept of fuzzy subsethood. Lotfi Zadeh argues that fuzzy logic is different in character from probability, and is not a replacement for it. He fuzzified probability to [5])
[edit] See also
- Artificial intelligence
- Artificial neural network
- Computational verb logic
- Defuzzification
- Dynamic logic
- Expert system
- False dilemma
- Fuzzy associative matrix
- Fuzzy classification
- Fuzzy concept
- Fuzzy Control Language
- Fuzzy Control System
- Fuzzy electronics
- Fuzzy mathematics
- Fuzzy set
- Fuzzy subalgebra
- FuzzyCLIPS expert system
- Inductive Fuzzy classification
- Machine learning
- Multi-valued logic
- Neuro-fuzzy
- Paradox of the heap
- Rough set
- Type-2 fuzzy sets and systems
- Vagueness
- Interval finite element
[edit] Notes
- ^ Novák, V., Perfilieva, I. and Močkoř, J. (1999) Mathematical principles of fuzzy logic Dodrecht: Kluwer Academic. ISBN 0-7923-8595-0
- ^ "Fuzzy Logic". Stanford Encyclopedia of Philosophy. Stanford University. 2006-07-23. http://plato.stanford.edu/entries/logic-fuzzy/. Retrieved 2008-09-29.
- ^ Zadeh, L.A. (1965). "Fuzzy sets", Information and Control 8 (3): 338–353.
- ^ Zadeh, L. A. et al. 1996 Fuzzy Sets, Fuzzy Logic, Fuzzy Systems, World Scientific Press, ISBN 9810224214
- ^ Novák, V. Are fuzzy sets a reasonable tool for modeling vague phenomena?, Fuzzy Sets and Systems 156 (2005) 341—348.
[edit] Bibliography
- Von Altrock, Constantin (1995). Fuzzy logic and NeuroFuzzy applications explained. Upper Saddle River, NJ: Prentice Hall PTR. ISBN 0-13-368465-2.
- Biacino, L.; Gerla, G. (2002). "Fuzzy logic, continuity and effectiveness". Archive for Mathematical Logic 41 (7): 643–667. doi:ISSN 0933-5846.
- Cox, Earl (1994). The fuzzy systems handbook: a practitioner's guide to building, using, maintaining fuzzy systems. Boston: AP Professional. ISBN 0-12-194270-8.
- Gerla, Giangiacomo (2006). "Effectiveness and Multivalued Logics". Journal of Symbolic Logic 71 (1): 137–162. doi:ISSN 0022-4812.
- Hájek, Petr (1998). Metamathematics of fuzzy logic. Dordrecht: Kluwer. ISBN 0792352386" title="Special:BookSources/0792352386">0792352386.
- Hájek, Petr (1995). "Fuzzy logic and arithmetical hierarchy". Fuzzy Sets and Systems 3 (8): 359–363. doi:ISSN 0165-0114.
- Halpern, Joseph Y. (2003). Reasoning about uncertainty. Cambridge, Mass: MIT Press. ISBN 0-262-08320-5.
- Höppner, Frank; Klawonn, F.; Kruse, R.; Runkler, T. (1999). Fuzzy cluster analysis: methods for classification, data analysis and image recognition. New York: John Wiley. ISBN 0-471-98864-2.
- Ibrahim, Ahmad M. (1997). Introduction to Applied Fuzzy Electronics. Englewood Cliffs, N.J: Prentice Hall. ISBN 0-13-206400-6.
- Klir, George J.; Folger, Tina A. (1988). Fuzzy sets, uncertainty, and information. Englewood Cliffs, N.J: Prentice Hall. ISBN 0-13-345984-5.
- Klir, George J.; St Clair, Ute H.; Yuan, Bo (1997). Fuzzy set theory: foundations and applications. Englewood Cliffs, NJ: Prentice Hall. ISBN 0133410587" title="Special:BookSources/0133410587">0133410587.
- Klir, George J.; Yuan, Bo (1995). Fuzzy sets and fuzzy logic: theory and applications. Upper Saddle River, NJ: Prentice Hall PTR. ISBN 0-13-101171-5.
- Kosko, Bart (1993). Fuzzy thinking: the new science of fuzzy logic. New York: Hyperion. ISBN 0-7868-8021-X.
- Kosko, Bart (July 1993). "Fuzzy Logic". Scientific American 269 (1): 76–81. doi:10.1038/scientificamerican0793-76.
- Montagna, F. (2001). "Three complexity problems in quantified fuzzy logic". Studia Logica 68 (1): 143–152. doi:ISSN 0039-3215.
- Mundici, Daniele; Cignoli, Roberto; D'Ottaviano, Itala M. L. (1999). Algebraic foundations of many-valued reasoning. Dodrecht: Kluwer Academic. ISBN 0-7923-6009-5.
- Novák, Vilém (1989). Fuzzy Sets and Their Applications. Bristol: Adam Hilger. ISBN 0-85274-583-4.
- Novák, Vilém (2005). "On fuzzy type theory". Fuzzy Sets and Systems 149: 235–273. doi:10.1016/j.fss.2004.03.027.
- Novák, Vilém; Perfilieva, Irina; Močkoř, Jiří (1999). Mathematical principles of fuzzy logic. Dodrecht: Kluwer Academic. ISBN 0-7923-8595-0.
- Passino, Kevin M.; Yurkovich, Stephen (1998). Fuzzy control. Boston: Addison-Wesley. ISBN 020118074X" title="Special:BookSources/020118074X">020118074X.
- Pu, Pao Ming; Liu, Ying Ming (1980). "Fuzzy topology. I. Neighborhood structure of a fuzzy point and Moore-Smith convergence". Journal of Mathematical Analysis and Applications 76 (2): 571–599. doi:ISSN 0022-247X
- Santos, Eugene S. (1970). "Fuzzy Algorithms". Information and Control 17 (4): 326–339. doi:10.1016/S0019-9958(70)80032-8.
- Scarpellini, Bruno (1962). doi:ISSN 0022-4812. http://jstor.org/stable/2964111.
- Steeb, Willi-Hans (2008). The Nonlinear Workbook: Chaos, Fractals, Cellular Automata, Neural Networks, Genetic Algorithms, Gene Expression Programming, Support Vector Machine, Wavelets, Hidden Markov Models, Fuzzy Logic with C++, Java and SymbolicC++ Programs: 4edition. World Scientific. ISBN 981-281-852-9.
- Wiedermann, J. (2004). "Characterizing the super-Turing computing power and efficiency of classical fuzzy Turing machines". Theor. Comput. Sci. 317: 61–69. doi:10.1016/j.tcs.2003.12.004.
- Yager, Ronald R.; Filev, Dimitar P. (1994). Essentials of fuzzy modeling and control. New York: Wiley. ISBN 0-471-01761-2.
- Van Pelt, Miles (2008). Fuzzy Logic Applied to Daily Life. Seattle, WA: No No No No Press. ISBN 0-252-16341-9.
- Wilkinson, R.H. (1963). "A method of generating functions of several variables using analog diode logic". IEEE Transactions on Electronic Computers 12: 112–129. doi:10.1109/PGEC.1963.263419.
- Zadeh, L.A. (1968). "Fuzzy algorithms". Information and Control 12 (2): 94–102. doi:ISSN 0019-9958.
- Zadeh, L.A. (1965). "Fuzzy sets". Information and Control 8 (3): 338–353. doi:ISSN 0019-9958.
- Zemankova-Leech, M. (1983). Fuzzy Relational Data Bases. Ph. D. Dissertation. Florida State University.
- Zimmermann, H. (2001). Fuzzy set theory and its applications. Boston: Kluwer Academic Publishers. ISBN 0-7923-7435-5.
[edit] External links
|
|
This article's use of external links may not follow Wikipedia's policies or guidelines. Please footnote references. (August 2010) |
Additional articles
- Citizendium
- Scholarpedia
- Modeling With Words - article at Scholarpedia
- Stanford Encyclopedia of Philosophy
- Fuzzy Math - Beginner level introduction to Fuzzy Logic.
- Fuzzy Logic and the Internet of Things: I-o-T
Links pages
- Web page about FSQL: References and links about FSQL
Software & tools
- Xfuzzy:FUZZY LOGIC DESIGN TOOLS
- Peach: Computational Intelligence in Python
- Funzy :Implementation of a Fuzzy Logic reasoning engine in Java
- DotFuzzy: Open Source Fuzzy Logic Library (C#)
- jfuzzylogic Open Source Fuzzy Logic library and FCL language implementation (sourceforge, java)
- pyfuzzylib pyFuzzyLib: Open Source Library to write software with fuzzy logic (Python)
- pyfuzzy: Open Source Fuzzy Logic Package (Python)
- RockOn Fuzzy: Open Source Fuzzy Control And Simulation Tool (Java)
- Fuzzytech:Free Educational Software and Application Notes
- InrecoLAN FuzzyMath, Fuzzy logic add-in for OpenOffice.org Calc
- Open fuzzy logic based inference engine and data mining web service based on Metarule
- Open Source Software "mbFuzzIT" (Java)
- FFLL:Free Fuzzy Logic Library (C++)
- FuzzyLite: A Free Open Source Fuzzy Logic Library (C++)
- ANTLR, ANother Tool for Language Recognition,
- Keelstands for "Knowledge Extraction based on Evolutionary Learning" ,a software tool fordata mining
- jFuzzyQt Open Source Fuzzy Logic library and FCL language implementation (sourceforge, C++, Qt)
Tutorials
- Fuzzy Logic Tutorial
- Another Fuzzy Logic Tutorial with MATLAB/Simulink Tutorial
- Fuzzy logic in your game - tutorial aimed towards game programming.
- Simple test to check how well you understand it
Applications
- Research article that describes how industrial foresight could be integrated into capital budgeting with intelligent agents and Fuzzy Logic
- A doctoral dissertation describing how Fuzzy Logic can be applied in profitability analysis of very large industrial investments
Research Centres
- Institute for Research and Applications of Fuzzy Modeling
- European Centre for Soft Computing
- Fuzzy Logic Lab Linz-Hagenberg