Soft Computing: Concepts and Techniques: January 2014
Soft Computing: Concepts and Techniques: January 2014
net/publication/280083168
CITATIONS READS
0 5,029
1 author:
Mrutyunjaya Panda
Utkal University
68 PUBLICATIONS 305 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
Real Time Product Feedback Review and Analysis Using Apache Technologies and NOSQL Database View project
Big Data Analytics: A social network approach, edited by Mrutyunjaya Panda, Ajith Abraham and Abo Ella Hassanein View project
All content following this page was uploaded by Mrutyunjaya Panda on 11 October 2017.
By
M. PANDA M.R. PATRA
Professor and Head, Reader and Head,
Department of Electronics and Department of Computer Science,
Communication Engineering, Berhampur University, Bhanja Vihar
Gandhi Institute for Technological (Odisha)
Advancement, Bhubaneswar
(Odisha)
Published by :
UNIVERSITY SCIENCE PRESS
(An Imprint of Laxmi Publications Pvt. Ltd.)
113, Golden House, Daryaganj,
New Delhi-110002
Phone : 011-43 53 25 00
Fax : 011-43 53 25 28
www.laxmipublications.com
[email protected]
OFFICES
3.13 Least-squares 68
3.14 Kohonen Self-organizing Map Networks 69
3.15 Learning Vector Quantization 72
3.16 Recurrent Neural Network 75
3.17 Simulated Annealing Neural Network 76
3.18 Neural Networks and Pattern Recognition 77
3.19 Neural Networks and Control 78
CHAPTER 4. Genetic Algorithms 8292
4.1 Introduction 82
4.2 History of GA 82
4.3 Crossover Operators 83
4.4 Mutation 85
4.5 Method of Representation 87
4.6 Methods of Selection 87
4.7 Genetic Programming 87
4.8 Traditional Optimization Methods 90
4.9 Advantages 90
4.10 Limitations 91
4.11 Some Examples of GAs 91
References 9395
Index 9697
FOREWORD
Mrutyunjaya Panda is an experienced teacher as well as a scientist, does a lot of research work
in the field of soft computing and network security. He has contributed many things in this book
which are outcome of his teaching experience and research work so that Neuro-Fuzzy and soft
computing demonstrates his knowledge in this field, his mastery and insightfulness with expository
skills. His coauthor Dr. Manas Ranjan Patra has made an important contribution in writing the
text using his extensive experience in dealing with real world problems.
The soft computing concepts and techniques are aimed at an accommodation with the pervasive
imprecision of the real world problems so as to exploit the tolerance for imprecision, uncertainty,
and robustness. However, the real role model for soft computing is the Human brain.
This book Soft Computing: Concepts and Techniques has been designed for undergraduate students
computer science and other branches of engineering. The book is enriched with a wealth of
information which is lucidly presented, well organized and illustrated by many examples. This
will help the reader to acquire the needed background in soft computing for further work in
designing many efficient intelligent systems.
Dr. Subrata Chattopadhyay,
Department of Electrical Engineering
NITTTR, Kolkata
(vii)
PREFACE
Soft computing (SC), is an innovative approach to computing which parallels the remarkable ability
of the human mind to reason and learn in an environment of uncertainty and imprecision. Soft
computing techniques having the roots in artificial intelligence (AI) consist of fuzzy logic (FL) neural
network (NN) and evolutionary algorithms (EA).
There are many potential applications of soft computing methodologies, which includes pattern
recognition, adaptive control system, robotics, data mining, and so on.
This book has been written for undergraduate students and others, who are interested in using
soft computing techniques. It has been developed as a textbook for one semester course at univer-
sity for students pursing computer science and in almost all other branches of engineering. During
the course of teaching soft computing, I found that no textbook covers the complete syllabi of the
soft computing. In this book, we have attempted to cover all the syllabi along with many examples
and their applications to pattern recognition and control.
The text is divided into 4 chapters. Chapter 1 gives an overview of artificial intelligence with their
Pros and Cons, followed by the various tools of soft computing needed to understand the concept.
Non-Linear error surface and optimization techniques are also discussed to understand the usefulness
of these in soft computing.
Chapter 2 covers the fundamentals of fuzzy logic. It discusses some insights to the fuzzy relations,
fuzzy inferencing along with examples that describes the real world applications. It also discusses
about the various defuzzification methods.
Chapter 3 introduces neural networks. It basically discusses various neural network architectures,
such as feed-forward (FFNN), backpropagation (BPN), radial basis function (RBF), self-organizing
maps (SOM), linear vector quantization (LVQ) and hybrid neuro-fuzzy system (ANFIS), with many
solved examples to understand the concept of soft computing.
Finally, in Chapter 4, fundamentals of genetic algorithms (GAs) and genetic programming (GP)
are covered with several examples. It presents different types of genetic representation, crossover
operators and selection mechanism, along with various optimization methods like simulated
annealing (SA), hill climbing (HL), etc. The chapter concludes with possible applications to robotics,
data mining, and pattern recognitions.
—Authors
(ix)
ACKNOWLEDGEMENTS
We would like to thank Dr. S. P. Panda, Chairman, GGI, Gunupur and Dr. C. D. Panda, Secretary,
GGI, Gunupur for their constant support, Prof. K. Govinda Rajulu, Former Head, ECE, GIET, Gunupur
for his early motivation, and Dr. R. P. Panda, Head, ECE, VSSUT, Burla for his valuable suggestions
in writing this book. Further, we would express our sincere thanks to all others who have directly
and/or indirectly helped us in bringing out this book in the present form in a short span of time.
—Authors
(x)
ARTIFICIAL INTELLIGENT SYSTEM: AN INTRODUCTION 1
1
ARTIFICIAL INTELLIGENT
SYSTEM: AN INTRODUCTION
1.1 INTRODUCTION
Artificial intelligence, or AI for short, is a combination of computer science, physiology, and philosophy.
AI is a broad topic, consisting of different fields, form machine vision to expert systems. The elements
that the fields of AI have in common is the creation of machines that can think.
In order to classify machines as thinking, it is necessary to define intelligence. Research into
the areas of learning, of language, and of sensory perception have aided researchers in building
intelligent machines. One of the most challenging approaches facing experts is building system
that mimic the behaviour of the human brain, made up of billions of neurons, and arguably the
most complex matter in the universe. As per Alan tuning, a British computer scientist, a computer
would deserves to be called intelligent if it could deceive a human into believing that it was human.
The beginning of AI started from an eminent mathematician Boole and others; theorizing on
principles that were used as the foundation of AI logic. AI has always been on the pioneering end of
computer science. Advanced level computer languages, as well as computer interfaces and word-
processors owe their existence to the research into artificial intelligence, which will set the trend in
the future of computing.
As a prelude, we shall provide a birds-eye-view of relevant intelligent system approaches,
along with bits of their history and discuss the features of soft computing paradigms.
1.2 HISTORY OF AI
Evidence of artificial intelligence folklore can be traced back to ancient Egypt, but the technology
finally became available to create machine intelligence, after the development of the electronic
computer in 1941. Through its short modern history, advancement in the fields of AI have been
slower that first estimated, progress continues to be made. From its birth 5 decades ago, there have
been a variety of AI programs, which have impacted other technological advancements. The history
of AI is shown below in Figure 1.1.
Year History of AI Comments
1941 First Electronic computer
1949 First commercial, stored program computer The birth of
1956 Dartmouth conference and logic theorist developed AI
1
2 SOFT COMPUTING: CONCEPTS AND TECHNIQUES
Pros of AI : Emotions that often intercept rational thinking of a human being are not a hindrance for
artificial thinkers. Lacking the emotional side, robots can think logically and take the right decisions.
Sentiments are associated with moods that affect human efficiency. This is not the case with machines
with artificial intelligence.
Thus artificial intelligence can be utilized in the completion of repetitive and time-consuming tasks
efficiently. Intelligent machines can be used to perform certain dangerous tasks. Machines equipped
with AI can be mode to thoughtfully plan towards the fulfilment of tasks and accordingly adjust
their parameters such as speed and time. They can be made to act quickly, unaffected by anything
like emotion and take the tasks toward perfection.
Cons of AI : The first concern regarding the application of AI is about ethics and moral values. Is
it ethically correct to create replicas of human beings? Do our moral values allow us to recreate
intelligence? Intelligence is after all a gift of nature. It may not be right to install it into a machine to
make it work for our benefit.
Secondly, imagine robots working in hospitals. Do you picture them showing care and concern
towards the patients? Human beings are emotional intellectuals. They think and feel. Their feelings
guide their thoughts.
Eventually, it is up to us whether to stand by AI or warn ourselves of the likely disaster that it
may lead to. In our opinion, there is no ideal replacement for human beings. AI can help alleviate
the difficulties faced by man but can never be human.
Soft computing is considered to be an important tool to perform several computing operations that
include neural networks, fuzzy logic, models, approximate reasoning, and evolutionary algorithms
such as genetic algorithms and simulated annealing. The soft computing allows to incorporate human
knowledge effectively, deal with uncertainty, imprecision, and learns to adapt to unknown or
changing environment for better performance. As soft computing does not perform much symbolic
manipulations, we can therefore view it as a new discipline that complements conventional artificial
intelligence (AI) approaches, and vice-versa.
Inspired by the biological nervous system, a novel non algorithmic approach such as artificial
neural networks; have been explored by many scientist and researchers for information processing.
Thus, artificial neural network is an information processing paradigm which attempts to simulate
the functionality of human brain and model non linear statistical data.
Then the question arises: what is the need to simulate human brain when we have computers
which can perform millions of numerical calculations within a fraction of second?
The answer to this is, even though a computer can store a huge amount of data and can perform
numerical calculations efficiently, there are some problems which it struggles to solve.
Let us take an example, we have text based search engines that are capable of searching millions
of files across the internet for a text key. Thinking in similar lines, imagine an image searching
application, where the user is given some space to draw an image and the application should search
and show all images similar to the one drawn. If the user draws a tree, the search engine should
return all images having a tree.
This image search belongs to a broad class of similar problems, called Pattern Recognitions
problems. Optical character recognition, hand writing recognition, face recognition, speech
recognition, image processing, signature recognition and speaker recognition are different forms of
pattern recognition.
Though a computer can store huge amounts of data, it does not know how to identify, organize,
understand and interpret the data. On the other hand, human brain is incredibly efficient in
identifying patterns. Just by looking at ones face, we can recognize who the person is (if we know him),
but it is not so easy for a computer. This is because, there is no algorithm to map a picture
(or a video) accurately to a persons identity. It is not possible mathematically to model these kinds
of problems. This makes it impossible to solve such problems using conventional problem solving
techniques. If we want to solve pattern recognition, we have to somehow simulate human brain.
The concept of artificial neural network is an attempt to the same.
Artificial neural networks take a different problem solving approach than that of conventional
computers. They connot be programmed to solve a specific problem. They learn by example. This gives
them a remarkable property of deriving meaningful information from complicated data and allows
them to extract patterns and detect trends that are too complex to be noticed by other computing techniques.
1.4.1.1 Applications
Artificial neural networks are extensively used in applications involving:
(i) Function Modelling
(ii) Biometric Pattern Recognition
(iii) Classification
(iv) Prediction
(v) Forecasting , and
(vi) Data clustering problems.
Fuzzy logic is used in system control and analysis design, because it shortens the time for
engineering development and sometimes, in the case of highly complex system, is the only way to
solve the problem.
Human beings have the ability to take in and evaluate all sorts of information from the physical
world they are in contact with and to mentally analyze, average and summarize all this input data
into an optimum course of action. All living things do this, but human do it more and do it better
and have become the dominant species of the planet.
If we think about it, much of the information you take in is not very precisely defined, such as
evaluation of the behaviour of a vehicle entering form a side of the street and the likelihood of the
vehicle pulling in front of you. We call this as fuzzy input. However, some of our input is reasonably
precise and non-fuzzy such as speedometer readings. The processing of all these informations are
not very precisely definable. We call this fuzzy processing. Fuzzy Logic theorists would call it
using fuzzy algorithms (algorithm is another word for procedure or program, as in a computer
program). So, fuzzy logic is the way the human brain works, and we can mimic this in machines,
to perform somewhat like humans, not to be confused with artificial intelligence, where the so far
unattainable goal is for machines to perform EXACTLY like humans ( see Forbes magazine, December
2009, digital tools , why computer cant mimic the Brain: our gray matter is far too complex for
machine to simulate.