Genetic Algorithm

What is a Genetic Algorithm?

A genetic algorithm is a search/optimization technique based on natural selection. Successive generations evolve more fit individuals based on Darwinian survival of the fittest. The genetic algorithm is a computer simulation of such evolution where the user provides the environment (function) in which the population must evolve.

Any users new to the GA world are encouraged to read David Goldberg's Genetic Algorithms in Search, Optimization and Machine Learning, Addison-Wesley, 1989.

My Genetic Algorithm Story (as told by Dr. David Carroll)

My first exposure to genetic algorithms was through Steven Levy's book entitled "Artificial Life." While making a frozen pizza one night, I realized that I could use this fascinating technique as a search method for some of my research. Imagine me with pizza cutter in raised hand saying, "Wow, I can automate my tedious two-week long trial and error search and simulate life (pun intended, think about it) at the same time!"

For some odd reason, it took me another month and an observation by my now ex-wife to figure out that the guy I played tennis with at Illinois and the chap from the University of Alabama who wrote a marvelous GA textbook, were one and the same, David E. Goldberg (one of the "GA wizards").

With some tips from Goldberg I concocted a fairly versatile and modern GA (maybe not so modern anymore, but still versatile and usable). The reason for this particular web page is twofold. First, I wrote a FORTRAN GA, whereas all of the other available free GAs I can find are written in PASCAL, LISP or some version of C. Second, most (if not all) of the other readily available GAs do not include more modern GA concepts such as creep mutations, uniform crossover, niching, and elitism (whereas my GA has those options included). More recently I added the ability to use a micro-GA (very efficient). After many requests by colleagues and unknowns for my FORTRAN GA front-end driver code, I have decided to add this web page for any other FORTRAN holdouts (like myself) who are interested in GAs.

Purchase CU Aerospace's Genetic Algorithm code.

A free, lower functionality version 1.7.0 of D. L. Carroll's GA driver is also available for trial.

Only very limited support is provided for the free version.