Projects / GAUL


The Genetic Algorithm Utility Library (GAUL) is a programming library for evolutionary algorithms. Both steady-state and generation-based evolution is supported, together with the island model. GAUL supports the Darwinian, Lamarckian, and Baldwininan evolutionary schemes. Standard mutation, crossover, and selection operators are provided, while code hooks additionally allow custom operators. 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. Much of the functionality is also available through a simple S-Lang interface.

Operating Systems

Recent releases

  •  22 Apr 2005 16:29

    Release Notes: This release adds support for the user-defined ranking callback GARank, along with built-in ga_rank_fitness(), support for the differential evolution algorithm, optimized alternative search functions when specifically applied to double-array chromosomes, and a ga_population_get_island() function.

    •  22 Feb 2005 10:34

      Release Notes: Numerous additions and improvements were made. Most notably, island-model genetic algorithms are now available as parallel versions using either MPI or pthreads. Several new demonstration programs were added to the distribution.

      •  29 Jun 2004 03:12

        Release Notes: The parallel processing code was overhauled. The MPI-based code was improved in terms of maintainability and ease of use. Thread-based code was rationalized, and now only pthreads are supported. Buggy and incomplete PVM support was removed entirely. OpenMP is now supported.

        •  28 Aug 2003 07:11

          Release Notes: ISO C99 compliance was improved, and a MS Windows port was made. Several additional example programs were added and several minor bugs were fixed.

          •  25 Jul 2003 04:56

            Release Notes: This release contains several significant bugfixes. It also introduces a much improved layout of installed header files. A new example program, royalroad_bitstring, is provided. Several new functions are available for accessing properties of the population structures: ga_population_get_crossover(), ga_population_get_mutation(), ga_population_get_migration(), ga_population_get_elitism(), and ga_population_get_scheme().


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.