xegaDerivationTrees: Generating and Manipulating Derivation Trees
Derivation tree operations are needed for implementing
grammar-based genetic programming and grammatical evolution:
Generating of a random derivation trees of a context-free grammar
of bounded depth, decoding a derivation tree,
choosing a random node in a derivation tree,
extracting a tree whose root is a specified node, and
inserting a subtree into a derivation tree at a specified node.
These operations are necessary for the initializiation and
for decoders of a random population of programs,
as well as for implementing crossover and mutation operators.
Depth-bounds are guaranteed by switching to a grammar
without recursive production rules.
For executing the examples, the package 'BNF' is needed.
The basic tree operations of generating, extracting, and
inserting of derivation trees as well as the conditions
for guaranteeing complete derivation trees have been
presented in Geyer-Schulz (1997, ISBN:978-3-7908-0830-X).
The use of random integer vectors for the generation
of derivation trees has been introduced in
Ryan, C., Collins, J. J., and O'Neill, M. (1998)
<doi:10.1007/BFb0055930>.
Documentation:
Downloads:
Reverse dependencies:
Linking:
Please use the canonical form
https://CRAN.R-project.org/package=xegaDerivationTrees
to link to this page.