You are on page 1of 33

Downloaded from rsta.royalsocietypublishing.

org on February 16, 2012

The role of soft computing in intelligent machines


Clarence W. de Silva Phil. Trans. R. Soc. Lond. A 2003 361, 1749-1780 doi: 10.1098/rsta.2003.1223

Email alerting service

Receive free email alerts when new articles cite this article - sign up in the box at the top right-hand corner of the article or click here

To subscribe to Phil. Trans. R. Soc. Lond. A go to: http://rsta.royalsocietypublishing.org/subscriptions

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

10.1098/rsta.2003.1223

The role of soft computing in intelligent machines


By C l a r e n c e W. d e Silva Industrial Automation Laboratory, Department of Mechanical Engineering, The University of British Columbia, 20542324 Main Mall, Vancouver V6T 1Z4, Canada
Published online 18 June 2003

An intelligent machine relies on computational intelligence in generating its intelligent behaviour. This requires a knowledge system in which representation and processing of knowledge are central functions. Approximation is a soft concept, and the capability to approximate for the purposes of comparison, pattern recognition, reasoning, and decision making is a manifestation of intelligence. This paper examines the use of soft computing in intelligent machines. Soft computing is an important branch of computational intelligence, where fuzzy logic, probability theory, neural networks, and genetic algorithms are synergistically used to mimic the reasoning and decision making of a human. This paper explores several important characteristics and capabilities of machines that exhibit intelligent behaviour. Approaches that are useful in the development of an intelligent machine are introduced. The paper presents a general structure for an intelligent machine, giving particular emphasis to its primary components, such as sensors, actuators, controllers, and the communication backbone, and their interaction. The role of soft computing within the overall system is discussed. Common techniques and approaches that will be useful in the development of an intelligent machine are introduced, and the main steps in the development of an intelligent machine for practical use are given. An industrial machine, which employs the concepts of soft computing in its operation, is presented, and one aspect of intelligent tuning, which is incorporated into the machine, is illustrated.
Keywords: soft computing; expert systems; intelligent machines; intelligent control; knowledge-based systems; articial intelligence

1. Introduction
An intelligent machine embodies articial intelligence in a general sense, and as a result displays intelligent behaviour. The eld of articial intelligence evolved with the objective of developing computers that can think like humans. Just like the 20 billion neurons in a human brain, the hardware and software of a computer are themselves not intelligent, yet it has been demonstrated that a computer may be programmed to exhibit some intelligent characteristics of a human. Since intelligence is a soft and complex concept, it is rather unrealistic to expect a precise denition for the term. Narrow denitions can result in misleading interpretations, similar
One contribution of 13 to a Theme Information, knowledge and technology. Phil. Trans. R. Soc. Lond. A (2003) 361, 17491780 c 2003 The Royal Society

1749

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1750

C. W. de Silva

to how a proverbial group of blind people dened a elephant. Instead of trying to dene intelligence, the paper will explore characteristics of intelligence and associated techniques of machine implementation. It is the knowledge system of a machine that enables the machine to display intelligent characteristics. Representation and processing of knowledge are central functions of a knowledge system. Conventional machine intelligence has relied heavily on symbolic manipulation for processing descriptive information and knowledge, in realizing some degree of intelligent behaviour. Approximation is a soft concept, and the capability of approximating for the purposes of comparison, pattern recognition, reasoning and decision making is a manifestation of intelligence. Human reasoning is predominantly approximate, qualitative and soft in nature. Humans can eectively handle incomplete, imprecise and fuzzy information in making intelligent decisions (Zadeh 1984). Soft computing is an important branch of computational intelligence where fuzzy logic, probability theory, neural networks, and genetic algorithms are cooperatively used with the objective of mimicking the reasoning and decision-making processes of a human (Filippidis et al . 1999). Accordingly, this is an important branch of study in the area of intelligent machines, and it is the focus of the present paper. Intelligent machines will exhibit an increased presence and signicance in a wide variety of applications. Products with a brain are found, for example, in household appliances, consumer electronics, transportation systems, industrial processes, manufacturing systems and services (de Silva 2003). In particular, for practical, economic and quality reasons, there exists a need to incorporate some degree of intelligence and a high level of autonomy into automated machines. This will require proper integration of such devices as sensors, actuators, signal conditioners, communicators and controllers into a machine, which themselves may have to be intelligent and furthermore, appropriately distributed throughout the machine. The design, development, production and operation of intelligent machines are possible today through ongoing research and development in the eld of intelligent systems and soft computing. The paper will discuss a general structure for an intelligent machine. Sensory perception and control are important functions within this architecture. Some practical issues pertaining to intelligent machines will be examined.

2. Intelligent machines
(a) Characteristics of intelligence A complete and precise denition for intelligence is not available. Any interpretation of intelligence has to be closely related to the characteristics or outward appearance of an intelligent behaviour. It is known that possession of a memory, ability to learn and thereby gain knowledge and expertise, ability to satisfactorily deal with unexpected and unfamiliar situations, and ability to reason, deduce, and infer from incomplete and qualitative information are all intelligent attributes. In particular, pattern recognition and classication play an important role in intelligent processing of information. For example, an intelligent system may be able to recognize and acquire useful information from an object that is aged or distorted, having been previously familiar with the original, undistorted object. Somewhat related is the concept of approximation, which leads one to treat the ability to approximate as
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines

1751

machines

materials

information, knowledge

supervisory control

process
natural intelligence

..

operating/control commands
control actions research, development, innovation, upgrading
artificial control intelligence system

products, services

revenues

sensors artificial

humans

intelligence

assessment

Figure 1. The structure of an intelligent process.

a characteristic of intelligence (de Silva 1995). Approximation and qualitative or approximate reasoning fall within the subject of soft computing. In the context of machine intelligence, the term machine is normally used to denote a computer or a computing machine. In this sense machine intelligence and computational intelligence are synonymous. An intelligent machine, however, takes a broader meaning than an intelligent computer. It may be used to represent any process, plant, system, device or machinery that possesses machine intelligence. Historically machine intelligence and articial intelligence (AI) have also come to mean the same thing. The developments in the eld of soft computing have taken a somewhat dierent path from traditional AI, yet they have contributed to the general goal of realizing intelligent machines, thereby broadening and rationalizing the interpretation of machine intelligence. (b) The structure of an intelligent machine In general terms an intelligent machine may be treated as an intelligent process. The structure of an intelligent process is given in gure 1, where the important components of the system and the ow of signals/information are indicated. Sensing, sensory perception, actuation, control, and knowledge-based decision making are crucial for the proper performance of an intelligent process. In the general structure shown in gure 1, machines, materials, information and knowledge are used to generate products and services according to some specications. Revenue generation will be an economic goal of the process. Quality of the products and services, speed of operation, reliability, environmental considerations, and so on, may be included as well within the overall goals. Assessment of the products and services and also the performance of the process would be crucial here. Since the process models and
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1752

C. W. de Silva

