Open BEAGLE: A New C++ Evolutionary Computation Framework

Christian Gagn´ e and Marc Parizeau Laboratoire de Vision et Syst`emes Num´eriques (LVSN) Universit´e Laval, Qu´ebec (QC), Canada, G1K 7P4. E-mail: {cgagne,parizeau}@gel.ulaval.ca

Abstract

GA

GP

Other EC

Generic EC framework

In the evolution system, the context contains the state of the genetic engine, such as the current deme and generation number. This concept is similar to the execution context of a computer. The register is a central repository for all evolution parameters. The evolving process itself is governed by an evolver that defines sequences of operations, contained in operator sets, 1 The recursive acronym BEAGLE means the Beagle Engine is an Advanced Genetic Learning Environment.

Figure 1: Open BEAGLE Framework Architecture. 00101101 Genotype Individual Deme Vivarium

Register Context Evolution System Evolve

State

Bootstrap Operator Set Main-Loop Operator Set

Algorithms

Open BEAGLE1 is a C++ framework for doing almost any kind of EC. Its architecture follows the principles of Object Oriented (OO) programming, where some abstractions are represented by loosely coupled objects and where it is common and easy to reuse code. Open BEAGLE has a three level architecture as illustrated by Figure 1. The OO foundations are the basis of this architecture, as an object oriented extension of C++, inspired by design patterns (Gamma et al., 1994; Lenaerts and Manderick, 1998). It offers basic functionalities like smart pointers and garbage collection, object allocators, standard containers, and XML I/O streams. The generic EC framework implements basic mechanisms and structures for designing versatile specialized Evolutionary Algorithms (EA). It is summarized in Figure 2. It comprises three main components: a vivarium, an evolution system, and an evolver. The vivarium is a container for demes of generic individuals. The individuals themselves are specified by an abstract genotype. This genotype can be instantiated to any relevant structure (in Figure 2, it is shown as a bit string, but this is just an example). Individuals and demes can also be specialized if needed.

Object oriented foundations C++ Standard Template Library (STL)

Data Structures

This poster introduces a new C++ Evolutionary Computation (EC) framework named Open BEAGLE. This framework is freely available on the projet’s Web page at http://www.gel.ulaval.ca/~beagle.

Evolver

Figure 2: Generic EC Framework Architecture that are iteratively applied to demes. The evolver applies the bootstrap operator set to initialize the first generation, and the main-loop operator set to the subsequent generations. For common EA, standard operators have been defined, such as common selection schemes, crossovers, mutations, statistics calculation, and evolution checkpoint backup. The specialized frameworks are at the top level of the architecture. Currently, only classical genetic algorithms and genetic programming frameworks have been implemented. But we are looking forward to external contributions by interested researchers for other specialized EA. Extensive documentation is available on the Open BEAGLE’s Web page. References Gamma, E., Helm, R., Johnson, R., and Vlissides, J.: 1994, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley Lenaerts, T. and Manderick, B.: 1998, Building a genetic programming framework: The added-value of design patterns, in Proceedings of EuroGP ’98, Vol. 1391 of LNCS, pp 196–208, Springer-Verlag

Open BEAGLE: A New C++ Evolutionary Computation ...

available on the projet's Web page at ... C++, inspired by design patterns (Gamma et al., 1994; ... mechanisms and structures for designing versatile spe- cialized ...

128KB Sizes 3 Downloads 193 Views

Recommend Documents

Open BEAGLE: A New C++ Evolutionary Computation ...
cution context of a computer. The register is a central repository for all ... and evolution checkpoint backup. The specialized frameworks are at the top level of.

Open BEAGLE
umerous Evolutionary Computations (EC) software tools are now publicly ... Another interesting derivative of Open BEAGLE is called distributed BEA-. GLE [4].

Open BEAGLE Manual
Oct 6, 2005 - generate files, and to integrate the framework with other systems. Free Sourceness ..... Programmers must never delete a smart pointed object.

Open BEAGLE Compilation HOWTO
Oct 10, 2005 - This document is on the compilation of the Open BEAGLE1 C++ framework for evolutionary computations. ..... #define BEAGLE_FULL_DEBUG.

Theoretical Foundations of Evolutionary Computation
Per Kristian Lehre, University of Birmingham, UK. [email protected]. Frank Neumann, Max Planck Institute for Informatics, Germany. [email protected]. Jonathan E. Rowe, University of Birmingham, UK. [email protected]. Xin Yao, University o

Evolutionary Computation, IEEE Transactions on - IEEE Xplore
search strategy to a great number of habitats and prey distributions. We propose to synthesize a similar search strategy for the massively multimodal problems of ...

M607 Evolutionary Computation and Parametric Pattern Generation ...
M607 Evolutionary Computation and Parametric Pattern ... for Airport Terminal Design by Chatzikonstantinou.pdf. M607 Evolutionary Computation and ...

Grammatical evolution - Evolutionary Computation, IEEE ... - IEEE Xplore
definition are used in a genotype-to-phenotype mapping process to a program. ... evolutionary process on the actual programs, but rather on vari- able-length ...

London Computation Club New Turing Omnibus c.37: Public ... - GitHub
Caesar cipher is trivial enough that I'm sure I've encountered it several times in all the video games I've played (most recently the iOS game Hundreds which ...

C208 Fuzzy Neural Tree in Evolutionary Computation for ...
Page 1 of 8. 1. Fuzzy Neural Tree in Evolutionary Computation. for Architectural Design Cognition. Özer Ciftcioglu, Senior Member, IEEE. Department of Architecture. Delft University of Technology | Maltepe University. Delft, The Netherlands | Maltep

C208 Fuzzy Neural Tree in Evolutionary Computation for ...
C208 Fuzzy Neural Tree in Evolutionary Computation for Architectural Design Cognition.pdf. C208 Fuzzy Neural Tree in Evolutionary Computation for ...

C208 Fuzzy Neural Tree in Evolutionary Computation for ...
Page 3 of 8. C208 Fuzzy Neural Tree in Evolutionary Computation for Architectural Design Cognition.pdf. C208 Fuzzy Neural Tree in Evolutionary Computation ...

The Application of Evolutionary Computation to the ...
The School of Computer Science. The University of Birmingham. Edgbaston, Birmingham ... axis (more detail of process in [Brown et al 2003]). 1.1 Traditional ...

A New Open Economy Macroeconomic Model with ...
A Biased International Portfolio can be an Optimal Behavior. Degree of international diversification is tied to home-bias in K utilization. untied to home-bias in C.

A New Open Economy Macroeconomic (NOEM ...
the provision of parts, maintenance and customer service from abroad. All these features make capital home bias even greater than that of consumption goods.4 ... one must consider Vconstruction goodsV to be aggregated in the composites for consumptio

American Culinary Federation and WORLDCHEFS Open Up a New ...
Feb 27, 2017 - from all corners of the globe are increasingly popular in countries other than their ... Using the digital badges, chefs can showcase their skills and experience online, on social media and on job sites, ... addition, ACF operates the

A New Open Economy Macroeconomic Model with ...
Endogenous Portfolio Diversification and Firm Entry ..... Empirical Analysis. Data. Diversification: λit = Milesi-Ferretti(2006). ︷ ︸︸ ︷. FAit + FLit. 2. (Kit + FAit ...