Frequently Asked Questions About Rule-Based Type-2 Fuzzy Logic Systems
Question: What is a fuzzy logic system (FLS)?
Answer: An FLS is depicted in Figure 1. It contains four componentsrules, fuzzifier, inference engine, and output processorthat are interconnected. When the rules have been established, an FLS can be viewed as a mapping from inputs to outputs (the solid path in Figure 1, from crisp inputs to crisp outputs), and this mapping can be expressed quantitatively as y = f(x). This kind of FLS is very widely used in many engineering applications of FL, such as in FL controllers and signal processors. It is also known as a fuzzy controller, fuzzy system, fuzzy expert system, or fuzzy model.
Rules are the heart of an FLS. They have membership functions associated with them. Each rule can be thought of as a subsystem. Unless inputs are applied to the rule, that rule does nothing, in much the same way that until the ignition is turned on and the gas pedal is depressed, a car does nothing. The inference engine maps each rule's fuzzy input sets into each rule's fuzzy output set, analogous to a car's engine converting gasoline into car motion. The mathematics for how the inference engine does this are very nonlinear and do not have to concern us here.
The fuzzifier preconditions measurements so that they can be treated as fuzzy sets. The output processor converts a fuzzy set into a number, something that is needed in many applications of an FLS in which we need numerical outputs to make informed decisions.
Figure 1 Fuzzy logic system.
Question: What's the difference between a type-1 FLS and a type-2 FLS?
Answer: A type-1 FLS uses only type-1 fuzzy sets, whereas a type-2 FLS uses at least one type-2 fuzzy set. The inference engine of a type-1 FLS maps type-1 input fuzzy sets into type-1 output fuzzy sets, whereas the inference engine of a type-2 FLS maps type-2 or type-1 fuzzy sets into type-2 fuzzy sets. The output processor for a type-1 FLS transforms a type-1 fuzzy set into a number (that is, a type-0 fuzzy set) and is called a defuzzifier. The output processor for a type-2 FLS has two components to it: a type-reducer that transforms a type-2 fuzzy set into a type-1 fuzzy set, followed by a defuzzifier that transforms the resulting type-1 fuzzy set into a number.
Question: If all uncertainties disappear, does a type-2 FLS reduce to a type-1 FLS?
Answer: Type-2 FLSs have been developed that satisfy the following fundamental design requirement: When all sources of uncertainty disappear, a type-2 FLS must reduce to a comparable type-1 FLS. This design requirement is analogous to what happens to a probability density function when random uncertainties disappear. In that case, the variance of the pdf goes to 0, and a probability analysis reduces to a deterministic analysis. So, just as the capability for a deterministic analysis is embedded within a probability analysis, the capability for a type-1 FLS is embedded within a type-2 FLS.
Question: In what situations would you choose to use a type-2 FLS?
Answer: I recommend using a type-2 FLS whenever an application has uncertainty present. The following sources of uncertainty can occur for the FLS in Figure 1: uncertainty about the meanings of the words that are used in the rules, the consequent that is used in a rule, measurements that activate the FLS, and data used to tune the parameters of the FLS. Because type-2 FLSs contain type-1 FLSs as a special case, nothing is lost by beginning with the architecture of a type-2 FLS.
Some specific situations in which we have found that type-2 FLSs outperform type-1 FLSs are as follows:
-
Measurement noise is nonstationary, but the nature of the nonstationarity cannot be expressed beforehand mathematically (as in variable SNR measurements).
-
A data-generating mechanism is time-varying, but the nature of the time variations cannot be expressed beforehand mathematically (as in equalization of nonlinear and time-varying digital communication channels).
-
Features are described by statistical attributes that are nonstationary, but the nature of the nonstationarity cannot be expressed beforehand mathematically (as in rule-based classification of video traffic).
-
Knowledge is mined from experts using IF-THEN questionnaires (as in connection admission control for ATM networks).
Question: Why do we expect that a type-2 FLS will outperform a type-1 FLS?
Answer: Type-2 FLSs are described by type-2 membership functions (MFs) that are characterized by more parameters than are MFs for type-1 FLSs. During the designs of type-1 and type-2 FLSs, MF parameters are optimized using some training data. Because type-2 FLSs are characterized by more design parameters than are type-1 FLSs (that is, they have more design degrees of freedom), type-2 FLSs have the potential to outperform type-1 FLSs.
Of course, one way to introduce more design degrees of freedom into a type-1 FLS is to add more rules to it. Unfortunately, additional rules do not let a type-1 FLS account for uncertainties because uncertainties cannot be modeled by type-1 fuzzy sets. In all fairness, the additional rules should also be provided to the type-2 FLS, especially if we require a type-2 FLS to reduce to a type-1 FLS when all sources of uncertainty disappear.
Question: Is there something truly unique about the output of a type-2 FLS, something that cannot be obtained at the output of a type-1 FLS?
Answer: There is. As we have explained already, there can be two outputs of a type-2 FLS, the type-reduced set and the defuzzified output. The type-reduced set is truly unique. It provides an interval of uncertainty for the output of a type-2 FLS, in much the same way that a confidence interval provides an interval of uncertainty for a probabilistic system. The more uncertainties that occur in a type-2 FLS, which translate into more uncertainties about its MFs, the larger will be the type-reduced set, and vice versa. So, the type-reduced set itself could be of great value to a decision maker. Decision rules can be created based on the type-reduced set. Nothing like this exists for a type-1 FLS.
Question: Are there different kinds of type-2 FLSs?
Answer: Many different kinds of type-1 FLSs exist because choices must be made about the details of all the blocks in the Figure 1 FLS. Similar choices must be made for the blocks of a type-2 FLS, so there can be many different kinds of type-2 FLSs.
The FLS literature talks about two kinds of fuzzifiers, singleton and nonsingleton. In singleton fuzzification, measurements are treated as perfect and are modeled as fuzzy sets whose MFs are nonzero only at the measured value. In nonsingleton fuzzification, measurements are treated as imperfect and are modeled as either type-1 or type-2 fuzzy sets. The former set is useful if measurement noise is stationary, whereas the latter set is useful if measurement noise is nonstationary. There have always been singleton and nonsingleton type-1 FLSs, and there are now singleton and nonsingleton type-2 FLSs; however, only a type-2 FLS can model the measurements using type-2 fuzzy sets. So, a type-2 FLS can treat imperfect measurements more flexibly than a type-1 FLS can.
Question: Is there software available to let me start designing type-2 FLSs?
Answer: More than 35 MATLAB M-files are available as freeware on the Internet at http://sipi.usc.edu/~mendel/software. They have been made available so that you will be able to immediately use type-2 FLSs. They include M-files for designs of a broad range of type-2 FLSs, and also M-files to design type-1 FLSs so that you can baseline the performance of a type-2 FLS against the best performance attainable by a type-1 FLS.
Question: How can I explain a type-2 FLS in one sentence?
Answer: The Hebrew sage Hillel was asked by a Roman persecutor to explain the entire Torah while standing on one foot, or else face death. This was his explanation: "Do unto others as you would have others do unto you; all of the rest is commentary." Our situation surely is not as perilous as Hillel's, but the idea of being able to explain type-2 FLSs in one sentence may be as challenging. I would state: "A type-2 FLS is a rule-based FLS that is capable of directly modeling uncertainties and minimizing their effects; all of the rest is commentary."