goals may not be mathematically precise, and since there could be unexpected and unknown inputs and disturbances to the process, concepts of articial intelligence and soft computing would be useful in the tasks of modelling, control, assessment, adaptation and modication of the system. No matter what the goals of an intelligent machine are, sensing will play a signicant role in its operation. For example, if a machine possesses human emotions, then one could convincingly classify it as an intelligent machine. But, the mechanism of decision making and control that would generate such characteristics need to have a means of sensing these characteristics based on the machine operation. Both intelligent sensing and intelligent control are important in this respect. In particular, an intelligent sensor may consist of a conventional sensor with further processing of signals and knowledge-based intelligent decision making, as indicated in gure 1. Even the most sophisticated intelligent machines could benet from a human interface, which would provide an interface for natural intelligence. The interaction with human experts can be made both oine and online. System upgrading and innovation may result from research and development, and can be implemented through such communication interfaces. (c) The technology needs Even though a considerable eort has gone into the development of machines that somewhat mimic humans in their actions, the present generation of intelligent machines do not claim to possess all the capabilities of human intelligence, for example, common sense, display of emotions and inventiveness. Signicant advances have been made, however, in machine implementation of characteristics of intelligence such as sensory perception, pattern recognition, knowledge acquisition and learning, inference from incomplete information, inference from qualitative or approximate information, ability to handle unfamiliar situations, adaptability to deal with new yet related situations, and inductive reasoning. Much research and development would be needed in these areas, pertaining to techniques, hardware, and software before a machine could reliably and consistently possess the level of intelligence of say, a dog. For instance, consider a handwriting recognition system, which is a practical example of an intelligent system. The underlying problem cannot be solved through simple template matching, which does not require intelligence. Handwriting of the same person can vary temporally, due to various practical shortcomings such as missing characters, errors, non-repeatability, physiological variations, sensory limitations and noise. It should clear from this observation that a handwriting recognition system has to deal with incomplete information and unfamiliar objects (characters), and should possess capabilities of learning, pattern recognition, and approximate reasoning, which will assist in carrying out intelligent functions of the system. Techniques of soft computing are able to challenge such needs of intelligent machines.

3. Articial intelligence and soft computing


(a) Articial intelligence According to Marvin Minsky of the Massachusetts Institute of Technology (de Silva 1997), articial intelligence is the science of making machines do things that would require intelligence if done by men. In this context it is the outward behaviour
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines

1753

of a machine rather than the physical makeup that is considered in ascertaining whether the machine is intelligent. An analogy may be drawn with the intelligent behaviour of a human whose brain itself is the physical entity that assists in realizing that behaviour. Because it is the thought process that leads to intelligent actions, substantial eort in AI has been directed at the development of articial means of mimicking the human thought process. These endeavours fall within the eld of cognitive science. Conventional AI has relied heavily on symbolic manipulation for the processing of descriptive information and knowledge in realizing some degree of intelligent behaviour. The knowledge itself may be represented in a special high-level language. The decisions that are made through processing of such articial knowledge, perhaps in response to data such as sensory signals, should possess characteristics of intelligent decisions of a human. Knowledge-based systems and related expert systems are an outcome of the eorts made by the AI community in their pursuit of intelligent computers and intelligent machines. In the problem of knowledge-based decision making, sensory information and any other available data on the process are evaluated against a knowledge base concerning the specic application, making use of an inference-making procedure. Typically, this procedure consists of some form of matching of the abstracted data, with the knowledge base (de Silva 1995). In particular, for a knowledge base K and a set of data or information D on the particular process, the procedure of arriving at a decision or inference I may be expressed as (de Silva 1997) I = M [P (D), K], (3.1)

in which the pre-processing operator P () converts the context information on the process into a form that is compatible with K. Knowledge-base matching of the preprocessed information is performed using the matching operation M []. Knowledgebased systems such as rule-based systems and fuzzy decision-making systems in particular, follow this model. (b) Knowledge-based systems The structure of a typical knowledge-based system is shown in gure 2. Knowledge and expertise form the knowledge base of an intelligent system. This may be represented as a set of ifthen rules (productions). New information that is generated or arrives from external sources such as sensors and human interfaces, is stored in the database. These data represent the context of the decision-making process. The knowledge-based system is able to make perceptions (e.g. sensory perception) and new inferences or decisions using its reasoning mechanism (inference engine), by interpreting the meaning and implications of the new information within the capabilities of the existing knowledge base. These inferences may form the outputs of the knowledge-based systems. The associated decision-making task is an intelligent processing activity, which in turn may lead to enhancement, renement and updating of the knowledge base itself. Production systems are rule-based systems, which are appropriate for the representation and processing of knowledge (i.e. knowledge-based decision making) in intelligent machines (de Silva 1995; Filippidis et al . 1999). An expert system is a good example of a production system. Knowledge representation using a set of ifthen rules
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1754

C. W. de Silva

inference engine (reasoning mechanism)

human interface

database (context)

knowledge base (rules or productions)

Figure 2. The structure of a knowledge-based system.

is not an unfamiliar concept. For example, a maintenance or trouble-shooting manual of a machine (e.g. automobile) contains such rules, perhaps in tabular form. Also, a production system may be used as a simple model for human reasoning: sensory data re rules in the short-term memory, which will lead to the ring of more complex rules in the long-term memory. The operation (processing) of a typical rule-based system proceeds as follows: new data are generated (say, from sensors or external commands) and stored in appropriate locations within the database of the system. This is the new context. The inference engine tries to match the new data with the condition part (i.e. the if part or the antecedent) of the rules in the knowledge base. This is called rule searching. If the condition part of a rule matches the data, that rule is red, which generates an action dictated by the action part (i.e. the then part or the consequent) of the rule. In fact, ring of a rule amounts to the generation (inference) of new facts, and this in turn may form a context that will lead to the satisfaction (ring) of other rules. (c) Reasoning and conict resolution Reasoning is the procedure which a knowledge-based system adopts in making an inference. The inference engine is responsible for carrying out reasoning. In a rulebased system, appropriate rules are red to generate the inferences, and this involves some form of matching the rules with data. In a production system, the following two strategies are commonly employed to perform reasoning and make inferences: (i) forward chaining; (ii) backward chaining. Forward chaining is a data-driven search method. Here, the rule base is searched to match an if part of a rule (condition) with known facts or data (context), and if a match is detected, the corresponding rule is red (i.e. the then part or action part of the rule is activated). Obviously, this is a direct and bottom-up strategy. Actions could include creation, deletion and updating of data in the database. One action
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines

1755

can lead to ring of one or more new rules. The inference engine is responsible for sequencing the matching (searching) and action cycles. A production system that uses forward chaining is termed a forward production system (FPS). This type of system is particularly useful in knowledge-based control, for example, in driving an intelligent machine. In backward chaining, which is a top-down search process, a hypothesized conclusion is matched with rules in the knowledge base in order to determine the context (facts) that supports the particular conclusion. If enough facts support a hypothesis, that particular hypothesis is accepted. Backward chaining is useful in situations that demand a logical explanation or justication for each action (for example, in fault diagnosis of an intelligent machine, and in theorem proving). A production system that uses backward chaining is called a backward chaining system (BCS). When the context data are matched with the condition parts of the rules in a rule base, it may be possible that more than one rule is satised. The set of rules that is satised in this manner is termed the conict set. A method of conict resolution has to be invoked to select from the conict set the rule that would be red. Methods of conict resolution include the following: (1) rst match; (2) toughest match; (3) privileged match; (4) most recent match. In the rst method, the very rst rule that is satised during searching will be red. This is a very simple strategy but may not produce the best performance in general. In the second method, the rule containing the most condition elements, within the conict set, will be red. For example, suppose that the conict set has the following two rules. (i) If the temperature is high then increase the coolant ow rate. (ii) If the temperature is high and the coolant ow rate is maximum, then shut down the plant. Here, the toughest match is the second rule. The rules in a rule base may be assigned various weightings and priorities depending on their signicance. The privileged match is the rule with the highest priority, within the conict set. For example, a priority may be assigned in proportion to the toughness of the match. In this case methods 2 and 3 listed above are identical. Alternatively, a priority may be assigned to a rule on the basis of the signicance or consequences of its acts. The most recent match is the rule in the conict set whose condition part satises the most recent entries of data. In this method, a higher priority is given to more recently arrived data in the database. (d ) Approximation and intelligence Approximation is a soft concept and is related to intelligence (Zadeh 1984; Filippidis et al . 1999). The capability of approximation for the purpose of comparison,
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1756

C. W. de Silva
Table 1. Several concepts of approximation and their characteristics concept ambiguity property the condition has a several dierent possibilities, and it is not determined which one is valid the condition is not precisely (clearly) dened the condition may apply to many (nite or innite) situations depending on the specic context condition can assume a state within a clearly dened (crisp) tolerance interval there is a degree of probability associated with occurrence of the condition the membership of the condition is not crisply dened (set boundary of the condition is not crisp) the level of belief on the condition (membership of a crisp or fuzzy set) is through knowledge and evidence the plausibility of non-membership fully complements the belief of membership (dual condition of belief) Bl(x A) + P l(x A) = 1 / example the machine response may or may not satisfy the specication the machine response may have met the specication the machine response is x times the specication

