Show/Hide Toolbars

RiverSoftAVG Products Help

In Fuzzy Set Theory, we talked about how you can combine fuzzy sets to create complex expressions and rules:

 

if the temperature is very hot then set hot water flow to slow.

 

The above "rule" begs the question, how does fuzzy sets and fuzzy logic work with inferencing in fuzzy expert systems?  With fuzzy expert systems, rules assert fuzzy facts to combine evidence about a fuzzy fact.  There is no such thing as duplicate fuzzy facts on the fact list in a fuzzy expert system.  Rather, fuzzy facts combine to modify the shape of the fuzzy set in the one fuzzy fact.  There are actually two components to this procedure: how do fuzzy facts match with fuzzy rule patterns and how does asserting fuzzy facts work?

 

We will look at the second question first.  Asserting fuzzy facts is no different than asserting regular facts, except for one slight difference.  When a fuzzy fact is already on the fact list of an expert system, asserting another fuzzy fact of the same type causes the intersection (minimum) of the two fuzzy facts to be asserted (the old fuzzy fact on the fact list is removed).

 

How do fuzzy facts match with fuzzy rule patterns and how does that affect rule execution?  At first glance, it is not obviously how a rule with a pattern that if the temperature is very hot should match with a fact about the temperature is somewhat warm.  Obviously, it seems like they should match some even though it is not a perfect match.  In fact, they do.  Fuzzy facts match with fuzzy rule patterns based on the maximum value in the intersection of the fuzzy fact with the fuzzy rule pattern fact.  For example, the intersection (minimum) of very hot and somewhat warm could look like this:

 

Fuzzy Variable: Temperature

Fuzzy Values: [very hot] and [somewhat warm](+)

 

1.0000

0.9500

0.9000

0.8500

0.8000

0.7500

0.7000

0.6500                                       +++

0.6000                                          +

0.5500                                      +

0.5000                                           +

0.4500                                     +      +

0.4000

0.3500                                    +        +

0.3000                                              +

0.2500                                   +

0.2000                                  +            +

0.1500                                 +              +

0.1000

0.0500                              +++                +

0.0000++++++++++++++++++++++++++++++

    |----|----|----|----|----|----|----|----|----|----|

   0.00     20.00     40.00     60.00     80.00    100.00

 

Universe of Discourse: From 0.00 to 100.00

 

In this case, the maximum of the intersection is around 0.65.  In fuzzy expert systems, this maximum, the pattern match strength is usually compared to some threshhold, if the strength is greater than the threshhold then the rule is activated and put on the agenda.  This number also becomes the strength of the rule activation.  Note that if a rule has multiple patterns, the minimum of all the pattern match strengths determines if the rule is activated.  The rule activation strength is used to modify the shape of any fuzzy sets that are asserted on the right hand side of a rule; this process is called fuzzy correlation.  Fuzzy correlation controls how the truth of a rule's premise (IF portion) modifies the truth of the rule's consequents, e.g., fuzzy facts asserted in a rule cannot have greater truth than the truth values of the premise.  Intuitively, this makes sense since you shouldn't assert a fuzzy fact that has stronger possibility than its precedents.  Usually, the rule activation strength is either used to chop off any values of a fuzzy set above the strength (which modifes the shape of the fuzzy set by creating "plateaus") or multiplied against the values of the fuzzy set (which preserves the shape of the fuzzy set but has the effect of "shrinking" it).  

 

For example, the following graph shows the fuzzy set cold and how the fuzzy set cold (*) would be asserted with a cutoff value of 0.65 (+):

 

Fuzzy Variable: Temperature

Fuzzy Values: cold(*) cold > 0.6500(+)

 

1.0000*******

0.9500       **

0.9000         *

0.8500          *

0.8000           *

0.7500            *

0.7000

0.6500+++++++++++++*

0.6000             +*

0.5500              +

0.5000               +

0.4500

0.4000                +

0.3500                 +

0.3000

0.2500                  +

0.2000                   +

0.1500                    +

0.1000                     +

0.0500                      ++

0.0000                        ++++++++++++++++++++++++++

    |----|----|----|----|----|----|----|----|----|----|

   0.00     20.00     40.00     60.00     80.00    100.00

 

Universe of Discourse: From 0.00 to 100.00

 

Observe, how a plateau is created in cold once it exceeds 0.65.  The next graph shows the fuzzy correlation using the product of cold and 0.65:

 

Fuzzy Variable: Temperature

Fuzzy Values: cold(*) cold * 0.6500(+)

 

1.0000*******

0.9500       **

0.9000         *

0.8500          *

0.8000           *

0.7500            *

0.7000

0.6500++++++++     *

0.6000        ++    *

0.5500          ++

0.5000            +  *

0.4500             +

0.4000              + *

0.3500               + *

0.3000

0.2500                + *

0.2000                 + *

0.1500                  + *

0.1000                   ++*

0.0500                     ++*

0.0000                       +++++++++++++++++++++++++++

    |----|----|----|----|----|----|----|----|----|----|

   0.00     20.00     40.00     60.00     80.00    100.00

 

Universe of Discourse: From 0.00 to 100.00

 

Ok, now we understand how fuzzy correlation modifies asserted fuzzy facts, but there is one last step in asserting fuzzy facts in a rule: Fuzzy Inference.  The Fuzzy Inference method controls how assertions are combined with facts already on the fact list.  Note that this is different from the fuzzy fact assertions we described above, that was for an unconditional assertion outside of a rule, and was the intersection or minimum of the two fuzzy facts.  Inside a rule firing, we take the union or maximum of the two fuzzy sets.  This union inside a rule is called the min-max method of Fuzzy Inference.  Remember, though, that the asserting fuzzy fact has been modified by the Fuzzy Correlation method.

 

Next, Defuzzifying Fuzzy Sets

 

RiverSoftAVG Products Help © 1996-2016 Thomas G. Grubb