A Tcl extension for genetic (or evolutionary) algorithm processing.
A genetic algorithm (GA) is a search technique used in computing to
find exact or approximate solutions to optimization and search problems.
Genetic algorithms are categorized as global search heuristics. They are
a particular class of evolutionary algorithms that use techniques inspired
by evolutionary biology such as inheritance, mutation, selection, and crossover.
For an introduction to genetic algorithms visit:
http://gaul.sourceforge.net/intro.html
This extension enables genetic algorithm processing in Tcl. It is using the
GAUL (Genetic Algorithm Utility Library) library underneath. GAUL is a flexible
programming library designed to aid in the development of applications that use
genetic algorithms. Additional stochastic algorithms are provided by the library
for comparison to the genetic algorithms.
Tcl-gaul supports:
* Darwinian, Lamarckian or Baldwinian evolutionary schemes.
* Both steady-state and generation-based GAs.
* Includes most of the usual selection operators.
* Custom seed, adapt, evaluation, crossover, and mutation operators.
* Provision for custom termination criteria.
* Display statistics and the population ranking.
* Support for multiprocessor calculations on various architectures:
* forks
* MPI
* OpenMP 2.0
* pthreads
Dependencies:
* Tcl Version 8.5 or greater
* GAUL Library Version 0.1849-0 or greater (http://gaul.sourceforge.net)
For instructions on how to use, consult the tcl-gaul (n) man page.
To make type:
./configure
make
make install
The configure script will deduce $PREFIX from the tcl installation.
The generated Makefile uses the file $PREFIX/lib/tclConfig.sh that was left by
the make of tcl for most of its configuration parameters.
The Makefile generates pkgIndex.tcl files that are compatible with tcl >= 7.6.
Written by: Alexandros Stergiakis (sterg@kth.se)
Use at your own risk.
Copyright (C) 2008 Alexandros Stergiakis
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.