=Paper=
{{Paper
|id=None
|storemode=property
|title=Learning Fuzzy Cognitive Maps by a Hybrid Method Using Nonlinear Hebbian Learning and Extended Great Deluge Algorithm
|pdfUrl=https://ceur-ws.org/Vol-841/submission_27.pdf
|volume=Vol-841
|dblpUrl=https://dblp.org/rec/conf/maics/Ren12
}}
==Learning Fuzzy Cognitive Maps by a Hybrid Method Using Nonlinear Hebbian Learning and Extended Great Deluge Algorithm==
Learning Fuzzy Cognitive Maps by a Hybrid Method Using
Nonlinear Hebbian Learning and Extended Great Deluge
Algorithm
Zhaowei Ren
School of Electronic and Computing Systems
University of Cincinnati
2600 Clifton Ave., Cincinnati, OH 45220
Abstract concepts and relations. Concepts reflect attributes, qualities
Fuzzy Cognitive Maps (FCM) is a technique to represent and states of system. The value of concepts ranges from 0
models of causal inference networks. Data driven FCM to 1. Concepts can reflect both Boolean and quantitative
learning approach is a good way to model FCM. We value. For example, a concept can reflect either the state of
present a hybrid FCM learning method that combines light (while 0 means off and 1 means on), or water level of
Nonlinear Hebbian Learning (NHL) and Extended Great a tank. If it reflects a quantitative value, equation [1] can be
Deluge Algorithm (EGDA), which has the efficiency of used for normalization.
NHL and global optimization ability of EGDA. We
[1]
propose using NHL to train FCM at first, in order to get
close to optimization, and then using EGDA to make model where A is the concept value before normalization, and
more accurate. We propose an experiment to test the and are the possible maximum and minimum
accuracy and running time of our methods. value of A. Relations reflect causal inference from one
concept to another. Relations have direction and weight
value. is denoted as the weight value from concept
Introduction: to concept . For a couple of nodes, there may be two, one
or none relations between them. There are three possible
Fuzzy Cognitive Maps (FCM) (1) is a modeling types of causal relations:
methodology that represents graph causal relations of the relation from concept to concept
different variables in a system. One way of developing the is positive. When concept increases (decreases),
inferences is by a matrix computation. FCM is a cognitive concept also increases (decreases).
map with fuzzy logic (2).FCM allows loops in its network,
and it can model feedback and discover hidden relations the relation from concept to concept
between concepts (3). Another advantage is that Neuron is negative. When concept increases (decreases),
network techniques are used in FCM, e.g. Hebbian on the contrary, concept decreases (increases).
learning(4), Genetic Algorithm (GA) (5), Simulated there is no relations between and
Anealling (SA) (6). When initial state of FCM is given, FCM will converge
to a steady state through iteration process. One concept
A1 value is computed by the sum of weighted sum of all
concepts that may be related to it. In each iteration, concept
value is calculated by equation [2].
2 ∑ [2]
3
2 where is the value of conceptin iteration k+1, is
the value of concept in iteration, and is the weight
A 32
A value of the edge from concept to concept . And
2 23 3 , which is a transfer function to normalize
Figure 1 An example of FCM weight value to [-1,1]. is a parameter that determines its
steepness.
The structure of FCM is similar to an artificial neuron For example, figure 2 is It is a problem an industrial
network, e.g. Figure 1. There are two elements in FCM, process control problem (8). There is a tank with two
valves where liquids flow into the tank. These two liquid
had reaction in this tank. There is another valve which
Copyright © 2007, Association for the Advancement of Artificial empties the fluid in the tank. There is also a sensor to
Intelligence (www.aaai.org). All rights reserved.
gauge the gravity of produced liquids (proportional to the knowledge before computation. AHL explores a method to
rate of reaction) in tank. As described in the figure below determine the sequence of active concepts. For each
concept, only concepts that may affect it are activated.
AHL is fast but requires expert intervention. Experts
should determine the desired set of concepts and initial
structure of FCM. NHL is a nonlinear extension of DHL. In
NHL, before iteration starts,experts have to indicate an
initial structure and sign of each non-zero weight. Weight
values are updated synchronously, and only with concepts
that experts indicate.
Another branch of learning FCM structure is population-
based method. Koulouriotis (12)proposes evolution
strategies to train fuzzy cognitive maps. In 2007
Figure 2 An industrial control problem
Ghazanfari et al. (6) proposes using Simulated Annealing
(SA) to learn FCM, and he compared Genetic Algorithm
(GA)(5) and SA. They concluded that when there are more
There are two constraints of this problem. The first one concepts in the network, SA has a better performance than
is to maintain value of G in a particular range, and the genetic algorithm. In 2011, Baykasoglu and Adil (13)
second one is to keep height of liquids (T) in a range. proposed an algorithm called extended great deluge
Parsopoulos et al. (8) proposes that there should be five algorithm (EGDA) to train FCM. EGDA is quite similar to
concepts: (a) height of liquid in the tank, (b) the state of SA, but it demands smaller number of parameters than SA.
valve 1, (c) the state of valve 2, (d) the state of valve 3, and Population-based method is capable to reach global
(e) the gravity of produced liquid in the tank. Our aim is to optimization even if the initial weight matrix is not good,
find out the causal inference value from one concept to but it is usually computationally costly, especially when the
another one. initial weight matrix is far from optimal position. Moreover,
There are mainly two strategies to learn an FCM. One is population-based methods have many parameters that have
to exploit expert domain knowledge and formulate a to be set before processing. The parameters are set usually
specific application’s FCM (7), this can be used when by experiences, and then duplicated experiments with
there is no good automated or semi-automated methods to different parameters should be made to get better
build this model. If there are multiple domain experts performance. Hebbian learning methods are relatively fast,
available, each expert choose a value (e.g. very weak, but their performance depends on initial weight matrix and
weak, medium, strong, very strong) for the causal effect predefined FCM structure very much. Expert intervention
from one concept to another one; then the values are is usually essential. Experts need to indicate a structure
quantified and combined together into one value between - before experiments.
1 and 1. This strategy has its own shortage: when the The third branch is hybrid method, which takes both the
problem is complex and need a large number of concepts effectiveness of Hebbian learning and global search
to describe a system, the cost of expert strategy is very capability of population-based methods. Papageorgiou and
high; moreover, it is difficult to discover new hidden Groumpos (14) proposed a hybrid learning method that
relations by this strategy. Another strategy is to develop a combines NHL and Differential Evolution algorithm (DE).
data driven learning method. Input, output and state of a First, NHL is used to learn FCM, and then its result is feed
system are recorded when it is running, and these records to DE algorithm. This method makes uses of both the
are used as a neuron network training dataset. effectiveness of Hebbian learning and the global search
ability of population-based method. The three experiments
they did show this hybrid method is capable to train FCM
effectively. Zhu et.al(15) proposes another hybrid method
Background which combines NHL and Real-coded Genetic Algorithm
One branch of Fuzzy Cognitive map (FCM) learning is (RCGA)
Hebbian learning. Different Hebbian learning has been Here I suggest a hybrid method combing NHL and
proposed, for example, Differential Hebbian Learning EGDA. EGDA has global search ability and relatively less
(DHL)(4), and its modified version Banlanced Differential demand of parameters. If its initial weight matrix is close to
Hebbian Learning (BDHL)(9). DHL changes weight optimal condition, it will save much computing expense.
matrix by the difference of two records, but it did not Here we use NHL to train FCM roughly first, and then feed
consider the scenario that multiple concepts have effect on its result to EGDA. NHL is picked because it is simple and
one mutually. BDHL covers this situation, but it is costly fast, and it can deal with continuous range of value of
owe to lack of optimization. The two Hebbian learning concepts
methods that have been used in real world is Active
Hebbian learning (AHL) (10) and Nonlinear Hebbian
Learning(NHL) (11), and both of them require expert
Hybrid Method Using NHL and EGDA
This hybrid method is processed by two stages. Then we use equation [2] to update 2 and 3 .Here
Stage 1 use nonlinear Hebbian learning (NHL) the learning rate
(11)to train FCM 2 2 2 2
Step 1: Initialize weight matrix with help of experts 0.5*0.7)
and read input concept . We feed the initial weight 0.707
matrix to feed 3 3 3 3
Step2: ( )
Calculate (concept value in iteration 1.Initial values
can be denoted as values in iteration 0) by the equation [3] Other weights are updated as above. Then we got the
∑ [3] new weight matrix as below
W 1 2 3
where . λis a parameter that determines 1 N/A 0.475 0
2 0.707 N/A 0.317
increasing rate of curve. It is a transfer function. When x
3 -0.32 0.565 N/A
changes from - ∞ to ∞ , f(x) changes from 0 to 1.
Therefore, final result of concept value is still from zero to And A1=0.677, A2= 0.65, A3=0.55
one. 2 2 2
Step 3:
Use equation [4] to update weights, If J is larger than termination threshold, then go to step 2.
[4] Otherwise, terminate this algorithm and got to stage 2.
where is learning rate function, and it decreases as k Stage 2: use extended great deluge algorithm
increases. (EGDA)(13) to train FCM.
Step 4: At the end of each updating, the error function is Step 1: Initialize the weight matrix with the suggested
computed as equation [5] value from stage 1. The output of step 1 is feed to this step.
∑ 2
[5] Assume the weight matrix we got from last step is as Table
where k is the iteration number. There are two 3
termination conditions. One is that value of error function W 1 2 3
[3] is below a threshold, and the other is there are enough 1 N/A 0.3 0
times of iterations. If one of the termination conditions is 2 0.6 N/A 0.1
reached, the iteration ends. Otherwise, go on the next 3 -0.4 -0.3 N/A
iteration. Table 3 Weight matrix after stage 1
For example, now we have time series data of each
concept value as Table 1 Step 2: find a new neighbor of the current weight matrix.
A1 A2 A3 For each non-zero weight (because the edge with zero
0.5 0.5 0.1 weight does not exist by expert prediction)in the matrix,
0.6 0.4 0.2 use the equation below to generate their neighbor.
0.5 0.3 0.3 [6]
Table 1 Concept value record where random( ) is a function to generate random value
from 0 to 1, and then is a function to
Each tuple is a record of three concept value. generate random value from -1 to 1. is a step size of
Initial weight matrix is predicted by experts or generated moving. It is gradually decreased so this algorithm can
randomly. Here it is as Table 2 have a more detailed search during the end of the search.
W 1 2 3 Step 3: Use equation [1] and new weight matrix to
1 N/A 0.3 0 calculate estimated concept value. Then calculate fitness
2 0.7 N/A 0.2 function to determine if new configuration is better than
3 -0.6 -0.3 N/A current one. Here we use the total error to be fitness
Table 2 Initial weight matrix function. The equation is as below
∑ [7]
(the weight from concept I to concept j) is the value where K is the number of iteration, and N is the number
in line I and column j. For example, 2 of concepts.
For example, we want to update 2 and 3 using the Step 4: If the fitness function value of the neighbor
first tuple of data. First, we use equation [3] to calculate . configuration is better than tolerance, it is picked as current
is set to 1 here. configuration. And then go to step 5, otherwise, go to step
2 2 3 3 2. Then reduce the tolerance.
Step 5: If the value of fitness function is better than best
condition, update best condition. then there would be eight edges in this network.
For example: First we find a new neighbor for this. After number of concepts and edges are set, a model can
is set as 0.2. be generated with random weight, and we name it original
2 model. Then random data is generated, and they are fed to
*0.2 equation [1] iteratively, until it reaches a steady state (the
0.3191 error in equation [7] is lower than threshold). The steady
(random()=0.5478, generated randomly by matlab) state would be a record for simulated data. After a certain
Using the same equation, we could get new weight time of iteration, if it still cannot reach steady state, a new
matrix tuple of data would be generated randomly and fed to
W 1 2 3 equation [1]. After hundreds of times, we will have a series
1 0.3197 0 of data as training set. This data is used to learn FCM by
2 0.5482 0.2945 our method. The weight matrix we get would be compared
3 -0.2453 -0.4583
with the original model. The error is calculated as equation
[9]
Then calculate the concept value
, 2 , 3 . In this example we use ∑ ∑ ̅̅̅̅ 2 [9]
the record below
A1 A2 A3 where N is the number of concepts in this model.
Some other methods (NHL, EGDA, SA) can also be
0.5 0.5 0.1
programmed, and compared with this method. These
methods will be compared in accuracy and running time, in
( )
several conditions.
After simulated experiment, based on the best conditions
2 ( )
for our method, we will apply it on a real practical problem.
3
Conclusion
We propose a hybrid method to learn FCM. Our method
If this value is above a tolerance, it is denoted as current has taken advantages of fast speed of NHL and global
configuration, and then it is compared with best search ability of EGDA. Moreover, we propose an
configuration to see if it is the best so far. If the new experiment to test our algorithm, and try to apply it into
neighbor is not below tolerance, find another neighbor near practice.
current one. Reduce tolerance after each search. If the total
error is below a threshold or there is enough number of
iteration, then this algorithm terminates.
Reference
Experiment Design: 1. Bart and Kosko. Fuzzy cognitive maps. International
Journal of Man-Machine Studies 1986; 24: 65.
There are two steps of our experiment. First we are 2. Kosko B. Fuzzy engineering. Upper Saddle River, NJ,
going to test our method by simulated data, and try to find USA: Prentice-Hall, Inc. 1997: .
out the scenario that our method can be most efficient and 3. Papageorgiou EI, Stylios C, and Groumpos PP.
accurate. On the second step, we will use our method in a Unsupervised learning techniques for fine-tuning fuzzy
real application. cognitive map causal links. International Journal of
In this experiment, data is generated by a random Human-Computer Studies 2006; 64: 727.
process. First the number of concepts and density of 4. Dickerson JA, Kosko B. Virtual worlds as fuzzy
relations are set. We can try different number of concepts, cognitive maps. Virtual Reality Annual International
from small to large, in order to test the performance of this Symposium, 1993 , 1993 IEEE 1993; 471-477.
method in network with different complexity. Density 5. Stach W, Kurgan L, Pedrycz W, and Reformat M.
represents how many percent of edges exist in a network. Genetic learning of fuzzy cognitive maps. Fuzzy Sets Syst
It is defined as equation [8]. 2005; 153: 371-401.
6. Ghazanfari M, Alizadeh S, Fathian M, and
Koulouriotis DE. Comparing simulated annealing and
[8] genetic algorithm in learning FCM. Applied Mathematics
and Computation 2007; 192: 56.
For example, if we set number of concepts as 5, and
density as 0.4, number of edges is computed as below
7. Khan MS, Quaddus M. Group decision support using
fuzzy cognitive maps for causal reasoning. Group Decis
Negotiation 2004; 13: 463-480.
8. Parsopoulos KE, Papageorgiou EI, Groumpos PP, and
Vrahatis MN. A first study of fuzzy cognitive maps
learning using particle swarm optimization. 2003; 2: 1440.
9. Huerga AV. A balanced differential learning
algorithm in fuzzy cognitive maps. 2002; .
10. Papageorgiou EI, Stylios CD, and Groumpos PP.
Active hebbian learning algorithm to train fuzzy cognitive
maps. International Journal of Approximate Reasoning
2004; 37: 219.
11. Papageorgiou E, Stylios C, and Groumpos P. Fuzzy
Cognitive Map Learning Based on Nonlinear Hebbian
Rule. In: Gedeon T and Fung L eds. AI 2003: Advances in
Artificial Intelligence. Springer Berlin / Heidelberg, 2003:
256-268.
12. Koulouriotis DE, Diakoulakis IE, and Emiris DM.
Learning fuzzy cognitive maps using evolution strategies:
A novel schema for modeling and simulating high-level
behavior. 2001; 1: 364.
13. Baykasoglu A, Durmusoglu ZDU, and Kaplanoglu
V. Training fuzzy cognitive maps via extended great
deluge algorithm with applications. Comput Ind 2011; 62:
187.
14. Papageorgiou EI, Groumpos PP. A new hybrid
method using evolutionary algorithms to train fuzzy
cognitive maps. Applied Soft Computing 2005; 5: 409.
15. Yanchun Z, Wei Z. An integrated framework for
learning fuzzy cognitive map using RCGA and NHL
algorithm. 2008; 1.