Semantic Extensions for Genetic Programming

Created by W.Langdon from gp-bibliography.bib Revision:1.4549

  author =       "Bartosz Wieloch",
  title =        "Semantic Extensions for Genetic Programming",
  school =       "Institute of Computing Science, Poznan University of
  year =         "2013",
  address =      "Poznan, Poland",
  month =        jun,
  keywords =     "genetic algorithms, genetic programming",
  URL =          "",
  size =         "159 pages",
  abstract =     "Genetic Programming (GP) is a most popular approach to
                 automatic generation of computer programs. Standard
                 methods applied in GP use raw fragments of evolved
                 programs to construct new, hopefully better ones. These
                 methods, except the selection phase, passover the
                 behaviour of the modified programs and operate mainly
                 on their syntax.

                 In this dissertation we follow alternative,
                 semantic-oriented approach that concentrates on the
                 actual behavior of programs in population to determine
                 how to construct the new ones. This research trend grew
                 up as an attempt to overcome weaknesses of methods that
                 rely only on syntax analysis. Recent contributions
                 suggest that semantic extensions to GP can be a remedy
                 to poor performance of classical, syntactic

                 Therefore, in this dissertation we firstly present the
                 advantages and disadvantages of several possible
                 descriptions of program's behaviour. Then we introduce
                 the concept of semantics used in all semantic
                 extensions presented throughout this thesis.

                 The first semantic extension presented in this thesis
                 is a method population initialisation which forces the
                 individuals in population to be semantically unique. We
                 also show selected semantic-aware variants of crossover
                 and mutation operators. In particular, we test how they
                 perform with and without our initialization

                 Next, we introduce and formalise our novel concept of
                 desired semantics that describes the desired behaviour
                 for given part of a program. Then we propose several
                 methods that employ desired semantics to create new
                 programs by combining matching parts. We show that some
                 of these methods significantly outperform other
                 methods, semantic as well as syntactic ones.

                 The second important proposition of this thesis is the
                 concept of functional modularity. Functional modularity
                 involves defining modules based on their semantic
                 properties instead of syntactical ones, like, e.g., the
                 frequency of occurring some code fragments. Functional
                 modularity can be used to decompose a problem into
                 potentially easier parts (subproblems), and then to
                 solve the subproblems in isolation or together.

                 All the described methods are illustrated with
                 extensive experimental verification of their
                 performance on a carefully prepared benchmark suite
                 that contains problems from various domains. On this
                 suite, we show the overall advantage of semantic-aware
                 extensions, especially for methods that rely on desired
  notes =        "Supervisor: Krzysztof Krawiec",

Genetic Programming entries for Bartosz Wieloch