Fuzzy Logic: Applying Truth Values

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 6

Fuzzy logic

From Wikipedia, the free encyclopedia


Fuzzy logic is a form of many-valued logic in which the truth values of variables may be any real
number between 0 and 1. By contrast, in Boolean logic, the truth values of variables may only be
the integer values 0 or 1. employed to handle the concept of partial truth, where the truth value
may range between completely true and completely false. [1]Furthermore, when linguistic variables
are used, these degrees may be managed by specific (membership) functions. [2]
The term fuzzy logic was introduced with the 1965 proposal of fuzzy set theory by Lotfi Zadeh.[3]
[4]
 Fuzzy logic had however been studied since the 1920s, as infinite-valued logic—notably
by Łukasiewicz and Tarski.[5]
Fuzzy logic has been applied to many fields, from control theory to artificial intelligence.

Overview[edit]
Classical logic only permits conclusions which are either true or false. However, there are also
propositions with variable answers, such as one might find when asking a group of people to
identify a color. In such instances, the truth appears as the result of reasoning from inexact or
partial knowledge in which the sampled answers are mapped on a spectrum.
Humans and animals often operate using fuzzy evaluations in many everyday situations. In the
case where someone is tossing an object into a container from a distance, the person does not
compute exact values for the object weight, density, distance, direction, container height and
width, and air resistance to determine the force and angle to toss the object. Instead the person
instinctively applies quick "fuzzy" estimates, based upon previous experience, to determine what
output values of force, direction and vertical angle to use to make the toss.
Both degrees of truth and probabilities range between 0 and 1 and hence may seem similar at
first, but fuzzy logic uses degrees of truth as a mathematical model of vagueness,
while probability is a mathematical model of ignorance.
Take, for example, the concepts of "empty" and "full". The meaning of each of them can be
represented by a certain fuzzy set. The concept of emptiness would be subjective and thus
would depend on the observer or designer. A 100 ml glass containing 30 ml of water may be
defined as being 0.7 empty and 0.3 full, but another designer might, equally well, design a
set membership function where the glass would be considered full for all values down to 50 ml.

Applying truth values[edit]


A basic application might characterize various sub-ranges 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 meanings of the expressions cold, warm, and hot are 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".

Linguistic variables[edit]
While variables in mathematics usually take numerical values, in fuzzy logic applications non-
numeric values are often used to facilitate the expression of rules and facts. [6]
A linguistic variable such as age may accept values such as young and its antonym old. Because
natural languages do not always contain enough value terms to express a fuzzy value scale, it is
common practice to modify linguistic values with adjectives or adverbs. For example, we can use
the hedges rather and somewhat to construct the additional values rather old or somewhat
young.
Fuzzification operations can map mathematical input values into fuzzy membership functions.
And the opposite de-fuzzifying operations can be used to map a fuzzy output membership
functions into a "crisp" output value that can be then used for decision or control purposes.

Forming a consensus of inputs and fuzzy rules [edit]


Since the fuzzy system output is a consensus of all of the inputs and all of the rules, fuzzy logic
systems can be well behaved when input values are not available or are not trustworthy.
Weightings can be optionally added to each rule in the rulebase and weightings can be used to
regulate the degree to which a rule affects the output values. These rule weightings can be
based upon the priority, reliability or consistency of each rule. These rule weightings may be
static or can be changed dynamically, even based upon the output from other rules.

Process[edit]

1. Fuzzify all input values into fuzzy membership functions.


2. Execute all applicable rules in the rulebase to compute the fuzzy output functions.
3. De-fuzzify the fuzzy output functions to get "crisp" output values.

Synthesis of fuzzy logic functions given in tabular form [edit]


Fuzzy logic function of Zadeh takes the value of one of its arguments or a negation of an
argument. Thus, a fuzzy logic function can be given by a choice table where all the variants of
ordering of arguments and their negations are listed. For example, a row of a choice table of a
two arguments function can look as follows:
However, an arbitrary choice table does not always define a fuzzy logic function. In the paper, [7] a
criterion has been formulated to recognize whether a given choice table defines a fuzzy logic
function and a simple algorithm of fuzzy logic function synthesis has been proposed based on
introduced concepts of constituents of minimum and maximum. A fuzzy logic function represents
a disjunction of constituents of minimum, where a constituent of minimum is a conjunction of
variables of the current area greater than or equal to the function value in this area (to the right of
the function value in the inequality, including the function value). For the above example row, the
constituent of minimum is .

Early applications[edit]
Many of the early successful applications of fuzzy logic were implemented in Japan. The first
notable application was on the high-speed train in Sendai, in which fuzzy logic was able to
improve the economy, comfort, and precision of the ride. [8] It has also been used in recognition of
hand written symbols in Sony pocket computers, flight aid for helicopters, controlling of subway
systems in order to improve driving comfort, precision of halting, and power economy, improved
fuel consumption for automobiles, single-button control for washing machines, automatic motor
control for vacuum cleaners with recognition of surface condition and degree of soiling, and
prediction systems for early recognition of earthquakes through the Institute of Seismology
Bureau of Meteorology, Japan. [9]

Example[edit]
Hard science with IF-THEN rules[edit]
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 example, the logic for 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 fan speed is slow
IF temperature IS warm THEN fan speed is moderate
IF temperature IS hot THEN fan speed is high

Using this rulebase and the previous image, we would expect the output fan speed to be a
combination of zero and moderate, which would be evaluated as some degree of slow when the
input value is a combination of cold and warm and not hot. The fan speed will continue to get
slower as the input temperature gets colder until the input temperature is 100% cold, 0% warm
and 0% hot, at which point the output fan speed will be zero. As the temperature input gets
warmer and hotter, the output fan speed will continue to get faster until the input temperature is
0% cold, 0% warm and 100% hot, at which point the fan speed output will be high.
If the fuzzy membership functions cover 100% of the input variable domain, then it can be proven
that the behavior of the fuzzy system is fully deterministic over the entire input domain and
nowhere ambiguous. This determinism is very important for use in control and decision systems.
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.

Define with multiply[edit]

x AND y = x*y
x OR y = 1-(1-x)*(1-y) = x+y-x*y

1-(1-x)*(1-y) comes from this:

x OR y = NOT( AND( NOT(x), NOT(y) ) )


x OR y = NOT( AND(1-x, 1-y) )
x OR y = NOT( (1-x)*(1-y) )
x OR y = 1-(1-x)*(1-y)

Define with sigmoid[edit]


Fuzzy sets can be defined using the sigmoid function.[10]

sigmoid(x)=1/(1+e^-x)
sigmoid(x)+sigmoid(-x) = 1
(sigmoid(x)+sigmoid(-x))*(sigmoid(y)+sigmoid(-y))*(sigmoid(z)+sigmoid(-z))
= 1

Logical analysis[edit]
In mathematical logic, there are several formal systems of "fuzzy logic"; most of them belong
among so-called t-norm fuzzy logic.

