Evolution in a no error Language
Model was written in NetLogo 5.2.1
•
Viewed 429 times
•
Downloaded 33 times
•
Run 0 times
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
Comments and Questions
Click to Run Model
turtles-own [brain cur belly] globals [oh one two three four five six seven ] patches-own [food] to setup ca ask patches [ sprout 1 [ set brain [] repeat 64 [set brain lput random 8 brain] set shape "circle" set heading random 4 * 90 ; show brain ] set food 1 ] reset-ticks end to go ask turtles [ ifelse belly > .3 [set size belly][set size .3] if size > 2 [set size 2] set cur cur mod 64 ifelse item cur brain = 0 [sit][ ifelse item cur brain = 1 [eat][ ifelse item cur brain = 2 [steal][ ifelse item cur brain = 3 [birth][ ifelse item cur brain = 4 [hunger][ ifelse item cur brain = 5 [smell][ ifelse item cur brain = 6 [move][ ifelse item cur brain = 7 [turn][ ]]]]]]]] set belly belly - metabolism if belly < 0 [ die ] ] ask patches [set pcolor food set food food + abundance] diffuse food .1 tick set oh 0 set one 0 set two 0 set three 0 set four 0 set five 0 set six 0 set seven 0 end ;0 to sit set oh oh + 1 set cur cur + 1 set color white end ;1 to eat set one one + 1 set cur cur + 1 ifelse food > 1 [set belly belly + 1 set food food - 1][set belly belly + food set food 0] set color blue set belly belly - metabolism end ;2 to steal set two two + 1 set cur cur + 1 ask (turtles-on neighbors) with [belly > 1][set belly belly - 1 ask myself [set belly belly + 1]] set color red set belly belly - metabolism end ;3 to birth set three three + 1 set cur cur + 1 if count turtles-on neighbors < 8 [ let targ one-of turtles-on neighbors if targ != nobody [ set belly belly / 2 hatch 1 [ set brain mate myself targ set cur 0 move-to one-of neighbors with [ count turtles-here = 0] ] ] ] set color green set belly belly - metabolism end ;4 to hunger set four four + 1 set color violet ifelse belly > item ((cur + 1) mod 64) brain [set cur cur + 4][set cur (item ((cur + 2) mod 64) brain) * (item ((cur + 3) mod 64) brain)] end ;5 to smell set five five + 1 set color yellow ifelse sum [food] of neighbors > 1 / ( 1 + item ((cur + 1) mod 64) brain) [set cur cur + 4][set cur (item ((cur + 2) mod 64) brain) * (item ((cur + 3) mod 64) brain)] end ;6 to move set cur cur + 1 set six six + 1 set belly belly - metabolism set color orange fd 1 ask other turtles-here [die] end ;7 to turn set seven seven + 1 set color magenta set heading 90 * item (( cur + 1 ) mod 64 ) brain mod 4 set cur cur + 2 end to-report mate [ta tb] let a [brain] of ta let b [brain] of tb let o [] let c 0 repeat 64 [ ifelse random-float 1 < mu [set o lput random 8 o ][ifelse random 2 = 0 [ set o lput (item c a) o ][ set o lput (item c b) o ]] set c c + 1 ] report o end to geno-plot if show-genome [ let x 0 let y 0 clear-plot ask turtles [ set y 0 foreach brain [ set-plot-pen-color gene-color ? plotxy x y set y y + 1 ] set x x + 1 set-plot-pen-color 0 ] ] end to-report gene-color [in] if in = 0 [report gray] if in = 1 [report blue ] if in = 2 [report red] if in = 3 [report green] if in = 4 [report violet] if in = 5 [report yellow] if in = 6 [report orange] if in = 7 [report magenta] end
There is only one version of this model, created almost 10 years ago by Jakob Virgil.
Attached files
File | Type | Description | Last updated | |
---|---|---|---|---|
Evolution in a no error Language.png | preview | Preview for 'Evolution in a no error Language' | almost 10 years ago, by Jakob Virgil | Download |
This model does not have any ancestors.
This model does not have any descendants.
Steven Brewer
Info?
I'd be interested in reading some info about this model.
Posted almost 10 years ago