6.6.4 Implementation of Choices Among Types of Reasoning

Inference in a fuzzy expert system differs somewhat from conventional logical infer-

ence. Logical inference seeks to infer new logical propositions from old. A primary

tool for this purpose is the modus ponens “if A implies B, and A is true, then B is

true”, where A and B are logical propositions. Inference in a fuzzy expert system

deals not only with establishing the truths of fuzzy propositions, but with the cre-

ation or modi¬cation of data and their truth values by the ¬ring of rules.

In modifying data by a rule, we must consider the combined antecedent and rule

con¬dences (pconf), and the existing truth value of the data to be modi¬ed. We

de¬ne three types of inference (Table 6.2):

TABLE 6.2 Data Modi¬cation Permissible Under Different

Types of Inference

Type of inference Modi¬cation permitted if:

Modify if pconf .¼ old data con¬dence.

Monotonic

Non-monotonic Always modify.

Modify if pconf ,¼ old data con¬dence.

Monotonic downward

TEAM LinG - Live, Informative, Non-cost and Genuine !

110 INFERENCE IN AN EXPERT SYSTEM I

Default reasoning is optimistic; we assume that the existing truth value of a con-

sequent datum is well founded, and any additional information can only validate or

increase existing consequent truth values. This is monotonic reasoning. However, we

occasionally bring in new data in which we have the utmost con¬dence; in this case,

non-monotonic reasoning can be employed. The last circumstance occurs when we

are quite pessimistic, and any new data can only reduce existing con¬dences; we

then employ monotonic downward reasoning. The last method is sometimes appro-

priate when modifying membership functions prior to defuzzi¬cation.

Obviously, if different types of reasoning need to be employed under different

circumstances, the writer of a fuzzy expert system must provide mechanisms for

making this choice. We have seen that the method of approximate reasoning is inap-

plicable to rule-based fuzzy expert systems. We shall see later that downward mono-

tonic reasoning is employed when modifying membership functions prior to

defuzzi¬cation; FLOPS employs this type of reasoning by default with the

defuzzify command. However, in normal fuzzy reasoning, the knowledge

engineer should be given a way of choosing between monotonic upward and

non-monotonic reasoning.

FLOPS employs monotonic upward reasoning by default. The default reasoning

may be changed to non-monotonic by issuing the TMSoff command, and may

restore monotonic upward reasoning by the TMSon command. In addition, when

con¬dence levels are modi¬ed inferentially by such consequent commands as

area is Small, or x is 33, the default reasoning method is used; when

con¬dence levels are referred to directly, by such consequent commands as

area.Small = 0 or x.cf = 0, non-monotonic reasoning is used. It is also

possible to use an arbitrary inference method by computing truth values in any

desired way; this ability is utilized in a FLOPS program using the Combs™

inference method, described in Chapter 7.

6.7 SUMMARY

Inference in an expert system is the process of drawing conclusions from data; that is

deriving new data or truth values from input data and truth values. The new data may

be the ¬nal conclusions, or in multistep reasoning, may be intermediate conclusions

that constitute input to the next step.

Inference in a fuzzy expert system differs somewhat from conventional logical

inference. Logical inference seeks to infer new logical propositions from old. A

primary tool for this purpose is the modus ponens “if A implies B, and A is

true, then B is true”, where A and B are logical propositions. Inference in a

fuzzy expert system deals not with establishing the truths of fuzzy propositions,

but with the creation or modi¬cation of data and their truth values by the ¬ring

of rules.

In modifying data by a rule, we must consider the combined antecedent and rule

con¬dences (pconf), and the existing truth value of the data to be modi¬ed. We

de¬ne three types of inference:

TEAM LinG - Live, Informative, Non-cost and Genuine !

111

6.7 SUMMARY

Type of inference Modi¬cation permitted if:

Modify if pconf .¼old data con¬dence.

Monotonic

Non-monotonic Always modify.

Modify if pconf ,¼old data con¬dence.

Monotonic downward

Default reasoning is optimistic; we assume that the existing truth value of a con-

sequent datum is well founded, and any additional information can only validate

or increase existing consequent truth values. This is monotonic reasoning.

However, we occasionally bring in new data in which we have the utmost con¬-

dence; in this case, non-monotonic reasoning can be employed. The last circum-

stance occurs when we are quite pessimistic, and any new data can only reduce

existing con¬dences; we then employ monotonic downward reasoning. The last

method is usually appropriate when modifying membership functions prior to

defuzzi¬cation.

6.7.1 Data Types and Truth Values

Available attribute data types and their truth values may be summarized as:

Integers, ¬‚oats and strings. Values are assigned either by user input or as lit-

.

erals within the program. A single truth value is attached to any value these

attributes may have. This truth value is itself an attribute, accessed by

appending .cf to the attribute name. This truth value itself is assumed to

be fully true.

Fuzzy numbers. Values are any number from the real line. Truth values are

.

de¬ned by a parameterized membership function that maps any real number

value onto its truth value (grade of membership). Fuzzy numbers are used pri-

marily in approximate comparisons in a rule antecedent. A full range of

approximate comparison operators is available corresponding to the conven-

tional Boolean numerical comparison operators furnished by most computer

languages. The truth value of a fuzzy number attribute itself is assumed to be

fully true.

Discrete fuzzy sets. Values are de¬ned as the names of the members of the

.

fuzzy set. To each member a single truth value is attached, the grade of mem-

bership of that member in the fuzzy set.

Membership functions. Values are numbers from the real line. If a discrete

.

fuzzy set is a linguistic variable, whose members are linguistic terms describing

a numeric quantity, membership functions are attached, one to each linguistic

term. These functions, like fuzzy numbers, map any real or fuzzy number

onto the truth value (grade of membership) of the corresponding linguistic

term (discrete fuzzy set member). The grade of membership of the linguistic

term applies also to its membership function.

TEAM LinG - Live, Informative, Non-cost and Genuine !

112 INFERENCE IN AN EXPERT SYSTEM I

6.7.2 Types of Fuzzy Reasoning

Three types of fuzzy inference are de¬ned. These types differ in consequent truth

value modi¬cations permissible as a result of ¬ring a rule. In monotonic reasoning,

consequent truth values may increase or stay the same, but may not decrease; in