JCASim: Cellular automata simulation system

Overview Examples Documentation Download Ads

The program system JCASim is a general-purpose system for simulating cellular automata in Java. It includes a stand-alone application and an applet for web presentations. The cellular automata can be specified in Java, in CDL, or using an interactive dialogue. The system supports many different lattice geometries (1-D, 2-D square, hexagonal, triangular, 3-D), neighborhoods, boundary conditions, and can display the cells using colors, text, or icons. Contact:
Jörg Richard Weimar http://www.jweimar.de/


The simulation package JCASim is used to simulate cellular automata.


With the package CAComb, cellular automata can be coupled, and simulated on several machines in parallel.


With the package CAAnalysis, cellular automata are automatically analyzed. Mean-field and similar approximations are automatically calculated.
Overview Examples Documentation Download Ads

Fish swarms

An example of moving objects, in this case simple fish swimming in schools.

Ship evacuation

Another example for moving objects, in this case persons trying to leave a ship.

GreenbergHastings-automaton hexagonal

A simple excitable cellular automaton can be simulated on many different lattices. The Java source code is GH.java. The same automaton coded in CDL is GH2.cdl. Use this automaton to experiment with different lattice geometries, different boundary conditions,and different initial conditions.

Neighborhood definition

The numbering of the neighbors in the different neighborhoods is consistent for small neighborhoods: the neighbors in the Moore neighborhood which are also in the von-Neumann neighborhood (R=1) have identical positions in the neighbor list. For visualizing the numbers, use the automaton Neighborcheck, which after one step, displays the inverse of the neighborhood, i.e., the position at which a cell found the center cell.

vonNeumann self-reproducing CA

One of the first cellular autmata was the 29 state system that John von Neumann devised as an example of self-reproduction. Necessary files for modifying this example are vonNeumann.cdl, which contains the definition of the CA, vonNeumann.javainclude which conatins additional initialization code in Java, and arrvn.gif, which contains the icons used in representing the cell state.

Asynchronous Updating

Asynchronous updating has been introduced in JCASim as an example of user-extension of the Lattice class.

CA for Reaction-Diffusion System

Slides with applets from a talk at the GAMM workshop: Discrete Modelling and discrete Algorithms in Continuum Mechanics, Braunschweig, Germany, November 2000. This talk consists of a presentation written in HTML with applets included. It can only be seen fully if the browser window is 1024*768 pixels large. Click on the upper half of each page to get to the next page, or use the navigation bar on the far right.

Reversible CA

Slides with applets from a talk at the Institute of Mathematical Physics, TU Braunschweig on July 3rd, 2003. This talk consists of a presentation written in HTML with applets included. It can only be seen fully if the browser window is 1024*768 pixels large. Click on the upper half of each page to get to the next page, or use the navigation bar on the far right.

Cellular Automata examples from ACRI 2000

Here I have collected a few examples of cellular automata that are similar to examples presented at the conference ACRI 2000 in Karlsruhe, which took place on October 4-6 2000. Note that all examples are only similar, and do not represent the exact models used by the researchers who presented the models. The reason for the inaccuracies is that 1. the models presented here are all synchronous (but probabilistic) models, whereas two of the original models are asynchronous models.  2. My models are based on the partial information given in the presentations and the accompanying papers, which is not always sufficient to completely program a CA model.

Script about Modelling with CA

Overview Examples Documentation Download Ads

An example automaton is described in the file GHminimal.java . A description of the application can be found in the handbook for CASim , which is also available in Postscript for printing . Note that it you want to input CA-descriptions in CDL or Java source code (as opposed to class files), you should include the file tools.jar which comes with the JDK and should be someplace like /usr/java/lib/tools.jar in your CLASSPATH. Otherwise you get the error that sun.tools.javac.Main cannot be found.

Example for Linux:

 setenv CLASSPATH /home/weimar/Java/casim.jar:.:/usr/local/jdk1.2.2/lib/tools.jar

Example for Windows: in the autoexec.bat file, put something like

 SET CLASSPATH=D:\acri\casim.jar;D:\acri\;c:\PROGRA~1\JDK-1.2.2\lib/tools.jar;%CLASSPATH%

Java doc files for the casim classes are here

Simulation with Cellular Automata

The book "Simulation with Cellular Automata" has been published in 1998, updated in 2002. Bibliographical reference:

Jörg R. Weimar: Simulation with Cellular Automata, Logos-Verlag, Berlin, 1998. ISBN 3-89722-026-1, EUR 20.00.

It is available through the usual distribution channels, from amazon, or directly from the publisher, Logos-Verlag in Berlin.

An HTML-version with interactive applets is also available.

The class is being held each summer term. Please contact me for further information.
Overview Examples Documentation Download Ads

The simulation system is completely written in Java. You can download the jar-file casim.jar here. Pay attention not to change any characters in the text. If you are using a Winows-machine, better download the file packed in a ZIP file here and unpack it. Include the file casim.jar in your CLASSPATH, then start the simulation system with java casim .

The latest version has been downloaded on April 11, 2001.

For inclusion in your own web-pages, please download the file

and put it in the same directory aas your HTML files and class files for your simulations.

Corrections and additions:
24.04.01: Support for multithreading, adjustable delay in simulation.
11.04.01: Fixed Bug to support loading classes with package names.
05.12.00: Changed grid color, added circular 1-D representation
05.12.00: Automatic increment of print file name; better error messages in CDL translation
22.11.00: Added LogicVisitor class
7.11.00: Added asynchronous updating.
20.10.00: better support for global variables in reset.
18.10.00: better support for Moore neighborhood in cdl files, no more ArrayIndexOutOfBounds.

Overview Examples Documentation Download Ads
Sourceforge project home: SourceForge.net Logo Bücherliste Grundschule Karlstrasse, Wolfenbüttel    
Overview Examples Documentation Download Ads .....

Last modified Mo 22. Jun 10:40:12 CEST 2009 by weimar on gandalf5