[ieee 2012 ieee international conference on fuzzy systems (fuzz-ieee) - brisbane, australia...
TRANSCRIPT
AFCMAC: an AO
Elham Ghassemi IRIS Group, Centre d’Études de la Senso
UMR 8194, CNRS, Université Paris DParis, France
Abstract— This paper presents an Auto-Adap(AFCMAC) for horizontal voluntary eye reading. Dynamic Fuzzy Logic is used to spadaptive learning ability and to increase the rthe traditional CMAC. We have evaluated testing it on the eye movements – measureVision Eye-Tracking device – of 5 dyslexic achildren, in a seated position with the head-fixFrench text in near viewing distance. Wparameter of standard deviation of binocularThe evaluation results have shown a satisfyinthe AFCMAC to learn dynamically these adjustments during binocular fixation word agroups of children.
Keywords- Cerebellum, CMAC, Dynamic Fadaptive Fuzzy CMAC, Adaptive Motor ContControl, Vergence Eye Movement, Eye Training
I. INTRODUCTION The cerebellum is located below the cer
and behind the brain stem. It contains nearland synaptic connections in the brain. Itcomponent of motor events learning, controlDespite its regular structure, the cerebellumvarious distinct regions, each of which receivfrom the different parts of the brain, the spifrom the muscle spindles, joints and tendoinformation into the different motor characteristics suggest that the regions operform the similar operations of calculadifferent inputs.
The cerebellum plays a major role in thmuscle activity for the production of smootinvolved in a feedback loop for muscleorganization of inputs to and outputs fromindicates that the cerebellum compares signals (the intended movement) with externa(the actual movement). When the movemencerebellum is able to generate corrective gradually reduces the error. The correctiveforward or anticipatory actions that operate motor systems of the brain stem and cerebral
Auto-adaptive Fuzzy COculomotor System
ori-Motricité, Descartes,
tes.fr
Zoï KIRIS Group, Centre d’ÉtuUMR 8194, CNRS, Servi
Européen Georges Pzoi.kapoula
ptive Fuzzy CMAC movements while
peed up the auto-robust capability of
the AFCMAC by d by the Chronos and 5 non-dyslexic xed while reading a
We have used the r fixation disparity. ng performance of different vergence after word in both
Fuzzy Logic, Auto-trol, Ocular Motor
g
rebral hemispheres ly half of neurons t is an important l and organization. m is divided into
ves the information inal cord, and also ons, and sends the
systems. These of the cerebellum ation, but on the
he coordination of th movement. It is e movement. The m the cerebellum internal feedback
al feedback signals nt is repeated, the
signals and thus e signals are feed-on the descending cortex [1].
Figure 1. An example two-input twothree layers correspond to sensory feat
purkinje cells respectively. Layer 1coLayer 2 contains the association neuro
from each input array. Layer 3 containof which computes a we
In other words, through theis able to:
• Correct ongoing movethe intended path.
• Modify motor programso that future movemelearning [2].
The cerebral cortex and thea mosaic texture represented microcolumns [3] and the cemicrozone of the cerebellum network with three layers [5Cerebellum Model Articulatioinspiration of cerebellar cortex CMAC is a feed-forward assothat modelizes how the cerebeits memory and returns its outtwo-output traditional CMAC n
The CMAC structure uses the learning and the acquisitionis recognized for its fast lea
CMAC for
Kapoula udes de la Sensori-Motricité, ice d’ophtalmologie, Hôpital
Pompidou, Paris, France [email protected]
o-output traditional CMAC network. Its ture-detecting neurons, granule cells and ontains the input neurons (X1 and X2). ons which are connected to one neuron
ns the output neurons (Y1 and Y2), each eighted sum of all layer 2.
ese comparisons, the cerebellum
ements when they deviate from
ms in the central nervous system ents attain their goals, i.e. motor
e cerebellar cortex, each one has by the recurrence of the brain
erebellar microzones [4]. Each can be compared to a neural
5, 6], as followed blow. The on Controller (CMAC) is an function for motor control. The
ociative memory neural network ellum takes its inputs, organizes tputs. Fig. 1 shows a two-input network [7].
error-correction signals to lead n of memory skills. The CMAC arning, its easy calculation, its
U.S. Government work not protected by U.S. copyright
WCCI 2012 IEEE World Congress on Computational Intelligence June, 10-15, 2012 - Brisbane, Australia FUZZ IEEE
localized generalization and its rapid algoritcapabilities. However, the structure of traditwo major drawbacks:
• The memory requirement grows wiinput variables. It is therefore not terms of data storage.
• In addition, since a trained CMAC isnot possible to extract structural knsystem or to incorporate expert’s kno
These limitations lead us to use Fuzzmapping a Fuzzy Logic inference schemestructure. All the more, the CMAC structurFuzzy Logic implementation. Recently, seve(FCMAC) structures have been studied [9].parts of these approaches, neither a full, norLogic based implementation can be seen.
The CMAC is initially applied in robot arAlbus [10]), but in this work, we have appliesystem. Particularly we are interested involuntary eye movements like saccades, vfixations. Saccades are the rapid eye movembetween targets differing in direction.movements are the slow eye movements thwe change our binocular fixation between tdistance but not in direction relative to the change our fixation between targets that diffeand direction. Thus vergence eye movemewith saccades [11]. During reading these eyrequired. That means, in addition to saccadeof the text needs continuously adjusting the vappropriate fusion of the two retinal imageword after word.
In consequence, in this work we areparameter of standard deviation of binocularBecause without active and fine-tuned vergthe fusion process might fail and reading m[12-14]. An intact cerebellum – this is not th[15, 16] – is a prerequisite for optimperformance. The cerebellum fine-tunes eacof eye movements therefore they work togemaintain images of objects of interest on tvisual acuity is best [17].
II. PROPOSED MODEL: AFCMFuzzy set theory has been successfull
variety of fields in recent years. It is a mmodeling uncertainties associated with imprecision (inherent in human reasoning), ainformation regarding a particular element hand [18].
Integrating Fuzzy Logic into the CMACinterpretable system. The knowledge extractedata, becomes easily comprehensible by expert’s knowledge can be integrated into thlearning phase. The proposed learning approand/or modify the Fuzzy rules dynamicmodifications, the learning speed can indeed
thmic computation itional CMAC has
ith the number of very efficient in
s a black box, it is nowledge from the owledge. zy Logic [8] for
e into the CMAC re is adaptable for eral Fuzzy CMAC . But in the major r a dynamic Fuzzy
rm control (first by ed it in oculomotor n the (horizontal) vergence and also
ments that we make Pure vergence
hat we make when targets differing in head. Usually, we
fer in both distance ents are combined ye movements are s, binocular vision vergence angle for es during fixation
e focused on the r fixation disparity. gence adjustments, might be disturbed he case in dyslexia
mal ocular motor ch of the subtypes ether to bring and the fovea – where
MAC ly employed in a marvelous tool for
vagueness, with and with a lack of of the problem at
C converts it to an ed from its training
an expert. Also he structure in the oach is to generate cally. With these become very fast.
Figure 2. In this example, there arvariable: Low, Medium and High. To of the Fuzzy set are chosen 0, 25, 50, 7
a part of system configuration. Therelationship with the
Figure 3. The A
Fig. 2 shows a Fuzzy AFCMAC, binary inputs are refunctions that may be in difMamdani inference system [20]inputs pass through trapezoid Fthe weights are also fuzzified (addition to weights, Fuzzy ftrained. That means, the breakpfunctions are dynamically calcFinding these points is one of thAFCMAC, the memory layers layers in which each cell repreinput and the output layers togcells are connected to final resp
Table 1 presents the AFCMminimum and maximum valuevalue beyond the minimum anthe system must be aware of thmapping algorithm, shown in Tthe input goes outside of this vnot execute it, but it will still indexes. Similar to the traditioalso hashing method [21]. In thashing method is a memory mthe number of weights and cotable. The principal idea by hamemory into a smaller physicaaddress in the virtual memogenerate the corresponding adDuring the generation of thesehad the same physical addresreplace the first.
re three possible values for the Fuzzy simplify this example, the break points
75 and 100; but choosing these points is e values of these points have a direct e system performance.
AFCMAC structure
membership function. In the eplaced with Fuzzy membership fferent types [19], and it uses ]. In the AFCMAC structure, the
Fuzzy membership functions and (Fig. 3). In the learning phase in functions’ parameters are also points of the Fuzzy membership culated to adjust the AFCMAC. he system’s training steps. In the are converted to the Fuzzy rule sents a Fuzzy rule that links the
gether (Fig. 3). Outputs of these ponse unit via Fuzzy weights.
MAC algorithm. Each input has a e. The weight table rejects any nd maximum ranges. Therefore ese authorized input ranges. The
Table 1, ensures this task. Thus if valid ranges, the AFCMAC will generate the valid weight table nal CMAC, the AFCMAC uses the use of the weight table, the
management technique to reduce onsequently the size of weight ashing is to map a large virtual
al memory. That means, for each ory, the hashing method will ddress in the physical memory. e addresses, if two weights have ss, the second one will simply
TABLE I. A PART OF THE AFCMAC ALGORITHM
Variablesfuzzy X[inputNumber]: Input array fuzzy Y[outputNumber]: Output array fuzzy target[outputNumber]: Output target array fuzzy AU[inputNumber]: Association Unit array int inputNumber : Number of inputs (inputNumber ≥ 1) int outputNumber : Number of outputs (outputNumber ≥ 1) int associationNumber : Number of association units (associationNumber ≥1) int displacAU[i,j]: The displacement of AU[i] along X[j] (0 ≤ displacAU[i,j]< associationNumber) real min[i] and max[i]: Input ranges; the minimum and maximum values for X[i] int res[i]: Resolution of X[i] (res[i]> 1) int weightNumber : The total number of physical AFCMAC weights per output int index[i] : An index into the weight tables for AU[i] int W[i,j] : (Weight table) ith weight table for Y[j] int[] Setµ(X[])
for (i=1; i<=inputNumber; i++) if (X[i]<min[i]) then
X[i]=min[i] if (X[i]>max[i]) then
X[i]=max[i] q[i] = ⎣ res[i] * ( X[i] – min[i] ) / (max[i] – min[i] ) ⎦
if q[i] ≥ res[i] then q[i]=res[i] - 1 for (i=1; i<=associationNumber; i++)
for (j=1; j<=outputNumber; j++) p = ⎣ (q[i] + d ) / i ⎦ µ[i] = HASH (i, p , p , …, p N )
return(µ[]) fuzzy INOUTMAP(X[]) //Maps the AFCMAC input to its output
for (i=1; i<=outputNumber; i++) Y[i] = 0 for (j=1; j<=associationNumber; j++) Y[i] = FuzzyAddition(Y[i] + W[i, µ[j]])
return(Y[]) TRAIN(TARGET[], Y[], α) //Train the AFCMAC output to reach a given target
For(i=1; i<=outputNumber; i++) temp = FuzzyMultiply(Fuzzy(α/ associationNumber) ,
FuzzySubstraction(TARGET[I], Y[i])) For(j=1; j<=outputNumber; j++)
W[i, µ[j]] = FuzzyAddition(W[i, µ[j]] , temp) int HACH( p , p , …, p N )
h=0 for (i=1; i<=inputNumber; i++) h=(h*( ⎣ (res[i] - 2 ) / associationNumber ⎦ + 2 ) + p return(h)
The training is another important duty of the AFCMAC. The Train function takes the desired output for a given input as input-output pairs (training points). The training process adjusts the weights dynamically to achieve the desired results. Generally there are two methods to present the training points to the CMAC:
• Random order: The objective of this method is to minimize learning interference [22]. To use this method, the CMAC must be trained to represent some predefined functions. In this case a set of input-output pairs is presented to the CMAC in random order.
• Trajectory order: This method is convenient when the CMAC is being used in an online controller. In this case as the inputs are tied to the system sensors, they will probably vary gradually and each input-output pair will be close to the previous one in the input space.
To evaluate the AFCMAC we have used the Trajectory order method. Target training and Error training are two different training modes in the AFCMAC.
Figure 4. An example of input data as XML file
In Target training mode, the AFCMAC increases each of the referenced weights so that the output becomes closer to the desired target value. That means, in this mode, the AFCMAC increases the output to seek a given target. But in the Error training mode, the AFCMAC increments each of the referenced weights to increase the output vector in the direction of the error vector. In this mode, the AFCMAC lets the output to grow in a given direction. Both of these modes are implemented in the AFCMAC training procedure.
The weights, as all the other parameters, are fuzzy values and the dynamic Fuzzy Logic functions are used to adjust them dynamically.
III. EVALUATION RESULTS We have used Visual C# .net to implement the AFCMAC
model. Fuzzy Logic is implemented by using DotFuzzy (www.havana7.com/dotfuzzy) which is an open source stand-alone class library for Fuzzy Logic. In the system the dada exchange is done by using XML files as shown in Fig. 4.
We have used the data acquired from [14] to evaluate the AFCMAC. To do this, we have chosen 5 dyslexic and 5 non-dyslexic children. Each child was seated comfortably in an adapted chair and her/his head was stabilized with a chin rest while reading a French text in the viewing distance of 40 cm.
The binocular eye movements were measured by the Chronos Vision Eye-Tracking device. It records digital image sequences and evaluates the changes of offline eye position with a reported resolution of less than 0.1 deg. We have used the parameter of standard deviation of binocular fixation disparity.
This measure – which is larger for dyslexic children [14] – gives us a summed estimation of the quality of vergence adjustments during fixations. In fact, the angle of vergence of the two optic axes should be adjusted to the depth of the screen and also should be maintained in a sustained manner during saccades and fixations so that a single clear image of each word to be projected onto the fovea [14].
Fig. 5 shows the learning performance of the AFCMAC after 100 and 1000 times of simulation, for non-dyslexic children and Fig. 6 shows the simulation results for the dyslexic children.
Figure 5. The simulation results of the AFCMAC for the eye movements
(vergence adjustments) of non-dyslexic children
Figure 6. The simulation results of the AFCMAC for the eye movements
(vergence adjustments) of dyslexic children
As the figures show, the AFCMAC is able to learn the eye movements (vergence adjustments) of both groups perfectly. This fulfilled performance of evaluations is resulted by using the dynamic Fuzzy Logic. For each subject, the AFCMAC adjusts the breakpoints of Fuzzy sets dynamically in order to accomplish the best values. In other words, the AFCMAC uses an auto-adaptive method to learn the subjects’ vergence adjustments.
IV. CONCLUSIONS AND FUTURE WORKS In this paper we have presented an auto-adaptive CMAC,
based on dynamic Fuzzy Logic, called AFCMAC. The principle design step was the selection of the best membership functions and Fuzzy rules. Using dynamic Fuzzy Logic training provides a high performance for the AFCMAC. Thanks to this method, the large variations of the evaluation profiles were correctly learned by the AFCMAC.
The AFCMAC is easily interpretable by an expert because, its training requires only the Fuzzy rules which are provided by the human experts.
Our future work consists of improving the learning performance of the AFCMAC and using it in a medical application. The idea is to use the AFCMAC to develop an intelligent eye training expert system.
REFERENCES [1] Ghez, C., & Thach, W.Th., (2000). Principles of Neural Science,
chapter: The Cerebellum. McGraw-Hill, New York, 4th edition, 832-852. [2] Shadmehr, R., Wise, S.P., (2005). Computational Neurobiology of
Reaching and Pointing. A Foundation for Motor Learning. MIT Press, Cambridge, MA.
[3] Szentagothai, J. & Arbib, M.A., (1975). The module-concept in cerebral cortex architecture. Brain Research, 95, 475-496.
[4] Ito, M., (1984). The cerebellum and neural control. Raven Press, New York.
[5] Marr, D., (1969). A theory of cerebellar cortex. Journal of Physiology, 202, 437-470.
[6] Albus, J.S., (1971). A Theory of Cerebellar Function. Mathematical Biosciences, 10, 25-61.
[7] Smith, R.L., (1998). Intelligent Motion Control with an Artificial Cerebellum. Ph.D. Thesis, Department of Electrical and Electronic Engineering, University of Auckland, New Zealand.
[8] Zadeh, L.A., (1965). Fuzzy sets. Information and Control, vol. 8(3), 338-353.
[9] Mohajeri, K., Zakizadeh, M., Moaveni, B., Teshnehlab, M., (2009). Fuzzy CMAC Structures, FUZZ-IEEE.
[10] Albus, J.S., (1975). A new approach to manipulator control: the cerebellar model articulation controller (CMAC). ASME Journal of Dynamic Systems, Measurement, and Control, 220-227.
[11] Erkelens, C.J. (2011). A dual visual-local feedback model of the vergence eye movement system. Journal of Vision, 11(10): 21, 1-14.
[12] Rayner, K., (1998). Eye movements in reading and information processing: 20 years of research. Psychol., Bull., 124: 372-422.
[13] Kliegl, R., Nuthmann, A., Engbert, R., (2006). Tracking the mind during reading: The influence of past, present, and future words on fixation durations. Journal of Experimental Psychology: General, 135: 12-35.
[14] Jainta S., Kapoula, Z., (2011). Dyslexic Children Are Confronted with Unstable Binocular Fixation while Reading. PLoS ONE, 6(4): e18694.
[15] Ramus, F., Rosen, S., Dakin, S.D., Day, B.L., Castellote, J.M., White, S., Frith, U., (2003). Theories of developmental dyslexia: insights from a multiple case study of dyslexic adults. Brain, 126 (4): 841-865.
[16] Stoodley, C.J., Stein, J.F., (2011). The cerebellum and dyslexia. Cortex, 2011, Jan; 47(1): 101-106. Epub 2009 Oct 21.
[17] Kheradmand, A., Zee, D.S., (2011). Cerebellum and ocular motor control. Frontiers in Neurology, doi: 10.3389/fneur.2011.00053.
[18] Zadeh, L.A., (1976). A fuzzy-algorithmic approach to the definition of complex or imprecise concepts. International Journal of Man-Machine Studies, vol. 8, no. 3, 249-291.
[19] Zadeh, L.A., (1975). The concept of a linguistic variable and its application to approximate reasoning - I. Information Sciences, vol. 8, no. 3, 199-249.
[20] Mamdami, E.H., Assilina, S., (1975). An experiment in linguistic synthesis with a fuzzy logic controller. International Journal of Man-Machine Studies, vol. 7(1), 1-13.
[21] Sedgewick, R., (1988). Algorithms. Addison-Wesley, Chapter 16, 2th edition.
[22] Thompson D.E. & Kwon, S., (1995). Neighborhood sequential and random training techniques for CMAC. IEEE transactions on neural networks, 6(1).