Re: The "evolution" of GA Math
- Posted by DB James <larch at adelphia.net> Oct 03, 2005
- 619 views
Kenneth Rhodes wrote: > > > > The GA Math "experience" seems to be a study in the complex interaction of > > decisions > > made in coding. There never seems to be a state where one can say: "I have > > ideally > > optimized this". If we had access to a nice used NSA super-computer, we > > could set > > it to work on ways to evolve self-optimizing code :^D > > Is this something that could be done thru a distributed computing project such > as BOINC? > <a > href="http://boinc.berkeley.edu/create_project.php">http://boinc.berkeley.edu/create_project.php</a> > > Ken Rhodes > SuSE Linux 9.3 > 100% MicroSoft Free > Hi Ken, Yes, it probably could as it is a massive job. If those elements of a program like GA Math that affect results (such as a particular level of chance or number of genes, etc.) are called controls, then the basic idea, as I am imagining it now, would be: 1) Identify all the discrete controls 2) Establish a new set of controls 3) Perform a very large series of runs on a wide range of problems 4) Record the results for that set of controls 5) Goto 2) until no more meaningful variations of controls can be made 6) Assess the best set of controls for the widest range of problems (Or, alternately, identify the best controls for a given type of problem.) A variation on this would be to do the same thing, but do it one control, or maybe two controls, at a time such that the program was *always* attempting to optimize itself. It might arbitrarily choose a particular control and vary it over a period of time to see what gave the best results, keeping records as it goes. An example might help here. Currently the length of a run before giving up and restarting is determined by two controls: MAXRUN (set now at 1200) and MINPERF (now 25, used this way: 1/mainCnt*MINPERF) which deals with current performance based on the length of the run. Are these set to give the best results? It would be astonishing if they were. They are just guesses on my part. It would be useful, to say the least, to actually know the best settings. (Perhaps MINPERF really should reflect the difficulty of the problem.) Another example is the operator "NOP" or no operation which is currently in GA Math. Is this useful? I think so, but don't really know. --Quark