vagueness generality

imprecision

the machine response is within 5% of the specication there is a 90% probability that the machine response meets the specication the machine response is close to the specication

uncertainty

fuzziness

belief (subjective probability)

it is believed at a level of 90% that the machine response meets the specication

plausibility

it is plausible at a level of 95% that the machine response meets the specication

pattern recognition, reasoning and decision making is a manifestation of intelligence (e.g. dealing with incomplete and subjective information, unfamiliar situations, comparison and judgment). There are many concepts of approximation, examples of which include imprecision, uncertainty, fuzziness and belief. These concepts are not identical even though the associated methods of information representation and processing may display analytical similarities. Several concepts of approximation (Klir & Folger 1988) that may be useful in knowledge-based reasoning are summarized in table 1. In particular, uncertainty deals with crisp sets, while belief and plausibility may be dened with respect to sets with either a crisp or non-crisp (fuzzy) boundary. It is possible to incorporate
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines

1757

and employ these various concepts into a knowledge base in a complementary, rather than mutually exclusive, manner. In particular, uncertainty and belief levels may be included as qualiers in a rule, for example (de Silva 1997), (i) if A then B with probability p; (ii) if A then B with belief b. In each case, the antecedent A and the consequent B can be either crisp or noncrisp (fuzzy) quantities. In the fuzzy case the level of fuzziness of a parameter is determined by the degree of membership of that parameter in the associated fuzzy set. Apart from that, a level of certainty p, a truth value m, a level of belief b, etc., may be associated with each rule, so as to qualify the exactness or condence of each rule on the basis of additional statistical information, perception, evidence, and so on. In this manner, the concepts of approximation may be used in a complementary way to more realistically and authentically represent a knowledge base and to make valid inferences using it. It is important to recognize the characteristic features of the concepts of approximation listed in table 1, so that one could avoid using them incorrectly and inappropriately. In table 1 the main characteristic that dierentiates each concept from the others is indicated, and an example illustrating that characteristic is also given. In representing and analysing these concepts, one may treat a condition as membership within a set. The set itself may be either fuzzy or crisp, depending on the concept. In particular, it should be noted that both uncertainty and imprecision deal with crisp sets and fuzziness uses fuzzy sets. Belief and plausibility are applicable to both crisp and fuzzy sets. (e) Soft computing and approximate reasoning Soft computing has eectively complemented conventional AI in the area of machine intelligence. Computing paradigms of fuzzy logic, neural networks and genetic algorithms are the main constituents of soft computing, which can be used in intelligent machines either separately or synergistically. Fuzzy logic is useful in representing human knowledge in a specic domain of application and in reasoning with that knowledge to make useful inferences or actions. For example, fuzzy logic may be employed to represent, as a set of fuzzy rules, the knowledge of a human in operating a machine. This is the process of knowledge representation. Then, a rule of inference in fuzzy logic may be used in conjunction with this fuzzy knowledge base to make decisions on operation of the machine for a given set of machine observations (conditions or context). This task concerns knowledge processing (de Silva 1995). In this sense, fuzzy logic serves to represent and process the knowledge of a human in operating a given machine. Articial neural networks (NNs) are massively connected networks of computational neurons. By adjusting a set of weighting parameters of an NN, it may be trained to approximate an arbitrary nonlinear function to a required degree of accuracy. Biological analogy here is the neuronal architecture of a human brain. Since machine intelligence involves a special class of highly nonlinear decision making, NNs may be appropriately employed there, either separately or in conjunction with other techniques such as fuzzy logic (Jang et al . 1997). Fuzzy-neural techniques
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1758

C. W. de Silva
Table 2. Techniques of computational intelligence technique fuzzy logic neural networks genetic algorithms conventional AI characteristic uses fuzzy rules and approximate reasoning network of massively connected nodes derivative-free optimization symbolic processing of information biological analogy human knowledge neuron structure in brain biological evolution symbolic languages

are applicable in intelligent decision making, in particular when machine learning is involved and parameter changes and unknown disturbances have to be compensated for. Genetic algorithms (GAs) are derivative-free optimization techniques that can evolve through procedures analogous to biological evolution (Filippidis et al . 1999). GAs belong to the area of evolutionary computing. They represent an optimization approach where a search is made to evolve a solution algorithm that will retain the most-t components in a procedure that is analogous to biological evolution through natural selection, crossover and mutation. It follows that GAs are applicable in machine intelligence, particularly when optimization is an objective. To summarize the biological analogies of fuzzy, neural, and genetic approaches: fuzzy techniques attempt to approximate human knowledge and the associated reasoning process; NNs are a simplied representation of the neuron structure of a brain; genetic algorithms follow procedures that are crudely similar to the process of evolution in biological species. Techniques of soft computing are powerful by themselves in achieving the goals of machine intelligence. Furthermore, they have a particular appeal in view of the biological analogies that exist. This is no accident, because in machine intelligence it is the behaviour of human intelligence that would be mimicked. Biological analogies and key characteristics of several techniques of machine intelligence are listed in table 2. Conventional AI, which typically uses symbolic and descriptive representations and procedures for knowledge-based reasoning, is listed as well for completeness. 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 ifthen rules with antecedent and consequent variables that have approximate descriptors. First, the data D are pre-processed according to FD = F P (D), (3.2)

which is a data abstraction procedure. In the situation of fuzzy logic, this corresponds to a fuzzication and establishes the membership functions or membership grades of D. Then with an approximate knowledge base FK , the inference FI is obtained through approximate reasoning, as denoted by F I = FK F D . (3.3)

In the case of fuzzy decision making, what is used is fuzzy-predicate approximate reasoning, which is usually based on the compositional rule of inference (de Silva 1995).
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines

1759

4. Techniques of soft computing


The primary techniques of soft computing fall within the four areas: fuzzy logic, NNs, genetic algorithms (or, evolutionary computing) and probabilistic methods. The mixed or hybrid techniques, which synergistically exploit the advantages of two or more of these areas, are quite eective. Techniques of soft computing are widely used in knowledge representation and decision making associated with intelligent machines. The basics of the four areas of soft computing are given in the next three subsections. (a) Fuzzy logic Fuzzy logic is useful in representing human knowledge in a specic 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 quantier, and weak, which is a fuzzy predicate. They are generally qualitative, descriptive and subjective and may contain some overlapping degree of a neighbouring 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, subjective and approximate situations, which often exist in problems of intelligent machines where techniques of articial intelligence are appropriate. In fuzzy logic, the knowledge base is represented by ifthen rules of fuzzy descriptors (de Silva 1995). 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 represented by a membership function, which is a function that 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 (Dubois & Prade 1980) of the form F z[x A] = A (x) : Re [0, 1], (4.1)

in which each element of A, as denoted by a point x on the real line Re, 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 zero but less than unity, then the membership is not crisp (i.e. it is fuzzy), and the element has some possibility of being within the set and also some 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 associated 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, (i) if A1 and B1 then C1 , (ii) if A2 and B2 then C2 ,
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1760
1 0 x0 1 A2 0 x0 B2 A1 a

C. W. de Silva
B1 y0 C2 C1 ' C1 z ' C2

y0

' ' C' = (C1 C2) z0

Figure 3. An illustration of fuzzy decision making.

is sketched in gure 3, 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 x0 and the actual speed is y0 , then each fuzzy rule will contribute an action as shown by the shaded region of the membership functions for C1 and C2 in gure 3. 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 gure. This is arrived at according to a particular decision-making procedure: the supmin composition, which is commonly used in fuzzy logic (de Silva 1995). If a crisp decision is required, one may use the centroid z0 of the decision membership function C as shown. Here, the fuzzy matching operator F M that corresponds to M in equation (3.1) is in fact the composition operator and may be expressed as I = sup min(K , D ),
X

