Epigenetic Memory Locations

From WikiManual
Jump to: navigation, search

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