I am working on a global optimization algorithm and I am thinking to use my own benchmark function. The function is provided in the attached images. Please, take a look and share your thoughts about it?
It looks very interesting and I would include it as part of a suite (send me the citation once it is published). What I would suggest is to include it with the standard functions such as :
De Jong's function, Axis parallel hyper-ellipsoid function, Rotated hyper-ellipsoid function, Moved axis parallel hyper-ellipsoid function, Langermann's function,
Michalewicz's function, Branins's rcos function,Rosenbrock's valley ,Rastrigin's function, Schwefel's function ,Easom's function,Goldstein-Price's function, Six-hump camel back function, Griewangk's function , Sum of different power function, Ackley's Path function.
Each of those test a particular anomaly and I would suggest characterising your anomaly and compare it with the rest of the functions to set it apart from the others.
I would suggest you have a look at my dissertation: Thesis Hybridization of interval methods and evolutionary algorithm...
In chapter 6, I present benchmark problems (Michalewicz, Sine Envelope, Eggholder, Keane, Rana) and provide the certified global optima for several dimensions.
It would be great if you could provide more information about this function, for example, categorical and numerical features. More importantly, what is the reason behind this problem? What is it intended to benchmark when implementing any solver? How different it is from other problems with similar mathematical expressions and landscapes (like the Step function)?
Unless you are working on an algorithm that is supposed to solve only this particular problem, you should certainly be much more thorough in your benchmarks. There is an established and accepted way of doing this, see Article Benchmarking Optimization Software with Performance Profiles
.
The point is to illustrate the behaviour of an algorithm on a broad range of problems. Otherwise it is always possible to construct a benchmark where some algorithm X outperforms the competitors, but what is the value of such a one-trick pony?
They can be used, but I would suggest using some standard benchmark function, see for example Article Derivative-free global ship design optimization using global...
and then add your own clarifying what are their well-known characteristics and why they have been introduced (what are the difference from other well known benchmarks?)