gasurf - find a surfaces peak with a genetic algorithm
gasurf [-size integer] [-len integer] [-gens integer]
[-seed integer] [-crate double] [-mrate double]
Use a genetic algorithm to find the maximum of a multi-
humped function. This program serves as an example of how
GAs can be used to optimize function which take a multiple
floating point arguments. Reproduction of strings entails
crossover and mutation with strings being selected based
Number of generations.
The bit strings are converted to floating point numbers
with the formula (8 * int(string) / 2^len - 4) where
int(string) is the integer value of a binary string.
Thus, all numbers are forced to be between -4 and 4.
A more sophisticated GA encoding would use Gray codes to
represent the floating point numbers which arguably are
better behaved under mutation.
No sanity checks are performed to make sure that any of
the options make sense.
Copyright (c) 1997, Gary William Flake.
Permission granted for any use according to the standard
GNU ``copyleft'' agreement provided that the author's com-
ments are neither modified nor removed. No warranty is
given or implied.