Hard Computing
It could be observed from our previous discussions on computing that the early computing
models were mathematically inclined. This is because computer science had its origin in
mathematics. In fact, early computer programmers were mathematicians and engineers who were
looking for an easier and more accurate ways of solving complex numerical problems. This gave
rise to the formulation of mathematical models and later, statistical models. A lot of success was
recorded in this direction. Sooner than envisaged, it became obvious that the problems in the
real-world are far too complex to be modelled accurately, without resorting to assumptions
which also make some of the output of some mathematical models inexact. Most mathematical
models could only handle linear relationships between variables. It is a known fact that most
real-life phenomena are non-linear in nature. Rather than simple cause-and-effect, kind of
relationship, variables and entities in the real-world interact in multivariate and covariate
manner. Mathematical modelling solutions to certain real-life problems are NP-complete
(nondeterministic polynomial time problem). Problem solving approach based on mathematical
models are referred to as hard computing. Such models are exact in nature and cannot handle
imprecision, uncertainty, partial truth and approximation. They make use of analytical models
that requires precise steps for solution and sometimes take lots of computational time. It
demands that input data should be exact and the output should also be precise and verifiable.
Hard computing is built on the principle of precision and certainty. The inability of hard-
computing to handle complex real-life problems gave rise to soft-computing.
Soft Computing
Soft Computing is made up of computing modelling methodologies that are designed to provide
solutions to real-world problems that are difficult to model with the aid of mathematical models.
They provide flexible option to solving real-world problems. They are capable of handling
imprecise, fuzzy, uncertain, partial truth and approximation problems. They can reason forward
or backward based on previous data (can learn from patterns in the data supplied). They provide
approximate solutions to real-world situations. They make use of natural intelligence and
behavior of humans and other living organisms to provide solutions to complex problems at
lower cost and lesser computational time. They do not need complex mathematical formulation
to build models for problem solving. Soft computing is based on the principles of Artificial
Intelligence, Evolutionary Computing, social behaviour of organisms, Artificial Neural Network,
fuzzy Logic, probabilistic techniques and bio-inspired computing. The whole essence of life is
about solving problems. Most problem solving techniques could be broadly classified into hard
computing and soft computing as depicted in Figure….x. Soft computing which essentially, is
built on the model of human mind and social behavior of other living organisms has been applied
as a robust, low cost solution to problems in different aspects of life and disciplines as depicted
in Figure …x2.
Fig 1.
Figure 1: Components of problem solving techniques. Source: Das et al., 2013.
Figure 2: Areas of Application of Soft Computing. Source: Das et al., 2013.
Differences between Hard Computing and Soft Computing
S/N Hard Computing Soft Computing
1 It is makes use of precise data input It can use imprecise and noisy
data that are fuzzy in nature
2 It uses predefined instructions in two-valued logic It handles probabilistic
reasoning and can handle
multi-valued logic.
3 Very good at handling linear relationships among It could handle non-linear
variables in a sequential manner. relationships and can search
for solutions in multiple and
parallel directions.
4 It handles problems that require exact inputs and It is capable of taking
solutions imprecise inputs, learn from
the input and generate
approximate solutions at
lower cost.
5 It requires programs to be written explicitly. It could evolve its own
programs
7 It requires rigorous computation with sometimes It is less rigorous with simple
complex mathematical formulae and equations and not too complex
equations.
8 It mainly uses mathematical models It is based on the model of
human mind and social
behavior of living organisms
9 They are less efficient in solving multi-variable and They are more efficient at
multi-valued problems solving multi-variate and
multi-valued problems with
complex interactions. They
are adaptive and scalable
10 The solutions to optimization problems could be They use global search
trapped in local minimum. algorithms to search the
entire solution space in
parallel. This approach
prevents the solution from
being trapped in local
minima.
Computational Intelligence
It simply refers to the ability of a computer to learn a specific task from data or experimental
observation. It is more or less a synonym to soft computing. It emerged as the branch of
computer science that studies ways of solving complex real-world problems that have no
effective computational algorithms for solving them. The major paradigms of soft computing
such as Artificial Neural Network, Evolutionary Computing, Swarm Intelligence, Natural
Language Processing, Fuzzy Logic. Artificial Immune System are also employed in
Computational Intelligence.