From: Sander Land Date: 2008-01-11T23:35:47+09:00 Subject: [ANN] charlie 0.7.0 Released - A genetic algorithms library. Hi all, I'm pleased to announce another release of charlie, a genetic algorithms library for Ruby. This release extends the options for TreeGenotype, making the library more useful for genetic programming. It also includes full Ruby 1.9 compatibility, as well of a variety of smaller changes. There has been no feedback at all on the previous releases. If you find anything is not working, important features are missing, or have any other comments, please let me know. ## FEATURES: - Quickly develop GAs by combining several parts (genotype, selection, crossover, mutation) provided by the library. - Sensible defaults are provided with any genotype, so often you only need to define a fitness function. - Easily replace any of the parts by your own code. - Test different strategies in GA, and generate reports comparing them. ## EXAMPLE This example finds a polynomial which approximates cos(x) class Cos < TreeGenotype([proc{rand},:x], [:-@], [:+,:*,:-]) def fitness -[0,0.33,0.66,1].map{|x| (eval_genes(:x=>x) - Math.cos(x)).abs }.max end use TournamentSelection(4) end Population.new(Cos).evolve_on_console(500) Several other examples are included in the gem/tarball. ## INSTALLATION: * sudo gem install charlie ## Links * http://rubyforge.org/projects/charlie/ * http://charlie.rubyforge.org ## LICENSE: MIT license.