Abstract
The GP method explained in previous chapters was about the evolution of computer programs represented by monolithic gene (syntax tree). This is the original and most widespread type of GP that is also referred to as tree-based GP. In recent years, new variants of GP have emerged that follow the basic idea of traditional GP to automatically evolve computer programs, but the programs are evolved/represented in different ways. New variants of GP include but are not limited to stack-based genetic programming, linear genetic programming (LGP), Cartesian genetic programming, grammatical evolution (GE), graph-based GP (GGP), context-free grammar (CFGGP), multigene genetic programming (MGGP), and gene expression programming (GEP). Among these variants, main features, evolution of computer programs, and a brief review of engineering applications of MGGP, GEP, and LGP are introduced in this chapter.