Fuzzy Systems Concepts and Paradigms
Fuzzy Systems Concepts and Paradigms
R. E. Kalman, 1972
Fuzzy Logic History:
Buddha vs. Aristotle
Should fuzzy logic history start with Gautama Buddha (b. 563 BC)?
•Shades of gray
•Contradictions and paradoxes
•x is not-x
•MSEE MIT 1946, Ph.D. Columbia 1949, moved to Cal. Berkeley in 1959
•First fuzzy control system, work done in 1973 with Assilian (1975)
•Laboratory-based
•Served as proof-of-concept
Early European Researchers
•2d annual IFSA conference in Tokyo was turning point for FL (1987)
Potable (drinkable)
The Pair of Bottles Unmasked
(from Bezdek)
Crisp Logic Venn Diagrams
A point is either in the set or not; it’s either in the intersection or not.
Set Membership
In fuzzy logic, set membership occurs by degree
We can now reason by degree, and apply logical operations to fuzzy
sets
A ( x) m
We usually write
or, the membership value of x in the fuzzy set A is m, where 0 m 1
Fuzzy Set Membership Functions
* Fuzzy membership function: the shape of the fuzzy set over the
range of the numeric variable
> Can be any shape, including arbitrary or irregular
> Is normalized to values between 0 and 1
> Often uses triangular approximations to save computation time
Fuzzy Sets Are Membership Functions
from Bezdek
Representations of Membership
Functions
0 .50 1
TAMPBP
1.75 1.95 2.15
0 .5 1 .5 0
Warm
50 60 70 80 90
p 80 2 / 50
FAIR _ PRICE p e
Two Types of Fuzzy Membership
Function
Linguistic Variables
* In fuzzy logic, however, two sets are equal if and only if all
elements have identical membership values:
{.1/A,.6/B,.8C} = {.1/A,.6/B,.8/C}
Fuzzy Containment
* In traditional logic, A B
if and only if all elements in A are also in B.
* In fuzzy logic, containment means that the membership values
for each element in a subset is less than or equal to the
membership value of the corresponding element in the
superset.
* Adding a hedge can create a subset or superset.
Fuzzy Complement
If mA x 07
. and mB x 09
. then mAB x 09
.
Summary of Fuzzy Relations and
Operators
Alternative Fuzzy Operators
If mA x 05
. and mB x 03
. then
mAB x 015
. and mAB x 08
.
Compensatory Operators
These are alternatives to Zadeh’s operators.
Consider the membership values .9, .8, .6, .1; the Zadeh AND
(intersection) is .1, which may be a little too extreme for these
values
(1 )
m m
gamma i 1 1 i
i 1 i 1
,and m is the number of fuzzy membership
where 0 1 values.
If 0.3, 1 ( x ) 0.3, and 2 ( x ) 0.8 , then ( 1 , 2 ) 0.352
.
Fuzzy Rules
Have antecedent part and consequent part
First decide how many sets per parameter, then decide range for each:
For the InTemp parameter, we define three fuzzy sets: cool, comfortable,
and too_warm.
For OutTemp, we have five fuzzy sets defined: very_cold, chilly, warm,
very_warm, and hot.
…and so on.
Define the Membership Functions
(We define only those we need for our example rules.)
For inside temperature (intemp):
1 1 0
cool
50 60 70
0 1 0
comfortable
60 70 80
0 1 1
too _ warm
70 80 90
Define the Membership Functions, Cont’d.
For DeltaInTemp:
0 1 0
small _ negative
4 2 0
0 1 0
near _ zero
2 0 2
0 1 1
l arg e _ positive
2 4 6
For OutTemp:
0 1 0
chilly
30 50 70
For OutTemp,
chilly (52) 0.9
Fire the Fuzzy Rules
Using Zadeh’s AND process:
Rule 1: 0.75 0.20 0.20 no _ change for FlowChange.
We can use various ways to obtain the output when multiple rules
fire; Zadeh’s OR is one common way. This results in an output level of
0.8 for increase_small
Defuzzification
Combines set of if-then rules into a specific value of a control
(output) variable
Must specify how to deal with areas of overlap: count them once or twice.
Defuzzification of Furnace Gas Flow
Adheres to P1–P5
K is a constant of normalization
Fuzziness Measure: Pal and Pal
n
H PP A K i e (1 i ) 1 i e i
i 1
d q A, Anear
H k q, A
d q A, A far
Kosko Measure
1 if A x 0.5
Anear x
0 otherwise
1 if A x 0.5
Afar x
0 otherwise
n 1/ q n 1/ q
q q
d q A, Anear A,i Anear ,i and d q A, A far A,i Afar ,i
i 1 i 1
d q A, Anear
H K q, A
d q A, A far
q = 1: Hamming distance; q = 2: Euclidean distance
Example: E(s) for S = (.2, .8; .8, .2) is approx. 0.25 either way
For S consisting of all .5s, E(S) = 1; for S consisting of all 1s and 0s, E(S) = 0
Fuzzy Entropy Equation: Kosko
S S C
E ( S ) Dn C n 1,2
S S
n = 1: Hamming distance
n = 2: Euclidean distance
Example: E(s) for S =(.2, .8; .8, .2) is approx. 0.25 either way
* Easy to understand
The Fuzzy Controller
System being controlled
Defuzzify Fuzzify
The Fuzzy Controller
* Provides set of inputs to produce desirable outputs
SPEED DISTANCE
Linguistic Low High Linguistic Low High
Range Range
Fast 26.5 70 Far 1,500
Medium Fast 6.5 46.5 Medium Far 100 3,000
Slow 2.5 10.5 Near 3 200
Very Slow 1 4 Very Near 1 5
Stopped 0 2 At 0 2
Identify and name output variables and
define ranges
THROTTLE BRAKE
Linguistic Low High Linguistic Low High
Range Range
Full 60% 100% Full 98% 100%
Medium 20% 80% Medium 95% 99%
Slight 3% 30% Slight 70% 97%
Very Slight 1% 5% Very Slight 20% 80%
No 0 2% No 0 40%
Fuzzy Membership Functions for Speed
Fuzzy Membership Functions for Distance
Fuzzy Membership Functions for Throttle
Fuzzy Membership Functions for Brake
%
Step 4: Build Rule Base Matrix
speed: VY-SLOW(3)=0.667
(3)=0.
SLOW
125
distance:
AT(1.8)=0.1
VY-NEAR(1.8)=0.4
3 km/hr Activates Very Slow and Slow
1.8 Meters Activates at and very near
Rules Activated with speed = 3 and distance = 1.8
Use Centroid Defuzzification to Obtain Output
Summary of Controller Operation
• Sample inputs
n y i y i n yi
y n
n
u i x1i , , x k i
i 1
y j i 1
y j
j 1 j 1
T-S Simple Example
Assume we have a simple system with just two rules, two input
variables, and two membership functions per input variable:
Takagi-Sugeno Method