All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ec.es.README Maven / Gradle / Ivy

Go to download

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 package implements the (mu+lambda) and (mu,lambda) evolution strategies.
Use this package in conjunction with the 'simple' package (that is,
generational evolution).  The provided es.params file shows some more
information on how to do this.

These techniques are implemented with custom Breeders in combination with a
special SelectionMethod which handles the dirty work of truncation selection.
The SelectionMethod is:

	ec.es.ESSelection

This method should only be used with the Breeders in this package.  You can
place ESSelection anywhere in your pipeline, including multiple times if you
like.  It will return the mu best individuals in the population, one at a time,
each time it's pulsed.  Individual ESSelection methods in various parts of
your pipeline will return the same individual.

The (mu,lambda) evolution strategy is implemented with the Breeder

	ec.es.MuCommaLambdaBreeder

This breeder requires you to specify a 'mu' value and a 'lambda' value for
each subpopulation.  You need to provide a 'lambda' value instead of just
the subpopulation size because the subpopulation size is used solely to set the
INITIAL size of the subpopulation.  

The (mu+lambda) evolution strategy has exactly the same options, and is
implemented in a subclass:

	ec.es.MuPlusLambdaBreeder




© 2015 - 2025 Weber Informatics LLC | Privacy Policy