Difference between revisions of "Botsareus's Vision"
m |
m |
||
Line 10: | Line 10: | ||
:and hearing his own feedback on how/why this works. | :and hearing his own feedback on how/why this works. | ||
---- | ---- | ||
+ | |||
+ | This reply from Bots on he forum: | ||
+ | |||
+ | |||
+ | A.) I already discused everything I implemented on the fourm in quickly forgot posts all over the place since 4 to 5 month ago. | ||
+ | |||
+ | B.) Thanks griz, but thats not what seems to trouble me so much... | ||
+ | |||
+ | C.) I have not proven any of it in practice so there is really nothing to discuss. | ||
+ | |||
+ | For now I can only tell you this is how it works, the rest you can figure by comparing my virsion to windiff. | ||
+ | |||
+ | A.) It uses femily based periodicaly changing mutation rates to awoid mullers rachet. | ||
+ | |||
+ | B.) Saving 'best robot' at the end of a simulation or after n time, will result in saving a 'nuke problem' robot or 'geek loophole' robot, therefor the following must be done. | ||
+ | |||
+ | 1.) Each robot must have its skill factor calculated to know its 'true' best value. This is done using ".good" in each robots substructure. | ||
+ | |||
+ | 2.) Troughout the simulation the higest peaking point of a robots skill is determind. Lets call it J | ||
+ | |||
+ | 3.) J is checked agenst the J of the three previos 'runs' (each run lests 8000 cycles (although I have "/end" display something else, I am talking about my current work right now) this is done by using an external "saecheck.txt" file. | ||
+ | |||
+ | a.) If J is higher then the lest three 'runs', then 'save robots dna' is called. Wait for this 'run' to complete just incase J goes even higher. | ||
+ | |||
+ | C.) The true 'best robot' is now set as the robot to restart/resume the simulation with. | ||
+ | |||
+ | Now here is what I am working on right now: | ||
+ | |||
+ | Some robots may not aquire enough mutations in 8000 cycles because of there skill, therefor the mutations must be increased depending on the data in the saecheck.txt file. | ||
+ | |||
+ | note: the saecheck.txt file actualy keeps 4 numbers, the 4th one being data from the current graph. | ||
+ | |||
+ | note: BAUGRAPH.frm activaly displays J | ||
+ | |||
+ | note: J is not updated if the overall population is below 15. | ||
+ | |||
+ | note: the 'geek loophole' seems to exsist even in the J system, but it is only a sideeffect witch gets filter out after a while by 'real' evolve. | ||
+ | |||
+ | ---- | ||
+ | :that's cool ... | ||
+ | :when i return in a week or two ... | ||
+ | :will post some of the moduals and/or routines ... | ||
+ | :and see if we can sus them out ... | ||
+ | :even if Bots his-own-self ... isn't interested in helping out. ;) | ||
+ | :{{User:Griz/sig}} 20:15, 1 Nov 2005 (MST) |
Revision as of 22:15, 1 November 2005
- Bot's (Botsareus on the DB forum)
- version of 2.37 with various fixes in place ...
- may be downloaded here:
- Darwinbots Bau-ified 2.37
- Cool.
- Let's take a look at the relevent fixes and moduals ...
- and see why/how they do what they do ...
- providing feedback for Bots ...
- and hearing his own feedback on how/why this works.
This reply from Bots on he forum:
A.) I already discused everything I implemented on the fourm in quickly forgot posts all over the place since 4 to 5 month ago.
B.) Thanks griz, but thats not what seems to trouble me so much...
C.) I have not proven any of it in practice so there is really nothing to discuss.
For now I can only tell you this is how it works, the rest you can figure by comparing my virsion to windiff.
A.) It uses femily based periodicaly changing mutation rates to awoid mullers rachet.
B.) Saving 'best robot' at the end of a simulation or after n time, will result in saving a 'nuke problem' robot or 'geek loophole' robot, therefor the following must be done.
1.) Each robot must have its skill factor calculated to know its 'true' best value. This is done using ".good" in each robots substructure.
2.) Troughout the simulation the higest peaking point of a robots skill is determind. Lets call it J
3.) J is checked agenst the J of the three previos 'runs' (each run lests 8000 cycles (although I have "/end" display something else, I am talking about my current work right now) this is done by using an external "saecheck.txt" file.
a.) If J is higher then the lest three 'runs', then 'save robots dna' is called. Wait for this 'run' to complete just incase J goes even higher.
C.) The true 'best robot' is now set as the robot to restart/resume the simulation with.
Now here is what I am working on right now:
Some robots may not aquire enough mutations in 8000 cycles because of there skill, therefor the mutations must be increased depending on the data in the saecheck.txt file.
note: the saecheck.txt file actualy keeps 4 numbers, the 4th one being data from the current graph.
note: BAUGRAPH.frm activaly displays J
note: J is not updated if the overall population is below 15.
note: the 'geek loophole' seems to exsist even in the J system, but it is only a sideeffect witch gets filter out after a while by 'real' evolve.