-
Notifications
You must be signed in to change notification settings - Fork 23
Function Generator
Function Generator generates parametrized test functions from the given set of parameters. It combines any given functions by summing them and through this step it generates the final cost function. Function Generator also offers the possibility of adding additional Gaussian noise to the value returned by the cost function(as shown in the mixture of three gaussians plot below).
Negative Gaussian function is unimodal function. Depending on the given covariance matrix the problem can become very hard to solve. Function is generalized to higher number of given dimensions.
The generated plot includes different multi-dimensional Gaussian (normal) distribution functions. One can also observe the previously mentioned Gaussian noise in the plot.
The problem is described harder for smaller values of its beta parameter. When beta is set to 0, every permuted solution is a global minimum.
The function is used to test the ability of a global minimization algorithm to reach the global minimum sucessfully and to discriminate it from other local minima. Genetic algorithms are described as having advantage for finding the global minima. Function is generalized to higher number of given dimensions.
Reference: http://solon.cma.univie.ac.at/glopt/my_problems.html
The Easom function has several local minima. It is unimodal and the global minimum has a small area relative to the search space. This function is generalized to higher number of given dimensions.
Reference: https://www.sfu.ca/~ssurjano/easom.html
The Langermann function is multimodal, with many unevenly distributed local minima. It can be customized by defining the coordinates of centers of sub-functions in matrix A, and their intensities in c. Function is generalized to higher number of given dimensions.
Reference: https://www.sfu.ca/~ssurjano/langer.html
The Michalewicz function is multimodal with number of local minima equal to factoriel of the number of dimensions. It accepts only a parameter m which defines the steepness of the valleys and ridges. Larger m leads to a more difficult function to minimize. The recommended value for m is 10 which is defined if no parameters are given. Function is generalized to higher number of given dimensions.
Reference: https://www.sfu.ca/~ssurjano/michal.html
The Shekels (foxholes) function has variable number of local minima (length of c or A). It can be customized by defining the coordinates of minima in matrix A, and inverse of their intensities in c. Function is generalized to any number of given dimensions.
Reference: https://www.sfu.ca/~ssurjano/shekel.html
Rastrigin function is a multimodal function with a large number of local minima. Function is generalized to higher number of given dimensions.
Reference: https://www.sfu.ca/%7Essurjano/rastr.html
Rosenbrock function is a unimodal valley-shaped function. Function is generalized to higher number of given dimensions.
Reference: https://www.sfu.ca/~ssurjano/rosen.html
Ackley function has a large hole in at the centre surrounded by small hill like regions. Algorithms can get trapped in one of its many local minima.
Reference: https://www.sfu.ca/~ssurjano/ackley.html
Chasm is characterized by a large flat area with a very large slope that halves the two parts of the function. Function works only with 2D inputs.
Function Generator allows also to create functions which are a combination of different functions presented below.