(4.2)

where K is the multidimensional membership function of the fuzzy rule base, D is the membership function of the fuzzied data, I is the membership function of the fuzzy inference, and x X is the common set of context variables used in knowledge-base matching. Also, the supremum (sup) and minimum (min) operations are given by the usual denitions (de Silva 1995). Often, a crisp value c 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, c=
s

cI (c) dc , (c) dc s I

(4.3)

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
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines


knowledge base R: ELSE [IF Yi THEN Ui]
i

1761

defuzzification U' (u) u'

inference engine (compositional rule of inference) U' (u) = Y' (y) R

fuzzification y' Y' (y)

control input u' (motor currents, voltages, etc.)

intelligent machine

machine response y' (motions, etc.)

Figure 4. Structure of a fuzzy-logic controller for an intelligent machine.

process. These inferences are arrived at by using the process responses as the inputs (context data) to the fuzzy system. The structure of a direct fuzzy controller is shown in gure 4. The control scheme shown here may be used to drive the components of an intelligent machine. The simple example of goal pursuit (vehicle driving) shown in gure 3 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 xed and no learning and self-improvement are involved. Even in the example of gure 2, 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 NNs may be used as means of learning in this context (de Silva 2000). Application areas of fuzzy logic include smart appliances, supervisory control of complex processes, and expert systems.
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1762

C. W. de Silva
input connections synaptic (dendrites) weights w1

neural inputs x1(t)

neuron body (soma)

nonlinear activation function

threshold w0 +1 y(t) to other neurons 1

x2(t)

w2

xn(t)

wn synaptic operation somatic operation (aggregation, thresholding and nonlinear activation)

nodal (axonal) output

Figure 5. The operations at a node of a neural network.

(b) Neural networks Articial NNs are massively connected networks of computational neurons, and represent parallel-distributed processing structures. The inspiration for NNs has come from the biological architecture of neurons in human brain. A key characteristic of NNs is their ability to approximate arbitrary nonlinear functions. Since machine intelligence involves a special class of highly nonlinear decision making, NNs would be eective there. Furthermore, the process of approximation of a nonlinear function (i.e. system identication) by interacting with a system and employing data on its behaviour, may be interpreted as learning. Through the use of NNs, an intelligent machine would be able to learn and perform high-level cognitive tasks (de Silva 2000). For example, an intelligent machine 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 NNs. A NN 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 (Gupta & Rao 1994; Filippidis et al . 1999). These operations are shown in gure 5. The analogy to the operations in a biological neuron is highlighted. Specically, 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 ability to learn by example, approximation of highly nonlinear functions, massive computing power, and memory, may be a root reason for inherent intelligence in a NN. If the weighted sum of the inputs to a node (neuron) exceeds a threshold value w0 , then the neuron is red and an output y(t) is generated according to
n

y(t) =
i=1

wi xi w0 ,

(4.4)

Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines


neural networks

1763

feedforward (static, open-loop) examples: multilayer preceptron radial basis function network supervised learning backpropagation

feedback (dynamic, recurrent) examples: Hopfield network Kohonen self-organizing map unsupervised learning Hebbian learning competitive learning reinforced learning

Figure 6. Classication of NNs.

input layer

y1 x2 y2 x3

inputs

Figure 7. A feedforward NN (multilayer preceptron).

where xi are neuron inputs, wi are the synaptic weights and [] is the activation function. As indicated in gure 6, there are two main classes of NNs known as feedforward networks (or static networks) and feedback networks (or recurrent networks). In a feedforward network, an example of which is a multi-player preceptron, the signal ow from a node to another node takes place in the forward direction only. There are no feedback paths. Figure 7 shows a multi-player preceptron consisting of an input layer, a hidden layer and an output layer. Another example of feedforward network is the radial basis function network. Here there are only three layers. Furthermore, only the hidden layer uses nonlinear activation functions in its nodes. These functions are called radial basis functions, the Gaussian distribution function being a popular example. These functions form the basis for the capability of the NN to approximate any nonlinear function. In a feedforward NN, learning is achieved through example. This is known as supervised learning. Specically, rst a set of inputoutput data of the actual process is determined (e.g. by measurement). The input data are fed into the NN. The network output is compared with the desired output (experimental data) and the synaptic weights of the NNs are adjusted using a gradient (steepest descent) algorithm until the desired output is achieved. In feedback NNs, the outputs of one or more nodes (say, in the output layer) are fed back to one or more nodes in a previous layer (say, the hidden layer or input layer) or even to the same node. The feedback provides the capability of memory to the network. An example is the Hopeld network. It consists of two layers: the
Phil. Trans. R. Soc. Lond. A (2003)

x1

hidden layer

output layer

outputs

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1764

C. W. de Silva

input layer and the Hopeld layer. Each node in the input layer is directly connected to only one node in the Hopeld layer. The outputs of the network are fed back to the input nodes via a time delay (providing memory) and synaptic weights. Nodes in the Hopeld layer have nonlinear activation functions such as sigmoidal functions. Feedback NNs commonly use unsupervised-learning algorithms. In these learning schemes, the synaptic weights are adjusted based on the input values to the network and the reactions of individual neurons, and not by comparing the network output with the desired output data. Unsupervised learning is called self-organization (or open-loop adaptation), because the output characteristics of the network are determined internally and locally by the network itself, without any data on desired outputs. This type of learning is particularly useful in pattern classication and grouping of data. Hebbian learning and competitive learning are examples of unsupervisedlearning algorithms. In the Hebbian-learning algorithm, the weight between a neuron and an input is strengthened (increased) if the neuron is red by the input. In competitive learning, weights are modied to enhance a node (neuron) having the largest output. An example is the Kohonen network, which uses a winner-takes-all approach. A Kohonen network has two layers, the input layer and the output layer (Kohonen layer). In the operation of the network, the node in the Kohonen layer with weights that most closely resemble the current input is assigned an output of 1 (the winner), and the outputs of all the remaining nodes are set to zero. In this manner, the input nodes organize themselves according to the pattern of the input data while the output nodes compete among themselves to be activated. (c) Genetic algorithms GAs are derivative-free optimization techniques, which can evolve through procedures analogous to biological evolution (Anderson 1984; de Silva & Wickramarachchi 1997). GAs belong to the area of evolutionary computing (Davis 1991). They represent an optimization approach where a search is made to evolve a solution algorithm, which will retain the most-t components in a procedure that is analogous to biological evolution through natural selection, crossover and mutation. In the present context of intelligent machines, intellectual tness rather than physical tness is what is important for the evolutionary process. Evolutionary computing can play an important role in the development of an optimal and self-improving intelligent machine. Evolutionary computing has the following characteristics (Filippidis et al . 1999): (i) it is based on multiple searching points or solution candidates (population based search); (ii) it uses evolutionary operations such as crossover and mutation; (iii) it is based on probabilistic operations. The basic operations of a genetic algorithm are indicated in gure 8. The algorithm works with a population of individuals, each representing a possible solution to a given problem. Each individual is assigned a tness score according to how good its solution to the problem is. The highly t (in an intellectual sense) individuals are given opportunities to reproduce by crossbreeding with other individuals in the population. This produces new individuals as ospring, who share some features
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines


initialization of individuals

1765

evaluation

selection of parents

crossover

mutation

Figure 8. The key operations of a genetic algorithm.

