You are on page 1of 9

Fuzzy Logic Fuzzy Logic

Part 2 Part 2
Based on material provided by Professor Michael Negnevitsky
Andrew Kusiak
Intelligent Systems Laboratory
2139 SeamansCenter
TheUniversity of Iowa
IowaCity, Iowa 52242 - 1527
andrew-kusiak@uiowa.edu
http://www.icaen.uiowa.edu/~ankusiak
Tel: 319 - 335 5934 Fax: 319 - 335 5669
Outline Outline
Mamdani Mamdani fuzzy inference fuzzy inference
Sugeno Sugenofuzzy inference fuzzy inference
Case study Case study
Summary Summary
Mamdani Mamdani fuzzy inference fuzzy inference
The The Mamdani Mamdani fuzzy inference involves four steps: fuzzy inference involves four steps:
Fuzzification Fuzzificationof the input variables of the input variables
Rule evaluation Rule evaluation
Aggregation of the rule outputs Aggregation of the rule outputs
Defuzzification Defuzzification
Consider a simple two Consider a simple two- -input one input one- -output application that output application that
includes three rules: includes three rules:
Rule: 1 Rule: 1 Rule: 1 Rule: 1
IF IF x x is is A A3 3 IF IF project_funding project_funding is is adequate adequate
OR OR y y is is B B1 1 OR OR project_staffing project_staffing is is small small
THEN THEN z z is is C C1 1 THEN THEN risk risk is is low low
Rule: 2 Rule: 2 Rule: 2 Rule: 2
IF IF x x is is A A2 2 IF IF project_funding project_funding is is marginal marginal
AND AND y y is is B B2 2 AND AND project_staffing project_staffing is is large large
THEN THEN z z is is C C2 2 THEN THEN risk risk is is normal normal
Rule: 3 Rule: 3 Rule: 3 Rule: 3
IF IF x x is is A A1 1 IF IF project_funding project_funding is is inadequate inadequate
THEN THEN z z is is C C3 3 THEN THEN risk risk is is high high
Step 1: Step 1: Fuzzification Fuzzification
The first step is to take the crisp inputs, The first step is to take the crisp inputs, x x1 and 1 and y y1 1
( (project funding project funding and and project staffing project staffing), and determine ), and determine
the degree to which these inputs belong to each of the the degree to which these inputs belong to each of the
appropriate fuzzy sets. appropriate fuzzy sets.
Crisp Input
y1
0.1
0.7
1
0
y1
B1 B2
Y
Crisp Input
0.2
0.5
1
0
A1 A2 A3
x1
x1 X

(x =A1)
=0.5

(x =A2)
=0.2

(y =B1)
=0.1

(y =B2)
=0.7
Project
funding
Project
staffing
Inadequate Marginal Adequate Small Large
Step 2: Rule Evaluation Step 2: Rule Evaluation
The second step is to take the The second step is to take the fuzzified fuzzified inputs, inputs,

( (x x= =A A1) 1)
=0.5, =0.5,
( (x x= =A A2) 2)
=0.2, =0.2,
( (y y= =B B1) 1)
=0.1 and =0.1 and
( (y y= =B B2) 2)
= =
0.7, and apply themto the antecedents of the fuzzy 0.7, and apply themto the antecedents of the fuzzy
rules. If a given fuzzy rule has multiple antecedents, rules. If a given fuzzy rule has multiple antecedents,
the fuzzy operator (AND or OR) is used to obtain a the fuzzy operator (AND or OR) is used to obtain a
single number single number that represents the result of the that represents the result of the
antecedent evaluation. This number (the truth value) antecedent evaluation. This number (the truth value)
is then applied to the consequent membership is then applied to the consequent membership
function. function.
To evaluate the disjunction of the rule antecedents, To evaluate the disjunction of the rule antecedents,
we use the we use the OR fuzzy operation OR fuzzy operation. Typically, fuzzy . Typically, fuzzy
expert systems make use of the classical fuzzy expert systems make use of the classical fuzzy
operation operation union union: :

