ARTIFICIAL INTELLIGENCE - FUZZY LOGIC SYSTEMS

.

What is Fuzzy Logic?

Fuzzy Logic FL is a method of reasoning that resembles human reasoning. The approach of FL imitates the way of decision making in humans that involves all intermediate possibilities between digital values YES and NO.

The conventional logic block that a computer can understand takes precise input and produces a definite output as TRUE or FALSE, which is equivalent to human’s YES or NO.

The inventor of fuzzy logic, Lotfi Zadeh, observed that unlike computers, the human decision making includes a range of possibilities between YES and NO, such as −


CERTAINLY YES
POSSIBLY YES
CANNOT SAY
POSSIBLY NO
CERTAINLY NO


The fuzzy logic works on the levels of possibilities of input to achieve the definite output.

Implementation


It can be implemented in systems with various sizes and capabilities ranging from small micro-controllers to large, networked, workstation-based control systems.

It can be implemented in hardware, software, or a combination of both.

Why Fuzzy Logic?

Fuzzy logic is useful for commercial and practical purposes.

It can control machines and consumer products.
It may not give accurate reasoning, but acceptable reasoning. Fuzzy logic helps to deal with the uncertainty in engineering.

Fuzzy Logic Systems Architecture

It has four main parts as shown −

Fuzzification Module It transforms the system inputs, which are crisp numbers, into fuzzy sets. It splits the input signal into five steps such as


LP    x is Large Positive MP    x is Medium Positive x is Small


MN   x is Medium Negative
LN    x is Large Negative


Knowledge Base − It stores IF-THEN rules provided by experts.

Inference Engine It simulates the human reasoning process by making fuzzy inference on the inputs and IF-THEN rules.

Defuzzification Module It transforms the fuzzy set obtained by the inference engine into a crisp value.


The membership functions work on fuzzy sets of variables.

Membership Function

Membership functions allow you to quantify linguistic term and represent a fuzzy set graphically. A
membership function for a fuzzy set A on the universe of discourse X is defined as µA:X → [0,1].

Here, each element of X is mapped to a value between 0 and 1. It is called membership value or degree of membership. It quantifies the degree of membership of the element in X to the fuzzy set A.

x axis represents the universe of discourse.
y axis represents the degrees of membership in the [0, 1] interval.

There can be multiple membership functions applicable to fuzzify a numerical value. Simple membership functions are used as use of complex functions does not add more precision in the output.
All membership functions for LP, MP, S, MN, and LN are shown as below −






The triangular membership function shapes are most common among various other membership function shapes such as trapezoidal, singleton, and Gaussian.

Here, the input to 5-level fuzzifier varies from -10 volts to +10 volts. Hence the corresponding output also changes.

Example of a Fuzzy Logic System

Let us consider an air conditioning system with 5-lvel fuzzy logic system. This system adjusts the temperature of air conditioner by comparing the room temperature and the target temperature value.


Algorithm


Define linguistic variables and terms. Construct membership functions for them.


Construct knowledge base of rules.
Convert crisp data into fuzzy data sets using membership functions. fuzzification
Evaluate rules in the rule base. interfaceengine
Combine results from each rule. interfaceengine
Convert output data into non-fuzzy values. defuzzification

Logic Development

Step 1: Define linguistic variables and terms


Linguistic variables are input and output variables in the form of simple words or sentences. For room temperature, cold, warm, hot, etc., are linguistic terms.

Temperature t = {very-cold, cold, warm, very-warm, hot}

Every member of this set is a linguistic term and it can cover some portion of overall temperature values.

Step 2: Construct membership functions for them


The membership functions of temperature variable are as shown −


Step3: Construct knowledge base rules


Create a matrix of room temperature values versus target temperature values that an air conditioning system is expected to provide.


RoomTemp.
/Target
Very_Cold
Cold
Warm
Hot
Very_Hot
Very_Cold
No_Change
Heat
Heat
Heat
Heat
Cold
Cool
No_Change
Heat
Heat
Heat
Warm
Cool
Cool
No_Change
Heat
Heat
Hot
Cool
Cool
Cool
No_Change
Heat
Very_Hot
Cool
Cool
Cool
Cool
No_Change


Build a set of rules into the knowledge base in the form of IF-THEN-ELSE structures.


Sr. No.
Condition
Action
1
IF temperature=ColdORVeryCold AND target=Warm THEN
Heat
2
IF temperature=HotORVeryHot AND target=Warm THEN
Cool
3
IF temperature = Warm AND target = Warm THEN
No_Change

Step 4: Obtain fuzzy value


Fuzzy set operations perform evaluation of rules. The operations used for OR and AND are Max and Min respectively. Combine all results of evaluation to form a final result. This result is a fuzzy value.

Step 5: Perform defuzzification


Defuzzification is then performed according to membership function for output variable.


Application Areas of Fuzzy Logic

The key application areas of fuzzy logic are as given −

Automotive Systems


Automatic Gearboxes Four-Wheel Steering
Vehicle environment control

Consumer Electronic Goods


Hi-Fi Systems Photocopiers
Still and Video Cameras Television

Domestic Goods


Microwave Ovens Refrigerators Toasters


Vacuum Cleaners Washing MachinesEnvironmen Control



Comments

Popular posts from this blog

Artificial Intelligence

The taxonomy of CASE Tools

Zoho Second round - adding a digit to all the digits of a number