NetLogo User Community Models
(back to the NetLogo User Community Models)
If clicking does not initiate a download, try right clicking or control clicking and choosing "Save" or "Download".(The run link is disabled because this model uses extensions.)
WHAT IS IT?
This is a totalistic 2 dimensional cellular automata explorer.
HOW IT WORKS
Patches get new states by summing up the states of their 8 closest neighbors and the state of themself and looking up the corresponding value in the rule array.
It is possible for the patch not to change its state. In that case the corresponding value in the rule array would be the boolean "false".
Rules can be:
4)gotten from examples
HOW TO USE IT
start the program
how many different states can there be
Makes completely new rules
random patch values
mutate the rules based on current rule
shuffle coloring array
switch active world (or rule)
Example rules. Just push initiate-example to view some interesting rules.
Restarts the model. There is no need to press this unless you encounter some crazy errors i think
The state used for background or the most common patch state. This is used in several places.
The chance of a state being something else instead of the death-state
Depending on the nature of the rule one algorithm may be better than the other
custom patch values upon pressing random-values defined by the list state-values
Max % of rule to change. There will always be at least one change
Chance of 0 being a new value in mutated rule instead of any other value
If balance is 0.5 then the maximum amount of 0's in a rule with 3 states is random ((9 * 3) * 0.5). Amount of 1's will be random ((9 * 3) - amount of 0's) * 0.5. Special value "false" will never be a part of initial rules. Unused spots will be populated with 0's and the result will be shuffled
get the current rule or set the current rule on the rule input field.
To get a nice overview of what this does:
2)get the rules and remember them well (or copy them somewhere)
3)now enter  as levels and press expand-current
4)get the rules and compare to the previous rule from point 2)
5)enter [1 2] as levels and expand-previous
6)get the rules and try to understand what happened
patch-state and drawing:
should be self-explanatory
no color updates
THINGS TO TRY
Try to evolve some interesting rules from scratch.
EXTENDING THE MODEL
1)Allow the user define custom neighborhoods
2)Fix bugs (there should be errors)
Find more efficient ways to navigate CA world. Maybe another tool besides evolving or expanding the rules or a tweaked version of those 2.
Find more efficient general algorithms. Many CA have oscillators that make the patches switch states periodically. There may be a speed increase possibility
There is no need to shuffle the patches, but "ask agentset" construct (like many other agentset related consturcts) does that by default and this takes valuable time when there are 40 thousand patches. Shuffeling is avoided with:
Cellular automata group in Netlogo models library