their human-friendly knowledge representation, which will be the case if the rules are mutually independent; i.e. outputs of any rule do not enter antecedents of ...
Adaptation of Fuzzy Cognitive Maps by Migration Algorithms (Draft Version) Ján Vaščák
1
Introduction Knowledge-based systems utilize mostly production rules, mainly because of
their human-friendly knowledge representation, which will be the case if the rules are mutually independent; i.e. outputs of any rule do not enter antecedents of any other rule and so decision chains and closed loops are not created. Such systems will be hereafter referred to as ‘simple’ rule-based systems. However, a complex system is characterized only by such chains and loops. In that case the rule-based knowledge representation loses its main advantage and becomes ‘unreadable’. Therefore, Fuzzy Cognitive Maps (FCMs) seem to be very suitable means to overcome the limits of simple rule bases, and these are able very clearly to represent graphically to a human notions and relations among them as seen in fig. 1. A simple rule base (a rule set) lacking any chains or loops is the simplest or, in other words, the most degenerated form of an FCM. Hence, all operations and properties of production rules are valid for FCMs, too. Further, FCMs possess other additional properties and abilities (described in the next sections) that are also convenient for the analysis and modelling of dynamic systems. On the other hand, FCMs have the same basic drawbacks as other fuzzy systems: they are not able to self-learn. The design of adaptation approaches is much more difficult because of their complex structure and its variability (Johanyák and Kovács, 2006). Therefore, at least the definition of notions, which are represented by nodes (see fig. 1), is done manually by an expert and adaptation
is limited to adjusting relations, i.e. graph edges. Most adaptation approaches are based on unsupervised learning derived from its use in neural networks, mainly Hebbian learning, e.g. (Blanco et al., 2001), (Papageorgiou et al., 2006) or reinforcement learning (Aguilar, 2003). On the contrary, a modification of supervised learning was shown in (Vaščák and Madarász, 2010). However, there are also approaches utilizing evolutionary computing like differential evolution (Parsopoulos et al., 2004) and particle swarm optimization (Papageorgiou et al., 2005). Evolutionary algorithms represent one of the most spread parts of optimization approaches and especially genetic algorithms are the best known of them, which are based on the Darwinian theory of evolution. They rely on a hypothesis that newer generations of a species due to suitable mutations, crossover and subsequent selection will be usually of a better quality than their ancestors. However, in spite of many successful technical applications genetic algorithms show some lacks. First of all, the Darwinian Theory is hypothetic and probably it needs lots of corrections from the biological point of view. Further, generating new populations does not guarantee automatically also convergence to a solution. New populations may degrade from any reason. Finally, only a part of knowledge will be advanced from parents to their descendants by the inheritance process. Therefore a new metaphor in the evolutionary computing has been developed, the so-called migration algorithms. They are derived from social behaviour of some mammals like for instance wolfs. They are organized in groups (gangs), which are managed by a leader. The basic differences between genetic and migration algorithms are based on modification of parameters. Individuals in genetic algorithms are processed by mutation and crossover operations and a new
generation arises. On the other hand, no new generations are produced by migration algorithms. Individuals are the same during the whole optimisation process. Only their position is changed in the search area, which is equivalent to producing new generations. In other words, individuals (e.g. wolfs) are searching or migrating to find the best source of food. In this paper the attention will be focused on a special kind of migration algorithms the so-called Self-Organizing Migration Algorithm (SOMA) proposed in (Zelinka, 2002). It was successfully tested on a number of applications like predictive control of a chemical reactor or plasma reactor optimization and compared to simulated annealing and differential evolution (Nollea et al., 2005). Besides it was also tested on a scheduling task for generating plans of construction machineries (Vaščák, 2005) where it was shown this kind of optimization algorithms can be used very successfully in any task being able to be transformed into a task of the so-called travelling salesman. Principally similar application related to searching for optimal tolerances of individual components for a clutch assembly at the minimum cost of manufacturing is described in (Coelho, 2009). Now the previous idea will be further developed into using SOMA as a learning method for FCMs, which is supported by mentioned evolutionary computing approaches for adjusting parameters of FCMs as well as the idea of travelling salesman. To confirm this supposition the task of path planning in dynamic traffic environment was used for testing. Therefore, the structure of the paper will be following. At first, both used means – FCMs and SOMA will be described briefly. Then the so-called parking problem will be characterized and a new adaptation method for adjusting FCMs based on SOMA will be introduced. After that a simulation example with dynamic
traffic will be shown and the structure of the whole path planning system will be described.
2
Fuzzy Cognitive Maps In general a Cognitive Map (CM) is an oriented graph where its nodes
represent notions and edges represent causal relations. Mostly, notions are states or conditions and edges are actions or transfer functions, which transform a state in a node to another one in another node. CM is able to describe complex dynamic systems. It is possible to investigate e.g. cycles, collisions, etc. Besides it is possible to define strengths of relations, too. Originally, they were represented by three values -1, 0 and 1. Another advantage is its human-friendly knowledge representation and ability to describe various types of relations (in a more detail see e.g. (Groumpos, 2010)).
C1
-1 C2 -1 -1 +1 +1 C3
-1
+1 C5 -1
+1
C4
Figure 1: An example of FCM with crisp edges. FCM represents an extension of CM and was proposed by Kosko in 1986 (Kosko, 1986). The extension is based on strength values that are from an interval
[-1; 1] as well as the nodes can be represented by membership functions. Strengths after their combining correspond to rule weights in rule based systems. There are two basic formal definitions of FCM (Chen, 1995) and (Stach et al., 2005). Further, the definition by (Chen, 1995) will be used where FCM is defined as a 4-tuple: FCM = (C , E , α , β )
(1)
where: C – finite
set
of
cognitive
units
(nodes)
described
by
their
states
C = {C1 , C2 , , Cn }, E – finite
set
of
oriented
connections
(edges)
between
nodes
E = {e11 , e12 , , enn },
– mapping α : C → A on interval [-1; 1], – mapping β : E → B on interval [-1; 1]. In other words, is a membership function placed in a node and the result is a grade of membership for values entering such a node. Similarly, does the same but it is placed on a connection, i.e. it is its weight represented as a membership function. For computational representation of FCM a transition matrix is used. For an example in fig. 1 it will look like this: 0 −1 0 −1 1 −1 0 1 0 0 E = 0 0 0 0 1 . 0 0 −1 0 −1 0 0 0 1 0
(2)
Cognitive units are in each time step in a certain state. Using transition matrix we can compute their states for next time step and thus repeatedly for further steps.
Similarly as for differential equations we can draw phase portraits. To preserve values in prescribed limits a boundary function L is used, too. So we can compute the states for t+1 as follows (Chen, 1995): C (t + 1) = L(C (t ).E ).
(3)
Comparing fig. 1 and 2 we can see FCMs are an extension of simple fuzzy rule-based systems. Fuzzy rules are totally independent because their consequents do not have any mutual influence, which is possible only in simpler decision cases. Simple rule-based systems do not enable any decision chains or representation of temporal information. From this point of view they are only a very special and restrained case of FCMs, which can be depicted as an example in fig. 2, where a set of m rules with inputs LXi and outputs LUi (i=1, …, m) is figured in the form of one FCM. There is depicted the evaluation process resulting in an accumulated (aggregated) value LUc being defuzzified into a crisp form LUc*, too.
X
LX1
LU1
LX2
LU2 LUC
…
…
LXm
LUm
LUC*
Figure 2: An example of FCM representing a simple rule set. 3
Self-Organizing Migration Algorithm SOMA proposed in (Zelinka, 2002) is based on cooperative searching
(migrating) the area of all possible solutions, i.e. search area. Individuals are mutually influenced during the search process, which leads to forming or
cancelling groups of individuals. Such groups organize themselves the movement of individuals; therefore the adjective ‘self-organizing’ is contained in its title. SOMA parameters can be roughly divided into 2 groups: 1. Managing parameters – they influence the quality of search. 2. Finishing parameters – they determine the stopping moment of the algorithm. Their definition is following: Path – distance of an individual to a leader after a migration step. If e.g. Path=1 the individual will stop directly on the leader’s position. If Path=2 the individual will stop in the middle between the leader and its starting position before finishing the migration step. It is recommended the Path value should be adjusted < 1 to cover the search area by individuals on a larger surface to prevent skidding into a local extreme. Step –
size of a migration step or mapping. The smaller Step the greater the chance to find a significant extreme but also higher computational complexity and vice versa.
PRT –
perturbation, a parameter, which modifies the movement vector → m of an individual to the leader.
D
–
number of optimised variables or arguments of the fitness function. This parameter is directly dependent on the solved problem and defined fitness function.
NP –
number of individuals (population size). This value usually depends on D and it directly influences the search quality. The greater NP is then the higher possibility will be to find a significant (maybe global) extreme.
M
–
migration, which is analogous to the number of populations in genetic algorithms.
AE
–
the maximum allowed difference between the best and the worst individual in the population. In order to find a really significant extreme and to prevent divergence from the optimal solution it is also necessary to achieve a good solution for other individuals not only for the best one. It means if the real error is smaller than the accepted error then the algorithm is stopped.
The parameters from Path to NP belong to the first group and the last two parameters are finishing ones. One important advantage of this algorithm is based on its ability to process diverse data types of parameters like integers, real or discrete values. They can be mixed mutually, too. SOMA parameters define the structure and universes of discourse for individuals. To generate an initial population the so-called specimen S is defined at first: S = ( s1Type ( s1LL , s1UL ), , sDType ( sDLL , sUL D )),
(4)
where Type denotes the data type of a parameter, LL and UL are the lower and upper limits of the universe of discourse, respectively. These intervals of values represent permitted parameter values or from other point of view physical limitations of the application. The population (real individuals) will be generated by: 0 UL LL LL = P 0 {x10,1 , , xi0, j , , xNP = , D } {rnd ( xi , j − xi , j ) + xi , j },
(5)
where P0 is the initial population and xi,j represents j-th dimension of the i-th individual (i=1, , NP and j=1, , D).
In addition, SOMA also uses operators of perturbation and migration. The perturbation is analogous to the mutation process in genetic algorithms. However, the result of such an operation is not a property change of an individual but its movement vector → m to the leader is perturbed (interfered), i.e. it is not directed to the leader (as seen in fig. 3). → The movement vector m represents the distance between starting point of a
given individual and the leader, i.e. in the vector description: m= rL − r0 ,
(6)
where rL and r0 are vectors of the leader and the starting point of a given individual, respectively.
Figure 3: Relations between vectors r0 , rL and r in a 3-dimensional space (D=3); I0 – starting position of an individual, L – leader. Hence, the perturbation has following influence on the real position of such an
individual in next step r : r= r0 + m. p.vPRT ,
(7)
where p is the order of steps on a path from a given individual at the starting point r0
to the leader rL , i.e. p=k.Step, k=0, 1, …, n, where Path=n.Step (individual
steps in the fig. 3 depicted as bullets •). The elements of the perturbation vector v PRT
are then created in each migration cycle by a condition: if rndj < PRT then
v PRT j
=1, else v PRT j = 0, where rndj is a randomly generated number and j is the
index for a given property (j=1, , D). In other words, if PRT has a small value
then v PRT will have mostly zeros and the perturbation will affect direct movement of a given individual to the leader, i.e. the movement vector → m will be modified.
Only the dimensions where values of v PRT j are adjusted to 1 will not be perturbed and the movement will be similar to the original form of → m (see fig. 4). Similarly, migration is analogous to crossover in genetic algorithms. During one migration cycle (7) is processed in steps, which corresponds to mapping the state space. Although there does not exist any generating new populations but this representation is equivalent to a sequence of descendants depicted in the fig. 4 as bullets (one step – one descendant or one element of given population). Also the best solution will be chosen and after the migration cycle the individual will come back to the best position, which corresponds to the selection in genetic algorithms. Generating new populations is substituted by migrating individuals in the state space. There exists one significant difference in comparison to genetic algorithms, where mutation and crossover are timely divided operations but as seen in (7) SOMA perturbation and migration are processed simultaneously. Processing in SOMA depends on the strategy used. There are several possible strategies but the strategy All-To-One seems to be the primary one and the following process will be explained using this kind of strategy.
I vPRT = [1,1]
L
Step vPRT = [0,1]
Path
Figure 4: Influence of the perturbation vector v PRT and movement vector → m. in a 2dimensional space; I – individual, L – leader, dashed arrow – perturbed, solid arrow – not perturbed. First, after some initialising steps like defining managing and finishing parameters as well as creating the population from the specimen each individual is evaluated by a fitness function. The best individual will be chosen for a leader in the next migration cycle. After that individuals start to move to the leader in jumps calculated in (7) and mutually distanced by the parameter Step. After each jump (step) the individuals are evaluated by the fitness function. If the evaluation is better than the previous one it is remembered. After individuals have reached the
last jump determined by the parameter Path they return to new positions where they found the best fitness, i.e. besides the leader other individuals are moved to another position (fig. 5). In other words, they did searching in the state space and migrated. In such a manner one migration cycle has been finished and a new one immediately starts after a new leader (the best individual) has been determined.
4 1
3 2
L
L 1
2 3
4
(a)
(b)
Figure 5: Migration process of individuals 1 – 4 to the leader L from the position (a) to (b) during one migration cycle. As seen above the size of population remains the same, even the individuals are the same. There will not be generated any new population and no selection in the sense of genetic algorithms will be done. The acquired knowledge remains in each individual and we can observe certain learning process during migration cycles. The only kind of selection can be observed in choosing the leader, which depends on the quality of an individual (fitness value). Fig. 5 can be drawn for each migration cycle, subsequently a sequence of such figures can be done and we can observe very interesting arising as well as cancelling structures of individuals. The strategy of information interchange, i.e. cooperation and competition in searching a leader can be withdrawn. In spite of
genetic algorithms where no information interchange among individuals arises it represents a new synergic quality. Therefore SOMA should be rather classified into the group of the so-called memetic algorithms because it is based on information evolution in other words. There is a kind of learning and the optimisation is based not only on blind stochastic generating new possible solutions. This effect can explain a quicker as well as more reliable optimisation process for searching global extreme than genetic algorithms. Concerning terminating the optimisation two finishing parameters are very important – migration and accepted error. The migration parameter is in other words the number of migration cycles, comparing to genetic algorithms it is the number of populations. This parameter prevents never-ending optimisation process and it plays the role of a hard stop if the accepted error is not reached. The sense of accepted error is based on an assumption the found result is more reliable if other individuals also reach good fitness values. The principle of a certain preferred element, i.e. elitism, is not supported by SOMA.
4
Path Planning in the Parking Problem The parking problem puts some limitations on making path plans. They are
caused partly by traffic rules and partly by risk of mutual crashes. Therefore finding a reasonable balance among these contradictory requirements is the crucial moment, which determines the quality of obtained results. Just searching for such a balance is the task of the presented optimization approach based on SOMA. Under the name parking problem several mutually connected aspects can be considered in literature. In this case we take into account the problem of path planning, i.e. finding a sequence of edges leading from the starting position
(entrance to a parking place) to the aimed (chosen) position. Let us suppose a parking place depicted in fig. 6. There are depicted parking boxes (solid drawing) and routes with crossings (dashed drawing). Occupied boxes are denoted by X. Further, it is surrounded by various shops and customers try to park their cars as close to their chosen shops as possible. However, there is still one fact more it is necessary to take into consideration. It is the so-called path cost (the more expensive the less suitable). The traffic situation can be so complicated it would be better to park a little farther than to risk a traffic jam, etc. It would be better at first to consider several potential paths leading to a reasonable surrounding of a given shop and then compute their costs. After considering distance of a parking box and cost of getting there the best path will be chosen. This is a typical task for each driver coming to a larger parking place. The final aim of this approach is to propose convenient means for constructing a consultation system, which would be able to navigate drivers in environments of large parking places or traffic systems of bigger downtown areas. Let us suppose the form of the parking place as well as information of occupied parking boxes are known (simply realizable by camera systems). Such a parking place can be transformed into an oriented evaluated graph because we know lengths of routes and will be able to calculate traffic costs, too. In that case if we can estimate the minimum traffic costs the path finding and planning problem can be solved as graph search using algorithms like A*, which is able to find the optimal path (for detailed description see e.g. (LaValle, 2006)).
S2
S1
S18
X X
X
X X
X
S3
X
S4
X
S17 X
X X X
X
S5
X
X X X
X X
X X
X X
X X
S6 X
S16
S15
S14
S7 X X X X
X X X X
S13
X X X X X
X X X X X S12
X X X X
X X
X
X X
S8 X
X
S11
X
S9
S10
Figure 6: Example of a parking place with some occupied boxes denoted by X with allowed routes and crossings (dashed drawing); Si – surrounding shops. For path planning at least these criteria are necessary to be taken into account, which summarize the path costs, too: • path length, • number of turns (the less the better), • traffic cost (waiting). Path length and number of turns on crossings can be calculated from the scheme of a parking place very easily but the criterion traffic cost requires taking traffic rules into account, especially relations between main and minor routes and rules concerning turns on crossings. From this reason it is necessary to know path plans of other cars, which enable to compute waiting. Therefore it is suitable to create a system for traffic simulation whose output is a timetable describing on
what place and at what time a car will be. For a given time value we can get an overview about cars positions. All three mentioned criteria are defined on diverse dimensions. Therefore, it will be necessary to merge them into a variable named as path cost. Its values will help the algorithm in deciding what path will be preferred. For this purpose a simple FCM will be used (see fig. 7). Weights w1, w2 and w3 determine the influence of chosen criteria. A user can adjust them to suit his/her individual needs. In such a manner we can modify strategies for choice of a parking box depending on various circumstances. The output from the node path costs is the edge value. Besides path costs also the criterion – distance between a parking place and the final destination (a certain shop), i.e. closeness of a parking place (box) is taken into account in the same way as path costs and the final result is the suitability of chosen parking place.
Figure 7: FCM for calculating values of graph edges.
5
Application of SOMA in Adaptation of FCM in the Path Planning In this paper SOMA is used for adjusting parameters of FCMs like depicted in
fig. 7. In general, the adjustment of parameters is given by balance between a defined fitness function and constraints resulted from intrinsic properties of the problem solved. The fitness function can be basically constructed in two ways. The first approach is convenient for purposes of direct error minimization between real and required outputs from FCM if FCM models a system but training data are necessary. The second approach is suitable if the fitness function acts as a search function for equilibrium among several criteria. In other words, it is the case of multi-criteria decision, which is also the path planning problem. Looking at fig. 7 we can see FCM to be adapted is also its own fitness function. Its output – the suitability of parking place should be maximized and the corresponding parameters, i.e. weights w1, …, w5 as well as parameters of membership functions in the nodes of FCM are searched results. As seen in fig. 7 the function of FCM is analogous to a complex sum by (3) where path costs are computed merging path length, number of turns and traffic cost. Concurrently, path costs and closeness of a parking place are contradictory criteria and the role of the node suitability of parking place is to find proper compromise. To restrict growing of fitness function values only to a bounded value it is necessary to define some constraints, too. In this case they are mostly traffic rules for behaviour on a parking place like e.g. in fig. 6, featured in next section. However, there are also capacities of roads and maximum allowed values like waiting times and distances from the parking place to a given shop. As users can
have different preferences relating waiting times and distances it is possible also manually to adjust these maximum allowed values. Summarizing the above, we can construct an individual, i.e. parameters of FCM as weights w1, …, w5 and parameters of membership functions in the nodes (see fig. 7). In this specific case in each of the last three processed nodes there is only one membership function transforming input values to a grade of fulfilment of given criterion, e.g. function for closeness of a parking place. For various parameters we will get various FCMs. The FCM with the best (highest) value of suitability of parking place will be the winner. As in this FCM there are incorporated contradictory requirements and some user’s maximum allowed values the optimal solution may not be that one with the highest values of weights as it might be supposed looking at fig. 7.
6
Traffic Simulation System Although thanks to properties of the A* algorithm the existence of a traffic
simulation system is not requisite for the function of path planning but it can optimize found solutions very significantly. It serves for calculation of traffic cost, i.e. waiting, which is necessary to continue the chosen path. We suppose the path plans of all cars are known. On their base as well as on the base of the parking place form and traffic rules we can construct the so-called temporal-spatial plan for the entire traffic, i.e. besides the spatial information (form of a path) also temporal information (when and where) will be added. Calculating the temporal part actually represents computation of waiting. For this purpose it is necessary to incorporate traffic and crash preventing rules into the calculation algorithm, i.e. rules for main and minor roads and prohibition to put
two cars on the same place at the same time. Finally, it is also necessary to take into account the capacities of edges (roads). In such a manner we will compute timetables for each car, i.e. we will know where a car will be at a certain time. The set of these timetables creates the temporal-spatial plan. The difference between total number of time steps and steps of free (not restricted) movements from a starting point to a goal gives the value of waiting. Traffic simulation requires creating a centralized database, which will contain all timetables and thereby the entire planning system must be centralized. In fig. 8 we can see the overall structure of the path planning system. The blocks suitability evaluation, planning algorithm A* and traffic simulation are algorithmic parts of the planning system. For suitability evaluation an FCM from fig. 7 is used and waiting is the result of the traffic simulation system. Necessary data for evaluation of a chosen parking box (band-shaped block), which initializes the computation, are stored in two databases parking place information and temporal-spatial plan. The database of parking place is static. There are stored geometric data about its form, boxes and paths (roads). This database will be changed only if some construction changes are done. The database of the temporal-spatial plan is dynamic and it must be updated every time step when new calculations are performed. Static and dynamic natures of these data are the main reason why they are divided into two distinct databases. Oval blocks describe parts of information, which enter or result from modules of the path planning system. Parking boxes that are evaluated are determined by the closeness function (fig. 7). The whole computational cycle is initialized extra for each chosen parking box to be evaluated. Thereby we will get suitability evaluations for each chosen parking box and that one with the best suitability will be definitely offered.
Suitability of parking box
Suitability evaluation
Evaluated parking place Path length
Number of turns
Parking place Path plan to a parking place
Traffic cost
Planning algorithm A*
*
Waiting
Parking place information
Temporal -spatial plan
Traffic simulation * - investigated edge
Figure 8: Structure of the path planning system. The overall function of the path planning system is following: 1. At first, it chooses several potential free parking boxes in surroundings of a preferred shop (given by the closeness function). 2. The suitability of each chosen parking box is computed, i.e.: a) The A* will find optimal paths to these boxes. b) Continuing calculation in fig. 7 we will get suitability for each of chosen boxes. 3. The box with the best suitability will be offered. 4. Finally, the timetable of the proposed path plan will be inserted into the temporal-spatial plan.
7
Experimental Results and Conclusions For experimental purposes an example of the parking place depicted in fig. 6
was used. Numbers of starting positions, occupied parking places and traffic loads were generated. Similarly, various combinations of maximum allowed distances (parking place – shop) and waiting times were used to simulate different needs of users. Experiments showed it is advantageous to define so many criteria as possible. Their higher number decreases the number of possible solutions so the number of expanded nodes by the algorithm A* and computational complexity will be lesser. Concerning the strictness of these criteria, if they are too strict the algorithm will try to expand more nodes but without any better results. On the contrary, if criteria are too weak there is a risk the algorithm will find a solution very quickly but not the optimal one. This fact again confirms reasons for proposing a traffic simulation system, which would at least roughly be able to simulate traffic load and waiting. The form and parameters of the closeness function determine the surrounding, which potential parking boxes are searched in. It is necessary to adjust this range not too strictly because only few boxes can be found (extremely none). Experiments, which dealt with adjusting the membership function of closeness being directly dependent on the users’ maximum allowed values of distance and waiting, only confirmed reality of the proposed system because in many cases close parking boxes were charged with high traffic delays and it was advantageous rather to park on a little distant place than to wait in a long crowd.
To compare the quality of obtained results other methods for adaptation of FCM described in (Vaščák and Madarász, 2010) were used but values of the fitness function generated using SOMA were distinctly better. The proposed planning system has two main advantages. Firstly, it is easily possible to modify it by customer’s efforts. For example, for a disabled customer the criterion of closeness will be much more important than waiting. It is necessary only to change the maximum allowed values and thereby the function closeness. Secondly, the system described by FCM is very comprehensive. Relations between criteria are clear. It is very easy to add further additional criteria, etc. The system is thanks to the properties of the A* algorithm (see (LaValle, 2006)) also able to work with imprecise information about traffic delays with satisfactory results (although not optimal). In addition, the total number of parameters is small and their adjusting is relatively easy using such optimization algorithms like SOMA. Finally, if the search criteria are properly adjusted then the A* will enable quick finding an optimal solution. Experiments showed that adjusting parameters of such a FCM takes only a few modification cycles. For future development there are two perspective areas. Firstly, to ‘fuzzify’ the traffic simulation system, which would be able in certain measure to absorb some unexpected events and the system could become more robust with consecutive stability analysis, e.g. (Blažič and Škrjanc, 2007). Another possibility of ‘fuzzification’ is to apply an information retrieval system that attempts to find exact answers to user’s questions expressed in linguistic form (Ortiz-Arroyo and Christensen, 2009), e.g. their use in adjusting the function closeness linguistically (not numerically as it is here) or to advance to the so-called computing with words (Martinez et al., 2010) at all. Secondly, to propose further adaptive mechanisms
for a self-tuning FCM like described for instance in (Preitl et al., 2006) or in (Shen et al., 2010) where a special semi-supervised learning method is proposed.
References Aguilar, J. (2003), "A Dynamic Fuzzy-Cognitive-Map Approach based on Random Neural Networks", International Journal of Computational Cognition, Vol. 1, No. 4, pp. 91–107. Blanco, A., Delgado, M. and Pegalajar, M.C. (2001), “Fuzzy Automaton Induction Using Neural Network”, International Journal of Approximate Reasoning, Vol. 27, No. 1, pp. 1-26. Blažič, S. and Škrjanc, I. (2007), “Design and stability analysis of fuzzy modelbased predictive control – a case study”, Journal of Intelligent and Robotic Systems, Vol. 49, No. 3, pp. 279-292. Chen, S.M. (1995), “Cognitive-map-based Decision Analysis Based on NPN Logics”, Fuzzy Sets and Systems, Vol. 71, No. 2, pp. 155-163. Coelho, L.S. (2009), "Self-organizing migration algorithm applied to machining allocation of clutch assembly", Mathematics and Computers in Simulation, Vol. 80, No. 2, pp. 427–435. Groumpos, P.P. (2010), "Fuzzy Cognitive Maps: Basic Theories and Their Application to Complex Systems", in Glykas, M. (Ed.), Fuzzy Cognitive Maps, Springer Verlag, Berlin, Germany, pp. 1-23. Johanyák, Zs.Cs. and Kovács, Sz. (2006), “A Brief Survey and Comparison on Various Interpolation-based Fuzzy Reasoning Methods”, Acta Polytechnica Hungarica, Vol. 3, No. 1, pp. 91-105.
Kosko, B. (1986), “Fuzzy cognitive maps”, International Journal of ManMachine Studies, Vol. 24, No. 1, pp. 65-75. LaValle, S.M. (2006), Planning Algorithms, Cambridge University Press, Cambridge, United Kingdom. Martinez, L., Ruan, D. and Herrera, F. (2010), "Computing with Words in Decision support Systems: An overview on Models and Applications", International Journal of Computational Intelligence Systems, Vol. 3, No. 4, pp. 382 - 395. Nollea, L., Zelinka, I., Hopgood, A.A. and Goodyear, A. (2005), “Comparison of an self-organizing migration algorithm with simulated annealing and differential evolution for automated waveform tuning”, Advances in Engineering Software, Vol. 36, No. 10, pp. 645–653. Ortiz-Arroyo, D. and Christensen, H.U. (2009), "An optimized soft computingbased passage retrieval system", Control and Cybernetics, Vol. 38, No. 2, pp. 455-479. Parsopoulos, K.E., Papageorgiou, E.I., Groumpos, P.P. and Vrahatis, M.N. (2004) “Evolutionary Computation Techniques for Optimizing Fuzzy Cognitive Maps in Radiation Therapy Systems”, in Deb, K. et al. (Eds.), Lecture Notes in Computer Science, Springer Verlag, Berlin, Germany, Vol. 3102, pp. 402-413. Papageorgiou E.I., Parsopoulos K.E., Stylios C.D., Groumpos P.P. and Vrahatis M.N. (2005), “Fuzzy Cognitive Maps Learning Using Particle Swarm Optimization”, International Journal of Intelligent Information Systems, Vol. 25, No. 1, pp. 95-121.
Papageorgiou E.I., Stylios C.D. and Groumpos P.P. (2006), “Unsupervised Learning Techniques for Fine-Tuning Fuzzy Cognitive Map Causal Links”, International Journal of Human-Computer Studies, Vol. 64, No. 8, pp. 727743. Preitl, St., Precup, R.E., Fodor, J. and Bede, B. (2006), “Feedback Tuning in Fuzzy Control Systems. Theory and Applications”, Acta Polytechnica Hungarica, Vol. 3, No. 3, pp. 81-96. Shen, F., Yu, H., Kamiya, Y. and Hasegawa O. (2010), "An Online Incremental Semi-Supervised Learning Method", Journal of Advanced Computational Intelligence and Intelligent Informatics, Vol.14, No.6, pp. 593-605. Stach, W., Kurgan, L., Pedrycz, W. and Reformat, M. (2005), “Genetic learning of fuzzy cognitive maps”, Fuzzy Sets and Systems, Vol. 153, No. 2, pp. 371401. Vaščák, J. (2005), “Evolutionary migration algorithms for scheduling”, in proceedings of the 3th International Symposium on Applied Machine Intelligence and Informatics, Budapest Polytechnic, Budapest, Hungary, pp. 21-32. Vaščák, J. and Madarász, L. (2010), “Adaptation of fuzzy cognitive maps – a comparison study”, Acta Polytechnica Hungarica, Vol. 7, No. 3, pp. 109122. Zelinka, I. (2002), Artificial Intelligence in Problems of Global Optimization (in Czech), BEN, Prague, Czech republic.