Gene Expression Programming - Expression Trees: The Phenotype

Expression Trees: The Phenotype

As shown above, the genes of gene expression programming have all the same size. However, these fixed length strings code for expression trees of different sizes. This means that the size of the coding regions varies from gene to gene, allowing for adaptation and evolution to occur smoothly.

For example, the mathematical expression:

can also be represented as an expression tree:

where “Q” represents the square root function.

This kind of expression tree consists of the phenotypic expression of GEP genes, whereas the genes are linear strings encoding these complex structures. For this particular example, the linear string corresponds to:

01234567
Q*-+abcd

which is the straightforward reading of the expression tree from top to bottom and from left to right. These linear strings are called k-expressions (from Karva notation).

Going from k-expressions to expression trees is also very simple. For example, the following k-expression:

01234567890
Q*b**+baQba

is composed of two different terminals (the variables “a” and “b”), two different functions of two arguments (“*” and “+”), and a function of one argument (“Q”). Its expression gives:

Read more about this topic:  Gene Expression Programming

Famous quotes containing the word expression:

    This is the great truth life has to teach us ... that gratification of our individual desires and expression of our personal preferences without consideration for their effect upon others brings in the end nothing but ruin and devastation.
    Hortense Odlum (1892–?)