SimGALib: Simple GA Library
...SimPSOLib: Simple PSO Library
.......SimTstLib: Simple Test Function Library

SimGALib is a small and simple C++ implementation of a GA
for use in optimizing a function. It is that way on purpose to make the code
as easy to understand as possible.

SimGALib now includes SimPSOLib which is a small
and simple C++ implementation of PSO also for use in optimizing a function.

SimGALib also includes SimTstLib which encapsulates available test functions and
random number generator functions.  It is easily expandable.

Q1: Why SimGALib? 
Because we felt that a simple implementation of a GA in C++ should be
done so that anyone could understand it.

Q2: I want to learn about Genetic Algorithms

After all this reading... Do you still want SimGALib?  Here it is

Last updated: 4/28/14

Please note that some (optional) random number functions in SimTstLib are from
Numerical Recipes.
Numerical Recipes (NR) is copyrighted software
and is included here for academic completeness only.
If NR software is used by you in any commercial application then must contact
NR to obtain a license.

Numerical Recipes Software
P.O. Box 243, 
Cambridge, MA 02238

Revision history:
v.1.7.1 - 4/28/14
Bounded the the accepting function prob in simulated annealing code to be between 0->1.0.  Should not be necessary but if the difference in energy were negative the prob. could have been > 1.0.  Also, fixed the calc of the energy delta to consider the restarts, otherwise the Temp would not drop fast enough and the algorithm Temp would stay w/ acceptance prob too high.
v.1.7.0 - 4/14/14 Corrected an Organism( ) initialization problem when no params were passed, it would default to 32 bits.  Now it prints an error and does not proceed. 
v.1.1.6 - 3/18/11
Added particle swarm optimization (in SimPSOLib), encapsulated test functions into SimTstLib, added printing of function evaluations, added an optional random number generator from NR in C.
v.1.1.5 - 6/23/10
Added simulated annealing, corrected variance calculation.
v.1.1.4 - 5/28/10 Added stochastic hillclimbing.
v.1.1.3 - 3/11/10
Added ranking, tournament and several new evaluation functions.
v.1.1.0 - 8/23/08 Made the code a bit more object oriented.
v.1.0.0 - 6/1/08 Initial version.