taken from each parent. The least-t members of the population are less likely to get selected for reproduction and will eventually die out. An entirely new population of possible solutions is produced in this manner, by mating the best individuals (i.e. individuals with best solutions) from the current generation. The new generation will contain a higher proportion of the characteristics possessed by the t members of the previous generation. In this way, over many generations, desirable characteristics are spread throughout the population, while being mixed and exchanged with other desirable characteristics, in the process. By favouring the mating of the individuals who are more t (i.e. who can provide better solutions), the most promising areas of the search space would be exploited. A GA determines the next set of searching points using the tness values of the current searching points, which are widely distributed throughout the searching space. It uses the mutation operation to escape from a local minimum. Two important activities of a GA are selection and reproduction. Selection is the operation which will choose parent solutions. New solution vectors in the next generation are calculated from them. Since it is expected that better parents generate better ospring, parent solution vectors that possess higher tness values will have a higher probability of selection. There are several methods of selection. In the method of roulette-wheel selection (Davis 1991), the probability of winning is proportional to the areal rate of a chosen number on a roulette wheel. In this manner, the selection procedure assigns a selection probability to individuals in proportion to their tness values. In the elitist strategy, the best parents are copied into the next generation. This strategy prevents the best tness value of the ospring generation from becoming worse than that in the present generation. During the reproductive phase of a GA, individuals are selected from the population and recombined, producing ospring, who in turn will make up the next generation. Parents are selected randomly from the population, using a scheme that favours the individuals who are more t. After two parents are selected, their chromosomes are recombined using the mechanism of crossover and mutation. Crossover
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1766

C. W. de Silva

takes two individuals and cuts their chromosome strings at some randomly chosen position to produce two head segments and two tail segments. The tail segments are then swapped over to produce two new full-length chromosomes. Each of the two ospring will inherit some genes from each parent. This is known as a single-point crossover. Crossover is not usually applied to all pairs of individuals that are chosen for mating. A random choice is made, where the likelihood of the crossover being applied is typically between 0.6 and 1.0. Mutation is applied individually to each child, after crossover. The mutation operation alters each gene at random. The associated probability of change is quite low. Mutation provides a small degree of random search and helps ensure that every point in the search space has some probability of being examined. (d ) Probabilistic reasoning Uncertainty and the associated concept of probability are linked to approximation. One can justify that probabilistic reasoning should be treated within the area of soft computing. Probabilistic approximate reasoning may be viewed in an analogous manner to fuzzy-logic reasoning, considering uncertainty in place of fuzziness as the concept of approximation that is applicable. Probability distribution/density functions are employed in place of membership functions. The formula of knowledgebased decision making that corresponds to equation (3.1), in this case, depends on the specic type of probabilistic reasoning that is employed. The Bayesian approach (Anderson 1984; Pao 1989) is commonly used. This may be interpreted as a classication problem. Suppose that an observation d is made, and it may belong to one of several classes ci . The Bayes relation states (de Silva 1995) max P (ci | d) =
i

P (d | ci ) P (ci ) , P (d)

(4.5)

where: P (ci | d) is the probability that, given the observation is d, it belongs to class ci (the a posteriori conditional probability); P (d | ci ) is the probability that, given that the observation belongs to the class ci , the observation is d (the class conditional probability); P (ci ) is the probability that a particular observation belongs to class ci , without knowing the observation itself (the a priori probability); and P (d) is the probability that the observation is d without any knowledge of the class. In the Bayes decision-making approach, for a given observation (datum) d, a posteriori probabilities P (ci | d) are computed for all possible classes (i = 1, 2, . . . , n), using equation (4.5). The class that corresponds to the largest of these a posteriori probability values is chosen as the class of d, thereby solving the classication problem. The remaining n 1 a posteriori probabilities represent the error in this decision. Note the analogy between equations (4.5) and (3.1). Specically, P (d) represents the pre-processed probabilistic data that correspond to the observation d. The knowledge base itself constitutes the two sets of probabilities: (i) P (d | ci ) of occurrence of data d if the class (decision) is ci , i = 1, 2, . . . , n; (ii) P (ci ) of class (decision) ci , i = 1, 2, . . . , n, without any knowledge of the observation (data) itself.
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines


Table 3. An application-oriented comparison of fuzziness and uncertainty fuzziness advantages incomplete information can be handled particularly useful in representing and processing human-oriented knowledge approximate reasoning is possible, with qualitative and linguistic knowledge it is a technique of soft computing uncertainty useful in situations having random inuences with known probability distributions

1767

governs many practical situations

mathematical procedures are well established system parameters can be determined using crisp experiments not related to fuzzy sets may fail under incomplete information results are directly aected by the type and accuracy of the probability distributions

disadvantages

may introduce a degree of inaccuracy needs prior knowledge and experience of the problem in generating the knowledge base can be slow

The knowledge-base matching is carried out, in this case, by computing the expression on the right-hand side of (4.5) for all possible i and then picking out the maximum value. Application areas of probabilistic decision making include forecasting, signal analysis and ltering, and parameter estimation and system identication. It is important to compare the concepts of uncertainty and fuzziness. Uncertainty is statistical inexactness due to random events. Fuzziness arises when the decision of whether a particular object belongs to a given set is a matter of perception, which can be subjective. Probabilistic and statistical techniques may be employed in conjunction with fuzzy logic in a complementary manner. Conceptual dierences remain despite the analytical similarities of the two methods. The two concepts are compared in table 3 with respect to their advantages and disadvantages in practical applications. Formulae that correspond to equation (3.1) may be identied for knowledge-based decision making involving other concepts of approximation (e.g. belief, plausibility, truth value) as well. For example, in the case of belief, the knowledge base may constitute a set of belief values for a set of rules. Then, knowing the belief value of an observation, the decision-making problem will become a matter of picking the segment of the rule base that matches the data and also has the highest belief. More often, however, such concepts of approximation are used as modiers within a knowledge base involving a dierent concept of approximation (e.g. fuzzy or probabilistic) rather than stand-alone tools of decision making, as alluded to previously.
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1768

C. W. de Silva
intelligent machine communication interface

machine intelligence

sensory perception

controllers

sensors

actuators

machine/process components

external I/O devices machine environment


Figure 9. The structure of an intelligent machine.

5. Practical issues of intelligent machines


(a) System components and architecture In broad terms, an intelligent machine may be viewed to consist of a knowledge system and a structural system. The knowledge system eects and manages intelligent behaviour of the machine, loosely analogous to the brain, and consists of various knowledge sources and reasoning strategies. As much as neurons themselves in a brain are not intelligent but certain behaviours that are eected by those neurons are, the physical elements of a machine are not intelligent but the machine can be programmed to behave in an intelligent manner. The structural system consists of physical hardware and devices that are necessary to perform the machine objectives yet do not necessarily need a knowledge system for their individual functions. Sensors, actuators, controllers (non-intelligent), communication interfaces, mechanical devices and other physical components fall into this category, and they will work cooperatively in generating an intelligent behaviour by the machine. Sensing with an understanding or feeling of what is sensed is known as sensory perception, and this is very important for intelligent behaviour. Humans use vision, smell, hearing and touch (tactile sensing) in the context of their intelligent behaviour. Intelligent machines too should possess some degree of sensory perception. The mind of an intelligent machine is represented by machine intelligence. For proper functioning of an intelligent machine it should have eective communication links between various
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines


information, knowledge, expertise goals, external commands

1769

materials

intelligent supervisory control system top-level feedback database monitoring/control knowledge base

task information

intelligent preprocessor level task group controllers

intermediate-level feedback sensory preprocessing ing context generation abstraction

information preprocessors level low-level sensory feedback sensor 1 sensor 2 sensor n parameter updating, tuning, reference commands coordinator controller controller controller 1 1 n

component level
Figure 10. A hierarchical control/communications structure for an intelligent machine.

