Everything2
Near Matches
Ignore Exact
Full Text
Everything2

Wator

created by drenehtsral

(idea) by drenehtsral (2.4 mon) (print)   ?   (I like it!) Wed Jan 02 2002 at 18:30:58

Wator is the name of a simple computer simulation used to illustrate the principle of emergant behavior. It was (as far as I know) first published in Scientific American (December 1984) by A.K. Dewdney, and it also appears in his book The Armchair Universe: An exploration of computer worlds].

The basic idea is fairly simple. You imagine (or create inside a computer) a toriodal world covered by a gigantic ocean. There are only two types of creatures on this planet, sharks and fish. The sharks eat the fish, the fish magicly subsist on their own (or eat imaginary plankton, or whatever you want to make up). A simple set of rules is applied to each individual each turn.

Sharks:

  • Swim in a random direction.
  • Increment both hunger and reproduction counters.
  • If they have swam onto a square occupied by a fish, eat the fish and reset the hunger counter.
  • If the hunger counter has reached the starvation value, the shark dies.
  • If the reproduction counter has reached the reproduction threshold, another shark is spawned in an adjacent square.

Fish:

  • Swim in a random direction.
  • Increment reproduction counter.
  • If reproduction counter reaches its threshold, another fish is spawned (no pun intended) in an adjacent square.

If the system parameters (fish reproduction time, shark starvation time, shark reproduction time) and initial state (usually a large random sprinkling of fish and a small random sprinkling of sharks) are chosen well, the system should settle into a very convincing (but slightly noisy) predator-prey cycle with occasional unusual events but for the most part running in a stable manner for an arbitrary amount of time.

It is also possible to produce unstable parameter sets, for instance if you allow sharks to reproduce quicker than they starve, they will take over and drive fish into extinction.

It is interresting to watch, and it doesn't take long to code up a version of this program and play with it. It has many realistic and amazingly complex behaviors that are all coded for in that simple set of rules. One can also add variations like overcrowding rules, or allowing starving sharks to eat other sharks if no fish are around, etc... The possibilitis are endless.

Anybody who is interrested in learning about artificial life or cellular automation should consider this for a fun and easy way to get their feet wet. Compare to Conway's Life.


printable version
chaos

Conway's life toroid Scientific American Artificial Life
Hunger reproduce Emergent Threshold
Y'know, if you log in, you can write something here, or contact authors directly on the site. Create a New User if you don't already have an account.
  Epicenter
Login
Password

password reminder
register

Everything2 Help

Cool Staff Picks
Just another sprinkling of indeterminacy
space
Lonely
Australian Aboriginal languages
pocket full of quarters
Bay leaf
split infinitive
Der Ring des Nibelungen
Removing head lice
Tortoise
Ad resistance training
Atari
How Long Copyright Protection Endures
Alfred Bester
New Writeups
Twin Eclipse
Conversations with God: An Uncommon Dialogue(idea)
SwimmingMonkey
Conversations with Fo Fo- the Loneliest dog in Purgatory(fiction)
locke baron
lynx(thing)
Simulacron3
Reality, Dimensions and the Natural Ontology(essay)
SubSane
Making Love to a 9-Foot Woman(person)
Ouzo
Thoughts(idea)
antigravpussy
I fall silent, listening. The breadcrumbs are talking about us(person)
calgon
Buffalo Bill by the pool(poetry)
gate
Anarchy is Order(idea)
ushdfgakjasgh
Scribeling(thing)
XWiz
Trism(review)
artman2003
Briefcase Full of Souls - Part I(fiction)
Dreamvirus
Alan Ladd(person)
waverider37
Harold Holt(person)
The Debutante
Until death do us part(fiction)
This page courtesy of The Everything Development Company