Evolutionary Algorithm Definition
Evolutionary Algorithm Definition
Abstract: Problem statement: Most resent evolutionary algorithms work under weak theoretical
basis and thus, they are computationally expensive. Approach: This study discussed the use of new
evolutionary algorithm for automatic programming, based on theoretical definitions of program
behaviors. Evolutionary process adapted fixed and self-organized input-output specification of the
problem, to evolve good finite state machine that efficiently satisfies these specifications. Results: The
proposed algorithm enhanced evolutionary process by simultaneously solving multi-parts from the
same problem. Conclusion: The probability that the algorithm will converge to the optimal solution
was highly enhanced when decomposing the main problem into multi-part.
On the other hand, when comparing evolutionary computational problems[10]. The interesting
programming to evolution strategies, one can identify characteristic of CGP are:
the following differences: When implemented to solve
real-valued function optimization problems, both • More powerful program encoding using graphs, than
typically operate on the real values themselves and use using conventional GP tree-like representations, the
adaptive reproduction operators. EP typically uses population of strings are of fixed length, whereas
stochastic tournament selection while ES typically uses their corresponding graphs are of variable length
deterministic selection. EP does not use crossover depending on the number of genes in use
operators while ES uses crossover. Some specific • Efficient evaluation derived from the intrinsic
advantages of genetic programming are that no analytical feature of subgraph-reuse exhibited by graphs
knowledge is needed and still could get accurate results. • Less complicated graph recombination via the
GP approach does scale with the problem size. GP does crossover and mutation genetic operators
impose restrictions on how the structure of solutions
should be formulated. There are several variants of GP, MATERIALS AND METHODS
some of them are: Linear Genetic Programming (LGP),
Gene Expression Programming (GEP), Multi Expression Proposed method is based on theoretical system
Programming (MEP), Cartesian Genetic Programming definitions discussed in[11], thus it overcomes the
(CGP), Traceless Genetic Programming (TGP) and difficulties of traditional method, in addition it has all
Genetic Algorithm for Deriving Software (GADS). attractive characteristic of CGP. Our evolutionary
Following we shall concentrate on CGP, since it is the algorithm evolves FSA that achieve input-output
most near to our proposed method[5-8]. specification of the problem. FSA transit from state to
state according to trajectory data sets, which either
Cartesian genetic programming: Cartesian genetic fixed, or Self-Organized during evolutionary process.
programming was originally developed by Miller and Trajectory data are stored as a string of numbers (the
Thomson[9] for the purpose of evolving digital circuits genotype) and evolved to achieve the optimum
and represents a program as a directed graph. One of mapping. The theory is based on McCarthy's formalism
the benefits of this type of representation is the implicit of the theory of computer science[12-13]: There is a set of
re-use of nodes in the directed graph. Originally CGP base function F and a set of strategies C for building
used a program topology defined by a rectangular grid new function out of old, the closure C (F) comprises all
of nodes with a user defined number of rows and computable functions. For any language L it may be
columns. In CGP, the genotype is a fixed-length possible to isolate a set (FL.) of base functions to
representation and consists of a list of integers which express the meaning of identifiers and statements and a
encode the function and connections of each node in the set (CL) of strategies to express the meaning of the
directed graph. The genotype is then mapped to an linguistic structure and data structures of L. Then the
indexed graph that can be executed as a program. In meaning of P in L would be computable function in
CGP there are very large numbers of genotypes that CL(FL):
map to identical genotypes due to the presence of a
large amount of redundancy. Firstly there is node Meaning (P): L→CL(FL)
redundancy that is caused by genes associated with
nodes that are not part of the connected graph So, P effects a transformation:
representing the program. Another form of redundancy
in CGP, also present in all other forms of GP is, (P) Xinitial→X final
functional redundancy. Simon Harding and Ltd
introduce computational development using a form of on a state vector X, which consists of an association of
Cartesian Genetic Programming that includes self- the variable manipulated by the program and their
modification operations. One advantage of this values. A program P can be defined as 9-tuples, called
approach is that the system can be used to solve Semantic Finite State Automata (SFSA)[11]:
791
Am. J. Engg. & Applied Sci., 2 (4): 789-795, 2009
RESULTS
Table 2: Fixed input-output trajectory sets • Trajectory information play important role in the
I = {e,i, L[1], L[2], ….., L[i]} Evolutionary Process. Fixed specification of
0 = {0, 1)
trajectory sets, speed-up convergence time of the
Tx = 1 2 3 4 5 6
Ti = I[1] I[2] I[j] -1 -1 -1 algorithm. Although self-organized trajectory sets
To = -1 -1 -1 -1 O1 O2 are useful tools in chaotic behavior, they take more
Then η: time to converge to the fine solution
η (Ti(t)) = O1 if t = 5
O2 if t = 6 , and -1 otherwise
REFERENCES
Table 3: Self-Organized Input and Output Trajectory sets.
Ti(at iteration: 0) = -1, -1, I[1] To(at iteration: 0) = O1, -1, -1 1. Spector, L. and K. Stoffel, 1996. Onto genetic
Ti(at iteration:10) = I[1], -1, -1, I[2] To(at iteration: 10) = -1, -1, O1, -1 programming. Proceedings of the 1st Annual
Ti(at iteration: n) = I[1], I[2], To(at iteration: n) = -1, -1, -1, Conference, MIT Press, Stanford University, CA.,
-1, -1, -1, -1, I[3] -1, O1, -1, -1
USA., pp: 394-399.
2. Gruau, F., 1994. Neural network synthesis using
Accordingly, at least two different output may be cellular encoding and the genetic algorithm. PhD
produced by the program to indicate search result Thesis, Laboratoire de l’Informatique du
(found and not found, or, 1 and 0). Obviously no such Parallelisme, Ecole Normale Superieure de Lyon,
outputs are produced unless at least four operations are France.
executed that are: input e, input i, input L[1] and check http://citeseerx.ist.psu.edu/viewdoc/summary?doi=
its equality with e. The time scale of IOS must be 10.1.1.29.5939
defined under the worst case. i.e., L[i] = e, or no
3. Miller, J.F. and P. Thomson, 2003. A
occurrence of e is found at all. Now, we can pre-
developmental method for growing graphs and
specified Tx, Ti and To, as fixed set as given in Table 2.
circuits. Lecture Notes Comput. Sci., 2606: 93-104.
In this case, Evolutionary process computes the fitness
value for each individual based on applying fitness http://cat.inist.fr/?aModele=afficheN&cpsidt=1567
function only. While in case of self-organized case, 2446
trajectory sets are randomly built according to currently 4. Abraham, A., N. Nedjah and L.D.M. Mourelle,
available information about system input-output 2006. Evolutionary computation: from genetic
boundaries, as seen in Table 3. At the end of i algorithms to genetic programming. Stud. Comput.
generations, these sets are modified according to the Intel., 13: 1-20.
input-output specification of the best individuals, http://www.springerlink.com/content/l646l37m787
obviously, such modifications are vary continually until g121t/
the required results are produced. Although trajectory 5. Grosan, C. and A. Abraham, 2007. Hybrid
data are changed over time, but by experiment, it still evolutionary algorithms: Methodologies,
sensitive to initial configuration of SFSA. This is one of architectures and reviews. Stud. Comput. Intell.,
the most important characteristic of a chaotic system 75: 1-17. http://www.softcomputing.net/hea1.pdf
(butterfly effect sensitivity to the initial conditions)[15]. 6. Montes, H.A. and J.L. Wyatt, 2003. Cartesian
genetic programming for image processing tasks.
CONCLUSION Proceedings of the IASTED International
Conference on Neural Networks and
• Proposed method is based on theoretical system Computational Intelligence, May 19-21, Cancun,
definitions, thus it overcomes the difficulties of Mexico, pp: 185-190.
traditional method, in addition it have all attractive http://md1.csa.com/partners/viewrecord.php?reque
characteristic of CGP ster=gs&collection=TRD&recid=200311420157CI
• Sub-systems can be reused to solve multiple &q=&uid=788263103&setcookie=yes
problems. They provide rational way to reduce 7. Koza, J.R., 1995. Survey of genetic algorithms and
software cost and increase software quality. genetic programming. Proceeding of the
Programs with less sub-programs tend to disappear Conference on Microelectronics Communications
because they accrue fitness from generation to Technology Producing Quality Products Mobile
generation, more slowly than those programs with and Portable Power Emerging Technologies, Nov.
sub-programs. The proposed APS gain leverage in 7-9, IEEE Xplore Press, San Francisco, CA, USA.,
simultaneously solving the problems of system pp: 589.
induction and evolving the architecture of a single http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnum
or multi-part system ber=485447
794
Am. J. Engg. & Applied Sci., 2 (4): 789-795, 2009
8. Poli, R., W.B. Langdon, N.F. McPhee and J.R. Koza, 11. Nada Al Salami, 2009. System evolving using ant
2007. Genetic programming: An introductory colony optimization algorithm. J. Comput. Sci.,
tutorial and a survey of techniques and 5: 380-387.
applications. Technical report CES-475. 12. Hoperoft, J.E. and J.D. Ullman, 1979. Introduction
http://citeseerx.ist.psu.edu/viewdoc/summary?doi= to Automata Theory: Languages and Computation.
10.1.1.126.3889 Addison Wesley Publishing Company, USA.,
9. Miller, J.F. and P. Thomson, 2000. Cartesian ISBN: 10: 020102988X, pp: 418.
genetic programming. Proceedings of European 13. Wymore, 1986. Theory of System. Handbook of
Conference on Genetic Programming, Apr. 15-16, Software Engineering, CBS Publishers, pp: 119-133.
ACM Press, Springer-Verlag, London, UK., 14. AL-Salami, N.M.A., 2009. System evolving using
pp: 121-132. ant colony optimization algorithm. J. Comput. Sci.,
http://portal.acm.org/citation.cfm?id=704075 5: 380-387.
10. Harding, S.L., J.F. Miller and W. Banzhaf, 2007. http://www.scipub.org/fulltext/jcs/jcs55380-
Self-modifying Cartesian genetic programming. 387.pdf
Proceedings of the 9th Annual Conference on 15. Smith, L., 2007. Chaos: A Very Short Introduction.
Genetic and Evolutionary Computation, July 7-11, Illustrated Edn., Oxford University Press, USA.,
ACM Press, New York, USA., pp: 1021-1028. ISBN: 10: 0192853783, pp: 176.
http://portal.acm.org/citation.cfm?id=1277161&dl
=GUIDE&coll=GUIDE&CFID=51767811&CFTO
KEN=87184646
795