components, and an interface to the external world. By taking these various requirements into consideration, a general-purpose structure of an intelligent machine is given in gure 9. The broad division of the structure of an intelligent machine, as mentioned above, is primarily functional rather than physical. In particular, the knowledge system may be distributed throughout the machine, and individual components by themselves may be interpreted as being intelligent as well (for example, intelligent sensors, intelligent controllers, intelligent multi-agent systems, and so on). It needs to be emphasized that an actual implementation of an intelligent system will be domain specic, and much more detail than that alluded to in gure 9 may have to be incorporated into the system structure. Even from the viewpoint of system eciency, domain-specic and special purpose implementations are preferred over general-purpose systems. A hierarchical structure can facilitate ecient control and communication in an intelligent machine. A three-level hierarchy is shown in gure 10. The bottom level consists of machine components with component-level sensing and control. Machine actuation and direct feedback control are carried out at this level. The intermediate level uses intelligent pre-processors for abstraction of the information generated by the component-level sensors. The sensors and their intelligent pre-processors together perform tasks of intelligent sensing. State of performance of the machine components may be evaluated by this means, and component tuning and component-group conPhil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1770

C. W. de Silva

trol may be carried out as a result. The top level of the hierarchy performs tasklevel activities including planning, scheduling, machine performance monitoring and supervisory control. Resources such as materials and expertise may be provided at this level and a humanmachine interface would be available. Knowledge-based decision making is carried out at both intermediate and top levels, and techniques of soft computing would be applicable in these knowledge-based activities. The resolution of the information that is involved will generally decrease as the hierarchical level increases, while the level of intelligence that would be needed in decision making will increase. Within the overall system, the communication protocol provides a standard interface between various components such as sensors, actuators, signal conditioners and controllers, and also with the machine environment. The protocol will not only allow highly exible implementations, but also enable the system to use distributed intelligence to perform pre-processing and information understanding. The communication protocol should be based on an application-level standard. In essence, it should outline what components can communicate with each other and with the environment, without dening the physical data link and network levels. The communication protocol should allow for dierent component types and dierent data abstractions to be interchanged within the same framework. It should also allow for information from geographically removed locations to be communicated to the control and communication system of the machine. Intelligent machines heavily rely on intelligent control in their operation. The term intelligent control may be loosely used to denote a control technique that can be carried out using the intelligence of a human who is knowledgeable in the particular domain of control (de Silva 1995). In this denition, constraints pertaining to limitations of sensory and actuation capabilities and information processing speeds of humans are not considered. It follows that if a human in the control loop can properly control a machine, then that machine would be a good candidate for intelligent control. The need for intelligent control is evident from the emergence of engineering systems exhibiting an increasingly greater degree of complexity and sophistication. When the process is complex and incompletely known, yet some human expertise or experience is available on a practical scheme to control the process, the techniques of intelligent control may be particularly appealing (de Silva 1995). The eld of intelligent control has grown in recent years at an impressive rate. This is due primarily to the proven capabilities of the algorithms and techniques, particularly with soft computing, developed in the eld to deal with complex systems that operate in illdened and dynamically varying environments. Techniques of intelligent control are useful in autonomous control and supervision of complex machinery and processes. Intelligent machines are called upon to perform complex tasks with high accuracy, under ill-dened conditions. Conventional control techniques may not be quite eective under these conditions, whereas intelligent control has a tremendous potential (de Silva 1995; Filippidis et al . 1999). Unlike conventional control, intelligent-control techniques possess capabilities for eectively dealing with incomplete information concerning the machine and its environment, and unexpected or unfamiliar conditions. Information abstraction and knowledge-based decision making, which incorporates abstracted information, are considered important in intelligent control. Advances in digital electronics, technologies of semiconductor processing, and micro-electromechanical systems have set the stage for the integration of intelliPhil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines

1771

expert knowledge base

user interface

users experts developers

database

inference engine
Figure 11. A typical expert system.

gence into sensors, actuators and controllers (de Silva 2000). The physical segregation between these devices may well be lost in due time as it becomes possible to perform diversied functionalities such as sensing, conditioning (ltering, amplication, processing, modication, etc.), transmission of signals, and intelligent control all within the same physical device. Due to the absence of adequate analytical models, sensing assumes an increased importance in the operation and control of complex systems such as intelligent machines. The trend in the applications of intelligent machines has been towards mechatronic-type technology where intelligence is embedded at the component level, particularly in sensors and actuators (Jain & de Silva 1999), and distributed throughout the system. (b) Expert systems for intelligent machines An expert system is a knowledge-based system, which may form the brain of an intelligent machine. It contains the traditional constituents of an intelligent decisionmaking system such as a knowledge base, a database, an inference engine and a humanmachine interface, as indicated in gure 11. The system interface is used for both development, particularly knowledge acquisition, and use of the expert system. The knowledge base of an expert system embodies human knowledge and understanding, somewhat imitating a human expert in the particular domain of expertise (e.g. specialist, engineer, scientist, nancial consultant). The inference engine is a driver program that traverses the knowledge base in response to observations and other inputs from the external world (and possibly previous inferences and results from the expert system itself), and will identify one or more possible outcomes or conclusions (Forsyth 1984; de Silva 1995; Filippidis et al . 1999). This task of making inferences for arriving at solutions will involve processing of knowledge. It follows that representation and processing of knowledge are central to the functioning of an expert system (de Silva 1995). Techniques of soft computing are directly applicable here. The data structure selected for the specic form of knowledge representation determines the nature of the program that serves as an inference engine. Monitors and keyboards, sensors and transducers, and even output from other computer programs including expert systems, usually provide communication links between an expert system and the external world. An expert system is intended to take the place of a human expert in an advisory capacity. It receives a problem description and provides advice through knowledge-based reasoning. An expert system should be able to explain its decisions; that is, it should possess an explanation facility.
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1772

C. W. de Silva

The development of an expert system requires the combined eort of domain experts, who are human experts in the eld of interest, and knowledge engineers, who acquire and represent/program the knowledge in a suitable form. This process will require a knowledge-acquisition facility. Other engineers, programmers, etc., are needed for the development of the system interface, integration, and so on. The experts will be involved in dening the domain of the problem to be solved and in providing the necessary expertise and knowledge for the knowledge base, which will lead to the solution of a class of problems in that domain. The knowledge engineers are involved in acquiring and representing the available knowledge and in the overall process of programming and debugging the system. They organize the acquired knowledge into the form required by the particular expert system tool (Hart 1986). Forms of knowledge representation may include logic and fuzzy logic, production systems (rules), semantic scripts, semantic primitives, frames and symbolic representations (de Silva 1995). Hybrid soft-computing techniques such as neuro-fuzzyevolutionary approaches are particularly applicable (Jang et al . 1997; Vonk et al . 1997). Both experts and knowledge engineers will be involved in testing and evaluating the system. Typically, what is commercially available for developing expert systems is an expert system shell. It will consist of the required software programs, but will not contain a knowledge base. It is the responsibility of the user, then, to organize the creation of the required knowledge base, which should satisfy the requirements of the system with respect to the form of knowledge representation that is used and the structure of the knowledge base. While the quality and performance of an expert system is highly dependent on the knowledge base that is contained within it, this knowledge alone does not constitute a powerful expert system. A poorly chosen formalism may limit the extent and nature of the knowledge; accordingly, the structure of knowledge representation plays an important role. The formalism that is employed should closely resemble how an expert uses knowledge and performs reasoning. The skill of both the domain expert and the knowledge engineer will be crucial here. The techniques of representation and processing will be dependent on the type of knowledge. The reasoning scheme that is employed will directly aect the search speed and how conicts are resolved. In particular, retrieval and processing of information will not be fast or ecient without a good formalism for representing knowledge and a suitable inference-making scheme to process it. In real-time expert systems, which are particularly applicable in intelligent machines, speed of decision making is a very crucial factor, and it depends on hardware/software characteristics, the inference-making scheme and the particular technique of knowledge representation. Knowledge engineering includes the following tasks. (i) Knowledge that is pertinent is ascertained from dierent sources. (ii) The knowledge is interpreted and integrated (from various sources and in different forms). (iii) The knowledge is represented within the knowledge-based system. (A suitable structure, language, etc., has to be chosen. Here, one should consider aspects of incomplete knowledge, presence of analytical models, accessibility of system variables for measurement, and availability of past experience.)
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines

1773

