Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Genetic Algorithm Utility Library (GAUL)

branch: master

+ New autoconf files to get the whole think compiling under Darwin. U…

…nfortunatly, this required dropping the watcom support and the examples are not built
latest commit 14f21352f5
Ben Burnett authored
GAUL: The Genetic Algorithm Utility Library
Copyright © 2000-2009 "Stewart A. Adcock" <>
All rights reserved.

This is the "gaul-devel" package, which currently provides the
developmental version of GAUL.

Further Information

Development homepage:
Further information:

All existing documentation, including a reference guide, on-line
tutorial and a FAQ, is available at the website.  Note that reference
documentation is still being written.  In the mean-time you are welcome
to join the mailing list,, where all
of your questions can be answered.

Introduction to GAUL

The Genetic Algorithm Utility Library (or, GAUL for short) is a flexible
programming library designed to aid in the development of applications
that require the use of genetic algorithms. It provides data structures
and functions for handling and manipulation of the data required for a
genetic algorithm. Additional stochastic algorithms are provided for
comparison to the genetic algorithms.

GAUL is OSI Certified Open Source Software.

Current features include:

 * Darwinian, Lamarckian or Baldwinian evolutionary schemes.
 * Both steady-state and generation-based GAs included.
 * The island model of evolution is available.
 * Chromosome datatype agnostic. A selection of common chromosome types is built-in.
 * Includes most of the usual crossover, mutation and selection operators.
 * Allows user-defined GA operators, icluding:
     o crossover, mutation, selection, adaptation, replacement.
 * Availability of multiple chromosome genomes.
 * Full support for multiple, simultaneously evolved, populations.
 * Choice of high-level or low-level interface functions.
 * Additional optimisation algorithms for local optimisation or comparative purposes:
     o Hill climbing.
     o Tabu Search.
     o Simulated annealling.
     o Simplex Search.
     o Steepest Ascents.
     o Deterministic Crowding.
 * Trivial to extend using external code via the built-in code hooks.
 * Support for multiprocessor calculations on various architectures:
     o MPI
     o OpenMP 2.0
     o pthreads
     o forked-process model
 * May be driven by, or extended by, simple yet powerful scripts, in a variety of languages.
 * Written using highly portable C code.

The current primary aims for the GAUL development project are to produce
documentation, examples and test cases for this open-source release of
GAUL. Several new features are also planned for GAUL including wrappers
to enable its use with programming languages other than C.

The main development platform for GAUL is Linux with the gcc compiler,
but it should be fairly trivial to use GAUL on any POSIX compliant
systems.  Recent versions of GAUL have been successfully used a variety
of operating systems, including RedHat Linux, FreeBSD, Sun's Solaris and
SGI's IRIX.  Full use is made of the GNU maketools to aid portability
issues.  A table of fully compatible platforms is located at

This version of GAUL is distributed under the terms of the GNU General
Public License.  See the file ./COPYING for full details.

See file ./INSTALL

Bug Submission

If you find a bug, please send details of your system, the version of
GAUL that you are using and concise instructions for reproducing the
crash to

The GAUL 'Button'
If you use GAUL in your application, please consider adding the
miniature GAUL logo to your web page:

<a href="">
  <IMG src="gaul_button.png" width="88" height="31" border="0" alt="GAUL Button">

The 'gaul_button.png' graphic may be downloaded from the GAUL web page.

Stewart Adcock, 30th March 2009.

Something went wrong with that request. Please try again.