Test functions for optimization

In applied mathematics, test functions, known as artificial landscapes, are useful to evaluate characteristics of optimization algorithms, such as:

  • Convergence rate.
  • Precision.
  • Robustness.
  • General performance.


Here some test functions are presented with the aim of giving an idea about the different situations that optimization algorithms have to face when coping with these kinds of problems. In the first part, some objective functions for single-objective optimization cases are presented. In the second part, test functions with their respective Pareto fronts for multi-objective optimization problems (MOP) are given.

The artificial landscapes presented herein for single-objective optimization problems are taken from Bäck,[1] Haupt et al.[2] and from Rody Oldenhuis software.[3] Given the number of problems (55 in total), just a few are presented here.

The test functions used to evaluate the algorithms for MOP were taken from Deb,[4] Binh et al.[5] and Binh.[6] The software developed by Deb can be downloaded,[7] which implements the NSGA-II procedure with GAs, or the program posted on Internet,[8] which implements the NSGA-II procedure with ES.

Just a general form of the equation, a plot of the objective function, boundaries of the object variables and the coordinates of global minima are given herein.

Test functions for single-objective optimization

NamePlotFormulaGlobal minimumSearch domain
Rastrigin function

Ackley function

Sphere function ,
Rosenbrock function ,
Beale function

Goldstein–Price function

Booth function
Bukin function N.6 ,
Matyas function
Lévi function N.13

Himmelblau's function
Three-hump camel function
Easom function
Cross-in-tray function
Eggholder function[9][10]
Hölder table function
McCormick function ,
Schaffer function N. 2
Schaffer function N. 4
Styblinski–Tang function , ..
Shekel function

or, similarly,

,

Test functions for constrained optimization

NamePlotFormulaGlobal minimumSearch domain
Rosenbrock function constrained with a cubic and a line[11] ,

subjected to:

,
Rosenbrock function constrained to a disk[12] ,

subjected to:

,
Mishra's Bird function - constrained[13][14] ,

subjected to:

,
Townsend function (modified)[15] ,

subjected to: where: t = Atan2(x,y)

,
Gomez and Levy function (modified)[16] ,

subjected to:

,
Simionescu function[17] ,

subjected to:

Test functions for multi-objective optimization

[further explanation needed]

NamePlotFunctionsConstraintsSearch domain
Binh and Korn function:[5] ,
Chankong and Haimes function:[18]
Fonseca–Fleming function:[19] ,
Test function 4:[6]
Kursawe function:[20] , .
Schaffer function N. 1:[21] . Values of from to have been used successfully. Higher values of increase the difficulty of the problem.
Schaffer function N. 2: .
Poloni's two objective function:

Zitzler–Deb–Thiele's function N. 1:[22] , .
Zitzler–Deb–Thiele's function N. 2:[22] , .
Zitzler–Deb–Thiele's function N. 3:[22] , .
Zitzler–Deb–Thiele's function N. 4:[22] , ,
Zitzler–Deb–Thiele's function N. 6:[22] , .
Osyczka and Kundu function:[23] , , .
CTP1 function (2 variables):[4][24] .
Constr-Ex problem:[4] ,
Viennet function: .

References