Assignment 4 of Soft Computing PDF
Assignment 4 of Soft Computing PDF
Assignment 4 of Soft Computing PDF
Name – Utkrisht
Subject – GCS/1730957
Class- GCS 16 (AB)
Q1. What is Neuro-Fuzzy system?
A neuro-fuzzy system is a fuzzy system that uses a learning algorithm derived from or
inspired by neural network theory to determine its parameters (fuzzy sets and fuzzy rules)
by processing data samples.
In the case of cooperative neural fuzzy systems, both artificial neural network and fuzzy system
work independently from each other. The ANN tries to learn the parameters from the fuzzy
system. This can be either performed offline or online while the fuzzy system is applied.
Figure 2 depicts four different kinds of cooperative fuzzy neural networks.
The upper left fuzzy neural network learns fuzzy set from given training data. This is usually
performed by fitting membership functions with a neural network. The fuzzy sets are then
determined offline. They are then utilized to form the fuzzy system by fuzzy rules that are given
(not learned) as well.
The upper right neuro-fuzzy system determines fuzzy rules from training data by a neural
network. Here as well, the neural networks learns offline before the fuzzy system is initialized.
The rule learning usually done by clustering on self-organizing feature maps (Bezdek et al., 1992;
Vuorimaa, 1994). It is also possible to apply fuzzy clustering methods to obtain rules.
In the lower left neuro-fuzzy model, the system learns all membership function parameters
online, i.e., while the fuzzy system is applied. Thus initially fuzzy rules and membership functions
must be defined beforehand. Moreover, the error has to be measured in order to improve and
guide the learning step.
The lower right one determines rule weights for all fuzzy rules by a neural network. This can be
done online and offline. A rule weight is interpreted as the influence of a rule (Kosko, 1992).
They are multiplied with the rule output. In (Nauck et al., 1997) the authors argue that the
semantics of rule weights are not clearly defined. They could be replaced by modified
membership functions. However, this could destroy the interpretation of fuzzy sets. Moreover,
identical linguistic values might be represented differently in dissimilar rules.
Hybrid Fuzzy Neural Network
Hybrid neuro-fuzzy systems are homogeneous and usually resemble neural networks. Here, the
fuzzy system is interpreted as special kind of neural network. The advantage of such hybrid NFS is its
architecture since both fuzzy system and neural network do not have to communicate any more
with each other. They are one fully fused entity. These systems can learn online and offline.
Figure 3 shows such a hybrid FNN.
The rule base of a fuzzy system is interpreted as a neural network. Fuzzy sets can be regarded as
weights whereas the input and output variables and the rules are modeled as neurons. Neurons can
be included or deleted in the learning step. Finally, the neurons of the network represent the fuzzy
knowledge base. Obviously, the major drawbacks of both underlying systems are thus overcome.
In order to build a fuzzy controller, membership functions which express the linguistic terms of the
inference rules have to be defined. In fuzzy set theory, there does not exist any formal approach to
define these functions. Any shape (e.g., triangular, Gaussian) can be considered as membership
function with an arbitrary set of parameters. Thus the optimization of these functions in terms of
generalizing the data is very important for fuzzy systems. Neural networks can be used to solve this
problem.
By fixing a distinct shape of the membership functions, say triangular, the neural network must
optimize their parameters by gradient descent (Nomura et al., 1992). Thus, aside information about
the shape of the membership functions, training data must be available as well.
An important hybrid fuzzy neural network has been introduced in (Berenji, 1992). The ARIC
(approximate reasoning-based intelligent control) is presented as a neural network where a prior
defined rule base is tuned by updating the network's prediction. Thus the advantages of fuzzy
systems and neural networks are easily combined.
The robot is a MIMO system in which we have to control the rotation of the two wheels via two
digital pulses coming from the microcontroller. So, it can be divided in two neuro-fuzzy controllers to
simplify the designing of the fuzzy controller part: one that avoids collision against obstacles, and
one to control the position through the motion in the servos, considering a position as the set point.