The paper discusses how a computational hydralician got involved in the design, implementation, and application of genetic algorithms – search procedures based on the mechanics of natural selection and genetics – and how that involvement depended critically upon the modern hydroinformatician’s sense of appropriate modeling of complex phenomena such as fluid mechanics. The paper starts by briefly reviewing the mechanics of genetic algorithms and then connects that mechanics to the fundamental intuition that GAs have something in common with human innovative processes. The paper continues with a short aside on a difference in the way hydroinformaticians and computer scientists are taught to reason with models. This leads to a discussion of the race between selection and recombination in a GA, and how understanding the race leads immediately to the construction of a critical dimensionless quantity in GA analysis. This dimensionless quantity is then sketched in the GA’s control map, and the paper concludes with a brief discussion of how such knowledge leads to the design of competent GAs – GAs that solve hard problems, quickly, reliably, and accurately. The paper concludes with an invitation to hydroinformaticians to both use genetic algorithms in the solution of difficult hydroinformatics problems and to apply their analytical skill to the design of ever more capable genetic and evolutionary algorithms.
Skip Nav Destination
Article navigation
Research Article|
July 01 2000
A hydroinformatician's approach to computational innovation and the design of genetic algorithms
David E. Goldberg
1Department of General Engineering, University of Illinois at Urbana-Champaign, Urbana, IL 61801, USA
Search for other works by this author on:
Journal of Hydroinformatics (2000) 2 (3): 155–162.
Citation
David E. Goldberg; A hydroinformatician's approach to computational innovation and the design of genetic algorithms. Journal of Hydroinformatics 1 July 2000; 2 (3): 155–162. doi: https://doi.org/10.2166/hydro.2000.0014
Download citation file: