|
|||
Object Oriented Design and Implementation of a General Evolutionary AlgorithmRóbert Ványi Department of Theoretical Computer Science, Friedrich-Alexander University, Erlangen-Nürnberg, Martensstr. 3, D-91058 Erlangen, Germanyvanyi@cs.fau.de Abstract. There are many types of evolutionary algorithms, just like genetic algorithms, evolution strategies or genetic programming. Thus there are a lot of implementations of different EAs as well. One can find many tools, programming libraries written in a wide variety of programming languages, implementing several features of Evolutionary Algorithms. However, many of them misses one or other feature by restricting the algorithm to a certain type. The aim of the work presented in this paper is to introduce a general, object oriented EA model, and to present an implementation of it. One of the most important advantages of this system is that it uses a generalized view of EAs and evolutionary operators, thus any combination of different types of evolutionary operators can be used with lots of parameters. The system is also easy to extend, and still easy to understand and use. If one wants to use the already implemented data types and operators, implementing an EA is an easy ride. For example an evolutionary algorithm solving a polynomial approximation problem for real-valued polynomials can be implemented with only 100 lines of C++ code. LNCS 3103, p. 1275 ff. lncs@springer.de
|