• Aucun résultat trouvé

MODIFICATION AND ASSIGNMENT OF TRUTH VALUES

Dans le document FUZZY EXPERT SYSTEMS AND FUZZY REASONING (Page 119-122)

6 Inference in an Expert System I

6.4 MODIFICATION AND ASSIGNMENT OF TRUTH VALUES

If the antecedent truth value of rule (6.2) is P, the general principle is that we execute the consequence B with confidence P. Let the modified truth value of B be B0. We have three possible types of inference:monotonic,non-monotonic,and downward monotonic. In monotonic inference, the truth value B0 may increase or remain unchanged, but not decrease; in non-monotonic inference, the truth value may increase, decrease, or remain unchanged; and in downward monotonic inference, the truth value may decrease or remain unchanged but not decrease.

The rule itself is assigned a truth value, say r. (By default, r is 1.) The antecedent confidence is modified before executing the consequent instructions by replacing P with P AND r to yield the posterior confidence, where usually the Zadehian AND or minimum is used. To avoid cumbersome notation in this chapter, we will assume that whenever the antecedent truth value appears, it will have been ANDed with the rule truth value (by default 1).

6.4.1 Monotonic Inference

In monotonic inference, we assume that the existing truth value of B is firmly based, and cannot be reduced by any new information. (As is customary in AI, we assume that the term unqualified term “monotonic” means that facts believed true will not be invalidated, i.e., truth values of data will not be reduced.) This amounts to the assumption that we have not made any erroneous conclusions up till now. Any new information can only add to our confidence that the value of B is valid.

Suppose we have already established that the grade of membership of B is 0.8. A rule now fires with antecedent confidence 0.5. The argument is that since we already know that B’s grade of membership is 0.8, the new information should be discarded, and the rule would fail; B’s grade of membership would remain at 0.8.

A formula for B0, the new truth value of B0, using monotonic inference is

B0¼P OR B (6:4)

where P is the antecedent truth value. P may have the form (A0¼A), and P will be the confidence that A0 and A are approximately equal (discussed in Chapter 3).

Suppose A and A0 represent single-valued data (integers, floats, strings), with the same value but different truth values A and A0, then

P¼truth value(A0¼A)¼max(A, A0) (6:5)

If A and A0are not scalar quantities, that is, discrete fuzzy sets, fuzzy numbers or membership functions, then we can write (6.5) as

P¼tv(A0¼A)¼max(A(x), A0(x))8x in A, A0 (6:6) Similarly, if B and B0are not scalar quantities, we can write (6.4) as

B0(x)¼max(P, B(x)) (6:7)

According to (6.7), if P is multivalued and is non-zero, B would be every non-zero also. It appears that monotonic reasoning is then not likely to be useful in modifying a multivalued datum.

6.4.2 Non-monotonic Inference

In non-monotonic inference, we assume that the new information supplied by the firing of a new rule is more reliable than any existing information.

As before, suppose we have already established that the grade of membership of B is 0.8. A rule now fires with antecedent confidence 0.5. Since we believe the new information, we would reduce the truth value of B to 0.5. If, on the other hand, the new rule fires with confidence 0.9, we would increase the truth value of B to 0.9.

For single-valued data, a formula for B0, using non-monotonic inference is

B0¼P (6:8)

where P is the confidence that A0and A are approximately equal as given just above.

If B and B0 are not single-valued quantities, non-monotonic reasoning is not useful unless A, A0, B, and B0 are defined on the same universe. In this case, we could write (6.8) as

B0j(x)¼A0(x) AND A(x) (6:9)

but this is of doubtful utility in a fuzzy expert system. Another possibility is two use two levels of fuzziness; that is, we assign P as the truth value of the existing fuzzy number or membership function B. However, this case is usually covered by monotonic down-ward reasoning, discussed next. The assignment of truth values to other truth values has not been explored to any great extent in working fuzzy expert systems, except in the case of downward monotonic reasoning, discussed next in Section 6.4.3.

6.4.3 Downward Monotonic Inference

Downward monotonic inference may be useful when we believe that the prior truth value of B represents an upper limit on what is possible. This type of inference is useful when modifying multivalued data, necessary when defuzzifying. Suppose

6.4 MODIFICATION AND ASSIGNMENT OF TRUTH VALUES 103

our consequent linguistic variable is B, with members the linguistic terms Bj. A sample such data declaration and rule might be

declare Data output fzset (Small Medium Large);

rule IF (. . .) THEN output is Small;

where the rule is of the form

if Pithen B is Bj (6:10)

A rule has fired, assigning a grade of membership to Bj. A membership function has been assigned to Bj, since Bjis a linguistic term. We now wish to modify the mem-bership function to reflect its grade of memmem-bership. To do this, we employ down-ward monotonic reasoning.

A formula for Bj0, the new truth value of Bj using downward monotonic inference, is

B0j¼P AND Bj (6:11)

The reader will recall that there are many possible definitions for the AND operator.

If we adopt the Zadehian min AND operator, we can write (6.11) as

B0j¼min(P, Bj) (6:12)

If we adopt the product AND operator, we can write (6.12) as

B0j¼PBj (6:13)

Figure 6.1 Downward monotonic inference; modification of a membership function by firing a rule, prior to defuzzification. Rule is “IF A THEN size is Small”; combined antecedent and rule confidence (pconf) is 0.6.

In Figure 6.1, we illustrate the modification of a membership function using down-ward monotonic inference and the Zadehian min AND operator.

6.5 APPROXIMATE REASONING

We have discussed the theory of approximate reasoning in Section 4.3. As we have noted, this theory is sometimes suggested for use in fuzzy expert systems. Since the method has already been presented, we will not repeat the procedure here. We will, in Section 6.6, attempt to place approximate reasoning for expert systems in the same general framework as monotonic reasoning (6.4), non-monotonic reasoning (6.8) and downward monotonic reasoning (6.11).

6.6 TESTS OF PROCEDURES TO OBTAIN THE TRUTH

Dans le document FUZZY EXPERT SYSTEMS AND FUZZY REASONING (Page 119-122)