What is GEP?
GEP or Gene Expression Programming is type of algorithm used to evolve various computer programs with the hope of finding a particular solution to a user-defined problem. From the term “gene expression”, this particular algorithm is patterned from and has similarities to genetic programming wherein the actual programs are encoded in the form of linear chromosomes. These programs may involve logical or mathematical expressions, polynomial constructs, neural networks and decision trees among many others.
After the programs are encoded as linear chromosomes, these are then converted or translated into different branches called expression trees. With this configuration, the linear chromosomes and expression trees are different from each other in terms of function and structure. This simply means that even after recombination procedures are done, the altered elements of the newly-created expression trees have different characteristics and features from that of their host or parent. This feature in GEP is considered evolutionary and is considered a big help to experts and researchers in coming up with better-designed and more efficient computer models.
Based on the natural activity of genes and chromosomes, GEP involves passing on a modified program version to the next level and generation. These new programs are created through GEP to solve a particular problem. But it’s not just any program that is recruited to solve a specific problem. With GEP, specific expression trees are chosen to perform certain tasks and functions based on features and capabilities. These expression trees are like little computer programs themselves that are able to solve problems and/or complete tasks. When these expression trees undergo periods of repeated iteration, many of them will also be able to acquire new skills and traits. Because of this concept, these expression trees will be better adaptable to a specific selection environment. In the end, a solution is found for a particular user-defined concern.