Author: Roger D Davis
Date: 01:21:16 05/13/05
Go up one level in this thread
On May 12, 2005 at 01:57:19, Steven Edwards wrote: >Symbolic: Status report 2005.05.12 > >The preliminary version of the genetic algorithm framework is complete. >Complete details would take many pages, so I'll just post a brief overview of >the initial experiment and the results. > >The shortest mating test suite, Bloss (fourteen positions), was chosen for the >first tests because of its brevity. For detecting mating attack moves, a >species template containing twenty microfeature recognizers was defined. A >habitat containing one hundred randomly generated organisms of the species was >generated with the organisms' selective power measured against the best moves in >the Bloss suite. The highest ranking initial organism did fairly well, >correctly selecting the best move in eight out of the fourteen problems. > >After the initial habitat generation, the habitat is repeatedly cycled. Each >cycle consists of picking two parents (with a selection bias based on merit), >producing an offspring, mutating the offspring slightly, measuring the >offspring's merit against the suite, and then inserting the offspring into the >habitat (if it's better than the least fit occupant; the least fit occupant is >removed). A new offspring organism that outranks all the earlier ones is >displayed on the ChessLisp console. > >After 101 cycles, a new champion organism was produced that matched nine of the >Bloss problems. After 285 cycles a ten matcher was found. And on cycle 411 an >organism was found that matched eleven. A twelve of fourteen matcher was >produced on cycle 453, and a thirteen match organism appeared on habitat cycle >1297. > >More to come. Steven, How about including a "GA module" in Symbolic? Right now, the GA module is external to Symbolic, so whatever good stuff the GA yields is still, strictly speaking, "outside Symbolic." But...if there were some way that Symbolic could invoke the GA on its own, it seems that you'd have a program that could bootstrap its own understanding...it would be entirely self-sufficient. How would it know when to invoke the GA? Well, it would begin compiling a test suite consisting of positions derived from its losses. Once a sufficient number of losses were accumulated, the program would tune itself. I'm not sure I understand everything you're doing. But...fascinating nonetheless. Roger
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.