Propositional fuzzy logics[edit]


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 MTL-algebras that are pre-linear
commutative bounded integral 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 fuzzy logic is the extension of basic fuzzy logic BL where conjunction is 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Ł.
Predicate fuzzy logics[edit]
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.
Decidability issues for fuzzy logic[edit]
The notions of a "decidable subset" and "recursively enumerable subset" are basic ones
for classical mathematics and classical logic. Thus the question of a suitable extension of them
to fuzzy set theory is a crucial one. 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 argued that the proposed definitions are
rather questionable. For example, in [11] one shows that the fuzzy Turing machines are not
adequate for fuzzy language theory since there are natural fuzzy languages intuitively
computable that cannot be recognized by a fuzzy Turing Machine. Then, they proposed the
following definitions. Denote by Ü the set of rational numbers in [0,1]. Then 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 possible (see Gerla 2006). The proposed
definitions are well related with fuzzy logic. Indeed, the following theorem holds true (provided
that the deduction apparatus of the considered 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 mathematics, the proposed
notion of recursive enumerability for fuzzy subsets is the adequate one. To this aim, an extension
of the notions of fuzzy grammar and fuzzy Turing machine should be necessary. Another open
question is to start from this notion to find an extension of Gödel's theorems to fuzzy logic.

Fuzzy databases[edit]
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 (1983). 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.
Fuzzy querying languages have been defined, such as the SQLf by P. Bosc et al. and
the FSQL by J. Galindo et al. These languages define some structures in order to include fuzzy
aspects in the SQL statements, like fuzzy conditions, fuzzy comparators, fuzzy constants, fuzzy
constraints, fuzzy thresholds, linguistic labels etc.

Comparison to probability[edit]
Fuzzy logic and probability address different forms of uncertainty. While both fuzzy logic and
probability theory can represent degrees of certain kinds of subjective belief, fuzzy set
theory uses the concept of fuzzy set membership, i.e., how much an observation is within a
vaguely defined set, and probability theory uses the concept of subjective probability, i.e.,
likelihood of some event or condition. The concept of fuzzy sets was developed in the mid-
twentieth century at Berkeley [12] as a response to the lacking of probability theory for jointly
modelling uncertainty and vagueness.[13]
Bart Kosko shows in Fuzziness vs. Probability that probability theory is a subtheory of fuzzy
logic, as questions of degrees of belief in mutually-exclusive set membership in probability theory
can be represented as certain cases of non-mutually-exclusive graded membership in fuzzy
theory. In that context, he also derives Bayes' theorem from the concept of fuzzy
subsethood. Lotfi A. Zadeh argues that fuzzy logic is different in character from probability, and is
not a replacement for it. He fuzzified probability to fuzzy probability and also generalized it
to possibility theory. (cf.[14])
More generally, fuzzy logic is one of many different extensions to classical logic intended to deal
with issues of uncertainty outside of the scope of classical logic, the inapplicability of probability
theory in many domains, and the paradoxes of Dempster-Shafer theory.

Relation to ecorithms[edit]
Computational theorist Leslie Valiant uses the term ecorithms to describe how many less exact
systems and techniques like fuzzy logic (and "less robust" logic) can be applied to learning
algorithms. Valiant essentially redefines machine learning as evolutionary. In general use,
ecorithms are algorithms that learn from their more complex environments (hence eco-) to
generalize, approximate and simplify solution logic. Like fuzzy logic, they are methods used to
overcome continuous variables or systems too complex to completely enumerate or understand
discretely or exactly. [15] Ecorithms and fuzzy logic also have the common property of dealing with
possibilities more than probabilities, although feedback and feed forward, basically stochastic
weights, are a feature of both when dealing with, for example, dynamical systems.

Compensatory fuzzy logic[edit]


Compensatory fuzzy logic (CFL) is a branch of fuzzy logic with modified rules for conjunction and
disjunction. When the truth value of one component of a conjunction or disjunction is increased
or decreased, the other component is decreased or increased to compensate. This increase or
decrease in truth value may be offset by the increase or decrease in another component. An
offset may be blocked when certain thresholds are met. Proponents [who?] claim that CFL allows for
better computational semantic behaviors.
[vague]
http://web.mit.edu/6.863/www/fall2012/projects/writeups/semantic-similarity-betweenverbs.pdf
Compensatory Fuzzy Logic consists of four continuous operators: conjunction (c); disjunction (d);
fuzzy strict order (or); and negation (n). The conjunction is the geometric mean and its dual as
conjunctive and disjunctive operators.[16]

IEEE STANDARD 1855-2016 - IEEE Standard for Fuzzy Markup


Language[edit]
The IEEE STANDARD 1855-2016 is about a specification language named Fuzzy Markup
Language (FML)[17] developed by the IEEE Standards Association. FML allows modelling a fuzzy
logic system in a human-readable and hardware independent way. FML is based on eXtensible
Markup Language (XML). The designers of fuzzy systems with FML have a unified and high-level
methodology for describing interoperable fuzzy systems. IEEE STANDARD 1855-2016 uses
the W3C XML Schema definition language to define the syntax and semantics of the FML
programs.
Prior to the introduction of FML, fuzzy logic practitioners could exchange information about their
fuzzy algorithms by  adding to their software functions the ability to read, correctly parse, and
store the results of their work in a  form compatible with the Fuzzy Control Language (FCL)
described and specified by Part 7 of IEC 61131.[18] [19]

You might also like