ec.gp.build.README Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ecj Show documentation
Show all versions of ecj Show documentation
ECJ, A Java-based Evolutionary Computation Research System.
ECJ is a research EC system written in Java. It was designed to be highly flexible, with nearly all classes (and all of their settings) dynamically determined at runtime by a user-provided parameter file. All structures in the system are arranged to be easily modifiable. Even so, the system was designed with an eye toward efficiency.
ECJ is developed at George Mason University's ECLab Evolutionary Computation Laboratory. The software has nothing to do with its initials' namesake, Evolutionary Computation Journal. ECJ's sister project is MASON, a multi-agent simulation system which dovetails with ECJ nicely.
The newest version!
This directory contains GPNodeBuilder subclasses other than the most common
ones (GPHalfBuilder, GPGrowBuilder, GPFullBuilder) found in the 'koza'
directory. A good description of most of these algorithms may be found in
"A Survey and Comparison of Tree Generation Algorithms" by Sean Luke and
Liviu Panait, GECCO 2001. Google for it.
ec.gp.build.PTC1
Implements the PTC1 algorithm, a variation of the GROW algorithm which
guarantees that generated trees will have a certain mean size.
ec.gp.build.PTC2
Implements the PTC2 algorithm, which guarantees that generated trees will
be "more or less" a certain desired size.
ec.gp.build.PTCFunctionSet
A subclass of GPFunctionSet with additional probabilistic arguments required
by the PTC1 and PTC2 algorithms.
ec.gp.RandomBranch
Implements the RANDOMBRANCH algorithm (Chellapilla), which creates roughly
evenly distributed algorithms
ec.gp.RandTree
Implements the RandTree algorithm (Iba), which picks trees uniformly according
to structure, then labels the tree with appropriate nodes. Note that we
believe this code may be flakey and do not recommend it.
ec.gp.Uniform
Implements an algorithm from (Bohm and Geyer-Schulz) which draws trees
entirely uniformly. The version in ECJ aso considers set and atomic types.
If you're struggling to pick a more versatile tree generator than the Koza
standard ones, we strongly suggest PTC2.
© 2015 - 2025 Weber Informatics LLC | Privacy Policy