Xin-She Yang Function
Mathematical Definition
\[f(\mathbf x)=f(x_1, ...,x_n)=\sum_{i=1}^{n}\epsilon_i|x_i|^i\]where $\epsilon$ is a random number that is drawn uniformly from $[0, 1]$
Plots
A contour of the function is presented below:
Description and Features
- The function is not convex.
- The function is defined on n-dimensional space.
- The function is separable.
- The function is non-differentiable.
Input Domain
The function can be defined on any input domain but it is usually evaluated on $x_i \in [-5, 5]$ for $i=1, …, n$.
Global Minima
The global minima $f(\textbf{x}^{\ast})=0$ are located at $\mathbf{x^\ast}=(0, …, 0)$.
Implementation
Python
For Python, the function is implemented in the benchmarkfcns package, which can be installed from command line with pip install benchmarkfcns
.
MATLAB
An implementation of the Xin-She Yang Function with MATLAB
is provided below.
The function can be represented in Latex as follows:
References:
- Momin Jamil and Xin-She Yang, A literature survey of benchmark functions for global optimization problems, Int. Journal of Mathematical Modelling and Numerical Optimisation}, Vol. 4, No. 2, pp. 150–194 (2013), arXiv:1308.4008
- X. S. Yang, “Test Problems in Optimization,” Engineering Optimization: An Introduction with Metaheuristic Applications John Wliey & Sons, 2010. [Available Online]: http://arxiv.org/abs/1008.0549