4.11. pyopus.optimizer.glbctf — Global optimization test functions

Inheritance diagram of pyopus.optimizer.glbctf

Global optimization test functions (PyOPUS subsystem name: GLTF)

Implemented by Árpád Bűrmen and Jernej Olenšek.

All test functions in this module are maps from R to R^n.

Gradient is not implemented and is in some cases even impossible to implement (e.g. Quartic noisy function).

The functions can be wrapped into RandomDelay objects to introduce a random delay in function evaluation.

The functions were taken from

Yao X., Liu Y., Lin G.: Evolutionary programming made faster. IEEE Transactions on Evolutionary Computation, vol. 3, pp. 82-102, 1999.

This module is independent of PyOPUS, meaning that it can be taken as is and used as a module in some other package.

class pyopus.optimizer.glbctf.GlobalProblem(n)

Base class for global optimization test functions

The full name of the problem is in the name member. The lower and the upper bounds are in the xl and xh member.

The position and the function value for the best known solution are given by xmin and fmin.

Objects of this class are callable. The calling convention is

object(x)

where x is the input values vector. The function value at x is returned.

Most functions are variably dimensional (n can be specified as an argument to the constructor).

Example: create an instance of the Schwefel C function with n=40 and evaluate it at the origin:

from pyopus.optimizer.glbctf import SchwefelC
from numpy import zeros

sc=SchwefelC(n=40)

# Evaluate the function at the origin
f=sc(zeros(40))
pyopus.optimizer.glbctf.GlobalBCsuite
A list holding references to all function classes in this module.
class pyopus.optimizer.glbctf.Quadratic(n=30)

Quadratic function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.SchwefelA(n=30)

Schwefel 2.22 function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.SchwefelB(n=30)

Schwefel 1.2 function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.SchwefelC(n=30)

Schwefel 2.21 function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Rosenbrock(n=30)

Generalized Rosenbrock function (n>=2).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Step(n=30)

Step function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.QuarticNoisy(n=30)

Quartic noisy function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.SchwefelD(n=30)

Schwefel 2.26 function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Rastrigin(n=30)

Generalized Rastrigin function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Ackley(n=30)

Ackley function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Griewank(n=30)

Generalized Griewank function (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Penalty1(n=30)

Generalized penalty function 1 (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Penalty2(n=30)

Generalized penalty function 2 (n>=1).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.ShekelFoxholes(n=2)

Shekel foxholes function (n=2).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Kowalik(n=4)

Kowalik function (n=4).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.SixHump(n=2)

Six-hump camel-back function (n=2).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Branin(n=2)

Branin function (n=2).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.GoldsteinPrice(n=2)

Goldstein-Price function (n=2).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Hartman(n=3)

Hartman function (n=3 or n=6).

See the GlobalProblem class for more information.

class pyopus.optimizer.glbctf.Shekel(n=4, m=5)

Shekel function (n=4, m=5, 7, or 10).

See the GlobalProblem class for more information.

Previous topic

4.10. pyopus.optimizer.mgh — More-Garbow-Hillstrom set of test functions

Next topic

5. pyopus.wxmplplot — Threaded plotting support based on Matplotlib and WxPython

This Page