smoof: Single and Multi-Objective Optimization Test Functions

Provides generators for a high number of both single- and multi- objective test functions which are frequently used for the benchmarking of (numerical) optimization algorithms. Moreover, it offers a set of convenient functions to generate, plot and work with objective functions.

AuthorJakob Bossek [aut, cre], Pascal Kerschke [ctb]
Date of publication2016-08-03 16:47:12
MaintainerJakob Bossek <j.bossek@gmail.com>
LicenseBSD_2_clause + file LICENSE
Version1.4
https://github.com/jakobbossek/smoof

View on CRAN

Man pages

addCountingWrapper: Return a function which counts its evaluations.

addLoggingWrapper: Return a function which internally stores x or y values.

autoplot.smoof_function: Generate 'ggplot' object.

computeExpectedRunningTime: Compute the Expected Running Time (ERT) performance measure.

conversion: Conversion between minimization and maximization problems.

doesCountEvaluations: Check whether the function is counting its function...

filterFunctionsByTags: Get a list of implemented test functions with specific tags.

getAvailableTags: Returns a character vector of possible function tags.

getDescription: Return the description of the function.

getGlobalOptimum: Returns the global optimum and its value.

getID: Return the ID / short name of the function.

getLocalOptimum: Returns the local optima.

getLoggedValues: Extract logged values of a function wrapped by a logging...

getLowerBoxConstraints: Return lower box constaints.

getMeanFunction: Return the true mean function in the noisy case.

getName: Return the name of the function.

getNumberOfEvaluations: Return the number of function evaluations performed by the...

getNumberOfObjectives: Determine the number of objectives.

getNumberOfParameters: Determine the number of parameters.

getParamSet: Get parameter set.

getRefPoint: Returns the reference point of a multi-objective function.

getTags: Returns vector of associated tags.

getUpperBoxConstraints: Return upper box constaints.

getWrappedFunction: Extract wrapped function.

hasBoxConstraints: Checks whether the objective function has box constraints.

hasConstraints: Checks whether the objective function has constraints.

hasGlobalOptimum: Checks whether global optimum is known.

hasLocalOptimum: Checks whether local optima are known.

hasOtherConstraints: Checks whether the objective function has other constraints.

hasTags: Check if function has assigend special tags.

isMultiobjective: Checks whether the given function is multi-objective.

isNoisy: Checks whether the given function is noisy.

isSingleobjective: Checks whether the given function is single-objective.

isSmoofFunction: Checks whether the given object is a 'smoof_function' or a...

isVectorized: Checks whether the given function accept "vectorized" input.

isWrappedSmoofFunction: Checks whether the function is of type...

makeAckleyFunction: Ackley Function

makeAdjimanFunction: Adjiman function

makeAlpine01Function: Alpine01 function

makeAlpine02Function: Alpine02 function

makeAluffiPentiniFunction: Aluffi-Pentini function.

makeBartelsConnFunction: Bartels Conn Function

makeBBOBFunction: Generator for the noiseless function set of the...

makeBealeFunction: Beale Function

makeBentCigarFunction: Bent-Cigar Function

makeBirdFunction: Bird Function

makeBiSphereFunction: Bi-objective Sphere function

makeBK1Function: BK1 function generator

makeBohachevskyN1Function: Bohachevsky function N. 1

makeBoothFunction: Booth Function

makeBraninFunction: Branin RCOS function

makeBrentFunction: Brent Function

makeBrownFunction: Brown Function

makeBukinN2Function: Bukin function N. 2

makeBukinN4Function: Bukin function N. 4

makeBukinN6Function: Bukin function N. 6

makeCarromTableFunction: Carrom Table Function

makeChichinadzeFunction: Chichinadze Function

makeChungReynoldsFunction: Chung Reynolds Function

makeComplexFunction: Complex function.

makeCosineMixtureFunction: Cosine Mixture Function

makeCrossInTrayFunction: Cross-In-Tray Function

