ECF is a C++ framework intended for application of any type of
evolutionary
computation. Current features include:
- parameterless: genotype (individual structure) is the only
mandatory parameter
- algorithms: steady state tournament, generational roulette-wheel,
elimination, particle swarm optimization (PSO),
differential evolution (DE),
genetic annealing, artificial bee colony (ABC),
clonal selection (CLONALG),
immune optimization (optIA),
evolution strategy, random search
- genetic
algorithm genotypes
(bitstring, binary encoded real values, floating point vectors, permutation vectors),
genetic
programming genotype (tree), analytic programming
- individuals may contain any genotypes in any number
- many examples: GP symbolic regression,
GP artificial ant,
function
optimization,
TSP,
onemax, function optimization from CEC Real-Parameter Numerical Optimization
- parallel execution in many models (global paralel EA, distributed
EA, hybrid parallel EA...) using
MPI
- configurable environment: changing algorithm, genotypes and parameters
without recompilation
- checkpointing
and population restoring, various termination criteria,
repeated runs,
crx and mutation operators selection and usage rate, migration
More detailed feature list
Download
Documentation
These files are also included in the package (./help directory).
Integration with COCO benchmark:

Support:
References
Contributors
(Alphabetical order): Hrvoje Ban, Vinko Bedek, Igor Bespaljko, Iva Brajer, Luka Donđivić,
Luka Franov, Zvonimir Fras,
Danko Komlen, Ivan Kokan, Luka Krizan, Maja Legac, Tomislav Novak,
Lovro Paić-Antunović, Stjepan Picek, Dražen Popović, Ángel Ferreira-Santiago, Domagoj
Stanković, Ivana Stokić, Mirjam Škarica
Project leader & support contact: Domagoj Jakobović (domagoj.jakobovic @
fer.hr)
Acknowledgements
ECF software uses the following components:
Additionally, this project was inspired by
OpenBEAGLE, a comprehensive OO
evolutionary framework.