Abstract

Grammatical evolution (GE) is one of the evolutionary computations, which evolves genotype to map phenotype by using the Backus-Naur Form (BNF) syntax. GE has been widely employed to represent syntactic structure of a function or a program in order to satisfy the design objective. As the GE decoding process parses the genotype chromosome into array or list structures with left-order traversal, encoding process could change gene codons or orders after genetic operations. For improving this issue, this paper proposes a novel GE algorithm using tree representation learning (GETRL) and presents three contributions to the original GE, genetic algorithm (GA) and genetic programming (GP). Firstly, GETRL uses a tree-based structure to represent the functions and programs for practical problems. To be different from the traditional GA, GETRL adopts a genotype-to-phenotype encoding process, which transforms the genes structures for tree traversal. Secondly, a pointer allocation mechanism is introduced in this method, which allows the GETRL to pursue the genetic operations like typical GAs. To compare with the typical GP, however GETRL still generates a tree structure, our method adopts a phenotype-to-genotype decoding process, which allows the genetic operations be able to be apply into tree-based structure. Thirdly, due to each codon in GE has different expression meaning, genetic operations are quite different from GAs, in which all codons have the same meaning. In this study, we also suggest a multi-chromosome system and apply it into GETRL, which can prevent from overriding the codons for different objectives.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call