Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Clone this wiki locally
The following libraries are required by various parts of the Watchmaker Framework. This page describes the nature of the dependencies and explains if and when these JAR files can be excluded from programs that use Watchmaker.
The Uncommons Maths project started life as a module in the Watchmaker project. It was moved to a separate project because it is useful beyond the world of evolutionary computation. Uncommons Maths provides fast, reliable random number generators, utilities for working with non-uniform probability distributions, and classes for combinatorics. It remains an important component of the Watchmaker Framework. The Watchmaker Framework will not work at all if the Uncommons Maths JAR file is absent.
Google Collections is currently only used in the implementation of the CachingFitnessEvaluator. Therefore, if you don’t use this class in your programs you can probably safely omit the Google Collections JAR file.
JFreeChart (and JCommon)
JFreeChart is a dependency of the Watchmaker Swing module rather than the core framework. If your program does not use Swing it does not need JFreeChart (or JCommon). In fact, JFreeChart is only used by the EvolutionMonitor component. So if your program uses the Swing module but does not use the EvolutionMonitor, JFreeChart and JCommon can be safely omitted.