The WATCHDOG artifact is a demo application featuring cellular automata built with the REFCODES.ORG artifacts. It accompanies my talk at the JVM-Con 2018, where I speak about With swarm intelligence on Burglar Hunt.
The funcodes.club provides some showcases of cellular automata with its source code hosted at Bitbucket, including the WATCHDOG artifact. To try it out, download the watchdog-launcher-0.0.1.sh binary script and invoke it by calling ./watchdog-launcher-x.y.z.sh or java -jar watchdog-launcher-0.0.1.sh. It will start with a random cellular automaton and a random board (you will need at least Java 16 installed).
“… Die Zellen eines zellulären Automaten, die auf ihre jeweilige Umgebung reagieren, verhalten sich Mainzer1 zufolge wie eine Schwarmintelligenz …”2 (“… According to Mainzer, the cells of a cellular automaton that react to their respective environment behave like a swarming intelligence …”)3
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
The
BoulderDashrelated images (1, 3, 4 and 9) above are not part of thefuncodes-watchdogshow case though they are screen shots of a similar application using same cellular automaton engine and viewer …
Getting started
To get up and running, clone the funcodes-watchdog repository from bitbucket’s git repository.
How do I get set up?
Using SSH, go as follows to get the Maven WATCHDOG project:
1
git clone git@bitbucket.org:funcodez/funcodes-watchdog.git
Using HTTPS, go accordingly as follows to get the Maven WATCHDOG project:
1
git clone https://bitbucket.org/funcodez/funcodes-watchdog.git
Then you can build a fat-jar and launch the application:
1
2
3
cd funcodes-watchdog
mvn clean install
java -jar target/funcodes-watchdog-0.0.1-SNAPSHOT.jar
Big fat executable bash script (optional)
This step is optional, though when running your application under Linux, the following will be your friend:
To build a big fat single executable
bashscript, take a look at thescriptify.shscript and thebuild.shscript respectively:
1
2
./toolbox/scriptify.sh
./target/watchdog-launcher-x.y.z.sh
The resulting watchdog-launcher-0.0.1.sh file is a big fat single executable bash script being launched via ./target/watchdog-launcher-x.y.z.sh.
Building and creating an executable bash script is done by calling
./toolbox/build.sh!
Starting Watchdog
1
2
3
4
5
./watchdog-launcher-x.y.z.sh --help # Show a help message
./watchdog-launcher-x.y.z.sh # Start watchdog automaton and a random board
./watchdog-launcher-x.y.z.sh --console # As above, in addition also print the current state to the console
./watchdog-launcher-x.y.z.sh --board lecture # Start watchdog automaton with the 'lecture' board
./watchdog-launcher-x.y.z.sh --list # List all available watchdog boards
Have fun playing around with the various
WATCHDOGsettings!
See also
-
See Klaus Mainzer at Wikipedia (de), 2019 ↩
-
See Zelluläre Automaten und Maschine 4.0 by Achim Szepanski, 2018 ↩
-
See Die Berechnung der Welt. Von der Weltformel zu Big Data (page 161) by Klaus Mainzer, 2014 ↩









