//
// SwarmChemistry.java
// Public Release Version 1.3.0 (3-D version)
//
// 2006-2012 (c) Copyright by Hiroki Sayama. All rights reserved.
//
// Send any correspondences to:
//   Hiroki Sayama, D.Sc.
//   Associate Professor, Department of Bioengineering
//   Binghamton University, State University of New York
//   P.O. Box 6000, Binghamton, NY 13902-6000, USA
//   Tel: +1-607-777-4439  Fax: +1-607-777-5780
//   Email: sayama@binghamton.edu
//
// For more information about this software, see:
//   http://bingweb.binghamton.edu/~sayama/SwarmChemistry/
//


*** What's new in version 1.3.0?

- Swarm Chemistry finally became ***3-D***!! The basic simulation
  algorithm remains exactly the same as before, only the spatial
  dimensions changed from two to three, so you can still use recipes
  that were evolved using earlier 2-D versions of Swarm Chemistry. The
  visualization is still far from sophisticated, everything written in
  pure Java.

- Interaction with the mouse cursor is disabled.

- A few bug fixes were made to the GUI.


*** About the software

"Swarm Chemistry" is interactive simulation software developed and
used for the author's research project on the collective dynamics of
heterogeneous self-propelled particle swarms. Swarm agents
(a.k.a. particles) steer their motion according to a set of simple
kinetic rules, similar to those in Craig Reynolds' "Boids". Each agent
in our model has its own kinetic parameters that may be different from
others, so that you can mix several different types of swarm agents
into a single population and see how they kinetically react and
self-organize into a dynamic pattern. For more details, see the
project website http://bingweb.binghamton.edu/~sayama/SwarmChemistry/.

NOTE: This simulator is developed and distributed in the hope that it
will work correctly and be useful, but WITH ABSOLUTELY NO
WARRANTY. You may not use either this simulator or the results
obtained through the use of this simulator for any commercial purposes
without permission by the author. You may use, distribute or modify
this simulator without permission by the author for academic purposes,
as long as its original sources are included and fully credited in all
the derived distributions.


*** Other tips

- The initial number of frames can be specified as a command-line
  argument if the software is run as a Java application. For example,
  "java SwarmChemistry 3" will launch the simulator with three frames.

- You can specify the recipe of the initial swarm as a command-line
  argument if the software is run as a Java application. For example,
  "java SwarmChemistry '10 * (1, 1, 1, 1, 1, 1, 0.5, 1)'" will launch
  the simulator with one frame in which a swarm made of 10 agents with
  parameters (1, 1, 1, 1, 1, 1, 0.5, 1) are simulated. This feature is
  useful when you want to demonstrate just a specific swarm you
  evolved.

Questions? Comments? Send them to sayama@binghamton.edu.
