Content deleted Content added
m Spell out American postal abbreviations (Florida) using AWB |
m Make the symbol consistent |
||
(95 intermediate revisions by 47 users not shown) | |||
Line 1:
In applied mathematics, '''test functions''', known as '''artificial landscapes''', are useful to evaluate characteristics of optimization algorithms, such as [[Rate of convergence|convergence rate]], precision, robustness and 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 front|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,<ref>{{cite book|last=Bäck|first=Thomas|title=Evolutionary algorithms in theory and practice : evolution strategies, evolutionary programming, genetic algorithms|year=1995|publisher=Oxford University Press|___location=Oxford|isbn=978-0-19-509971-
The test functions used to evaluate the algorithms for MOP were taken from Deb,<ref name="Deb:2002">Deb, Kalyanmoy (2002) Multiobjective optimization using evolutionary algorithms (Repr. ed.). Chichester [u.a.]: Wiley. {{isbn|0-471-87339-X}}.</ref> Binh et al.<ref name="Binh97">Binh T. and Korn U. (1997) [https://web.archive.org/web/20190801183649/https://pdfs.semanticscholar.org/cf68/41a6848ca2023342519b0e0e536b88bdea1d.pdf MOBES: A Multiobjective Evolution Strategy for Constrained Optimization Problems]. In: Proceedings of the Third International Conference on Genetic Algorithms. Czech Republic. pp. 176–182</ref> and Binh.<ref name="Binh99">Binh T. (1999) [https://www.researchgate.net/profile/Thanh_Binh_To/publication/2446107_A_Multiobjective_Evolutionary_Algorithm_The_Study_Cases/links/53eb422f0cf28f342f45251d.pdf A multiobjective evolutionary algorithm. The study cases.] Technical report. Institute for Automation and Communication. Barleben, Germany</ref>
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==
{| class="sortable wikitable"
|-▼
! Name
! Plot ! Formula ! Global minimum ! Search ___domain |-
| [[Rastrigin function]]
<math>\text{where: } A=10</math>
|-
| [[Ackley function]]
<math>-\exp\left[0.5\left(\cos 2\pi x + \cos 2\pi y \right)\right] + e + 20</math>
|-
| Sphere function
|-
| [[Rosenbrock function]]
\begin{cases}
n=2 & \rightarrow \quad f(1,1) = 0, \\
Line 48 ⟶ 49:
\end{cases}
</math>
|-
| [[Beale function]]
<math>+ \left(2.625 - x+ xy^{3}\right)^{2}</math>
|-
| [[Goldstein–Price function]]
<math>\left[30+\left(2x-3y\right)^{2}\left(18-32x+12x^{2}+48y-36xy+27y^{2}\right)\right]</math>
|-
| [[Booth function]]
|-
| Bukin function N.6
|-
| [[Matyas function]]
|-
| Lévi function N.13
<math>+\left(y-1\right)^{2}\left(1+\sin^{2} 2\pi y\right)</math>
▲|-
| [[File:Griewank 2D Contour.svg|200px|Griewank's function]]
| <math>f(\boldsymbol{x})= 1+ \frac {1}{4000} \sum _{i=1}^n x_i^2 -\prod _{i=1}^n P_i(x_i)</math>, where <math>P_i(x_i)=\cos \left( \frac {x_i}{\sqrt {i}} \right)</math>
|-
| [[Himmelblau's function]]
\begin{cases}
f\left(3.0, 2.0\right) & = 0.0 \\
Line 100 ⟶ 107:
\end{cases}
</math>
|-
| Three-hump camel function
|
|-
| [[Easom function]]
|-
| Cross-in-tray function
\begin{cases}
f\left(1.34941, -1.34941\right) & = -2.06261 \\
Line 125 ⟶ 132:
\end{cases}
</math>
|
|-
| [[Eggholder function]]<ref name="Whitley Rana Dzubera Mathias 1996 pp. 245–276">{{cite journal | last1=Whitley | first1=Darrell | last2=Rana | first2=Soraya | last3=Dzubera | first3=John | last4=Mathias | first4=Keith E. | title=Evaluating evolutionary algorithms | journal=Artificial Intelligence | publisher=Elsevier BV | volume=85 | issue=1–2 | year=1996 | issn=0004-3702 | doi=10.1016/0004-3702(95)00124-7 | pages=264| doi-access=free }}</ref><ref name="vanaret2015hybridation">Vanaret C. (2015) [https://www.researchgate.net/publication/337947149_Hybridization_of_interval_methods_and_evolutionary_algorithms_for_solving_difficult_optimization_problems Hybridization of interval methods and evolutionary algorithms for solving difficult optimization problems.] PhD thesis. Ecole Nationale de l'Aviation Civile. Institut National Polytechnique de Toulouse, France.</ref>
▲| [[Eggholder function]]
|-
| [[Hölder table function]]
\begin{cases}
f\left(8.05502, 9.66459\right) & = -19.2085 \\
Line 143 ⟶ 150:
f\left(-8.05502,-9.66459\right) & = -19.2085
\end{cases}
</math>
|-
| [[McCormick function]]
|-
| Schaffer function N. 2
|-
| Schaffer function N. 4
\begin{cases}
|| <math>-100\le x,y \le 100</math>▼
f\left(0,1.25313\right) & = 0.292579 \\
f\left(0,-1.25313\right) & = 0.292579 \\
f\left(1.25313,0\right) & = 0.292579 \\
f\left(-1.25313,0\right) & = 0.292579
\end{cases}
</math>
|-
| [[Styblinski–Tang function]]
|-▼
| [[Image:Shekel_2D.jpg|200px|A Shekel function in 2 dimensions and with 10 maxima]]
| <math>
f(\boldsymbol{x}) = \sum_{i = 1}^{m} \; \left( c_{i} + \sum\limits_{j = 1}^{n} (x_{j} - a_{ji})^2 \right)^{-1}
</math>
|
| <math>-\infty \le x_{i} \le \infty</math>, <math>1 \le i \le n</math>
|}
==Test functions for constrained optimization==
{| class="wikitable" style="text-align:center"
|-
! Name !! Plot !! Formula !! Global minimum !! Search ___domain
▲|-
subjected to: <math> (x-1)^3 - y + 1 < 0 \text{ and } x + y - 2 < 0 </math>▼
▲|| <math>f(1.0,1.0) = 0</math>
▲|| <math>-1.5\le x \le 1.5</math>, <math>-0.5\le y \le 2.5</math>
|-
| Rosenbrock function constrained to a disk<ref>{{Cite web|url=https://www.mathworks.com/help/optim/ug/example-nonlinear-constrained-minimization.html?requestedDomain=www.mathworks.com|title=Solve a Constrained Nonlinear Problem - MATLAB & Simulink|website=www.mathworks.com|access-date=2017-08-29}}</ref>
|| [[File:
|| <math>f(x,y) = (1-x)^2 + 100(y-x^2)^2</math>,
|| <math>f(1.0,1.0) = 0</math>
|| <math>-1.5\le x \le 1.5</math>, <math>-1.5\le y \le 1.5</math>
|-
| Mishra's Bird function - constrained<ref>{{Cite web|url=
|| [[File:
|| <math>f(x,y) = \sin(y) e^{\left [(1-\cos x)^2\right]} + \cos(x) e^{\left [(1-\sin y)^2 \right]} + (x-y)^2</math>,
subjected to: <math> (x+5)^2 + (y+5)^2 < 25 </math>
Line 197 ⟶ 214:
|| <math>-10\le x \le 0</math>, <math>-6.5\le y \le 0</math>
|-
| Townsend function (modified)<ref>{{Cite web|url=http://www.chebfun.org/examples/opt/ConstrainedOptimization.html|title=Constrained optimization in Chebfun|last=Townsend|first=Alex|date=January 2014|website=chebfun.org
|| [[File:
|| <math>f(x,y) = -[\cos((x-0.1)y)]^2 - x \sin(3x+y)</math>,
subjected to:<math>x^2+y^2 < \left[2\cos t - \frac 1 2 \cos 2t - \frac 1 4 \cos 3t - \frac 1 8 \cos 4t\right]^2 + [2\sin t]^2 </math>
where: {{Math|1=''t'' = Atan2(x,y)}}
|| <math>f(2.0052938,1.1944509) = -2.0239884</math>
|| <math>-2.25\le x \le 2.
|-
| '''Keane's bump function'''{{anchor|Keane's bump function}}<ref>{{cite journal |last1=Mishra |first1=Sudhanshu |title=Minimization of Keane’s Bump Function by the Repulsive Particle Swarm and the Differential Evolution Methods |date=5 May 2007 |url=https://econpapers.repec.org/paper/pramprapa/3098.htm |journal=MPRA Paper|publisher=University Library of Munich, Germany}}</ref>
|| [[File:
|| <math>f(\boldsymbol{x}) = -\left| \frac{\left[ \sum_{i=1}^m \cos^4 (x_i) - 2 \prod_{i=1}^m \cos^2 (x_i) \right]}{{\left( \sum_{i=1}^m ix^2_i \right)}^{0.5}} \right| </math>,
subjected to: <math>
<math>
|| <math>f(
|| <math>
|}
==Test functions for multi-objective optimization==
{{explain|reason=What does it mean to minimize two objective functions?|date=September 2016}}
{| class="wikitable" style="text-align:center"
|-
! Name !! Plot !! Functions !! Constraints !! Search ___domain
|-
| [[Binh and Korn function]]:<ref name="Binh97"/>
|| [[File:Binh and Korn function.pdf|200px|Binh and Korn function]]
|| <math>\text{Minimize} =
Line 238 ⟶ 256:
|| <math>0\le x \le 5</math>, <math>0\le y \le 3</math>
|-
| [[Chankong and Haimes function]]:<ref>{{cite book |last1=Chankong |first1=Vira |last2=Haimes |first2=Yacov Y. |title=Multiobjective decision making. Theory and methodology. |isbn=0-444-00710-5|year=1983 |publisher=North Holland }}</ref>
|| [[File:Chakong and Haimes function.pdf|200px|Chakong and Haimes function]]
|| <math>\text{Minimize} =
Line 254 ⟶ 272:
|| <math>-20\le x,y \le 20</math>
|-
| [[Fonseca–Fleming function]]:<ref name="FonzecaFleming:1995">{{cite journal |
|| [[File:Fonseca and Fleming function.pdf|200px|Fonseca and Fleming function]]
|| <math>\text{Minimize} =
Line 282 ⟶ 300:
|| <math>-7\le x,y \le 4</math>
|-
| [[Kursawe function]]:<ref name="Kursawe:1991">F. Kursawe,
|| [[File:Kursawe function.pdf|200px|Kursawe function]]
|| <math>\text{Minimize} =
Line 294 ⟶ 312:
||<math>-5\le x_{i} \le 5</math>, <math>1\le i \le 3</math>.
|-
| Schaffer function N. 1:<ref name="Schaffer:1984">{{cite
|| [[File:Schaffer function 1.pdf|200px|Schaffer function N.1]]
|| <math>\text{Minimize} =
Line 340 ⟶ 358:
||<math>-\pi\le x,y \le \pi</math>
|-
| Zitzler–Deb–Thiele's function N. 1:<ref name="Debetal2002testpr">{{cite book |last1=Deb |first1=Kalyan |last2=Thiele |first2=L. |last3=Laumanns |first3=Marco |last4=Zitzler |first4=Eckart |title=Proceedings of the 2002 Congress on Evolutionary Computation. CEC'02 (Cat. No.02TH8600) |chapter=Scalable multi-objective optimization test problems |date=2002 |volume=1 |pages=825–830 |doi=10.1109/CEC.2002.1007032|isbn=0-7803-7282-4 |s2cid=61001583 }}</ref>
|| [[File:Zitzler-Deb-Thiele's function 1.pdf|200px|Zitzler-Deb-Thiele's function N.1]]
|| <math>\text{Minimize} =
Line 353 ⟶ 371:
||<math>0\le x_{i} \le 1</math>, <math>1\le i \le 30</math>.
|-
| Zitzler–Deb–Thiele's function N. 2:<ref name="Debetal2002testpr" />
|| [[File:Zitzler-Deb-Thiele's function 2.pdf|200px|Zitzler-Deb-Thiele's function N.2]]
|| <math>\text{Minimize} =
Line 366 ⟶ 384:
|| <math>0\le x_{i} \le 1</math>, <math>1\le i \le 30</math>.
|-
| Zitzler–Deb–Thiele's function N. 3:<ref name="Debetal2002testpr" />
|| [[File:Zitzler-Deb-Thiele's function 3.pdf|200px|Zitzler-Deb-Thiele's function N.3]]
||<math>\text{Minimize} =
Line 379 ⟶ 397:
||<math>0\le x_{i} \le 1</math>, <math>1\le i \le 30</math>.
|-
| Zitzler–Deb–Thiele's function N. 4:<ref name="Debetal2002testpr" />
|| [[File:Zitzler-Deb-Thiele's function 4.pdf|200px|Zitzler-Deb-Thiele's function N.4]]
|| <math>\text{Minimize} =
Line 392 ⟶ 410:
||<math>0\le x_{1} \le 1</math>, <math>-5\le x_{i} \le 5</math>, <math>2\le i \le 10</math>
|-
| Zitzler–Deb–Thiele's function N. 6:<ref name="Debetal2002testpr" />
|| [[File:Zitzler-Deb-Thiele's function 6.pdf|200px|Zitzler-Deb-Thiele's function N.6]]
||<math>\text{Minimize} =
Line 405 ⟶ 423:
||<math>0\le x_{i} \le 1</math>, <math>1\le i \le 10</math>.
|-
| Osyczka and Kundu function:<ref name="OsyczkaKundu1995">{{cite journal |last1=Osyczka |first1=A. |last2=Kundu |first2=S. |title=A new method to solve generalized multicriteria optimization problems using the simple genetic algorithm |journal=Structural Optimization |date=1 October 1995 |volume=10 |issue=2 |pages=94–99 |doi=10.1007/BF01743536 |s2cid=123433499 |issn=1615-1488}}</ref>
|| [[File:Osyczka and Kundu function.pdf|200px|Osyczka and Kundu function]]
||<math>\text{Minimize} =
Line 426 ⟶ 444:
|| <math>0\le x_{1},x_{2},x_{6} \le 10</math>, <math>1\le x_{3},x_{5} \le 5</math>, <math>0\le x_{4} \le 6</math>.
|-
| CTP1 function (2 variables):<ref name="Deb:2002"/><ref name="Jimenezetal2002">{{cite book |last1=Jimenez |first1=F. |last2=Gomez-Skarmeta |first2=A. F. |last3=Sanchez |first3=G. |last4=Deb |first4=K. |title=Proceedings of the 2002 Congress on Evolutionary Computation. CEC'02 (Cat. No.02TH8600) |chapter=An evolutionary algorithm for constrained multi-objective optimization |date=May 2002 |volume=2 |pages=1133–1138 |doi=10.1109/CEC.2002.1004402|isbn=0-7803-7282-4 |s2cid=56563996 }}</ref>
|| [[File:CTP1 function (2 variables).pdf|200px|CTP1 function (2 variables).<ref name="Deb:2002" />]]
|| <math>\text{Minimize} =
Line 453 ⟶ 471:
\begin{cases}
g_{1}\left(x,y\right) = y + 9x \geq 6 \\
g_{
\end{cases}
</math>
Line 470 ⟶ 488:
||<math>-3\le x,y \le 3</math>.
|}
▲* [[Shekel function]]
==References==
<references/>
== External links ==
* [https://github.com/nathanrooy/landscapes landscapes]
{{DEFAULTSORT:Test functions for optimization}}
[[Category:Constraint programming]]
[[Category:Convex optimization]]
[[Category:
[[Category:Test items]]
|