Chapter 0
Programming with Annotated
Grammar Estimation
Yoshihiko Hasegawa
Additional information is available at the end of the chapter
http://dx.doi.org/10.5772/51662
1. Introduction
Evolutionary algorithms (EAs) mimic natural evolution to solve optimization problems.
Because EAs do not require detailed assumptions, they can be applied to many real-world
problems. In EAs, solution candidates are evolved using genetic operators such as crossover
and mutation which are analogs to natural evolution. In recent years, EAs have been
considered from the viewpoint of distribution estimation, with estimation of distribution
algorithms (EDAs) attracting much attention ([14]). Although genetic operators in EAs are
inspired by natural evolution, EAs can also be considered as algorithms that sample solution
candidates from distributions of promising solutions. Since these distributions are generally
unknown, approximation schemes are applied to perform the sampling. Genetic algorithms
(GAs) and genetic programmings (GPs) approximate the sampling by randomly changing the
promising solutions via genetic operators (mutation and crossover). In contrast, EDAs assume
that the distributions of promising solutions can be expressed by parametric models, and they
perform model learning and sampling from the learnt models repeatedly. Although GA-type
sampling (mutation or crossover) is easy to perform, it has the disadvantage that GA-type
sampling is valid only for the case where two structurally similar individuals have similar
fitness values (e.g. the one-max problem). GA and GP have shown poor search performance in
deceptive problems ([6]) where the condition above is not satisfied. However, EDAs have been
reported to show much better search performance for some problems that GA and GP do not
handle well. As in GAs, EDAs usually employ fixed length linear arrays to represent solution
candidates (these EDAs are referred to as GA-EDAs in the present chapter). This decade,
EDAs have been extended so as to handle programs and functions having tree structures (we
refer to these as GP-EDAs in the present chapter). Since tree structures have different node
number, the model learning is much more difficult than that of GA-EDAs. From the viewpoint
of modeling types, GP-EDAs can be broadly classified into two groups: probabilistic
proto-type tree (PPT) based methods and probabilistic context-free grammar (PCFG) based
methods. PPT-based methods employ techniques devised in GA-EDAs by transforming
variable length tree structures into fixed length linear arrays. PCFG-based methods employ
©2012 Hasegawa, licensee InTech. This is an open access chapter distributed under the terms of the
Creative Commons Attribution License (http://creativecommons.org/licenses/by/3.0),which permits
unrestricted use, distribution, and reproduction in any medium, provided the original work is properly
cited.
Chapter 3