Learn R Programming

globalOptTests (version 1.1)

goTest: Call an objective function

Description

This function is used to access one of 50 objective functions that may be useful for benchmarking performance of global optimization algorithms.

Usage

goTest(par, fnName, checkDim = TRUE)

Arguments

par
Vector of reals representing the parameter vector at which to evaluate the objective function.
fnName
A character vector representing the name of the objective function to use. Options are elements of
c("Ackleys", "AluffiPentini", "BeckerLago",
      "Bohachevsky1", "Bohachevsky2", "Branin",
      "Camel3", "Camel6", "CosMix2", "CosMix4",
      "DekkersAarts", "Easom", "EMichalewicz",
      "Expo", "GoldPrice", "Griewank", "Gulf",
      "Hartman3", "Hartman6", "Hosaki", "Kowalik",
      "LM1", "LM2n10", "LM2n5", "McCormic",
      "MeyerRoth", "MieleCantrell", "Modlangerman",
      "ModRosenbrock", "MultiGauss", "Neumaier2",
      "Neumaier3", "Paviani", "Periodic",
      "PowellQ", "PriceTransistor", "Rastrigin",
      "Rosenbrock", "Salomon", "Schaffer1",
      "Schaffer2", "Schubert", "Schwefel",
      "Shekel10", "Shekel5", "Shekel7",
      "Shekelfox5", "Wood", "Zeldasine10",
      "Zeldasine20").
Unique partial matches to these elements are accepted.
checkDim
A boolean value that is TRUE if the length of the parameter vector should be checked to make sure it matches the expected value. If set to FALSE, the function runs slightly faster.

Value

fnName at the parameter vector par.

Details

Note that the factor of 0.02 in Ackley's function has been changed to the value commonly found in the literature, 0.2. Also, Storn's Tchebychev Problem in 9 and 17 dimensions was not included, since the global minima of the imlementation of these functions does not correspond to the global minima reported in the above paper.

References

Montaz Ali, M., Khompatraporn, C. and Zabinsky, Z. B. (2005), A Numerical Evaluation of Several Stochastic Algorithms on Selected Continuous Global Optimization Test Problems, Journal of Global Optimization, 31, 4, 635--672. Mullen, K. M. (2014), Continuous Global Optimization in R, Journal of Statistical Software, 60, 6, 1--45, URL http://www.jstatsoft.org/v60/i06/.

http://www.gamsworld.org/performance/selconglobal/selcongloballib.htm for the C source.

Examples

Run this code
goTest(fnName="Ackleys", par=rnorm(10))
goTest(fnName="AluffiPentini", par=c(1,2))
goTest(fnName="AluffiPentini",
par=rep(1,getProblemDimen("AluffiPentini")))

## use in an optimization via 'optim'
optim(par=c(1,2), fn=goTest, fnName="AluffiPentini")

Run the code above in your browser using DataLab