Make your own free website on

Home   |  Viewing problem solution  |  About me


Fuzzy Logic Guide

In the problem-solving phase over a computer we find that the mathematics is very useful for solution development. Computer uses the binary mathematics to perform almost all of its operation. In the binary representation everything that is understood and interpreted by the computer is in the form of 0s and 1s. Computer also follows some of the other rules. It uses De-Morgan's theorem as well as the boolean algebra to perform its operations. In the boolean algebra the data used is in the form of 0s and 1s. Some of the boolean algebric principles are as follows:

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 1

Here + is considered to be logical plus and is not the same as the ordinary addition, which is used in ordinary mathematics. The operation shown above is known as logical addition. Other one is

0 . 0 = 0
0 . 1 = 0
1 . 0 = 0
1 . 1 = 0

which is said do be logical multiplication and appears to be same as that of the ordinary multiplication. In this way with the help of these operators, a computer can perform various operations using two-bits 0 and 1. A computer uses the 1 to represent a true value and 0 to represent a false value. Nowadays a new term the "Fuzzy Logic" is becoming very popular and this is because it has drastically changed the way we think about the problem and its solutions approach. This is actually based on the pure mathematics logic and uses the standard set theory to explain the solution of a problem.

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. In general, we can define the Fuzzy Logic as, Fuzzy logic is a superset of conventional (Boolean) logic that has been extended to handle the concept of partial truth - truth values between "completely true" and "completely false". It was introduced by Dr. Lotfi Zadeh of U.C. Berkeley in the 1960's. 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.

Dr. Lotfi Zadeh of Berkeley University, US
Father of Fuzzy Logic & Fuzzy Theory
Can be contacted from

Dr. Lotfi Zadeh, originator of fuzzy logic says that rather than regarding fuzzy theory as a single theory, we should regard the process of "fuzzification'' as a methodology to generalize ANY specific theory from a crisp (discrete) to a continuous (fuzzy) form. Thus recently researchers have also introduced "fuzzy calculus", "fuzzy differential equations", and so on.

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.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). Formal definitions defining each of these operations are as follows:

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 "gramd 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.

Just as there is a strong relationship between Boolean logic and the concept of a subset, there is a similar strong relationship between fuzzy logic and fuzzy subset theory. In classical set theory, a subset U of a set S can be defined as a mapping from the elements of S to the elements of the set {0, 1},

U: S {0, 1}

This mapping may be represented as a set of ordered pairs, with exactly one ordered pair present for each element of S. The first element of the ordered pair is an element of the set S, and the second element is an element of the set {0, 1}. The value zero is used to represent non-membership, and the value one is used to represent membership. The truth or falsity of the statement

x is in U

is determined by finding the ordered pair whose first element is x. The statement is true if the second element of the ordered pair is 1, and the statement is false if it is 0. Similarly, a fuzzy subset F of a set S can be defined as a set of ordered pairs, each with the first element from S, and the second element from the interval [0,1], with exactly one ordered pair present for each element of S. This defines a mapping between elements of the set S and values in the interval [0,1]. The value zero is used to represent complete non-membership, the value one is used to represent complete membership, and values in between are used to represent intermediate DEGREES OF MEMBERSHIP. The set S is referred to as the UNIVERSE OF DISCOURSE for the fuzzy subset F. Frequently, the mapping is described as a function, the MEMBERSHIP FUNCTION of F. The degree to which the statement

x is in F

is true is determined by finding the ordered pair whose first element is x. The DEGREE OF TRUTH of the statement is the second element of the ordered pair.

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.

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.

Another logician, Fox gave her explanation about the need for fuzzy logic, 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). Thus importance of fuzzy logic and system can be explained in various areas.

The purpose of control is to influence the behavior of a system by changing an input or inputs to that system according to a rule or set of rules that model how the system operates. The system being controlled may be mechanical, electrical, chemical or any combination of these.

