An Overview of Evolutionary Programming

  • Fogel D
N/ACitations
Citations of this article
29Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Evolutionary programming is a method for simulating evolution that has been investigated for over 35 years. This paper offers an introduction to evolutionary programming, and indicates its relationship to other methods of evolutionary computa-tion, specifically genetic algorithms and evolution strategies. The original efforts that evolved finite state machines for predicting arbitrary time series, as well as specific re-cent efforts in combinatorial and continuous optimization, are reviewed. Some areas of current investigation are mentioned, including assessing the optimization performance of the technique and extensions to include mechanisms of self-adaptation. 1. Introduction. The impact of evolutionary thinking on biology cannot be underestimated. But evolutionary thought extends beyond the study of life. Evolution is an optimization process that can be simulated on a computer and used for good engineering purpose. It also is essentially similar to the process of the scientific method, and as such it represents a procedure for generating machine intelligence. There are three main lines of investigation within the current frame-work of evolutionary computation: (1) genetic algorithms, (2) evolution strategies, and (3) evolutionary programming. Reviews of these methods are offered in several recent books (Schwefel, 1995; Fogel, 1995a; Back, 1996; Mitchell, 1996; Michalewicz, 1996; and others). Each of these meth-ods has developed over more than 30 years, and mostly independently of each other. Only recently have there been overt efforts to unify these very similar approaches to modeling the fundamental aspects of natural evolu-tion. This paper provides an overview of one of the approaches: evolution-ary programming. The scope is limited due to the nature of the submission in the context of the IMA workshop, as others will provide background and detailed information regarding alternative methods of evolutionary compu-tation. 2. Perspectives of simulated evolution. When applied to opti-mization problems, all methods of evolutionary computation involve an it-erative population-based search with random variation and selection. The methods differ with respect to the traditional choices of representation, as well as the procedures used for generating new solutions and for selecting which solutions to maintain into future generations. The choices that have been made historically have emerged from alternative perspective~ of the complex process of natural evolution. Evolutionary mechanisms create a complex web of interacting effects that cannot be easily partitioned or dis-entangled (Hoffman, 1989, pp. 32-33), but the physics that governs the

Cite

CITATION STYLE

APA

Fogel, D. B. (1999). An Overview of Evolutionary Programming (pp. 89–109). https://doi.org/10.1007/978-1-4612-1542-4_5

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free