(iv) Knowledge is processed in order for inferences to be made. (This operation has to be compatible with the knowledge-base, objectives of the system, etc. The speed of decision making is crucial, particularly in real-time applications of intelligent machines. The form of the inferences should be consistent with the machine objectives.) (v) The machine needs and constraints (accuracy, implications of incomplete knowledge and the cost of an incorrect inference) are taken into consideration. (vi) Economic considerations (development cost and cost to the user in comparison with the benets) are made. Performance goals of the next-generation expert systems for intelligent machines are the automatic generation of code and knowledge representation, automatic learning and system enhancement from experience, voice recognition, communication through a natural language, automated translation of documents into knowledge bases, cooperative problem-solving architectures, generic problem-solving shells and multi-level reasoning systems. (c) Development steps of an intelligent machine Development of an intelligent machine will require a parallel development of the knowledge system and the structural system of the machine. It may be the case that the structural system (a non-intelligent machine) is already available. Still, modications might be necessary in the structural system in order to accommodate the needs of the intelligent system, for example, new sensors, transducers and communication links for information acquisition. In any event, the development of an intelligent machine is typically a multidisciplinary task often involving the collaboration of a group of professionals such as engineers (electrical, mechanical, etc.), domain experts, computer scientists, programmers, software engineers and technicians. The success of a project of this nature will depend on proper planning of the necessary activities. The tasks involved will be domain specic and depend on many factors, particularly the objectives and specications of the machine itself. The main steps would be (1) conceptual development; (2) system design; (3) prototyping; (4) testing and renement; (5) technology transfer and commercialization. It should be noted that generally these are not sequential and independent activities; furthermore, several iterations of multiple steps may be required before satisfactory completion of any single step. Conceptual development will usually evolve from a specic application need. A general concept needs to be expanded into an implementation model of some detail. A preliminary study of feasibility, costs and benets should be made at this stage. The interdisciplinary groups that would form the project team should be actively
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1774

C. W. de Silva

consulted and their input should be incorporated into the process of concept development. Major obstacles and criticism that may arise from both prospective developers and users of the technology should be seriously addressed in this stage. The prospects of abandoning the project altogether due to valid reasons such as infeasibility, time constraints and costbenet factors should not be overlooked. Once a satisfactory conceptual model has been developed, and the system goals are found to be realistic and feasible, the next logical step of development would be the system design. Here the conceptual model is rened and sucient practical details for implementation of the machine are identied. The structural design may follow traditional practices. Commercially available components and tools should be identied. In the context of an intelligent machine, careful attention needs to be given to the design of the knowledge system and the humanmachine interface. System architecture, types of knowledge that are required, appropriate techniques of knowledge representation, reasoning strategies and related tools of knowledge engineering should be identied at this stage. Considerations in the context of the user interface would include: graphic displays; interactive use; input types including visual, vocal and other sensory inputs; voice recognition; and natural language processing. These considerations will be application specic to a large degree and will depend on what technologies are available and feasible. A detailed design of the overall system should be nalized after obtaining input from the entire project team, and the costbenet analysis should be rened. At this stage the nancial sponsors and managers of the project as well as the developers and users of the technology should be convinced of the project outcomes. Prototype development may be carried out in two stages. First a research prototype may be developed in laboratory, for the proof of the concept. For this prototype it is not necessary to adhere strictly to industry standards and specications. Through the experience gained in this manner a practical prototype should be developed next, in close collaboration with industrial users. Actual operating conditions and performance specications should be carefully taken into account for this prototype. Standard components and tools should be used whenever possible. Testing of the practical prototype should be done under normal operating conditions and preferably at an actual industrial site. During this exercise, prospective operators and users of the machine should be involved cooperatively with the project team. This should be used as a good opportunity to educate, train, and generally prepare the users and operators for the new technology. Unnecessary fears and prejudices can kill a practical implementation of advanced technology. Familiarization with the technology is the most eective way of overcoming such diculties. The shortcomings of the machine should be identied through thorough testing and performance evaluation, where all interested parties should be involved. The machine should be rened (and possibly redesigned) to overcome any shortcomings. Once the machine is tested, is rened and satises the required performance specications, the processes of technology transfer to industry and commercialization may begin. An approved business plan, necessary infrastructure and funds should be in place for commercial development and marketing. According to the existing practice, engineers, scientists and technicians provide minimal input into these activities. This situation is not desirable and needs to be greatly improved. The lawyers, nanciers and business managers should work closely with the technical team during the processes of production planning and commercialization. Typically the industrial
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines

1775

sponsors of the project will have the right of rst refusal of the developed technology. The process of technology transfer would normally begin during the stage of prototype testing and continue through commercial development and marketing. A suitable plan and infrastructure for product maintenance and upgrading are musts for sustaining any commercial product. (d ) Practical example It will be necessary for intelligent machines to perform their tasks with minimal intervention from humans, to maintain consistency and repeatability of operation, and to cope with disturbances and unexpected variations in the machine, its operating environment and performance objectives. In essence, these machines should be autonomous and should have the capability to accommodate rapid reconguration and adaptation. For example, a production machine should be able to cope quickly with variations ranging from design changes for an existing product to the introduction of an entirely new product line. The required exibility and autonomous operation translate into a need for a higher degree of intelligence in the supporting devices. This will require proper integration of such devices as sensors, actuators and controllers, which themselves may have to be intelligent and, furthermore, appropriately distributed throughout the system. Design, development, production and operation of intelligent machines, which integrate technologies of sensing, actuation and intelligent control, are possible today through ongoing research and development in the eld of intelligent systems and control. Several such projects have been undertaken in the Industrial Automation Laboratory (de Silva 1992) at the University of British Columbia. Smart machines will exhibit an increased presence and signicance in a wide variety of applications. The sh-processing industry has a signicant potential for using intelligent machines, incorporating advanced sensor technology and intelligent control. Tasks involved may include handling, cleaning, cutting, inspection, repair and packaging. In industrial plants many of these tasks are still not automated and use human labour. In particular, the machines used for cutting and canning of sh are rather outdated. This has made the maintenance and repair of these machines quite dicult and costly and the operations somewhat slow and inecient. In view of the present restrictions in shery, competition for harvest and dwindling stocks, optimal recovery during processing has become an important issue. Furthermore, as the product cost increases, the consumer tends to demand a better-quality product. Advanced sensing and control play a crucial role in realizing the objectives of improved accuracy and product quality in sh processing. The Industrial Automation Laboratory has developed a machine prototype for the automated cutting of sh (de Silva 1992; de Silva & Wickramarachchi 1997). This machine, shown in gure 12, consists of the following primary components: (i) an intermittent-motion conveyor system to move the sh through the cutting zone; (ii) a guillotine-type cutting blade that moves in the vertical direction, which is operated by a pneumatic actuator; (iii) a horizontal XY table, which carries the cutting-blade assembly and driven by means of two hydraulic actuators;
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1776

C. W. de Silva

Figure 12. The prototype sh-cutting machine in the Industrial Automation Laboratory.

secondary pneumatic primary (high-level) actuator (low-level) CCD camera CCD camera

lighting system

pneumatic actuators

conveyor motion

two-axis table y x cutter blade chopped fish head fish

hydraulic actuator

Figure 13. Components of the sh-cutting machine.

(iv) a primary (low-level) charge-coupled device (CCD) camera, which captures the image of each sh as it enters the cutting zone, in order to determine the cutting position; (v) a secondary (high-level) CCD camera, which is used to determine the cutting quality. The components of the machine are sketched in gure 13. The conveying mechanism has several parallel arms that are equally spaced along the belt. The sh are pushed forward intermittently by means of these arms. There is also a matrix of retaining pins, which point vertically upwards. These pins can fold in one direction only, thereby restraining any backward motion of the sh. The conveyor pushes a sh forward every 1.24 s, which corresponds to the period of the cyclic motion of the mechanism. Accordingly, the rate of processing is ca. 48 sh min1 . During the rst half-period, the conveyor pushes the sh forward and in the next half-period, while the sh are stationary, the imaging of one sh and the cutting of the previous sh are carried out. Also during this half-period, the conveying arms move backward in order to get ready to push a sh forward in the next cycle. There is an optimum position at
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines

