Expand description
Gene Expression Programming (GEP).
GEP (Ferreira, 2001) evolves programs encoded as fixed-length linear
chromosomes that decode into expression trees. Each chromosome is a head
(whose loci may hold any symbol) followed by a tail (terminals only),
sized so that every chromosome respecting that split decodes to a complete
tree — no repair pass is ever needed. This makes the genetic operators
simple, position-aligned array edits, which is GEP’s headline advantage over
tree-based GP.
§Module map
config—GepConfig: runtime head/tail/population parameters; the tail length is derived and the head/tail constraint asserted at construction.alphabet—AlphabetandSymbolKind: the function set plus the variable/constant terminal layer, with the contiguous id-space and the tailterminal_range.tree—ExpressionTree: the level-order decoded phenotype witheval/depth/node_count.decode—GenotypePhenotypeMapandGepDecoder: the deterministic ORF-scan + BFS decoder.operators— point mutation (locus-class aware), IS/RIS transposition, and one-/two-point crossover, all valid by construction.strategy—GepStrategy,GepState, and theGepSymRegressionfitness function.
Genotype storage is a Tensor<B, 2, Int> of shape (pop_size, head_len + tail_len); decoding and evaluation run host-side, per chromosome, because
the decode is an inherently sequential ORF scan that does not vectorise.
§Reference
- Ferreira (2001), Gene Expression Programming: a New Adaptive Algorithm for Solving Problems, Complex Systems 13(2).
Re-exports§
pub use alphabet::Alphabet;pub use alphabet::SymbolKind;pub use config::GepConfig;pub use decode::GenotypePhenotypeMap;pub use decode::GepDecoder;pub use strategy::GepState;pub use strategy::GepStrategy;pub use strategy::GepSymRegression;pub use tree::ExpressionTree;
Modules§
- alphabet
- The GEP symbol alphabet: functions plus a terminal layer.
- config
- Runtime configuration for a Gene Expression Programming run.
- decode
- Genotype → phenotype decoding (the head/tail → expression-tree map).
- operators
- GEP genetic operators, all valid by construction (no repair pass).
- strategy
- The
GepStrategyevolutionary engine and a symbolic-regression fitness. - tree
- The decoded GEP phenotype: a level-order expression tree.