makeCubeFunction: Cube Function

makeDeckkersAartsFunction: Deckkers-Aarts Function

makeDeflectedCorrugatedSpringFunction: Deflected Corrugated Spring function

makeDentFunction: Dent Function

makeDixonPriceFunction: Dixon-Price Function

makeDoubleSumFunction: Double-Sum Function

makeDTLZ1Function: DTLZ1 Function (family)

makeDTLZ2Function: DTLZ2 Function (family)

makeDTLZ3Function: DTLZ3 Function (family)

makeDTLZ4Function: DTLZ4 Function (family)

makeDTLZ5Function: DTLZ5 Function (family)

makeDTLZ6Function: DTLZ6 Function (family)

makeDTLZ7Function: DTLZ7 Function (family)

makeEasomFunction: Easom Function

makeEggCrateFunction: Egg Crate Function

makeEggholderFunction: Egg Holder function

makeElAttarVidyasagarDuttaFunction: El-Attar-Vidyasagar-Dutta Function

makeEngvallFunction: Complex function.

makeExponentialFunction: Exponential Function

makeFreudensteinRothFunction: Freudenstein Roth Function

makeFunctionsByName: Generate smoof function by passing a character vector of...

makeGeneralizedDropWaveFunction: Generalized Drop-Wave Function

makeGiuntaFunction: Giunta Function

makeGoldsteinPriceFunction: Goldstein-Price Function

makeGOMOPFunction: GOMOP function generator.

makeGriewankFunction: Griewank Function

makeHansenFunction: Hansen Function

makeHimmelblauFunction: Himmelblau Function

makeHolderTableN1Function: Holder Table function N. 1

makeHolderTableN2Function: Holder Table function N. 2

makeHosakiFunction: Hosaki Function

makeHyperEllipsoidFunction: Hyper-Ellipsoid function

makeJennrichSampsonFunction: Jennrich-Sampson function.

makeJudgeFunction: Judge function.

makeKeaneFunction: Keane Function

makeKearfottFunction: Kearfott function.

makeLeonFunction: Leon Function

makeMatyasFunction: Matyas Function

makeMcCormickFunction: McCormick Function

makeMichalewiczFunction: Michalewicz Function

makeMOP1Function: MOP1 function generator.

makeMOP2Function: MOP2 function generator.

makeMOP3Function: MOP3 function generator.

makeMOP4Function: MOP4 function generator.

makeMOP5Function: MOP5 function generator.

makeMOP6Function: MOP6 function generator.

makeMOP7Function: MOP7 function generator.

makeMPM2Function: Generator for function with multiple peaks following the...

makeMultiObjectiveFunction: Generator for multi-objective target functions.

makePeriodicFunction: Periodic Function

makePowellSumFunction: Powell-Sum Function

makePriceN1Function: Price Function N. 1

makePriceN2Function: Price Function N. 2

makePriceN4Function: Price Function N. 4

makeRastriginFunction: Rastrigin Function

makeRosenbrockFunction: Rosenbrock Function

makeSchafferN2Function: Modified Schaffer Function N. 2

makeSchafferN4Function: Schaffer Function N. 4

makeSchwefelFunction: Schwefel function

makeShubertFunction: Shubert Function

makeSingleObjectiveFunction: Generator for single-objective target functions.

makeSixHumpCamelFunction: Three-Hump Camel Function

makeSphereFunction: Sphere Function

makeStyblinkskiTangFunction: Styblinkski-Tang function

makeSumOfDifferentSquaresFunction: Sum of Different Squares Function

makeSwiler2014Function: Swiler2014 function.

makeThreeHumpCamelFunction: Three-Hump Camel Function

makeTrecanniFunction: Trecanni Function

makeUFFunction: Generator for the functions UF1, ..., UF10 of the CEC 2009.

makeViennetFunction: Viennet function generator

makeZDT1Function: ZDT1 Function

