Changes between Version 27 and Version 28 of Documentation/Reference/GPDL


Ignore:
Timestamp:
07/19/13 08:58:27 (6 years ago)
Author:
gkronber
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Documentation/Reference/GPDL

    v27 v28  
    33gkronber@heuristiclab.com
    44
    5 The aim of GPDL is to make it easier to use GP-systems. Currently, it is very cumbersome to implement new problems in GP-systems, because of several factors including among others:
    6  * a lot of boiler-plate code has to be written to integrate into the GP framework,
     5The aim of GPDL is to make it easier to use
     6GP-systems. Currently, it is very cumbersome to implement new
     7problems in GP-systems, because of several factors including
     8among others:
     9 * a lot of boiler-plate code has to be written to integrate into
     10   the GP framework,
    711 * it is necessary to learn APIs of different GP system,
    8  * problem implementations cannot be re-used to try different GP systems (e.g. ECJ, HeuristicLab, GEVA, JGAP, ...).
     12 * problem implementations cannot be re-used to try different GP
     13   systems (e.g. ECJ, HeuristicLab, GEVA, JGAP, ...).
    914
    10 We argue, that the uptake of GP for real world applications has only been limited so far, because it is difficult to use the available high-quality implementations of GP, and it takes a lot of time to implement more complex GP problems.
     15We argue, that the uptake of GP for real world applications has
     16only been limited so far, because it is difficult to use the
     17available high-quality implementations of GP, and it takes a lot
     18of time to implement more complex GP problems.
    1119
    12 GPDL separates the implementation of problem details from the intricacies of algorithm implementations. Only the details of the problem are specified in a framework-independent way. A compiler can transform the problem description to source code for different GP systems. This way, it will be much easier to implement problems and to use different GP implementations or even other kinds of solvers!
     20GPDL separates the implementation of problem details from the
     21intricacies of algorithm implementations. Only the details of the
     22problem are specified in a framework-independent way. A compiler
     23can transform the problem description to source code for
     24different GP systems. This way, it will be much easier to
     25implement problems and to use different GP implementations or
     26even other kinds of solvers!
    1327
    14 GPDL is based on the concept of attributed grammars with semantic actions that are usually used in compiler construction. Basically, GP can be described as search over a space of sentences of a formal language. The goal is to find a sentence with optimal objective function value. Therefore, a GP problem can be defined as a tuple of a formal language, defined e.g. via a grammar, and an objective function for sentences. Therefore, our idea is to specify GP problems via an attributed grammar with semantic actions for the interpretation of sentences, and an objective function to be minimized or maximized. Below, you will find an example for the definition of a symbolic regression problem in GPDL.
     28GPDL is based on the concept of attributed grammars with semantic
     29actions that are usually used in compiler
     30construction. Basically, GP can be described as search over a
     31space of sentences of a formal language. The goal is to find a
     32sentence with optimal objective function value. Therefore, a GP
     33problem can be defined as a tuple of a formal language, defined
     34e.g. via a grammar, and an objective function for
     35sentences. Therefore, our idea is to specify GP problems via an
     36attributed grammar with semantic actions for the interpretation
     37of sentences, and an objective function to be minimized or
     38maximized. Below, you will find an example for the definition of
     39a symbolic regression problem in GPDL.
    1540
    16 GPDL is not limited to C# or Java, and it is not limited to HeuristicLab (however, it is the only system we implemented a compiler for so far).
     41GPDL is not limited to C# or Java, and it is not limited to
     42HeuristicLab (however, it is the only system we implemented a
     43compiler for so far).
    1744
    18 On this page we provide a first specification of the GPDL language and a reference implementation for a GPDL compiler for HeuristicLab.
     45On this page we provide a first specification of the GPDL
     46language and a reference implementation for a GPDL compiler for
     47HeuristicLab.
    1948
    2049== Documentation ==