Soft Computing
What is soft computing
• Soft computing is the reverse of hard (conventional) computing.
• It provides cost-effective solutions to the complex real-life problems
for which hard computing solution does not exist.
• Zadeh coined the term of soft computing in 1992.
• The objective of soft computing is to provide precise approximation
and quick solutions for complex real-life problems.
Need of soft computing
Sometimes, conventional computing or analytical models does not provide a
solution to some real-world problems. In that case, we require other
technique like soft computing to obtain an approximate solution.
• Hard computing is used for solving mathematical problems that need a
precise answer. It fails to provide solutions for some real-life problems.
Thereby for real-life problems whose precise solution does not exist, soft
computing helps.
• When conventional mathematical and analytical models fail, soft
computing helps, e.g., You can map even the human mind using soft
computing.
• Analytical models can be used for solving mathematical problems and valid
for ideal cases. But the real-world problems do not have an ideal case;
these exist in a non-ideal environment.
Soft computing vs hard computing
Parameters Soft Computing Hard Computing
Computation time Takes less computation time. Takes more computation
time.
Dependency It depends on approximation and It is mainly based on
dispositional. binary logic and numerical
systems.
Computation type Parallel computation Sequential computation
Result/Output Approximate result Exact and precise result
Elements of soft computing
Following are three types of techniques used by soft computing:
• Artificial Neural Network (ANN)
• Fuzzy Logic
• Genetic Algorithms
Artificial Neural
Network
Artificial Neural Network
• An Artificial Neural Network in the field of Artificial
intelligence where it attempts to mimic the network of neurons
makes up a human brain so that computers will have an option to
understand things and make decisions in a human-like manner.
• The artificial neural network is designed by programming computers
to behave simply like interconnected brain cells.
Artificial Neural Network
• The term "Artificial neural network" refers to a biologically inspired
sub-field of artificial intelligence modeled after the brain.
• An Artificial neural network is usually a computational network based
on biological neural networks that construct the structure of the
human brain.
• Similar to a human brain has neurons interconnected to each other,
artificial neural networks also have neurons that are linked to each
other in various layers of the networks.
• These neurons are known as nodes.
Biological Neural Network.
• The given figure illustrates the typical diagram of Biological Neural
Network.
• Dendrites from Biological Neural Network represent inputs in
Artificial Neural Networks, cell nucleus represents Nodes, synapse
represents Weights, and Axon represents Output.
• Relationship between Biological neural network and artificial neural
network:
Biological Neural Network Artificial Neural Network
Dendrites Inputs
Cell nucleus Nodes
Synapse Weights
Axon Output
• There are around 1000 billion neurons in the human brain. Each
neuron has an association point somewhere in the range of 1,000 and
100,000.
• In the human brain, data is stored in such a manner as to be
distributed, and we can extract more than one piece of this data
when necessary from our memory parallelly.
• We can say that the human brain is made up of incredibly amazing
parallel processors.
The architecture of an artificial neural network:
• The typical Artificial Neural Network looks something like the given
figure.
Model of Artificial Neural
Network
McCulloch-Pitts Model of Neuron
• The McCulloch-Pitts neural model, which was the earliest ANN
model, has only two types of inputs — Excitatory and
Inhibitory.
• The excitatory inputs have weights of positive magnitude and
the inhibitory weights have weights of negative magnitude.
• The inputs of the McCulloch-Pitts neuron could be either 0 or
1.
McCulloch-
Pitts Model of
Neuron
• It has a threshold function
as an activation function.
So, the output
signal yout is 1 if the
input ysum is greater than
or equal to a given
threshold value, else 0.
• The diagrammatic
representation of the
model is as follows:
McCulloch-Pitts Model of Neuron
• Simple McCulloch-Pitts neurons can be used to design logical
operations.
• For that purpose, the connection weights need to be correctly
decided along with the threshold function (rather than the
threshold value of the activation function).
• For better understanding purpose, let us consider example:
Example
John carries an umbrella if it is sunny or if it is raining. There are
four given situations. I need to decide when John will carry the
umbrella. The situations are as follows:
• First scenario: It is not raining, nor it is sunny
• Second scenario: It is not raining, but it is sunny
• Third scenario: It is raining, and it is not sunny
• Fourth scenario: It is raining as well as it is sunny
Example
To analyse the situations using the
McCulloch-Pitts neural model, I can
consider the input signals as follows:
• X1: Is it raining?
• X2 : Is it sunny?
So, the value of both scenarios can be
either 0 or 1. We can use the value of
both weights X1 and X2 as 1 and a
threshold function as 1. So, the neural
network model will look like:
Example
• Truth Table for this case will be:
Situation x1 x2 ysum yout
1 0 0 0 0
2 0 1 1 1
3 1 0 1 1
4 1 1 2 1
Example
So
The truth table built with respect to
the problem is depicted above. From
the truth table, I can conclude that in
the situations where the value
of yout is 1, John needs to carry an
umbrella. Hence, he will need to carry
an umbrella in scenarios 2, 3 and 4.