A A

B B
( (x x) = ) =max max [ [
A A
( (x x), ),
B B
( (x x)] )]
Similarly, in order to evaluate the conjunction of the Similarly, in order to evaluate the conjunction of the
rule antecedents, we apply the rule antecedents, we apply the AND fuzzy operation AND fuzzy operation
intersection intersection: :

A A

B B
( (x x) = ) =min min [ [
A A
( (x x), ),
B B
( (x x)] )]
Mamdani Mamdani s s rule evaluation rule evaluation
A3
1
0
X
1
y1
0
Y
0.0
x1
0
0.1
C1
1
C2
Z
1
0
X
0.2
0
0.2
C1
1
C2
Z
A2
x1
Rule 3:
A1
1
0
X
0
1
Z x1
THEN
C1 C2
1
y1
B2
0
Y
0.7
B1
0.1
C3
C3
C3 0.5 0.5
OR
(max)
AND
(min)
OR THEN Rule 1:
AND THEN Rule 2:
IF x isA3(0.0) y isB1(0.1) z isC1(0.1)
IF x isA2(0.2) y isB2(0.7) z isC2(0.2)
IF x isA1(0.5) z isC3(0.5)
R1: R1: IF IF project_funding project_funding is isadequate adequate
OR OR project_staffing project_staffing is issmall small
THEN THEN risk risk is islow low
R3: R3: IF IF project_funding project_funding is isinadequate inadequate
THEN THEN risk risk is ishigh high
R2: R2: IF IF project_funding project_funding is ismarginal marginal
AND AND project_staffing project_staffing is islarge large
THEN THEN risk risk is isnormal normal
Now the result of the antecedent evaluation can be Now the result of the antecedent evaluation can be
applied to the membership function of the applied to the membership function of the
consequent. consequent.
The most common method of correlating the rule The most common method of correlating the rule
consequent with the truth value of the rule consequent with the truth value of the rule
antecedent is to cut the consequent membership antecedent is to cut the consequent membership
function at the level of the antecedent truth. This function at the level of the antecedent truth. This
method is called method is called clipping clipping. Since the top of the . Since the top of the
membership function is sliced, the clipped fuzzy set membership function is sliced, the clipped fuzzy set
loses some information. However, clipping is still loses some information. However, clipping is still
often preferred because it involves less complex and often preferred because it involves less complex and
faster mathematics, and generates an aggregated faster mathematics, and generates an aggregated
output surface that is easier to output surface that is easier to defuzzify defuzzify. .
While clipping is a frequently used method, While clipping is a frequently used method, scaling scaling
offers a better approach for preserving the original offers a better approach for preserving the original
shape of the fuzzy set. shape of the fuzzy set. The original membership The original membership
function of the rule consequent is adjusted by function of the rule consequent is adjusted by
multiplying all its membership degrees by the truth multiplying all its membership degrees by the truth
value of the rule antecedent value of the rule antecedent. This method, which . This method, which
generally loses less information, can be useful in generally loses less information, can be useful in
fuzzy expert systems. fuzzy expert systems.
Clipped and scaled membership functions Clipped and scaled membership functions
Degree of
Membership
1.0
0.0
0.2
Z
Degree of
Membership
Z
C2
1.0
0.0
0.2
C2
Clipped Scaled
Step 3: Aggregation of the rule outputs Step 3: Aggregation of the rule outputs
Aggregation is the process of unification of the Aggregation is the process of unification of the
outputs of all rules. We take the membership outputs of all rules. We take the membership
functions of all rule consequents previously clipped or functions of all rule consequents previously clipped or
scaled and combine theminto a single fuzzy set. scaled and combine theminto a single fuzzy set.
The input of the aggregation process is the list of The input of the aggregation process is the list of
clipped or scaled consequent membership functions clipped or scaled consequent membership functions, ,
and the output is one fuzzy set for each output and the output is one fuzzy set for each output
variable. variable.
Aggregation of the rule outputs Aggregation of the rule outputs
0
0.1
1
C1
C z is 1(0.1)
C2
0
0.2
1
C z is 2(0.2)
0
0.5
1
C z is 3(0.5)
Z Z Z
0.2
Z 0

