From: James Edward Gray II Date: 2007-10-08T02:14:22+09:00 Subject: Fwd: Ruby Quiz #142 Submission --Apple-Mail-1-869173753 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Begin forwarded message: > From: "Dave Pederson" > Date: October 6, 2007 11:28:44 AM CDT > To: submission@rubyquiz.com > Subject: Ruby Quiz #142 Submission > > Hi- > > I am a java developer who has been trying to learn ruby. I came > across your quizzes while researching. I had previously written a > genetic algorithm framework in java and decided that it would be a > good exercise to port it to ruby. This is my first attempt, so the > code may not be as terse as a typical ruby script, but I'll try and > work on that. > > The code behaves like a typical genetic algorithm: > > The best solution may not be found every time, however a 'close > enough' or 'optimal' solution is > To achieve better results, increase the population size and the > number of generations. > > Any criticism/advice you may have is welcome. > > Thanks, > > -Dave --Apple-Mail-1-869173753 Content-Transfer-Encoding: base64 Content-Type: application/x-gzip; x-unix-mode=0666; name=ruby-quiz.tar.gz Content-Disposition: attachment; filename=ruby-quiz.tar.gz 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 --Apple-Mail-1-869173753 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed --Apple-Mail-1-869173753--