A+ A A-

I. Mathematical Expression:

$$f(X)=-20 \ e^{\displaystyle\left(-0.2\times\sqrt{\frac{1}{n}\sum_{i=1}^{n}x^2_i}\right)}-e^{\displaystyle\left[\frac{1}{n}\sum_{i=1}^{n}\cos(2\pi x_i)\right]}+20+e^{(1)}$$

where:

\(\bullet\) \(-32\leq x_i\leq 32\) , \(i=1,2,\cdots,n\)

\(\bullet\) \(f_{min}(X^*)=0\)

\(\bullet\) \(x^*_i =0\)

\(\bullet\) It is one of the most popular benchmark functions known in the literature. It is well-known just as Ackley's Function [1-10], and sometimes as Ackley's Path Function [11]. Because there are some modified versions, this benchmark function is re-named as Ackley's Function No.01 [12].

 

II. Citation Policy:

If you publish material based on databases obtained from this repository, then, in your acknowledgments, please note the assistance you received by using this repository. This will help others to obtain the same data sets and replicate your experiments. We suggest the following pseudo-APA reference format for referring to this repository:

Ali R. Al-Roomi (2015). Unconstrained Single-Objective Benchmark Functions Repository [https://www.al-roomi.org/benchmarks/unconstrained]. Halifax, Nova Scotia, Canada: Dalhousie University, Electrical and Computer Engineering.

Here is a BiBTeX citation as well:

@MISC{Al-Roomi2015,
author = {Ali R. Al-Roomi},
title = {{Unconstrained Single-Objective Benchmark Functions Repository}},
year = {2015},
address = {Halifax, Nova Scotia, Canada},
institution = {Dalhousie University, Electrical and Computer Engineering},
url = {https://www.al-roomi.org/benchmarks/unconstrained}
}

 

III. 2&3D-Plots:

 

IV. Controllable 3D Model:

- In case you want to adjust the rendering mode, camera position, background color or/and 3D measurement tool, please check the following link

- In case you face any problem to run this model on your internet browser (it does not work on mobile phones), please check the following link

 

V. MATLAB M-File:

% Ackley's Function (sometimes called: Ackley's Function # 1 or Ackley's Path Function)
% Range of initial points: -32 <= xj <= 32 , j=1,2,...,n
% Global minima: (x1,x2,...,xn)=0
% f(X)=0
% Coded by: Ali R. Alroomi | Last Update: 22 July 2015 | www.al-roomi.org
        
clear
clc
warning off
   
x1min=-32;
x1max=32;
x2min=-32;
x2max=32;
R=1500; % steps resolution
x1=x1min:(x1max-x1min)/R:x1max;
x2=x2min:(x2max-x2min)/R:x2max;
 
for j=1:length(x1)
   
    % For 1-dimensional plotting
    f1(j)=-20*exp(-0.2*sqrt(x1(j)^2))-exp(cos(2*pi*x1(j)))+20+exp(1);
   
    % For 2-dimensional plotting
    for i=1:length(x2)
        fn(i)=-20*exp(-0.2*sqrt((1/2)*sum(x1(j)^2+x2(i)^2)))-exp((1/2)*sum(cos(2*pi*x1(j))+cos(2*pi*x2(i))))+20+exp(1);
    end
   
    fn_tot(j,:)=fn;
 
end
 
figure(1)
plot(x1,f1);set(gca,'FontSize',12);
xlabel('x','FontName','Times','FontSize',20,'FontAngle','italic');
ylabel('f(x)','FontName','Times','FontSize',20,'FontAngle','italic');
title('2D View','FontName','Times','FontSize',24,'FontWeight','bold');
 
figure(2)
meshc(x1,x2,fn_tot);colorbar;set(gca,'FontSize',12);shading interp;
xlabel('x_2','FontName','Times','FontSize',20,'FontAngle','italic');
set(get(gca,'xlabel'),'rotation',25,'VerticalAlignment','bottom');
ylabel('x_1','FontName','Times','FontSize',20,'FontAngle','italic');
set(get(gca,'ylabel'),'rotation',-25,'VerticalAlignment','bottom');
zlabel('f(X)','FontName','Times','FontSize',20,'FontAngle','italic');
title('3D View','FontName','Times','FontSize',24,'FontWeight','bold');
 
figure(3)
mesh(x1,x2,fn_tot);view(0,90);colorbar;set(gca,'FontSize',12);
xlabel('x_2','FontName','Times','FontSize',20,'FontAngle','italic');
ylabel('x_1','FontName','Times','FontSize',20,'FontAngle','italic');
zlabel('f(X)','FontName','Times','FontSize',20,'FontAngle','italic');
title('X-Y Plane View','FontName','Times','FontSize',24,'FontWeight','bold');
 
figure(4)
mesh(x1,x2,fn_tot);view(90,0);colorbar;set(gca,'FontSize',12);
xlabel('x_2','FontName','Times','FontSize',20,'FontAngle','italic');
ylabel('x_1','FontName','Times','FontSize',20,'FontAngle','italic');
zlabel('f(X)','FontName','Times','FontSize',20,'FontAngle','italic');
title('X-Z Plane View','FontName','Times','FontSize',24,'FontWeight','bold');
 
figure(5)
mesh(x1,x2,fn_tot);view(0,0);colorbar;set(gca,'FontSize',12);
xlabel('x_2','FontName','Times','FontSize',20,'FontAngle','italic');
ylabel('x_1','FontName','Times','FontSize',20,'FontAngle','italic');
zlabel('f(X)','FontName','Times','FontSize',20,'FontAngle','italic');
title('Y-Z Plane View','FontName','Times','FontSize',24,'FontWeight','bold');

Click here to download m-file

 

VI. References:

[1] X. Yao, Y. Liu, and G. Lin, "Evolutionary Programming Made Faster," IEEE Transactions on Evolutionary Computation, vol. 3, no. 2, pp. 82-102, Jul. 1999.
[2] M. M. Ali, C. Khompatraporn, and Z. B. Zabinsky, "A Numerical Evaluation of Several Stochastic Algorithms on Selected Continuous Global Optimization Test Problems," Journal of Global Optimization, vol. 31, no. 4, pp. 635-672, Apr. 2005.
[3] M. Subotic, M. Tuba, and N. Stanarevic, "Different Approaches in Parallelization of the Artificial Bee Colony Algorithm," International Journal of Mathematical Models and Methods in Applied Sciences, vol. 5, no. 4, pp. 755-762, Mar. 2011.
[4] E. P. Adorio, "MVF - Multivariate Test Functions Library in C for Unconstrained Global Optimization," Quezon City, Metro Manila, Philippines, Jan. 2005. [Online]. Available: http://geocities.ws/eadorio/mvf.pdf
[5] X. Zhao and X.-S. Gao, "Affinity Genetic Algorithm," Journal of Heuristics, vol. 13, no. 2, pp.133-150, Apr. 2007.
[6] M. Molga and C. Smutnicki, "Test Functions for Optimization Needs," Apr. 2005, [Accessed March 28, 2013]. [Online]. Available: http://www.zsd.ict.pwr.wroc.pl/files/docs/functions.pdf
[7] S. Rahnamayan, H. R. Tizhoosh, and M. M. A. Salama, "A Novel Population Initialization Method for Accelerating Evolutionary Algorithms," Computers & Mathematics with Applications, vol. 53, no. 10, pp. 1605-1614, May 2007.
[8] S. Rahnamayan, H. Tizhoosh, and M. Salama, "Opposition-Based Differential Evolution for Optimization of Noisy Problems," IEEE Congress on in Evolutionary Computation, 2006 (CEC 2006), Jul. 2006, pp. 1865-1872.
[9] R. Storn and K. Price, "Differential Evolution - A Simple and Efficient Heuristic for Global Optimization over Continuous Spaces," Journal of Global Optimization, vol. 11, no. 4, pp. 341-359, Dec. 1997.
[10] A. Gavana, "Test Functions Index," Feb. 2013, [Accessed April 01, 2013]. [Online]. Available: http://infinity77.net/global_optimization/test_functions.html
[11] D. R. M. Jr., "The Uses of the Slime Mold Lifecycle as a Model for Numerical Optimization," Ph.D. Dissertation, Oklahoma State University, Oklahoma City, OK, Jul. 2010, [Accessed Apr. 30, 2013]. [Online]. Available: http://www.cs.okstate.edu/~monismi/dissertation/MonismithDissertation.pdf
[12] M. Jamil and X. S. Yang, "A Literature Survey of Benchmark Functions for Global Optimization Problems," International Journal of Mathematical Modelling and Numerical Optimisation, vol. 4, no. 2, pp. 150–194, Aug. 2013.
[13] Ali R. Alroomi, "The Farm of Unconstrained Benchmark Functions," University of Bahrain, Electrical and Electronics Department, Bahrain, Oct. 2013. [Online]. Available: http://www.al-roomi.org/cv/publications