• No results found

Soft computing is an important branch of study in the area of intelligent and knowledge-based systems. It has effectively complemented conventional AI in the area of machine intelligence (computational intelligence). Human reason-ing is predominantly approximated, qualitative, and “soft.” Humans can effectively handle incomplete, imprecise, and fuzzy information in making intelligent decisions. Fuzzy logic, probability theory, neural networks, and genetic algorithms are cooperatively used in soft computing for knowledge representation and for mimicking the reasoning and decision-making pro-cesses of a human. Quite effective are the mixed or hybrid techniques, which synergistically exploit the advantages of two or more of these areas. Decision-making with soft computing involves approximate reasoning.

Now we will give an introduction to the subject of soft computing, with an emphasis on fuzzy logic and evolutionary computing or genetic algo-rithms. The techniques of soft computing will be covered in more detail in other chapters.

1.5.1 Fuzzy logic

Fuzzy logic is useful in representing human knowledge in a specific domain of application and in reasoning with that knowledge to make useful inferences or actions. The conventional binary (bivalent) logic is crisp and allows for only two states. This logic cannot handle fuzzy descriptors, examples of which are “fast” which is a fuzzy quantifier and “weak” which is a fuzzy predicate. They are generally qualitative, descriptive, and subjective and may contain some overlapping degree of a neighboring quantity, for example, some degree of “slowness” in the case of the fuzzy quantity “fast.” Fuzzy logic allows for a realistic extension of binary, crisp logic to qualitative, sub-jective, and approximate situations, which often exist in problems of intelli-gent machines where techniques of artificial intelligence are appropriate.

In fuzzy logic, the knowledge base is represented by if-then rules of fuzzy descriptors. An example of a fuzzy rule would be, “If the speed is slow and the target is far, then moderately increase the power,” which contains the fuzzy descriptors slow, far, and moderate. A fuzzy descriptor may be repres-ented by a membership function. This function gives a membership grade between 0 and 1 for each possible value of the fuzzy descriptor it represents.

Mathematically, a fuzzy set A is represented by a membership function, or a “possibility function” of the form

Fz[x∈A] =µA(x): ℜ → [0, 1] (1.4)

in which each element of A, as denoted by a point x on the real line ℜ, is mapped to a value µ which may lie anywhere in the real interval of 0 to 1.

This value is the “grade of membership” of x in A. If the membership grade is greater than 0 but less than 1, the membership is not crisp (i.e., it is fuzzy), and the element has some possibility of being within the set and also some

1.5 Soft c omputing

39 complementary possibility of being outside the set. In that case, the element

falls on the fuzzy boundary of the set. The conventional binary (bivalent) logic allows for only two states, represented by 0 and 1, of set membership:

an element is either completely inside or completely outside a set. Through the use of membership grades which lie between 0 and 1, fuzzy sets and asso-ciated fuzzy logic allow for a realistic extension and generalization of binary, crisp logic.

A fuzzy rule itself may be represented as a grouping of membership functions. An example of two rules:

If A1 and B1 then C1 If A2 and B2 then C2

is sketched in Figure 1.13, where triangular membership functions are used.

Here A1 and A2 may represent two fuzzy states such as “near” and “far” of the variable “destination”; B1 and B2 may represent two fuzzy states such as

“fast” and “slow” of the variable “speed”; and C1 and C2 may represent the fuzzy actions “decrease” and “increase” of the variable “power.” If the actual distance to the target is x0and the actual speed is y0, then each fuzzy rule will contribute an action, as shown by the shaded region of the member-ship functions for C1 and C2 in Figure 1.13. The net power-change action (decision) corresponding to these readings of distance and speed is given by the overall shaded region, indicated by C′ in the figure. This is arrived at according to a particular decision-making procedure – the sup-min composi-tion, which is commonly used in fuzzy logic (these concepts will be discussed in detail in a subsequent chapter). If a crisp decision is required, one may use the centroid z0of the decision membership function C′ as shown.

Figure 1.13: An illustration of fuzzy decision-making

1 Introduction to intel lig ent sy s tems and sof t c omputing

