This document describes a co-evolving genetic algorithm called the filtering genetic algorithm (GA). It consists of two interacting GAs - GAfit and GAsch - and a filter. GAfit's population is evaluated using a modified function that incorporates the filter, which aims to direct the population away from areas of convergence found by GAsch. GAsch's population, consisting of schemas, is evaluated based on how well they cover strings in GAfit's population. The filter is updated based on the degree of convergence in GAfit's population to varying strengths influence GAfit's evaluation and drive it to new areas. The approach allows the algorithm to efficiently locate multiple optima in multimodal functions without getting stuck in local optim
2. discovered decreases, the population will move toward another
optimaJ area. In order _to realize ~ i s mec~s~ autonomously, we
propose the followmg operatmns: ftltenng, covering, and
extractl.on.
Whether the original string S is or isn't io the region represented by
the schema H , the new string S"" .. generated by the covering
operation is in this region. If the expected evaluation value of the
schema is large, it is quite possible that new strings generated by
tllis tnapping will get high evaluation values.
4.1 .I Filtering Operation
4 .1.3 Schema Extraction
The first operation of filtering is described here. The filter consists
of two sequences of length I, which correspond to the length of the
strings, and consist of real numbers, v" and v'. The jth element
of the sequence V' is represented hy v; Using t.his filter. the
The extracted schema is represented by H"' . The values of all its
p.ositions are defined by the following equations:
0, if z<l - P.., ,
(7)
1, ifz>P,u•
{ #, otherwise.
h =
't
string S, is evaluated by the modified evaluation function, as
follows:
G••• (S.)=G(S,)-
±•:•.
,.,
., _L:J
s'J
N
(2 )
(8)
•-
where s, is the value {0,1) of the jth position of string S,. As seen
whe re Pu, is the system parameter named the
in this equation, if v; is large. the strings which have values h (0 or
1) in lhejth position will receive a small evaluation value. Then, if
v;, in which j and h correspond to the local optima. has a large
value, the population will move away from these local optima and
IS expected to find another local optima. After it has converged on
one local optima, the population can be led away to another local
optima efficiently if the change of the filter is controlled properly.
Because the system doesn 't know what the local and global
optima are, it is impossible for the filter values to change when one
of the local optima is found. Therefore. the degree of convergence
ts used for deterrmmng the filter values. because the population
tends to converge on pealcs in the landscape of a problem whether
is calculated as:
they are optimal or not. Namely, all
threshold, 0.5 ~ Puo ~ 1, and z is the mean allele value at position
j . Eq. 7 is named the extract function.
v; =
v
;
*t,{
4.2 Schematic Structure of Filtering-GA
The filtering-GA consists of two GAs and a filter as shown in Fig.
2. OneGA is named GA,•. This is almost the same as a simple GA
except in its evaluation of strings. Systems which consist of several
GAs have already been proposed, such as the multi-level GA
[Grefenstette86] and so on. The two GAs in the filtering-GA malce
no hierarchy, and are not equal. They interact with each other and
evolve like a co-evolution system. The strings of GAm are
represented as S,w and the size of the population [[S,"Jt· is N,. Its
suings are evaluated through t.he filtering operation. The other GA
is named GAsch• and the members of its population are represented
in the form of schemata {0.1.#) . Every schema S,"" in the
v;
G~S,) xcomp(h,sJ}.
0, if h >' S· ,
h
comp(h ~s - ) = {
~'
v
1• ot erwtse.
extraction
(3 )
population [[S,"" J(· of GAsch is evaluated using the covering
(4)
operation. The population size of [[S,""]]"· is given by N,. The
filter is generated from GAsch and affects the evaluation of GA 50•
That is,
is the observed fllness of allele h at position j in the
current population. lf there are many strings whi c h ha,~ e value h in
the jth pos ition and their evaluation values are large. ': w ill be
large. The filter generated by these equations lowers the evaluation
values of strings which have value h in the jth position, in its
evaluation of the next generation by eq. 2 . As a result of this
procedure, the population moves away from the region where it has
converged (Fig. 1).
t~~~
"i"'jy,.t ~t ~
Fig. 2. Schematic diagram of filtering-GA.
4.3 Interaction among Two GAs and Objectivt Function
Fig. 1. Image of filtering operation.
4 .3 .I Evaluation Functions
4 .1.2 Covering Opera tion
The evaluation function of GAm• G,v, is given as the next
equation. and every soing S,"" of GAstr is evaluated a.s follows :
Th~
second ?peration of the filterin.g -GA is the covering operation.
Th1.s operation forces the populauon to converge in a particular
G,,(sw ) =G(S")-C,
reg10n [9] . Consider a schema Has a template of strings which
have windows at the position of the don't care marks #s. Then the
new string s~· is generated by putting this template on one string
S. This operation is formalized as follows:
s- = cover(H.S),
(5)
( )
_ _
1 , if hi "#,
5
6
' - hi, otherwtse.
±vf.
(9)
i•O
where G is given in eq. 1. s,~ is the value of the jth position of
S,'", v; is the jth value in V' of the filter, C, is the system
variable, and 0 s C, s 2 . Because the filter stores the tendency of
convergence, the population ofGA.a moves away from the region
of convergence. At each generation. the system records the
maximum and the average values calculated as G. If the best G
value discovered by GAm in a certain generation exceeds the
{s
155
3. average of all the G values obtained after P, generations ago. then it
would seem that GAsu is currently searching the most promising
region. Then, to weaken the influence of the filter on GA,~. C, is
reduced 2 x 1/ P, . The filter never affects GA,., when C, = 0. If
that condition is not satisfied. the search concerning the region
which GAm is currently searching seems to finish or that region is
not the most promising region. Then, tO stn:ngthen the influence of
the filter on GA,u. and to cause the population of GA 5u to move
away from that region, C, is increased l/ P,.. It is expected that the
influence of the filter will reject the convergence of GAsu when
C, =I, causing the power to avoid convergence when C, > I; and
when C, = 2. such avoidance power will be negatively coequal to
the convergence power of GA 50 with C, = 0. If it becomes C, < 0
or C, > 2 , C, is resettled at 0 or 2. P,. is named the history
number and is a parameter of the system.
Every schema of GAsch is evaluated by the following
equation:
C",(S;''•) = m;"'{c(cover(S,""
.s;•))}.
easily to be optimized. On the other hand, if a poor arrangement
(type- I) is used, the defining length of each building block is long
(type-2) , and then GAs can not easily converge to the optimal
solution. In both type, its global optima is 300.
Discontinuous Function is defined as follows :
kzK D,(S.),
F(S,J= j D 112
IK s;) '
<(
·
,
where
(10)
4.3 .2 Generation of Filter
The procedure for the generation of the filter is based on eq. 3 and
is modified as follows :
t:
••I
'
I_,,i=0.
,.,
(4-0·8 )
Otherwise,
I
K =300 and D,(S)= L :. , s,. It is deceptive function. To
optimize it, the schema of (0 ... 0# ... 11), in which all positions of left
half have Os. must be achieved. Its global optimum is 1.2 x K at
(0 ... 0 1. .. I) and its local optimum is K at (II... I ) .
The standard parameters used in the simulations are shown
in Table t. These parameters, for both the simple GA and the
filtering-GA, aren't adjusted for each problem. So, these two GAs
may be capable of exhibiting a higher performance than the results
shown here.
Fig. 3-a and 3-b repon the performances of the simple GA
and the filtering-GA on type-! and type-2 of 30-Bit, Order-Three
Deceptive Problem. These results were obtained by averaging over
5 independent runs. Although the population of the simple GA
completely converged onto a local optimum in both type, the
filtering-GA can find their optimal solutions.
Fig. 4 reports the performances of the simple GA and the
filtering-GA on Discontinuous Function. Although the population
of the simple GA completely converged onto a local optimum at
240, the filtering-GA failed optimization only once in 5 trials. This
failure was caused by the effect of the scheduling mechanism
introduced at eq. 9. The accurate acquisition of those schemata is
expected to be realized, if C, is changed in an adaptive way.
In both function, the filtering-GA discovered the local
optima as fast as the simple GA in the e"periments. Moreover,
premature 'on vergence never occurred, because it is able 10 avoid it
through using the filtering operation. Thus, the filtering-GA can
fast search local optima, using large selection pressure, without
convergence of the system.
This is the equation for obtaining the expected maximum evaluation
values of the schemata. The evaluation values obtained in this way
imply the possibility of evolution for the population in those
regions. Obviously, a large number of sampling points will ensure
accurate estimation. Therefore, all the strings of GAm arc utilized
in the evaluation of one schema of GAsch using the covering
operation.
_,
•
1 ~{a(s,"")
v,=N"- o(s.~')xcoml'h,s,,"")} ,
if
kE{O.I} . (II)
where o(H) is the order of the schema H. Based on the definition
of the schema, the don't care mark,#, matches both 0 and 1. but it
matches neither 0 nor I in the function comp(h,s) . The position of
#s in each schema never 3ffects the filter, because it has no
connection with the convergence of the search.
The population of GA..:h evolves and changes according to
eq. 10, and the filter generated from it varies, in each generation.
This means that the evaluation function of GAm given m eq. 9
changes at each generation. Under the evaluation function, which
changes drastically, the population doesn't evolve properly. Hence,
the average of all the filters generated after P,. generations ago is
used in eq. 9 . P, is the history number introduced at eq. 9.
6. CONCLUSION
This paper proposed an extended genetic algorithm , named the
fi ltering genetic algorithm (the filtering-GA ), as a multimodal
function optimizer. The filtering-GA is intended to solve GA-hard
multimodal functions, and to optimize GA-easy problems quickly.
It consists of two GAs and a filter. Two GAs influences each other
thorough their evaluation processes, and form a co-evolutionary
system. They suppress the convergence of oppenents, and avoid
sticking into local optima. The role of the filter is to smoothen the
interaction between the two GAs . Using the se three parts. the
filtering-GA can search widely throughout the search spaces of
problems, and discover many local optima sequentially. Its
conceptual and detailed definitions were given, and its functional
framework was discussed. In order to examine the search
performance of the filtering-GA, some experiments were carried
out, then it exhibited a higher performance and faster search than
the simple GA.
4.3 .3 Extraction nf Schema
To avoid system convergence, we introduce the third interaction
between the two GAs, named tl1e extraction. This operation is
used to estimate where GA,u is exploring in the search space, and
attracts the attention of GAscll to this region. In practice, the schema
which indicates such a region is extracted from the population of
GA, •. and is joined to the population of GAsch· To determine the
evaluation value Of the extracted Schema, CK>(Ho') , it is Settled as
max, G(S;'). Then the old schema. which has the lowest fitness
value in the population of GAsch. is replaced by this new extracted
schema H•'.
REFERENCE
{I] P. J. Angeline and J. B. Pollack, "Compttitive Environments
Evolve Better Solutions for Complex Tasks," Proceedings of
The Fifth lnternationLJI Confertnce on Gtnetic Algorithms,
pp. 264-270, Morgan Kaufmann (1993 ).
[2] Y. Davidor, T. Yamada and R. Nakano. "The ECOlogical
Frameworl:: ll: Improving GA Performance At Vinually Zero
Cost: Proceedings of The Fifth fnternational Conference on
Generic Algorithms, pp. 171-176, Morgan Kaufmann ( 1993).
[3] L, J. Eshelman, "The CHC Adaptive Search Algorithm : How
to Have Safe Search When Engaging in Nontraditional Genetic
Recombination," Foundations of Gtntti c Algorithms, pp.
265-283. Morgan Kaufmann (1991).
5. COMPUTER SIMULATION
This section examines the search performance of the filtering·GA.
The objective functions used here are 30-Bit, Order-Three
Deceptive Problem (5] and Discontinuous FWiction {II].
30-Bit, Order-Three Deceptive Problem is created as the
sum of I 0 copies of the 3-bit function, where each copy is
associated with the next three bits. If all bits associated with a
particular subfunction are as close as possible, the function will
456
4. (4] D. E. Goldberg and J. Richardson, "Genetic Algorithms with
Sharing for Multimodal Function Optimization, " Proce.dings of
The Second International Conference on Gen<tic Algorithms,
pp. 41-49, Lawrence Etlbaum Associates (1987).
[4} D. E. Goldberg, Genetic Algorithms in Search, Optimization
and Machine Learning , p.412, Addi.an-Wesley (1989).
[ ~} D. E. Goldberg, B. Korb and K. Deb, "Messy Genetic
Algorithms: Motivation, Analysis, and First Results. " Complex
Systems, 3, pp. 493-530, Complex Systems (1989).
[6} W. D. Hillis, "Co-Evolving Parasites Improve Simulated
Evolution as An Optimization Procedure ." Emergent
Computation , pp. 228-234, The MIT Press ( 991 ).
[7] J. H. Holland, Adaptation in Natural and Artificial Systems ,
University of Michigan Press ( 1975).
(8] P. Husbands and F. Mill, "Simulated Co-Evolution as The
Mechanism for Emergent Planning and Scheduling,"
Proceedings of The Fourth International Conferen ce on
Genetic Algorithms , pp. 264-270, Morgan Kaufmann (199 ).
[9} Y. Kakazu, H. Sakanashi and K. Suzuki , "Adapti ve Search
Q)
"
OJ
>
c:
.Q
1ij
::>
iii
>
Q)
300
290
280
270
v;
Q)
.0
260
0
Strategy for Genetic AJgorithm s with Additional Genetic
400
600
generation
(a) Type- I .
800
1000
0
Q)
:::J
iii
>
c:
200
200
400
600
generation
(b) Type-2.
BOO
I 000
300
290
0
-~
Algorithms," Parallel Problem Solving from Nature , 2, pp.
31-320, Nonh-Holland ( 992).
[10] S. W. Mahfoud, "Crowding and preselection revi sited, "
Para/It/ Problem Solving from Nazure, 2, pp . 27-36, NonhHolland ( 1992).
[II} K. Suzuki, H. Sakanashi andY . Kakazu, "Iterative Schema
Extracting Operation for Genetic Algorithms ," Pro c. of
:::J
280
iii
>
Q)
270
1n
2l
260
Australian and N ew Zealand C o nfe rence o n Inte ll igent
lnformlltion Systems. p. 51 7-520 (1993).
Fig. 3. Search performance of simple GA and filtering-GA on 30Bit, Order-Three Deceptive Problem.
Table 1. Parameter settings used in simulations.
Filtering-GA
Simple GA
1000
population size
30
string length
maximum generation 1000
on
elilist strategy
uniform
crossover type
0.8
crossover rate
0.03
mutation rate
history number
extraction threshold
GAstr
GAsch
30
30
1000
on
uniform
0.6
0. 03
30
Q)
::>
'iii
340
>
320
.Q
300
:::J
280
c:
30
000
off
two-point
0. 8
0.05
;;;
iii
>
Q)
1ii
Q)
260
240
.0
10
0.8
0
200
400
600
generation
BOO
1 000
Fig. 4. Search performance of simple GA and filtering-GA on
Discontinuous Function.
457