Question: What is a fuzzy logic system (FLS)?
Answer: An FLS is depicted in Figure 1. It contains four components—rules, fuzzifier, inference engine, and output processor—that 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 type1 FLS and a type2 FLS?
Answer: A type1 FLS uses only type1 fuzzy sets, whereas a type2 FLS uses at least one type2 fuzzy set. The inference engine of a type1 FLS maps type1 input fuzzy sets into type1 output fuzzy sets, whereas the inference engine of a type2 FLS maps type2 or type1 fuzzy sets into type2 fuzzy sets. The output processor for a type1 FLS transforms a type1 fuzzy set into a number (that is, a type0 fuzzy set) and is called a defuzzifier. The output processor for a type2 FLS has two components to it: a typereducer that transforms a type2 fuzzy set into a type1 fuzzy set, followed by a defuzzifier that transforms the resulting type1 fuzzy set into a number.
Question: If all uncertainties disappear, does a type2 FLS reduce to a type1 FLS?
Answer: Type2 FLSs have been developed that satisfy the following fundamental design requirement: When all sources of uncertainty disappear, a type2 FLS must reduce to a comparable type1 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 type1 FLS is embedded within a type2 FLS.
Question: In what situations would you choose to use a type2 FLS?
Answer: I recommend using a type2 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 type2 FLSs contain type1 FLSs as a special case, nothing is lost by beginning with the architecture of a type2 FLS.
Some specific situations in which we have found that type2 FLSs outperform type1 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 datagenerating mechanism is timevarying, but the nature of the time variations cannot be expressed beforehand mathematically (as in equalization of nonlinear and timevarying 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 rulebased classification of video traffic).

Knowledge is mined from experts using IFTHEN questionnaires (as in connection admission control for ATM networks).
Question: Why do we expect that a type2 FLS will outperform a type1 FLS?
Answer: Type2 FLSs are described by type2 membership functions (MFs) that are characterized by more parameters than are MFs for type1 FLSs. During the designs of type1 and type2 FLSs, MF parameters are optimized using some training data. Because type2 FLSs are characterized by more design parameters than are type1 FLSs (that is, they have more design degrees of freedom), type2 FLSs have the potential to outperform type1 FLSs.
Of course, one way to introduce more design degrees of freedom into a type1 FLS is to add more rules to it. Unfortunately, additional rules do not let a type1 FLS account for uncertainties because uncertainties cannot be modeled by type1 fuzzy sets. In all fairness, the additional rules should also be provided to the type2 FLS, especially if we require a type2 FLS to reduce to a type1 FLS when all sources of uncertainty disappear.
Question: Is there something truly unique about the output of a type2 FLS, something that cannot be obtained at the output of a type1 FLS?
Answer: There is. As we have explained already, there can be two outputs of a type2 FLS, the typereduced set and the defuzzified output. The typereduced set is truly unique. It provides an interval of uncertainty for the output of a type2 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 type2 FLS, which translate into more uncertainties about its MFs, the larger will be the typereduced set, and vice versa. So, the typereduced set itself could be of great value to a decision maker. Decision rules can be created based on the typereduced set. Nothing like this exists for a type1 FLS.
Question: Are there different kinds of type2 FLSs?
Answer: Many different kinds of type1 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 type2 FLS, so there can be many different kinds of type2 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 type1 or type2 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 type1 FLSs, and there are now singleton and nonsingleton type2 FLSs; however, only a type2 FLS can model the measurements using type2 fuzzy sets. So, a type2 FLS can treat imperfect measurements more flexibly than a type1 FLS can.
Question: Is there software available to let me start designing type2 FLSs?
Answer: More than 35 MATLAB Mfiles 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 type2 FLSs. They include Mfiles for designs of a broad range of type2 FLSs, and also Mfiles to design type1 FLSs so that you can baseline the performance of a type2 FLS against the best performance attainable by a type1 FLS.
Question: How can I explain a type2 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 type2 FLSs in one sentence may be as challenging. I would state: "A type2 FLS is a rulebased FLS that is capable of directly modeling uncertainties and minimizing their effects; all of the rest is commentary."