What is Soft Computing ? (adapted from L. A. Zadeh) Lecture 1 What is soft computing Techniques used in soft computing • Soft computing differs from conventional (hard) computing in that, unlike hard computing, it is tolerant of imprecision, uncertainty, partial truth, and approximation. In effect, the role model for soft computing is the human mind. 1 2 What is Hard Computing? • Hard computing, i. e. , conventional computing, requires a precisely stated analytical model and often a lot of computation time. • Many analytical models are valid for ideal cases. • Real world problems exist in a non-ideal environment. 3 What is Soft Computing? Continued) • The principal constituents, i. e. , tools, techniques, of Soft Computing (SC) are – Fuzzy Logic (FL), Neural Networks (NN), Support Vector Machines (SVM), Evolutionary Computation (EC), and – Machine Learning (ML) and Probabilistic Reasoning (PR) 4 Premises of Soft Computing • The real world problems are pervasively imprecise and uncertain • Precision and certainty carry a cost Guiding Principles of Soft Computing • The guiding principle of soft computing is: – Exploit the tolerance for imprecision, uncertainty, partial truth, and approximation to achieve tractability, robustness and low solution cost. 6 Hard Computing • Premises and guiding principles of Hard Computing are – Precision, Certainty, and rigor. Implications of Soft Computing • Soft computing employs NN, SVM, FL etc, in a complementary rather than a competitive way. • One example of a particularly effective combination is what has come to be known as “neurofuzzy systems. ” • Such systems are becoming increasingly visible as consumer products ranging from air conditioners and washing machines to photocopiers, camcorders and many industrial applications. 7 8 •
Many contemporary problems do not lend themselves to precise solutions such as – – Recognition problems (handwriting, speech, objects, images Mobile robot coordination, forecasting, combinatorial problems etc. Unique Property of Soft computing • Learning from experimental data • Soft computing techniques derive their power of generalization from approximating or interpolating to produce outputs from previously unseen inputs by using outputs from previous learned inputs • Generalization is usually done in a highdimensional space. Current Applications using Soft Computing • Application of soft computing to handwriting recognition • Application of soft computing to automotive systems and manufacturing • Application of soft computing to image processing and data compression • Application of soft computing to architecture • Application of soft computing to decision-support systems • Application of soft computing to power systems • Neurofuzzy systems • Fuzzy logic control 10 Future of Soft Computing (adapted from L. A. Zadeh) Soft computing is likely to play an especially important role in science and engineering, but eventually its influence may extend much farther. • Soft computing represents a significant paradigm shift in the aims of computing – a shift which reflects the fact that the human mind, unlike present day computers, possesses a remarkable ability to store and process information which is pervasively imprecise, uncertain and lacking in categoricity. 11 Overview of Techniques in Soft Computing • • • • Neural networks Support Vector Machines Fuzzy Logic Genetic Algorithms in Evolutionary Computation 2 Neural Networks Overview • Neural Network Definition • Some Examples of Neural Network Algorithms and Architectures • Successful Applications Definitions of Neural Networks • According to the DARPA Neural Network Study (1988, AFCEA International Press, p. 60): • … a neural network is a system composed of many simple processing elements operating in parallel whose function is determined by network structure, connection strengths, and the processing performed at computing elements or nodes. 13 14 Definitions of Neural Networks • According to Haykin (1994), p. : • A neural network is a massively parallel distributed processor that has a natural propensity for storing experiential knowledge and making it available for use. It resembles the brain in two respects: – Knowledge is acquired by the network through a learning process. – Interneuron connection strengths known as synaptic weights are used to store the knowledge 15 Definitions of Neural Networks • According to Nigrin (1993), p. 11: • A neural network is a circuit composed of a very large number of simple processing elements that are neurally based.
Each element operates only on local information. Furthermore each element operates asynchronously; thus there is no overall system clock. 16 Definitions of Neural Networks • According to Zurada (1992), p. xv: • Artificial neural systems, or neural networks, are physical cellular systems which can acquire, store, and utilize experiential knowledge. A Simple Neural Network The network has 2 inputs, and one output. All are binary. The output is 1 if W0 *I0 + W1 * I1 + Wb > 0 0 if W0 *I0 + W1 * I1 + Wb