Darwin README file
This document is the starting point for information regarding the Darwin
Java framework for evolutionary computation. For the most
up-to-date description of the project, see the package description for com.rubecula.darwin.startup.
This should be available here (on the net)
or here (local if you have downloaded the package).
For general documentation on the Darwin project, you should visit http://darwin.sourceforge.net/doc.
The Darwin project provides a working set of classes intended as a
framework for developing evolutionary computation applications, such as
genetic algorithms or genetic programming. The classes model (at
a high level) the mechanisms found in nature, although not every detail
is retained of course.
You should use Maven to build Darwin 2 and resolve all of the necessary dependencies. The main class for running applications is com.rubecula.startup.Darwin. See
the API for more details. You can run your own application by providing the name of your configuration file as an argument. The best way to create a configuration
file is to copy from existing configuration files. More details on this will be forthcoming.
There is a trivial out-of-the-box application and two working examples:
- The Out of the box application. Simply run the main method of the Darwin class
with no parameters and the out of the box application (Mendel's pea plants) will run.
- The Peppered Moth applet. If you would like to see Darwin. in action,
you should run the applet. For more information, see the
package description. Note that these pages still show the old Peppered Moth applet. If it shows Darwin 2 Visualization Applet... then it has been updated to the latest
version of the applet.
- The Traveling Salesman application. For more information, see the
package description. You can run the Traveling Salesman problem by simply running the main program com.rubecula.startup.Darwin with command line argument travelingSalesman.xml.
If you are not using Maven, then here is the current list of dependencies
(this however is likely to get out of date):
- com.rubecula:common:jar:1.0.0:compile
- commons-beanutils:commons-beanutils:jar:1.7.0:compile
- commons-beanutils:commons-beanutils-core:jar:1.8.0:compile
- commons-collections:commons-collections:jar:3.2.1:compile
- commons-configuration:commons-configuration:jar:1.6:compile
- commons-digester:commons-digester:jar:1.8:compile
- commons-lang:commons-lang:jar:2.3:compile
- commons-logging:commons-logging:jar:1.1.1:compile
- commons-math:commons-math:jar:1.2:compile
- jep:jep:jar:2.24:test
- junit:junit:jar:4.5:test
- net.java.dev:eval:jar:0.4:test
- net.sf.beanpot:beanpot:jar:1.0.10:compile
- net.sf.tostring:tostring0:jar:1.0.1:compile
- net.sf.jexpression:jexpression:jar:1.0.1:compile
Last Updated: 2010-01-20