While EvoSynth 0.2 is still in development, I finally managed to publish the new EvoSynth homepage. The design (and the content) is far from perfect but it’s a start ;-)
evosynth
12
Mar 10
EvoSynth 0.1 released
I just made the first release (0.1) of my thesis project called “EvoSynth“, which stands for Evolutionary Computation Synthesizer. EvoSynth is licensed under the MIT License.
- website: http://evosynth.rubyforge.org/
- project: http://rubyforge.org/projects/evosynth/
- git repositories: EvoSynth@Github and EvoSynth@Gitorious
EvoSynth is a framework (written in ruby) for rapid development and prototyping of evolutionary algorithms. It is designed with simplicity and productivity as main goals, so don’t expect it to compete with the performance of the established frameworks.
core features:
- classes for individuals, populations, algorithm profiles, genomes
- support for custom randomizer
- meta operators: proportional, sequential and conditional combined operators
- logging support with exporter to gnuplot, gruff and csv
- many predefined fitness functions
most common evolutionary algorithms:
- hillclimber (single individual and population based)
- standard genetic algorithm, steady state GA
- memetic algorithm
- evolution strategies (adaptive, selfadaptive and derandomized)
- local search (hillclimber, threshold acceptance, simulated annealing, great deluge, record-to-record travel)
- coevolutionary algorithms (round robin and balanced)
selection strategies:
- identity and random selection
- best selection
- n-stage tournament selection and tournament selection
- fitness proportional selection
- roulette wheel selection
mutations:
- identity
- one gene flipping, binary mutation, efficient binary mutation
- exchange mutation, inversion mutation, mixing mutation, shifting mutation
- uniform real mutation, gauss mutation, self-adaptive gauss mutation
recombinations:
- identity
- one-point-crossover, k-point-crossover, uniform crossover
- ordered recombination, partially mapped crossover, edge recombination
- arithmetic crossover
- global uniform crossover, global arithmetic crossover
installation and usage:
If you want to try EvoSynth, check the installation guide for instructions how to install it. Take a look at the examples and read the not yet complete rdoc documentation.


