Initialize Gaussian Landscape

Share:

Description

This function is based on the Gaussian Landscape Generator by Bo Yuan and Marcus Gallagher. It randomly initializes a Gaussian Landscape with the specified parameters.

Usage

1
2
spotGlgInit(dimension = 2, nGaussian = 10, lower = rep(0, dimension),
  upper = rep(1, dimension), globalvalue = 1, ratio = 0.8, seed = 1)

Arguments

dimension

dimensionality of the landscapes input space. Default is 2.

nGaussian

number of Gaussian components in the landscape. Default is 10.

lower

lower boundary of the landscape, defaults to rep(0,dimension).

upper

upper boundary of the landscape, defaults to rep(1,dimension).

globalvalue

the global maximum value, i.e. the maximum of the Gaussian component with the largest value. Default is 1.

ratio

maximum ratio of the local maxima, local optima are randomly generated within [0,globalvalue*ratio]. Has to be larger than 0 and smaller than 1. Defaults to 0.8.

seed

seed for the random number generator used before creation of the landscape. Generator status will be saved and reset afterwards.

Value

returns a list, with the following items:
mean Matrix containing the mean vectors of the Gaussian components in the landscape, i.e. the locations of the local maxima of the functions. First vector (i.e. first row) will be the global maximum. covinv Inverse of covariance matrix of each Gaussian component, stored as 3-dimensional array. opt optimal values, i.e. maxima of the Gaussian components ngauss number of Gaussian components d is the dimension

Author(s)

Original Matlab code by Bo Yuan, ported to R by Martin Zaefferer

References

B. Yuan and M. Gallagher (2003) "On Building a Principled Framework for Evaluating and Testing Evolutionary Algorithms: A Continuous Landscape Generator". In Proceedings of the 2003 Congress on Evolutionary Computation, IEEE, pp. 451-458, Canberra, Australia.

See Also

spotGlgCreate, spotGlgEval , spotGlgInitN

Examples

1
2
3
4
## Create a landscape with default settings:
landscape <- spotGlgInit()
## Create a landscape with larger boundaries and more Gaussian components
landscape <- spotGlgInit(2, 100, -5, 5, 10, 0.8)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.