C3
0.5
0.1
Clipped membership functions
Step 4: Step 4: Defuzzification Defuzzification
The last step in the fuzzy inference process is The last step in the fuzzy inference process is
defuzzification defuzzification. Fuzziness helps us to evaluate the . Fuzziness helps us to evaluate the
rules, but the final output of a fuzzy systemhas to be rules, but the final output of a fuzzy systemhas to be
a crisp number. The input for the a crisp number. The input for the defuzzification defuzzification
process is the aggregate output fuzzy set and the process is the aggregate output fuzzy set and the
output is a single number. output is a single number.
There are several There are several defuzzification defuzzificationmethods, but methods, but
probably the most popular one is the probably the most popular one is the centroid centroid
technique technique. It finds the point where a vertical line . It finds the point where a vertical line
would slice the aggregate set into two equal masses. would slice the aggregate set into two equal masses.
Mathematically this Mathematically this center center of gravity (COG) of gravity (COG) can be can be
expressed as: expressed as:
( )
( )

=
b
a
A
b
a
A
dx x
dx x x
COG



Centroid Centroiddefuzzification defuzzificationmethod finds a point method finds a point
representing the centre of gravity of the fuzzy set, representing the centre of gravity of the fuzzy set, A A, ,
on the interval, on the interval, ab ab. .
A reasonable estimate can be obtained by calculating A reasonable estimate can be obtained by calculating
it over a sample of points. it over a sample of points.
(x)
1.0
0.0
0.2
0.4
0.6
0.8
160 170 180 190 200
a b
210
A
150
X
Center Center of gravity (COG): of gravity (COG):
4 . 67
5 . 0 5 . 0 5 . 0 5 . 0 2 . 0 2 . 0 2 . 0 2 . 0 1 . 0 1 . 0 1 . 0
5 . 0 ) 100 90 80 70 ( 2 . 0 ) 60 50 40 30 ( 1 . 0 ) 20 10 0 (
=
+ + + + + + + + + +
+ + + + + + + + + +
= COG
1.0
0.0
0.2
0.4
0.6
0.8
0 20 30 40 50 10 70 80 90 100 60
Z
Degree of
Membership
67.4
Mamdani Mamdani- -style inference, requires finding the style inference, requires finding the
centroid centroidof a two of a two- -dimensional shape by integrating dimensional shape by integrating
across a continuously varying function. In general, across a continuously varying function. In general,
this process is not computationally efficient. this process is not computationally efficient.
Michio MichioSugeno Sugenosuggested to use a single spike, a suggested to use a single spike, a
singleton singleton, as the membership function of the rule , as the membership function of the rule
consequent. A consequent. A singleton singleton, or more precisely a , or more precisely a fuzzy fuzzy
singleton singleton, is a fuzzy set with a membership function , is a fuzzy set with a membership function
that is unity at a single particular point on the that is unity at a single particular point on the
universe of discourse and zero everywhere else. universe of discourse and zero everywhere else.
Sugeno Sugeno fuzzy inference fuzzy inference
Sugeno Sugeno- -style fuzzy inference is similar to the style fuzzy inference is similar to the
Mamdani method. Mamdani method. Sugeno Sugenohas modified a rule has modified a rule
consequent. Instead of a fuzzy set, he used a consequent. Instead of a fuzzy set, he used a
mathematical function of the input variable. The mathematical function of the input variable. The
format of the format of the Sugeno Sugeno- -style fuzzy rule style fuzzy ruleis is
IF IF x x is is A A
AND AND y y is is B B
THEN THEN z z is is f f ( (x, y x, y) )
where where x x, , y y and and z z are linguistic variables; are linguistic variables; A A and and B B are are
fuzzy sets on universe of discourses fuzzy sets on universe of discourses X X and and Y Y, ,
respectively; and respectively; and f f ( (x, y x, y) is a mathematical function. ) is a mathematical function.
The most commonly used The most commonly used zero zero- -order order Sugeno Sugenofuzzy fuzzy
model model applies fuzzy rules in the following form: applies fuzzy rules in the following form:
IF IF x x is is A A
AND AND y y is is B B
THEN THEN z z is is k k
where where k k is a constant. is a constant.
In this case, the output of each fuzzy rule is constant. In this case, the output of each fuzzy rule is constant.
All consequent membership functions are represented All consequent membership functions are represented
by singleton spikes. by singleton spikes.
A3
1
0
X
1
y1
0
Y
0.0
x1
0
0.1
1
Z
1
0
X
0.2
0
0.2
1
Z
A2
x1
IF x isA1(0.5) z isk3(0.5) Rule 3:
A1
1
0
X
0
1
Z x1
THEN
1
y1
B2
0
Y
0.7
B1
0.1
0.5 0.5
OR
(max)
AND
(min)
OR y isB1(0.1) THEN z isk1(0.1) Rule 1:
IF x isA2(0.2) AND y isB2(0.7) THEN z isk2(0.2) Rule 2:
k1
k2
k3
IF x isA3(0.0)
Sugeno Sugeno- -style rule evaluation style rule evaluation
Sugeno Sugeno- -style style aggregation of the rule outputs aggregation of the rule outputs
z is k1(0.1) z is k2(0.2) z is k3(0.5)

0
1
0.1
Z 0
0.5
1
Z 0
0.2
1
Z k1 k2 k3 0
1
0.1
Z k1 k2 k3
0.2
0.5
Weighted average (WA): Weighted average (WA):
65
5 . 0 2 . 0 1 . 0
80 5 . 0 50 2 . 0 20 1 . 0
) 3 ( ) 2 ( ) 1 (
3 ) 3 ( 2 ) 2 ( 1 ) 1 (
=
+ +
+ +
=
+ +
+ +
=
k k k
k k k k k k
WA
0 Z
Crisp Output
z1
z1
Sugeno Sugeno- -style style defuzzification defuzzification
How to make a decision on which method How to make a decision on which method
to apply to apply Mamdani Mamdani or or Sugeno Sugeno? ?
Mamdani Mamdani method is widely accepted for capturing method is widely accepted for capturing
expert knowledge. It allows us to describe the expert knowledge. It allows us to describe the
expertise in more intuitive, more human expertise in more intuitive, more human- -like like
manner. However, manner. However, Mamdani Mamdani- -type fuzzy inference type fuzzy inference
entails a substantial computational effort. entails a substantial computational effort.
Sugeno Sugeno method is computationally effective and method is computationally effective and
works well with optimization and adaptive works well with optimization and adaptive
techniques, which makes it very attractive in control techniques, which makes it very attractive in control
problems, particularly for dynamic nonlinear problems, particularly for dynamic nonlinear
systems. systems.
Building a fuzzy expert system: A case study Building a fuzzy expert system: A case study
A service A service center center keeps spare parts and repairs failed keeps spare parts and repairs failed
ones. ones.
A customer brings a failed itemand receives a spare A customer brings a failed itemand receives a spare
of the same type. of the same type.
Failed parts are repaired, placed on the shelf, and Failed parts are repaired, placed on the shelf, and
thus become spares. thus become spares.
The objective here is to advise a manager of the The objective here is to advise a manager of the
service service center center on certain decision policies to keep on certain decision policies to keep
the customers satisfied. the customers satisfied.
Process of developing a fuzzy expert system Process of developing a fuzzy expert system
1. Specify the problemand define linguistic variables. 1. Specify the problemand define linguistic variables.
2. Determine fuzzy sets. 2. Determine fuzzy sets.
3. Elicit and construct fuzzy rules. 3. Elicit and construct fuzzy rules.
4. Encode the fuzzy sets, fuzzy rules and procedures 4. Encode the fuzzy sets, fuzzy rules and procedures
to performfuzzy inference into the expert system. to performfuzzy inference into the expert system.
5. Evaluate and tune the system. 5. Evaluate and tune the system.
Step Step 1 1: Specify the problem and define : Specify the problem and define
linguistic variables linguistic variables
There are four main linguistic variables: average There are four main linguistic variables: average
waiting time (mean delay) waiting time (mean delay) m m, repair utilisation , repair utilisation
factor of the service centre factor of the service centre , number of servers , number of servers s s, ,
and initial number of spare parts and initial number of spare parts n n. .
Linguistic variables and their ranges Linguistic variables and their ranges
LinguisticVariable: Mean Delay, m
LinguisticValue Notation Numerical Range(normalised)
VeryShort
Short
Medium
VS
S
M
[0, 0.3]
[0.1, 0.5]
[0.4, 0.7]
LinguisticVariable: Number of Servers, s
LinguisticValue Notation Numerical Range(normalised)
Small
Medium
Large
S
M
L
[0, 0.35]
[0.30, 0.70]
[0.60, 1]
LinguisticVariable: Repair Utilisation Factor,
LinguisticValue Notation Numerical Range
Low
Medium
High
L
M
H
[0, 0.6]
[0.4, 0.8]
[0.6, 1]
LinguisticVariable: Number of Spares, n
LinguisticValue Notation Numerical Range(normalised)
VerySmall
Small
Rather Small
Medium
Rather Large
Large
VeryLarge
VS
S
RS
M
RL
L
VL
[0, 0.30]
[0, 0.40]
[0.25, 0.45]
[0.30, 0.70]
[0.55, 0.75]
[0.60, 1]
[0.70, 1]
LinguisticVariable: Mean Delay, m
LinguisticVariable: Number of Servers, s
LinguisticVariable: Repair Utilisation Factor,
LinguisticVariable: Number of Spares, n
Step Step 2 2: Determine fuzzy sets : Determine fuzzy sets
Fuzzy sets can have a variety of shapes. However, Fuzzy sets can have a variety of shapes. However,
a triangle or a trapezoid can often provide an a triangle or a trapezoid can often provide an
adequate representation of the expert knowledge, adequate representation of the expert knowledge,
and at the same time, significantly simplifies the and at the same time, significantly simplifies the
process of computation. process of computation.
Fuzzy sets of Fuzzy sets of Mean Delay m Mean Delay m
0.1 0
1.0
0.0
0.2
0.4
0.6
0.8
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Mean Delay (normalized)
S VS M
Degree of
Membership
Fuzzy sets of Fuzzy sets of Number of Servers s Number of Servers s
0.1 0
1.0
0.0
0.2
0.4
0.6
0.8
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
M L S
Degree of
Membership
Number of Servers (normalized)
Fuzzy sets of Fuzzy sets of Repair Utilisation Factor Repair Utilisation Factor
0.1 0
1.0
0.0
0.2
0.4
0.6
0.8
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Repair Utilization Factor
M H L
Degree of
Membership
Fuzzy sets of Fuzzy sets of Number of Spares n Number of Spares n
0.1 0
1.0
0.0
0.2
0.4
0.6
0.8
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
S RS VS M RL L VL
Degree of
Membership
Number of Spares (normalized)
Step Step 3 3: Elicit and construct fuzzy rules : Elicit and construct fuzzy rules
To accomplish this task, we might ask the expert to To accomplish this task, we might ask the expert to
describe how the problemcan be solved using the describe how the problemcan be solved using the
fuzzy linguistic variables defined previously. fuzzy linguistic variables defined previously.
Required knowledge also can be collected from Required knowledge also can be collected from
other sources such as books, computer databases, other sources such as books, computer databases,
flow diagrams and observed human behaviour. flow diagrams and observed human behaviour.
The Fuzzy Associative Memory The Fuzzy Associative Memory
(FAM) square (FAM) square
m
s
M
RL
VL
S
RS
L
VS
S
M
VS S M
L
M
S
k dimensional cubefor k variables
No of
servers
Delay
No of
spares
Rule Base 1 Rule Base 1
1. If (utilization_factor is L) then (number_of_spares is S)
2. If (utilization_factor is M) then (number_of_spares is M)
3. If (utilization_factor is H) then (number_of_spares is L)
4. If (mean_delay is VS) and (number_of_servers is S) then (number_of_spares is VL)
5. If (mean_delay is S) and (number_of_servers is S) then (number_of_spares is L)
6. If (mean_delay is M) and (number_of_servers is S) then (number_of_spares is M)
7. If (mean_delay is VS) and (number_of_servers is M) then (number_of_spares is RL)
8. If (mean_delay is S) and (number_of_servers is M) then (number_of_spares is RS)
9. If (mean_delay is M) and (number_of_servers is M) then (number_of_spares is S)
10. If (mean_delay is VS) and (number_of_servers is L) then (number_of_spares is M)
11. If (mean_delay is S) and (number_of_servers is L) then (number_of_spares is S)
12. If (mean_delay is M) and (number_of_servers is L) then (number_of_spares is VS)
3 +3x3 rules
Cube FAM of Rule Base 2 Cube FAM of Rule Base 2
VS VS VS
VS VS VS
VS VS VS
VL L M
H
S
VS VS VS
VS VS VS
VS VS VS M
VS VS VS
VS VS VS
S S VS L
s
L
VS S M
m
M
H

VS VS VS
L
VS S M
S
m
VS VS VS M
S S VS L
s
S VS VS
M
VS S M
m
VS S M
m
S
RS S VS M
M RS S L
s
S
M M S M
RL M RS L
s
3x3 =27 rules
Rule table 2 Rule table 2
Rule m s n Rule m s n Rule m s n
1 VS S L VS 10 VS S M S 19 VS S H VL
2 S S L VS 11 S S M VS 20 S S H L
3 M S L VS 12 M S M VS 21 M S H M
4 VS M L VS 13 VS M M RS 22 VS M H M
5 S M L VS 14 S M M S 23 S M H M
6 M M L VS 15 M M M VS 24 M M H S
7 VS L L S 16 VS L M M 25 VS L H RL
8 S L L S 17 S L M RS 26 S L H M
9 M L L VS 18 M L M S 27 M L H RS
Therules constructed froma3-dimensional cube
(3x3x3 =27 rules)
Step Step 4 4: Encode the fuzzy sets, fuzzy rules : Encode the fuzzy sets, fuzzy rules
and procedures to perform fuzzy and procedures to perform fuzzy
inference into the expert system inference into the expert system
One may choose one of two options: One may choose one of two options:
Build the systemusing a programming language Build the systemusing a programming language
such as C/C++or Pascal, or such as C/C++or Pascal, or
Apply a fuzzy logic development tool such as Apply a fuzzy logic development tool such as
MATLAB Fuzzy Logic Toolbox or Fuzzy MATLAB Fuzzy Logic Toolbox or Fuzzy
Knowledge Builder. Knowledge Builder.
Step Step 5 5: Evaluate and tune the system : Evaluate and tune the system
The last, and the most laborious, task is to evaluate The last, and the most laborious, task is to evaluate
and tune the system. We want to see whether the and tune the system. We want to see whether the
fuzzy systemmeets the requirements. fuzzy systemmeets the requirements.
Several test situations depend on the mean delay, Several test situations depend on the mean delay,
number of servers and repair utilisation factor. number of servers and repair utilisation factor.
The Fuzzy Logic Toolbox can generate surfaces The Fuzzy Logic Toolbox can generate surfaces
useful in analysis of the system useful in analysis of the system s performance. s performance.
Three Three- -dimensional plot of Rule Base 1 dimensional plot of Rule Base 1
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.2
0.3
0.4
0.5
0.6
number_of_servers mean_delay
n
u
m
b
e
r
_
o
f_
s
p
a
r
e
s
Three Three- -dimensional plot of Rule Base 1 dimensional plot of Rule Base 1
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.2
0.3
0.4
0.5
0.6
utilization_factor mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s

Three Three- -dimensional plot of Rule Base 2 dimensional plot of Rule Base 2
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.15
0.2
0.25
0.3
0.35
number_of_servers mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s
Three Three- -dimensional plot of Rule Base 2 dimensional plot of Rule Base 2
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.2
0.3
0.4
utilization_factor mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s

0.5 However, even now, the expert might not be However, even now, the expert might not be
satisfied with the systemperformance. satisfied with the systemperformance.
To improve the systemperformance, we may use To improve the systemperformance, we may use
additional sets additional sets Rather Small Rather Small and and Rather Large Rather Large
on the universe of discourse on the universe of discourse Number of Servers Number of Servers, ,
and then extend the rule base. and then extend the rule base.
Modified fuzzy sets of Modified fuzzy sets of Number of Servers Number of Servers
0.1 0
1.0
0.0
0.2
0.4
0.6
0.8
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Number of Servers (normalized)
RS M RL L S
Degree of
Membership
Cube FAM of Rule Base 3 Cube FAM of Rule Base 3
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
S S VS
S S VS
VL L M
VL RL RS
M M S
RL M RS
L M RS
H
S
M
RL
L
RS
s
L
VS S M
m
M
H

VS VS VS
VS VS VS
VS VS VS
S S VS
S S VS
L
VS S M
S
M
RL
L
RS
m
s
S VS VS
S VS VS
RS S VS
M RS S
M RS S
M
VS S M
m
VS S M
m
S
M
RL
L
RS
s
S
M
RL
L
RS
s
Three Three- -dimensional plots for Rule Base 3 dimensional plots for Rule Base 3
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.15
0.2
0.25
0.3
0.35
number_of_servers mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s
Three Three- -dimensional plots for Rule Base 3 dimensional plots for Rule Base 3

0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.2
0.3
0.4
utilization_factor mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s

0.5
Tuning fuzzy systems Tuning fuzzy systems
1. 1. Review model input and output variables, and if Review model input and output variables, and if
required redefine their ranges. required redefine their ranges.
2. 2. Review the fuzzy sets, and if required define Review the fuzzy sets, and if required define
additional sets on the universe of discourse. additional sets on the universe of discourse.
The use of wide fuzzy sets may cause the fuzzy The use of wide fuzzy sets may cause the fuzzy
systemto performroughly. systemto performroughly.
3. 3. Provide sufficient overlap between neighbouring Provide sufficient overlap between neighbouring
sets. It is suggested that triangle sets. It is suggested that triangle- -to to- -triangle and triangle and
trapezoid trapezoid- -to to- -triangle fuzzy sets should overlap triangle fuzzy sets should overlap
between 25% to 50% of their bases. between 25% to 50% of their bases.
4. 4. Review the existing rules, and if required add new Review the existing rules, and if required add new
rules to the rule base. rules to the rule base.
5. 5. Examine the rule base for opportunities to write Examine the rule base for opportunities to write
hedge rules to capture the pathological behaviour hedge rules to capture the pathological behaviour
of the system. of the system.
6. 6. Adjust the rule execution weights. Most fuzzy Adjust the rule execution weights. Most fuzzy
logic tools allow control of the importance of rules logic tools allow control of the importance of rules
by changing a weight multiplier. by changing a weight multiplier.
7. 7. Revise shapes of the fuzzy sets. In most cases, Revise shapes of the fuzzy sets. In most cases,
fuzzy systems are highly tolerant of a shape fuzzy systems are highly tolerant of a shape
approximation. approximation.