Epigenetic Memory Locations
During the birthing cycle, baby robots copy certain information from the memory of the parent. Copying is done through the Birth Tie . The copied locations are 971 through 990 and one location is copied each cycle for 20 cycles. Robots who cut their gestation periods short will miss out on the valuable opportunity to pass on vital information to their offspring.
A catch to using racial memory is that the memloc needs to be empty prior to the information being coppied. 971 would need to be 0 for the parent to transfer it's value.
One advanced use of racial memory is to keep track of the number of cycles that have passed in the sim up to 32000. This is done by intially increasing 971 by 1 on the first cycle then incrementing it by 1 for every cycle that it is not equal to zero.
Example:
'gene1 sets 971 to 1 on the first cycle then deletes gene1 cond start 971 inc .delgene inc stop 'when 971 is passed into child counter will begin keeping track of cycle number cond start 971 *971 dup div mult inc stop
Another use of epigenetic memory is to increase the genome's flexibility by having progenitors choose from a random set of values, on the first cycle.
cond start 3000 rnd 2000 add 971 store 50 rnd 20 add 972 store .delgene inc stop cond *972 *.nrg > start *971 .repro store stop
Here the progenitor decides the reproduction energy level and birthing percentage to pass on to its decendents.
Adding random copy errors it can be used to evolve racial memory to reach optimal values in simulations without mutations:
cond *.robage 20 = start *971 10 rnd 5 sub add 0 floor 971 store *972 4 rnd 2 sub add 0 floor 972 store stop