18 years ago
wanted to get one more release out and we are happy to announce the
release of 4play 1.1. This new version contains many improvements and
several bug fixes.
The purpose of this software is to demonstrate that recurrent neural
networks can solve a problem requiring both active use of RAM and
logical decision making. They are thus able to do what is usually done
by a procedural computer program. In the present case the ANN that
does this has been found by simulated evolution.
4play is written in C and all source code is included.
Here are the main changes since version 1.0:
A new, separate program has been added, examine.c. This program reads
a chromosome file named by the user and prints out a great deal of
information about that chromosome. If it is the chromosome of a
perfect player it will determine which weights could be set at zero,
and which neurons are not functional. It also writes out a perfect
chromosome file with many weights set at zero.
We replaced the random value generator with the "Mersenne Twister",
which some think is the best available for the purpose. It produces
high quality pseudorandom values, and is very fast. It is a little
faster than rand(), which we were using.
4play now runs faster. The main contributor to the faster program is
that we no longer run every ANN through all 48 possible patterns. An
ANN can prove itself to be a loser by losing a large fraction of its
first few games. We now have a test for this, and in such cases we
quit early. Since many offspring have low fitness, this has a
substantial speedup effect. Only the better ANNs are required to play
all 48 patterns.
We have also included a windows command line batch file, works.bat,
for those who want to let the computer work for a day or two trying to
find the best ANNs. It collects the results of several runs and
combines them into other runs; it is a kind of automatic selective
breeding. A run of works.bat can take several days, or less than a
day, depending on the neuron count, the population size, and the speed
of the computer. If the power goes out or your computer fails there
will be files on the disk containing evolved chromosomes.
There are now two modes of text output, verbose and non-verbose. The
former is identical to version 1.0 output. The non-verbose mode has
much less text output; it does not output each generation when there
is no improvement. Furthermore, you can change modes during a run by
renaming files from another window. If a file named "noverb" is
present, this will start non-verbose mode. If this file is renamed
"verbose", then verbose mode will be entered.
4play is extensively documented. Much more information about 4play is
included in the downloadable files at:
The Annevolve team experiments with the Evolution of Artificial Neural
Networks (ANNs). They are combining the two fields of Artificial
Neural Networks and Evolutionary Computation. Find out more about the
other neuroevolution programs at: