Game of Life
Here it comes! I got a moderate version after several hours work. Java is really cool!
I think the functions of all the buttons are obvious, but here still comes the manual
- START --- start the game all over again
- PAUSE --- suspend the game for a close examination
- STEP --- run the game stepwise, can run from EDIT mode directly
- CONTINUE --- exit the step mode
- EDIT --- put the population pattern to your own favor, left button to add, middle to remove
- RESET --- reset the limit values
- LIMITS --- these are the critical values, see below for the detail
I did this for fun. It is after the Machine Vision class this Monday that I thought
I should make this page. The demo applet is written in Java. If you like to know
some infomation about programming in java, check here please.
The game itself
I forgot who invented this game, actually maybe it is more correct to call
it a simulation rather than a game. OK, the idea is this: suppose we are looking
at a planet where lives a lot of creatures, who can each occupy a small
space. The most important thing is that the life term of these creatures is
solely decided by its neighbor population. A creature can either die because it is
too "lonely" (catches some psycho-disease ?), or the outer world is so "crowed"
that it cannot get enough living space anymore.
Now we know that the objective of the game is that given an initial state of
all the creatures living condition, trying to develop the evolution history
of the planet yourself. Obviously, the crucial thing is to decide the creterion
of "loneliness" and "crowdness". These parameters should be adjustable for a
real scientific simulation. However, we still give a popular definition as follows:
less than 2 neighbors : lonely to die
2 neighbors : survive
3 neighbors : survive or a new creature is born
more than 3 neighbors : crowd to die
Examine the game
At first glance, the survive creterion given above is of a kind of strict, only
2 out of 9 possible cases are favor to these creatures. You may wonder whether there
will be any creature left after a long time of simulation. However, as you see our
simulation for a while, you may be suprised at how strong the life of these creatures
are. Starting at a really sparse distribution, these creatures tend to clone together
and spawn forever.
Examine the game again
Here I give a planet size of 12x12, thus altogether there are 144 living areas creatures
can grow, and 2 to the power of 144 different living patterns. I hope you can be
convinced that after a certain peoriod, the life pattern of the planet can repeat,
just like some thousands years before.
This game is a very simple mathematical model reflecting the bio-society.
It can be applied to the evolution history of many living creatures in a
given region. I remember a similar model which was given by an economist
in order to do research on some economic phenomina, and the model method
helped him/her win the Nobel Prize!
OK, how the heck is this related to the computer vision ? Well, the answer I
can get so far is that it is a small extension of mathematical morphology. By
applying the idea of mathematic morphology, we can do some unofficial stuff in
computer vision, such as boolean smooth ... Oops, I have to take tomorrow's
course to fill in this part!
This page has been accessed
times since Apr 29, 1996.
Last modified: Sun Nov 17 13:23:26 1996