Monday, October 29, 2007

How to evolve a clock

There's a video below the fold. Watch it, it's amazing.

There's text there as well! Not just a video dump like the last post!


From Pharyngula
This dude has my gratitude. First off, evolutionary algorithms are AWESOME. It is simply astounding how much power they have from such simple beginnings. Their only weakness is the time it takes them to converge on a solution. However, they can find better solutions to extremely complex multi-dimensional problems.

Talk.origins has a big article on evolutionary algorithms. In it, they describe many complex, real-world problems that have had GAs (genetic algorithms, another name for the same thing) applied to them with successful results. The algorithms outperform human experts, and do it faster an equivalent human can. There's a really interesting example there about a GA used for battle tactics planning (in wargames, not actual battles!) that was pitted against military experts, and it won. What's more, when the experts were able to revise the GA's plans using their own expertise, the GA's original plans *still* won!

Though I never finished it (quit with only a few hours of hacking left), I was designing a GA to create a neural network that could play 3D tic-tac-toe against me, because I love that game and nobody ever wants to play me. It was designed along the same lines as Anaconda, the checkers-playing neural network that was trained with a GA. Hopefully it wouldn't be quite as skilled. ^_^ But then again, I need a good challenge. I should dust off that code and finish it up.

No comments: