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

Inversion
 

We know already that the modifications bound to make a big impact occur usually in the heads of genes. Therefore, the inversion operator was restricted to these regions. Here any sequence might be randomly selected and inverted.

In gene expression programming, the inversion operator randomly chooses the chromosome, the gene to be modified, and the start and termination points of the sequence to be inverted. It is worth pointing out that this is the first time the inversion operator is described in gene expression programming.

Consider, for instance, the following three-genic chromosome:

012345678901201234567890120123456789012

/+aQ*aaabaaab/aa/baaababab-Q++aQababaab

Suppose that the sequence “aQ*” in gene 1 (positions 2-4) was picked up to be inverted. Then the following chromosome is formed:

012345678901201234567890120123456789012

/+*Qaaaabaaab/aa/baaababab-Q++aQababaab

It is worth pointing out that, since the inversion operator was restricted to the heads of genes, there is no danger of a function ending up in the tails and, consequently, all the new individuals created by inversion are syntactically correct programs.

Home | Contents | Previous | Next