GEP Book

  Home
  News
  Author
  Q&A
  Tutorials
  Downloads
  GEP Biblio
  Contacts

  Visit Gepsoft

 

C. FERREIRA In Leandro N. de Castro and Fernando J. Von Zuben, eds., Recent Developments in Biologically Inspired Computing, pages 82-103, Idea Group Publishing, 2004.

Gene Expression Programming and the Evolution of Computer Programs

Root Transposition
 

All root IS elements start with a function, and therefore must be chosen among the sequences of the heads. For that, a point is randomly chosen in the head and the gene is scanned downstream until a function is found. This function becomes the start position of the RIS element. If no functions are found, the operator does nothing.

The RIS transposition operator randomly chooses the chromosome, the gene to be modified, and the start and termination points of the RIS element. It is worth noticing that this operator is slightly different from the original RIS transposition (Ferreira 2001) as the length of the transposon is randomly chosen by this simpler RIS transposition.

Consider the following chromosome composed of three genes, each with a head size of six:

012345678901201234567890120123456789012

*Q/+b*bababaaQ*aQ*QaaababaQa*/+abbbaaab

Suppose that the sequence “/+b” in gene 1 was randomly chosen to become an RIS element. The transposon copies itself and then transposes to the root of the gene, giving:

012345678901201234567890120123456789012

/+b*Q/bababaaQ*aQ*QaaababaQa*/+abbbaaab

Note that during transposition, the whole head shifts to accommodate the RIS element, losing, at the same time, the last symbols of the head (as many as there are in the transposon). In this case, the sequence “+b*” was deleted and the transposon became only partially duplicated. As with IS transposition, the tail of the gene subjected to RIS transposition and all nearby genes remain unchanged. Note, again, that all the programs newly created by this operator are syntactically correct as it also preserves the structural organization of the chromosome.

Home | Contents | Previous | Next