40 Now consider the general problem of approximate reasoning. In this case the knowledge base K is represented in an “approximate” form, for example, by a set of if-then rules with antecedent and consequent variables that are fuzzy descriptors. First, the data D are preprocessed according to

FD= FP(D) (1.5)

which, in a typical situation, corresponds to a data abstraction procedure called “fuzzification” and establishes the membership functions or member-ship grades that correspond to D. Then for a fuzzy knowledge base FK, the fuzzy inference FIis obtained through fuzzy-predicate approximate reason-ing, as denoted by

FI= FKo FD (1.6)

Here, the fuzzy matching operator FM that corresponds to M in equation (1.1) is in fact the composition operator o and may be expressed as

µI= min(µK, µD) (1.7)

where

µK= multidimensional membership function of the fuzzy rule base µD= membership function of the fuzzified data

µI= membership function of the fuzzy inference

x ∈X = common set of context variables used in knowledge base matching.

Also, the supremum (sup) and minimum (min) operations are given by the usual definitions (see Chapter 2). Often, a crisp value L is needed for the intelligent action that has to be carried out in the physical process (intelligent machine) and may be determined by the centroid method; thus,

L= (1.8)

where c is the independent variable of the inference I, and S is the support set (or the region of interest) of the inference membership function.

Fuzzy logic is commonly used in direct control of processes and machinery.

In this case the inferences of a fuzzy decision-making system form the control inputs to the process. These inferences are arrived at by using the process responses as the inputs (context data) to the fuzzy system.

The simple example of goal pursuit (vehicle driving) shown in Figure 1.13 was given to illustrate the similarity of fuzzy decision-making to approximate reasoning, which is commonly used by humans. One may argue that there is no intelligence in the associated decision-making process because the rules are fixed and no learning and self-improvement are involved. Even in the

s



I(c)dc

s



µI(c)dc

sup

X

1.5 Soft c omputing

41 example of Figure 1.13, however, there exists a process of “approximation”

and the use of approximate reasoning. These, as commonly performed by humans, may be interpreted as manifestations of intelligence. Problems of knowledge-based decision-making that are much more complex would be involved in intelligent machines for practical applications. Use of fuzzy logic is valuable and appealing in such applications, particularly because of its incorporation of approximate reasoning. Learning may be incorporated through a process of reinforcement where valid rules in the rule base are retained and new rules are added (learned), while inappropriate rules are removed. Techniques of neural networks may be used as means of learning in this context. Application areas of fuzzy logic include smart appliances, supervisory control of complex processes, and expert systems.

1.5.2 Neural networks

Artificial neural networks (NN) are massively connected networks of com-putational “neurons,” and represent parallel-distributed processing struc-tures. The inspiration for NN has come from the biological architecture of neurons in the human brain. A key characteristic of neural networks is their ability to approximate arbitrary nonlinear functions. Since machine intelli-gence involves a special class of highly nonlinear decision-making, neural net-works would be effective there. Furthermore, the process of approximation of a nonlinear function (i.e., system identification) by interacting with a sys-tem and employing data on its behavior may be interpreted as “learning.”

Through the use of neural networks, an intelligent system would be able to learn and perform high-level cognitive tasks. For example, an intelligent system would only need to be presented a goal; it could achieve its objective through continuous interaction with its environment and evaluation of the responses by means of neural networks.

A neural network consists of a set of nodes, usually organized into layers, and connected through weight elements called synapses. At each node, the weighted inputs are summed (aggregated), thresholded, and subjected to an activation function in order to generate the output of that node. These opera-tions are shown in Figure 1.14. The analogy to the operaopera-tions in a biological neuron is highlighted. Specifically, in a biological neuron, the dendrites receive information from other neurons. The soma (cell body) collects and combines this information, which is transmitted to other neurons using a channel (tubular structure) called an axon. This biological analogy, apart from the abilities to learn by example, approximation of highly nonlinear functions, massive computing power, and memory, may be a root reason for inherent “intelligence” in a neural network. If the weighted sum of the inputs to a node (neuron) exceeds a threshold value w0, then the neuron is fired and an output y(t) is generated according to

(1.9)

1 Introduction to intel lig ent sy s tems and sof t c omputing