makeZDT2Function: ZDT2 Function

makeZDT3Function: ZDT3 Function

makeZDT4Function: ZDT4 Function

makeZDT6Function: ZDT6 Function

makeZettlFunction: Zettl Function

plot1DNumeric: Plot an one-dimensional function.

plot2DNumeric: Plot a two-dimensional numeric function.

plot3D: Surface plot of two-dimensional test function.

plot.smoof_function: Generate 'ggplot' object.

resetEvaluationCounter: Reset evaluation counter.

shouldBeMinimized: Check if function should be minimized.

smoof-package: smoof: Single and Multi-Objective Optimization test...

violatesConstraints: Checks whether constraints are violated.

visualizeParetoOptimalFront: Pareto-optimal front visualization.

Files in this package

smoof
smoof/inst
smoof/inst/mpm2.py
smoof/tests
smoof/tests/testthat
smoof/tests/testthat/Rplots.pdf
smoof/tests/testthat/test_isMultiobjective.R
smoof/tests/testthat/test_filterFunctionByTags.R
smoof/tests/testthat/test_counting_evaluations.R
smoof/tests/testthat/test_makeSingleObjectiveFunction.R
smoof/tests/testthat/test_logging.R
smoof/tests/testthat/test_plotting.R
smoof/tests/testthat/test_computeExpectedRunningTime.R
smoof/tests/testthat/test_conversion.R
smoof/tests/testthat/test_soofuns.R
smoof/tests/testthat/helper_zzz.R
smoof/tests/testthat/test_makeFunctionByName.R
smoof/tests/testthat/test_violatesConstraints.R
smoof/tests/testthat/test_helpers.R
smoof/src
smoof/src/mof.viennet.c
smoof/src/mof.MOP3.c
smoof/src/cec09_r_to_c_interface.c
smoof/src/benchmarks.h
smoof/src/mof.MOP4.c
smoof/src/benchmarksdeclare.c
smoof/src/cec09.h
smoof/src/bbobStructures.h
smoof/src/benchmarks.c
smoof/src/benchmarkshelper.c
smoof/src/macros.h
smoof/src/mof.MOP2.c
smoof/src/benchmarksdeclare.h
smoof/src/mof.MOP6.c
smoof/src/benchmarkshelper.h
smoof/src/cec09.c
smoof/src/dtlz.cpp
smoof/src/mof.MOP7.c
smoof/src/mof.BK1.c
smoof/src/mof.MOP1.c
smoof/src/bbob_r_to_c_interface.c
smoof/src/RcppExports.cpp
smoof/src/mof.MOP5.c
smoof/NAMESPACE
smoof/NEWS
smoof/R
smoof/R/sof.schaffer.function.4.R smoof/R/getNumberOfParameters.R smoof/R/sof.hyper.ellipsoid.R smoof/R/sof.keane.R smoof/R/sof.booth.R smoof/R/mof.dtlz2.R smoof/R/mof.MOP1.R smoof/R/getNumberOfEvaluations.R smoof/R/getRefPoint.R smoof/R/filterFunctionsByTags.R smoof/R/hasConstraints.R smoof/R/sof.kearfott.R smoof/R/mof.zdt4.R smoof/R/isVectorized.R smoof/R/sof.branin.R smoof/R/sof.dixon.price.R smoof/R/mof.dent.R smoof/R/isSingleobjective.R smoof/R/sof.schaffer.function.2.R smoof/R/makeUFFunction.R smoof/R/sof.leon.R smoof/R/doesCountEvaluations.R smoof/R/isMultiobjective.R smoof/R/sof.chung.reynolds.R smoof/R/sof.bartels.conn.R smoof/R/plot.autoplot.R smoof/R/mof.dtlz1.R smoof/R/plot3D.R smoof/R/sof.mpm2.R smoof/R/makeBBOBFunction.R smoof/R/isSmoofFunction.R smoof/R/makeMultiObjectiveFunction.R smoof/R/shouldBeMinimized.R smoof/R/sof.price.n1.R smoof/R/sof.deckkers.aarts.R smoof/R/sof.cube.R smoof/R/sof.brown.R smoof/R/resetEvaluationCounter.R smoof/R/mof.gomop.R smoof/R/getLocalOptimum.R smoof/R/sof.price.n4.R smoof/R/sof.chichinadze.R smoof/R/sof.cosine.mixture.R smoof/R/sof.holder.table.n1.R smoof/R/mof.MOP4.R smoof/R/sof.adjiman.R smoof/R/sof.el.attar.vidyasagar.dutta.R smoof/R/sof.trecanni.R smoof/R/sof.cross.in.tray.R smoof/R/sof.ackley.R smoof/R/hasTags.R smoof/R/mof.zdt6.R smoof/R/mof.zdt3.R smoof/R/sof.aluffi-pentini.R smoof/R/mof.zdt1.R smoof/R/plot.helpers.R smoof/R/sof.bukin.n6.R smoof/R/mof.dtlz4.R smoof/R/sof.engvall.R smoof/R/sof.bohachevsky.n1.R smoof/R/makeFunctionsByName.R smoof/R/sof.schwefel.R smoof/R/sof.powell.sum.R smoof/R/mof.MOP6.R smoof/R/getTags.R smoof/R/getGlobalOptimum.R smoof/R/isNoisy.R smoof/R/sof.periodic.R smoof/R/sof.complex.R smoof/R/getMeanFunction.R smoof/R/violatesConstraints.R smoof/R/mof.MOP5.R smoof/R/sof.sum.of.different.powers.R smoof/R/sof.three.hump.camel.R smoof/R/sof.griewank.R smoof/R/mof.dtlz5.R smoof/R/sof.hansen.R smoof/R/sof.holder.table.n2.R smoof/R/sof.six.hump.camel.back.function.R smoof/R/sof.styblinski.tang.R smoof/R/sof.goldstein.price.R smoof/R/sof.rastrigin.R smoof/R/mof.dtlz7.R smoof/R/sof.giunta.R smoof/R/addLoggingWrapper.R smoof/R/sof.zettl.R smoof/R/sof.eggcrate.R smoof/R/sof.mccormick.R smoof/R/sof.bukin.n2.R smoof/R/RcppExports.R smoof/R/mof.BK1.R smoof/R/mof.sphere.R smoof/R/sof.drop.wave.R smoof/R/getWrappedFunction.R smoof/R/smoof.R smoof/R/visualizeParetoOptimalFront.R smoof/R/sof.deflected.corrugated.spring.R smoof/R/getName.R smoof/R/conversion.R smoof/R/computeExpectedRunningTime.R smoof/R/sof.rosenbrock.R smoof/R/mof.MOP7.R smoof/R/getDescription.R smoof/R/getNumberOfObjectives.R smoof/R/hasGlobalOptimum.R smoof/R/getAvailableTags.R smoof/R/sof.freudenstein.roth.R smoof/R/sof.jennrichsampson.R smoof/R/sof.bird.R smoof/R/mof.MOP2.R smoof/R/helper.R smoof/R/isWrappedSmoofFunction.R smoof/R/sof.hosaki.R smoof/R/sof.carrom.table.R smoof/R/sof.double.sum.R smoof/R/sof.easom.R smoof/R/mof.MOP3.R smoof/R/mof.dtlz6.R smoof/R/sof.alpine01.R smoof/R/sof.alpine02.R smoof/R/sof.exponential.R smoof/R/sof.brent.R smoof/R/makeSingleObjectiveFunction.R smoof/R/sof.sphere.R smoof/R/sof.matyas.R smoof/R/getID.R smoof/R/getParamSet.R smoof/R/sof.himmelblau.R smoof/R/sof.eggholder.R smoof/R/sof.michalewicz.R smoof/R/sof.swiler2014.R smoof/R/plot.plot.R smoof/R/sof.price.n2.R smoof/R/sof.bent.cigar.R smoof/R/getLoggedValues.R smoof/R/mof.dtlz3.R smoof/R/sof.shubert.R smoof/R/zzz.R smoof/R/getBoxConstraints.R smoof/R/sof.judge.R smoof/R/mof.zdt2.R smoof/R/mof.viennet.R smoof/R/sof.bukin.n4.R smoof/R/addCountingWrapper.R smoof/R/makeObjectiveFunction.R smoof/R/sof.beale.R
smoof/MD5
smoof/DESCRIPTION
smoof/man
smoof/man/getMeanFunction.Rd smoof/man/makeKearfottFunction.Rd smoof/man/isSmoofFunction.Rd smoof/man/makeCarromTableFunction.Rd smoof/man/makeFunctionsByName.Rd smoof/man/makeHolderTableN1Function.Rd smoof/man/shouldBeMinimized.Rd smoof/man/hasGlobalOptimum.Rd smoof/man/addLoggingWrapper.Rd smoof/man/makeMatyasFunction.Rd smoof/man/makeBBOBFunction.Rd smoof/man/makeCrossInTrayFunction.Rd smoof/man/makeZettlFunction.Rd smoof/man/makeFreudensteinRothFunction.Rd smoof/man/autoplot.smoof_function.Rd smoof/man/makeExponentialFunction.Rd smoof/man/makeMOP5Function.Rd smoof/man/isWrappedSmoofFunction.Rd smoof/man/makeRosenbrockFunction.Rd smoof/man/makeZDT3Function.Rd smoof/man/getNumberOfParameters.Rd smoof/man/makePeriodicFunction.Rd smoof/man/makeDTLZ5Function.Rd smoof/man/makeGOMOPFunction.Rd smoof/man/makeHimmelblauFunction.Rd smoof/man/makeShubertFunction.Rd smoof/man/getGlobalOptimum.Rd smoof/man/makeMOP7Function.Rd smoof/man/getUpperBoxConstraints.Rd smoof/man/makeComplexFunction.Rd smoof/man/hasOtherConstraints.Rd smoof/man/makeZDT6Function.Rd smoof/man/makeHolderTableN2Function.Rd smoof/man/plot.smoof_function.Rd smoof/man/addCountingWrapper.Rd smoof/man/makeSingleObjectiveFunction.Rd smoof/man/makeBiSphereFunction.Rd smoof/man/getDescription.Rd smoof/man/makeBirdFunction.Rd smoof/man/getParamSet.Rd smoof/man/hasTags.Rd smoof/man/makeBoothFunction.Rd smoof/man/plot1DNumeric.Rd smoof/man/makeDTLZ2Function.Rd smoof/man/makeChichinadzeFunction.Rd smoof/man/makeGiuntaFunction.Rd smoof/man/computeExpectedRunningTime.Rd smoof/man/makeSumOfDifferentSquaresFunction.Rd smoof/man/makeEggCrateFunction.Rd smoof/man/makeAlpine02Function.Rd smoof/man/makeChungReynoldsFunction.Rd smoof/man/makeBraninFunction.Rd smoof/man/makeCosineMixtureFunction.Rd smoof/man/makeEasomFunction.Rd smoof/man/makeMOP1Function.Rd smoof/man/getLocalOptimum.Rd smoof/man/makeDoubleSumFunction.Rd smoof/man/getWrappedFunction.Rd smoof/man/hasConstraints.Rd smoof/man/makeDTLZ7Function.Rd smoof/man/makeDTLZ3Function.Rd smoof/man/makeLeonFunction.Rd smoof/man/makePowellSumFunction.Rd smoof/man/makeBealeFunction.Rd smoof/man/makeUFFunction.Rd smoof/man/makePriceN2Function.Rd smoof/man/makeSchwefelFunction.Rd smoof/man/makeMPM2Function.Rd smoof/man/hasBoxConstraints.Rd smoof/man/filterFunctionsByTags.Rd smoof/man/makeSchafferN4Function.Rd smoof/man/makeBK1Function.Rd smoof/man/makeDeckkersAartsFunction.Rd smoof/man/getLoggedValues.Rd smoof/man/makeAluffiPentiniFunction.Rd smoof/man/makeBohachevskyN1Function.Rd smoof/man/makeSwiler2014Function.Rd smoof/man/makeDixonPriceFunction.Rd smoof/man/makeGriewankFunction.Rd smoof/man/makeBrentFunction.Rd smoof/man/makeGoldsteinPriceFunction.Rd smoof/man/makeBukinN2Function.Rd smoof/man/makeHyperEllipsoidFunction.Rd smoof/man/makeAlpine01Function.Rd smoof/man/getLowerBoxConstraints.Rd smoof/man/makeHansenFunction.Rd smoof/man/isMultiobjective.Rd smoof/man/visualizeParetoOptimalFront.Rd smoof/man/makeMOP2Function.Rd smoof/man/violatesConstraints.Rd smoof/man/makeAdjimanFunction.Rd smoof/man/plot3D.Rd smoof/man/makeSphereFunction.Rd smoof/man/makeMOP6Function.Rd smoof/man/makeEngvallFunction.Rd smoof/man/makeDTLZ1Function.Rd smoof/man/resetEvaluationCounter.Rd smoof/man/getRefPoint.Rd smoof/man/makeCubeFunction.Rd smoof/man/makeKeaneFunction.Rd smoof/man/smoof-package.Rd smoof/man/makeHosakiFunction.Rd smoof/man/makeZDT2Function.Rd smoof/man/makeBukinN6Function.Rd smoof/man/makeSixHumpCamelFunction.Rd smoof/man/makeAckleyFunction.Rd smoof/man/makeBartelsConnFunction.Rd smoof/man/makePriceN1Function.Rd smoof/man/plot2DNumeric.Rd smoof/man/makeRastriginFunction.Rd smoof/man/makeDTLZ4Function.Rd smoof/man/makeDTLZ6Function.Rd smoof/man/getID.Rd smoof/man/makeMichalewiczFunction.Rd smoof/man/makeJennrichSampsonFunction.Rd smoof/man/makeGeneralizedDropWaveFunction.Rd smoof/man/makeDeflectedCorrugatedSpringFunction.Rd smoof/man/makeElAttarVidyasagarDuttaFunction.Rd smoof/man/makeMOP4Function.Rd smoof/man/makeViennetFunction.Rd smoof/man/makeJudgeFunction.Rd smoof/man/makeBentCigarFunction.Rd smoof/man/makeSchafferN2Function.Rd smoof/man/conversion.Rd smoof/man/makePriceN4Function.Rd smoof/man/makeEggholderFunction.Rd smoof/man/makeZDT1Function.Rd smoof/man/makeBukinN4Function.Rd smoof/man/makeStyblinkskiTangFunction.Rd smoof/man/getNumberOfObjectives.Rd smoof/man/makeZDT4Function.Rd smoof/man/isVectorized.Rd smoof/man/makeDentFunction.Rd smoof/man/makeMOP3Function.Rd smoof/man/doesCountEvaluations.Rd smoof/man/getTags.Rd smoof/man/hasLocalOptimum.Rd smoof/man/makeThreeHumpCamelFunction.Rd smoof/man/makeBrownFunction.Rd smoof/man/getName.Rd smoof/man/getAvailableTags.Rd smoof/man/isSingleobjective.Rd smoof/man/makeTrecanniFunction.Rd smoof/man/getNumberOfEvaluations.Rd smoof/man/makeMultiObjectiveFunction.Rd smoof/man/makeMcCormickFunction.Rd smoof/man/isNoisy.Rd
smoof/LICENSE

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

All documentation is copyright its authors; we didn't write any of that.