1777

which the blade should be placed with respect to a sh so that the meat wastage is minimum. This optimum position is determined by using a computer-vision system. An image of the sh is taken by the primary CCD camera while it is stationary, and the corresponding digital information is acquired by a frame-grabber board of the vision computer. Image-processing routines automatically determine the gill of the sh and accordingly compute the optimum position of the cutter. This position is used as the reference input (set point) for the hydraulic controller that moves the cutting-blade assembly. After the cutter assembly is moved to the desired position, the pneumatic actuator is activated, which releases the cutter blade vertically. The operations of the system are synchronized such that, by the time a sh arrives at the cutting zone, the blade has already been positioned at the desired position. The period of the cyclic motion of the conveyor is 1.24 s. The image capture and processing of a sh and the cutting of the previous sh are carried out during the return half cycle of 620 ms of the conveyor, when the sh are stationary. The desired position for the cutting-blade assembly has to be determined after the image processing, but the positioning command should not reach the actuators before the previous sh is cut. The positioning needs to be completed during the forward half cycle of 620 ms. This means that the hydraulic positioning system has to reach the steady state at the end of the forward half cycle (otherwise, the blade would be released while the cutting-blade unit is still moving, but the sh would be stationary). This may lead to such problems as poor-quality cuts or even complete entanglement of a sh with the cutter. With the available hardware system, the time required for image processing is 170 ms, which is well within the available time of 620 ms for image capture, processing and generation of the set point for the cutter position. Note that the cutter cannot be positioned for the next sh before the present sh is cut. The cutting time for the pneumatic actuator is limited to less than 240 ms, during which imaging and set-point computation for the next sh should be completed as well. Then, a time period of ca. 1 s would be available for positioning the cutter. Accordingly, the following specications are used for the positioning controller: (i) time to reach the desired position in steady state is a maximum of 1 s; (ii) the allowed oset for the cutter position (cutting accuracy) is 5 mm. The machine operates under the inuence of an intelligent supervisory control system, which has a hierarchical structure of the form given in gure 10. Human knowledge and expertise, acquired by experienced operators of the sh-processing industry, are implemented throughout this system, in a distributed manner. In particular, the cutter-positioning system is monitored for its stability, accuracy and speed, and appropriate corrective actions are taken using a fuzzy knowledge base and a decision-making module. The corrective actions are determined by fuzzy analysis of a step response. For example, consider the step response shown in gure 14. The solid line gives the actual response of the cutter and the broken line gives the desired response based on a specied reference model. The response is separated into several zones, and the conditions of error and change in error are identied as given in table 4. Based on the error states, it is easy to determine the necessary corrective actions, in a qualitative (fuzzy) manner. For example, possible corrective actions in terms of the reference signal are given in table 5. These fuzzy rules are translated into tuning actions of the position controller. The tuning knowledge base
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1778
response

C. W. de Silva
command input Z7 Z5 Z3 Z2 Z1 Z4 Z6 Z8 ys ym

time, t
Figure 14. Cutter response subjected to intelligent tuning.

8000

6000 position (counts)

4000

2000

0 2000

0.5 time (s)

1.0

1.5

Figure 15. A typical response of the sh cutter under intelligent tuning.

can be learned and evolved in this manner. The performance of a cutter with a controller that incorporates a tuning scheme that is based on soft computing of this type (Tang et al . 2001) is shown in gure 15. The solid line gives the actual response of the cutter and the broken line gives the desired response based on a specied reference model. It can be seen that the intelligent tuner has very eectively improved the cutter response in this example.

6. Conclusion
This paper examined the concepts of intelligence and approximation as applied to intelligent machines, and explored several important characteristics and capabilities of machines that exhibit intelligent behaviour. Soft computing is an important branch of computational intelligence, where fuzzy logic, probability theory, NNs and genetic
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

The role of soft computing in intelligent machines


Table 4. Zone polarities of the tracking response change in error error negative near zero positive negative Z1 Z8 Z7 near zero Z2 goal Z6 positive Z3 Z4 Z5

1779

Table 5. Appropriate corrective action in each response zone reference zone Z1 Z2 Z3 Z4 Z5 Z6 Z7 Z8 corrective action reduce reference signal by a large value reduce reference signal moderately reduce reference signal slightly increase reference signal slightly increase reference signal moderately increase reference signal slightly no change in reference signal reduce control reference slightly

algorithms are synergistically used to mimic the reasoning and decision making of a human. The paper introduced soft computing and related approaches, which are useful in the development of an intelligent machine. A general structure was presented for an intelligent machine, giving the primary components such as sensors, actuators, controllers, and the communication backbone, and their interaction. The main steps in the development of an intelligent machine for practical use were outlined. An industrial machine, which employs the concepts of soft computing in its operation was presented, and one aspect of intelligent tuning, which has been incorporated into the machine was illustrated.
This work has been funded by the Natural Sciences and Engineering Research Council (NSERC) of Canada.

References
Anderson, T. W. 1984 An introduction to multivariate statistical analysis. Wiley. Davis, L. 1991 Handbook on genetic algorithms. New York: Van Nostrand-Rienhold. de Silva, C. W. 1992 Research laboratory for sh processing automation. Robot. Comput. Integr. Manuf. 9, 4960. de Silva, C. W. 1995 Intelligent control: fuzzy logic applications. Boca Raton, FL: CRC Press. de Silva, C. W. 1997 Intelligent control of robotic systems with application in industrial processes. Robot. Auton. Syst. 21, 221237. de Silva, C. W. (ed.) 2000 Intelligent machines: myths and realities. Boca Raton, FL: CRC Press. de Silva, C. W. 2003 Mechatronics: an integrated approach. Boca Raton, FL: CRC Press.
Phil. Trans. R. Soc. Lond. A (2003)

Downloaded from rsta.royalsocietypublishing.org on February 16, 2012

1780

C. W. de Silva

de Silva, C. W. & Wickramarachchi, N. 1997 An innovative machine for automated cutting of sh. IEEE ASME Trans. Mechatron. 2, 8698. Dubois, D. & Prade, H. 1980 Fuzzy sets and systems: theory and applications. Academic. Filippidis, A., Jain, L. C. & de Silva, C. W. 1999 Intelligent control techniques. In Intelligent adaptive control (ed. L. C. Jain & C. W. de Silva). Boca Raton, FL: CRC Press. Forsyth, R. (ed.) 1984 Expert systems. New York: Chapman & Hall. Gupta, M. M. & Rao, H. 1994 Neural control theory and applications. Piscataway, NJ: IEEE Press. Hart, A. 1986 Knowledge acquisition for expert systems. McGraw-Hill. Jain, L. C. & de Silva, C. W. (ed.) 1999 Intelligent adaptive control: industrial applications. Boca Raton, FL: CRC Press. Jang, J. S. R., Sun, C. T. S. & Mizutani, E. 1997 Neuro-fuzzy and soft computing. Upper Saddle River, NJ: Prentice Hall. Klir, G. J. & Folger, T. A. 1988 Fuzzy sets, uncertainty, and information. Englewood Clis, NJ: Prentice Hall. Pao, Y. H. 1989 Adaptive pattern recognition and neural networks. Reading, MA: AddisonWesley. Tang, P. L., Poo, A. N. & de Silva, C. W. 2001 Knowledge-based extension of model-referenced adaptive control with application to an industrial process. J. Intell. Fuzzy Syst. 10, 159183. Vonk, E., Jain, L. C. & Johnson, R. P. 1997 Automatic generation of neural network architecture using evolutionary computing. World Scientic. Zadeh, L. A. 1984 Making computers think like people. IEEE Spectrum 21, 2632.

Phil. Trans. R. Soc. Lond. A (2003)

You might also like