
110 2 Phenomenological Models
other fields such as time series prediction, classification and pattern recognition,
or data processing. An important feature of neural networks is their ability to
‘‘learn’’ from data. We have seen in Section 2.5 that a neural network is able to
‘‘learn’’ the nonlinear shape of a function from a dataset, that is, there is no need
to specify this nonlinear shape as a mathematical function as it is required in the
classical nonlinear regression approach. This kind of adaptivity, that is, the ability
of a model to adapt to a changing problem environment, is a characteristic feature
of soft computing approaches in general [75].
As explained above, artificial neural networks were originally inspired by an
analogy with biological neural networks (Note 2.5.2). In a similar way, evolutionary
algorithms encompass a class of stochastic optimization algorithms that were
originally inspired by an analogy with the biological ideas of genetic inheritance
and the Darwinian law of the ‘‘survival of the fittest’’. In genetic algorithms –the
most widely used type of evolutionary algorithms – individuals are represented
as arrays of binary digits that can take on the values 0 or 1. Basically, these
arrays can be thought of as representing the genes of the individuals. After a
random initial population has been generated, an iterative process starts where
new generations of the population are generated from the previous population
by applying a certain number of stochastic operators to the previous population,
which basically can be thought of as reflecting the Darwinian law of the ‘‘survival
of the fittest’’. Similar to neural networks, this bio-inspired approach turned
out to be extremely fruitful in the applications. Evolutionary algorithms have
been applied in bio–informatics, phylogenetics, computer science, engineering,
economics, chemistry, manufacturing, mathematics, physics, and other fields. See
the examples in [76–78], and [75] for a detailed case study involving a financial
application (portfolio optimization). Note that evolutionary algorithms are a part
of the larger field of evolutionary computation which includes other techniques
such as swarm intelligence, which describe the collective behavior of decentralized,
self-organized systems [79]. Evolutionary computation itself is usually classified as
asubfieldof artifical intelligence, a discipline of computer science.
As regards software for soft computing applications, we have already used
R’s
nnet package in Section 2.5 above to do neural network-based nonlinear
regression. The same package can also be used to solve classification problems,
see [45]. R’s contributed package
genalg (R Based Genetic Algorithm) can be used
to implement genetic algorithms. While
nnet comesasastandardpartoftheR
distribution,
genalg can be obtained from R’s internet site (www.r-project.org). R
may also serve as a platform for the implementation of fuzzy models (there are a
number of fuzzy-based contributed packages, see the list on www.r-project.org).
2.7.1.1 Fuzzy Model of a Washing Machine
We end this section on soft computing with an example of a fuzzy model. Based
on the ideas developed in [80], fuzzy models use logical variables that can take on
any value between 0 and 1. In this sense, these models allow for ‘‘uncertainty’’,
as opposed to the usual concept where logical variables can take on the values 0
and 1 only. This is of interest in many technological applications where a system