GEATbx: Main page  Tutorial  Algorithms  M-functions  Parameter/Options  Example functions 

GEA Toolbox - Examples of Objective Functions

This document describes a number of test functions implemented for use with the Genetic and Evolutionary Algorithm Toolbox for Matlab (GEATbx). These functions are drawn from the literature on evolutionary algorithms and global optimization. The first Section describes a set of common parametric test problems implemented as Matlab m-files. The second Section presents a number of dynamic systems, implemented in Simulink, as s-files and m-files as appropriate.

1 Parametric Optimization

Each of the following functions is described by the function definition, one or more 3-D graphics to show the properties of the function and a description of features of the function.

Table 1: Set of described parametric functions
function name
1.objfun1 1.1 De Jong's function 1
2.objfun1a 1.2 Axis parallel hyper-ellipsoid function
3.objfun1b 1.3 Rotated hyper-ellipsoid function
4.objfun2 1.4 Rosenbrock's valley (De Jong's function 2)
5.objfun6 1.5 Rastrigin's function 6
6.objfun7 1.6 Schwefel's function 7
7.objfun8 1.7 Griewangk's function 8
8.objfun9 1.8 Sum of different power function 9
9.objfun10 1.9 Ackley's Path function 10
10.objfun11 1.10 Langermann's function 11
11.objfun12 1.11 Michalewicz's function 12
12.objbran 1.12 Branins's rcos function
13.objeaso 1.13 Easom's function
14.objgold 1.14 Goldstein-Price's function
15.objsixh 1.15 Six-hump camel back function

2 Optimization of dynamic systems

Dynamic control problems are complex and difficult to solve. The use of dynamic-optimization specific methods, such as Hamiltonian, is complicated and problematic. The application of specific methods requires a large amount of mathematical support even for systems of moderate size, and only the most trivial systems can be solved analytically.

In the following example problems, each individual in the evolutionary algorithm corresponds to a (discrete) control vector. Each variable in an individual is associated with the control input at a time step of the dynamic optimization problem. In this section, x is the state vector and u the control vector of a system.

Table 2: Set of described dynamic systems
function name
1.objdopi 2.1 Double integrator
2.objlinq 2.2 Linear-quadratic system
3.objharv 2.3 Harvest system
4.objpush 2.4 Push-cart system

All of the test function implementations are scaleable, i.e. the functions can be called with as many dimensions as necessary and the default dimension of the test functions is adjustable via a single parameter value inside the function.

For writing own objective functions see Writing objective functions .

GEATbx: Main page  Tutorial  Algorithms  M-functions  Parameter/Options  Example functions 

This document is part of version 3.3 of the GEATbx: Genetic and Evolutionary Algorithm Toolbox for use with Matlab -
The Genetic and Evolutionary Algorithm Toolbox is not public domain.
© 1994-2000 Hartmut Pohlheim, All Rights Reserved, (