Classic control theory uses a mathematical model to define a relationship that transforms the desired state (requested) and observed state (measured) of the system into an input or inputs that will alter the future state of that system.

The most common example of a control model is the PID (proportional-integral- derivative) controller. This takes the output of the system and compares it with the desired state of the system. It adjusts the input value based on the difference between the two values according to the following equation.

output = A.e + B.INT(e)dt +

Where, A, B and C are constants, e is the error term, INT(e)dt is the integral of the error over time and de/dt is the change in the error term. The major drawback of this system is that it usuallyassumes that the system being modelled in linear or at least behaves in some fashion that is a monotonic function. As the complexity of the system increases it becomes more difficult to formulate that mathematical model.

A fuzzy expert system is an expert system that uses a collection of fuzzy membership functions and rules, instead of Boolean logic, to reason about data. The rules in a fuzzy expert system are usually of a form similar to the following:

if x is low and y is high then z = medium

where x and y are input variables (names for know data values), z is an output variable (a name for a data value to be computed), low is a membership function (fuzzy subset) defined on x, high is a membership function defined on y, and medium is a membership function defined on z. The antecedent (the rule's premise) describes to what degree the rule applies, while the conclusion (the rule's consequent) assigns a membership function to each of one or more output variables. Most tools for working with fuzzy expert systems allow more than one conclusion per rule. The set of rules in a fuzzy expert system is known as the rulebase or knowledge base. The general inference process proceeds in three (or four) steps.

1. Under FUZZIFICATION, the membership functions defined on the input variables are applied to their actual values, to determine the degree of truth for each rule premise.

2. Under INFERENCE, the truth value for the premise of each rule is computed, and applied to the conclusion part of each rule. This results in one fuzzy subset to be assigned to each output variable for each rule. Usually only MIN or PRODUCT are used as inference rules. In MIN inferencing, the output membership function is clipped off at a height corresponding to the rule premise's computed degree of truth (fuzzy logic AND). In PRODUCT inferencing, the output membership function is scaled by the rule premise's computed degree of truth.

3. Under COMPOSITION, all of the fuzzy subsets assigned to each output variable are combined together to form a single fuzzy subset for each output variable. Again, usually MAX or SUM are used. In MAX composition, the combined output fuzzy subset is constructed by taking the pointwise maximum over all of the fuzzy subsets assigned tovariable by the inference rule (fuzzy logic OR). In SUM composition, the combined output fuzzy subset is constructed by taking the pointwise sumover all of the fuzzy subsets assigned to the output variable by the inference rule.

4. Finally is the (optional) DEFUZZIFICATION, which is used when it is useful to convert the fuzzy output set to a crisp number. There are more defuzzification methods than you can shake a stick at (at least 30). Two of the more common techniques are the CENTROID and MAXIMUM methods. In the CENTROID method, the crisp value of the output variable is computed by finding the variable value of the center of gravity of the membership function for the fuzzy value. In the MAXIMUM method, one of the variable values at which the fuzzy subset has its maximum truth value is chosen as the crisp value for the output variable.

To date, fuzzy expert systems are the most common use of fuzzy logic. Theyare used in several wide-ranging fields, including:

o Linear and Nonlinear Control
o Pattern Recognition
o Financial Systems
o Operation Research
o Data Analysis

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".

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. Another area of application, akin to expert systems, is that of information retrieval.

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.

Center for Fuzzy Logic, Robotic and Intelligent System
Fuzzy Logic Archive
FAQ: Fuzzy Logic and Fuzzy Expert System 1/1 [Monthly posting]
Fuzzy Logic Source of Information
Fuzzy Logic
Fuzzy Logic Computational Intelligence
Berkeley University
What is Fuzzy Expert System
What is a Fuzzy Control
Digital Computer Fundamentals by Thomas C Bartee from Tata McGraw Hill

All rights reserved. Copyright © 1999 - . Krishna Kumar Khatri.
Best viewed with Microsoft IE 6 or later, under 800x600 resolution with True Color (24-bit).