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 complete list of test functions is found on the Mathworks website.[4]

The test functions used to evaluate the algorithms for MOP were taken from Deb,[5] Binh et al.[6] and Binh.[7] You can download the software developed by Deb,[8] which implements the NSGA-II procedure with GAs, or the program posted on Internet,[9] 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 optimizationEdit

Name Plot Formula Global minimum Search 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 [10]        
Hölder table function        
McCormick function        ,  
Schaffer function N. 2        
Schaffer function N. 4        
Styblinski–Tang function        ,  ..

Test functions for constrained optimizationEdit

Name Plot Formula Global minimum Search 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)

Simionescu function[16]    ,

subjected to:    


Test functions for multi-objective optimizationEdit

[further explanation needed]

Name Plot Functions Constraints Search domain
Binh and Korn function:[6]        ,  
Chankong and Haimes function:[17]        
Fonseca–Fleming function:[18]      ,  
Test function 4:[7]        
Kursawe function:[19]      ,  .
Schaffer function N. 1:[20]      . 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:[21]      ,  .
Zitzler–Deb–Thiele's function N. 2:[21]      ,  .
Zitzler–Deb–Thiele's function N. 3:[21]      ,  .
Zitzler–Deb–Thiele's function N. 4:[21]      ,  ,  
Zitzler–Deb–Thiele's function N. 6:[21]      ,  .
Osyczka and Kundu function:[22]        ,  ,  .
CTP1 function (2 variables):[5][23]        .
Constr-Ex problem:[5]        ,  
Viennet function:      .

See alsoEdit


  1. ^ Bäck, Thomas (1995). Evolutionary algorithms in theory and practice : evolution strategies, evolutionary programming, genetic algorithms. Oxford: Oxford University Press. p. 328. ISBN 978-0-19-509971-3.
  2. ^ Haupt, Randy L. Haupt, Sue Ellen (2004). Practical genetic algorithms with CD-Rom (2nd ed.). New York: J. Wiley. ISBN 978-0-471-45565-3.
  3. ^ Oldenhuis, Rody. "Many test functions for global optimizers". Mathworks. Retrieved 1 November 2012.
  4. ^ Ortiz, Gilberto A. "Evolution Strategies (ES)". Mathworks. Retrieved 1 November 2012.
  5. ^ a b c d e Deb, Kalyanmoy (2002) Multiobjective optimization using evolutionary algorithms (Repr. ed.). Chichester [u.a.]: Wiley. ISBN 0-471-87339-X.
  6. ^ a b Binh T. and Korn U. (1997) MOBES: A Multiobjective Evolution Strategy for Constrained Optimization Problems. In: Proceedings of the Third International Conference on Genetic Algorithms. Czech Republic. pp. 176–182
  7. ^ a b c Binh T. (1999) A multiobjective evolutionary algorithm. The study cases. Technical report. Institute for Automation and Communication. Barleben, Germany
  8. ^ Deb K. (2011) Software for multi-objective NSGA-II code in C. Available at URL: https://www.iitk.ac.in/kangal/codes.shtml
  9. ^ Ortiz, Gilberto A. "Multi-objective optimization using ES as Evolutionary Algorithm". Mathworks. Retrieved 1 November 2012.
  10. ^ Vanaret C., Gotteland J-B., Durand N., Alliot J-M. (2014) Certified Global Minima for a Benchmark of Difficult Optimization Problems. Technical report. Ecole Nationale de l'Aviation Civile. Toulouse, France.
  11. ^ Simionescu, P.A.; Beale, D. (September 29 – October 2, 2002). New Concepts in Graphic Visualization of Objective Functions (PDF). ASME 2002 International Design Engineering Technical Conferences and Computers and Information in Engineering Conference. Montreal, Canada. pp. 891–897. Retrieved 7 January 2017.
  12. ^ "Solve a Constrained Nonlinear Problem - MATLAB & Simulink". www.mathworks.com. Retrieved 2017-08-29.
  13. ^ "Bird Problem (Constrained) | Phoenix Integration". Archived from the original on 2016-12-29. Retrieved 2017-08-29.CS1 maint: BOT: original-url status unknown (link)
  14. ^ Mishra, Sudhanshu (2006). "Some new test functions for global optimization and performance of repulsive particle swarm method". MPRA Paper.
  15. ^ Townsend, Alex (January 2014). "Constrained optimization in Chebfun". chebfun.org. Retrieved 2017-08-29.
  16. ^ Simionescu, P.A. (2014). Computer Aided Graphing and Simulation Tools for AutoCAD Users (1st ed.). Boca Raton, FL: CRC Press. ISBN 978-1-4822-5290-3.
  17. ^ Chankong, Vira; Haimes, Yacov Y. (1983). Multiobjective decision making. Theory and methodology. ISBN 0-444-00710-5.
  18. ^ Fonseca, C. M.; Fleming, P. J. (1995). "An Overview of Evolutionary Algorithms in Multiobjective Optimization". Evol Comput. 3 (1): 1–16. CiteSeerX doi:10.1162/evco.1995.3.1.1.
  19. ^ F. Kursawe, “A variant of evolution strategies for vector optimization,” in PPSN I, Vol 496 Lect Notes in Comput Sc. Springer-Verlag, 1991, pp. 193–197.
  20. ^ Schaffer, J. David (1984). Multiple Objective Optimization with Vector Evaluated Genetic Algorithms. Proceedings of the First Int. Conference on Genetic Algortihms, Ed. G.J.E Grefensette, J.J. Lawrence Erlbraum (PhD). Vanderbilt University. OCLC 20004572.
  21. ^ a b c d e Deb, Kalyan; Thiele, L.; Laumanns, Marco; Zitzler, Eckart (2002). "Scalable multi-objective optimization test problems". Proc. Of 2002 IEEE Congress on Evolutionary Computation. 1: 825–830. doi:10.1109/CEC.2002.1007032. ISBN 0-7803-7282-4.
  22. ^ Osyczka, A.; Kundu, S. (1 October 1995). "A new method to solve generalized multicriteria optimization problems using the simple genetic algorithm". Structural Optimization. 10 (2): 94–99. doi:10.1007/BF01743536. ISSN 1615-1488.
  23. ^ Jimenez, F.; Gomez-Skarmeta, A. F.; Sanchez, G.; Deb, K. (May 2002). "An evolutionary algorithm for constrained multi-objective optimization". Proceedings of the 2002 Congress on Evolutionary Computation. CEC'02 (Cat. No.02TH8600). 2: 1133–1138. doi:10.1109/CEC.2002.1004402. ISBN 0-7803-7282-4.

External linksEdit