Package: smoof 1.7.0

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.

Authors:Jakob Bossek [aut, cre], Pascal Kerschke [ctb], Lennart Schäpermeier [ctb]

smoof_1.7.0.tar.gz
smoof_1.7.0.zip(r-4.5)smoof_1.7.0.zip(r-4.4)smoof_1.7.0.zip(r-4.3)
smoof_1.7.0.tgz(r-4.4-x86_64)smoof_1.7.0.tgz(r-4.4-arm64)smoof_1.7.0.tgz(r-4.3-x86_64)smoof_1.7.0.tgz(r-4.3-arm64)
smoof_1.7.0.tar.gz(r-4.5-noble)smoof_1.7.0.tar.gz(r-4.4-noble)
smoof_1.7.0.tgz(r-4.4-emscripten)smoof_1.7.0.tgz(r-4.3-emscripten)
smoof.pdf |smoof.html
smoof/json (API)
NEWS

# Install 'smoof' in R:
install.packages('smoof', repos = c('https://jakobbossek.r-universe.dev', 'https://cloud.r-project.org'))

Peer review:

Bug tracker:https://github.com/jakobbossek/smoof/issues

Uses libs:
  • c++– GNU Standard C++ Library v3

On CRAN:

benchmark-functionsmulti-objective-optimizationsingle-objective-optimization

192 exports 36 stars 3.75 score 36 dependencies 7 dependents 263 scripts 2.4k downloads

Last updated 7 months agofrom:4a10acb205. Checks:OK: 4 NOTE: 5. Indexed: yes.

TargetResultDate
Doc / VignettesOKSep 11 2024
R-4.5-win-x86_64NOTESep 11 2024
R-4.5-linux-x86_64NOTESep 11 2024
R-4.4-win-x86_64NOTESep 11 2024
R-4.4-mac-x86_64NOTESep 11 2024
R-4.4-mac-aarch64NOTESep 11 2024
R-4.3-win-x86_64OKSep 11 2024
R-4.3-mac-x86_64OKSep 11 2024
R-4.3-mac-aarch64OKSep 11 2024

Exports:addCountingWrapperaddLoggingWrappercomputeExpectedRunningTimeconvertToMaximizationconvertToMinimizationdoesCountEvaluationsexportNKFunctionfilterFunctionsByTagsgetAvailableTagsgetDescriptiongetGlobalOptimumgetIDgetLocalOptimumgetLoggedValuesgetLowerBoxConstraintsgetMeanFunctiongetNamegetNumberOfEvaluationsgetNumberOfObjectivesgetNumberOfParametersgetOptimaDfgetRefPointgetTagsgetUpperBoxConstraintsgetWrappedFunctionhasBoxConstraintshasConstraintshasGlobalOptimumhasLocalOptimumhasOtherConstraintshasTagsimportNKFunctionisMultiobjectiveisNoisyisSingleobjectiveisSmoofFunctionisVectorizedisWrappedSmoofFunctionmakeAckleyFunctionmakeAdjimanFunctionmakeAlpine01FunctionmakeAlpine02FunctionmakeAluffiPentiniFunctionmakeBartelsConnFunctionmakeBBOBFunctionmakeBealeFunctionmakeBentCigarFunctionmakeBiObjBBOBFunctionmakeBirdFunctionmakeBiSphereFunctionmakeBK1FunctionmakeBohachevskyN1FunctionmakeBoothFunctionmakeBraninFunctionmakeBrentFunctionmakeBrownFunctionmakeBukinN2FunctionmakeBukinN4FunctionmakeBukinN6FunctionmakeCarromTableFunctionmakeChichinadzeFunctionmakeChungReynoldsFunctionmakeComplexFunctionmakeCosineMixtureFunctionmakeCrossInTrayFunctionmakeCubeFunctionmakeDeckkersAartsFunctionmakeDeflectedCorrugatedSpringFunctionmakeDentFunctionmakeDixonPriceFunctionmakeDoubleSumFunctionmakeDTLZ1FunctionmakeDTLZ2FunctionmakeDTLZ3FunctionmakeDTLZ4FunctionmakeDTLZ5FunctionmakeDTLZ6FunctionmakeDTLZ7FunctionmakeEasomFunctionmakeED1FunctionmakeED2FunctionmakeEggCrateFunctionmakeEggholderFunctionmakeElAttarVidyasagarDuttaFunctionmakeEngvallFunctionmakeExponentialFunctionmakeFreudensteinRothFunctionmakeFunctionsByNamemakeGeneralizedDropWaveFunctionmakeGiuntaFunctionmakeGoldsteinPriceFunctionmakeGOMOPFunctionmakeGriewankFunctionmakeHansenFunctionmakeHartmannFunctionmakeHimmelblauFunctionmakeHolderTableN1FunctionmakeHolderTableN2FunctionmakeHosakiFunctionmakeHyperEllipsoidFunctionmakeInvertedVincentFunctionmakeJennrichSampsonFunctionmakeJudgeFunctionmakeKeaneFunctionmakeKearfottFunctionmakeKursaweFunctionmakeLeonFunctionmakeMatyasFunctionmakeMcCormickFunctionmakeMichalewiczFunctionmakeMMF10FunctionmakeMMF11FunctionmakeMMF12FunctionmakeMMF13FunctionmakeMMF14aFunctionmakeMMF14FunctionmakeMMF15aFunctionmakeMMF15FunctionmakeMMF1eFunctionmakeMMF1FunctionmakeMMF1zFunctionmakeMMF2FunctionmakeMMF3FunctionmakeMMF4FunctionmakeMMF5FunctionmakeMMF6FunctionmakeMMF7FunctionmakeMMF8FunctionmakeMMF9FunctionmakeMNKFunctionmakeModifiedRastriginFunctionmakeMOP1FunctionmakeMOP2FunctionmakeMOP3FunctionmakeMOP4FunctionmakeMOP5FunctionmakeMOP6FunctionmakeMOP7FunctionmakeMPM2FunctionmakeMultiObjectiveFunctionmakeNKFunctionmakeObjectiveFunctionmakeOmniTestFunctionmakePeriodicFunctionmakePowellSumFunctionmakePriceN1FunctionmakePriceN2FunctionmakePriceN4FunctionmakeRastriginFunctionmakeRMNKFunctionmakeRosenbrockFunctionmakeSchafferN2FunctionmakeSchafferN4FunctionmakeSchwefelFunctionmakeShekelFunctionmakeShubertFunctionmakeSingleObjectiveFunctionmakeSixHumpCamelFunctionmakeSphereFunctionmakeStyblinkskiTangFunctionmakeSumOfDifferentSquaresFunctionmakeSwiler2014FunctionmakeSYMPARTrotatedFunctionmakeSYMPARTsimpleFunctionmakeThreeHumpCamelFunctionmakeTrecanniFunctionmakeUFFunctionmakeViennetFunctionmakeWFG1FunctionmakeWFG2FunctionmakeWFG3FunctionmakeWFG4FunctionmakeWFG5FunctionmakeWFG6FunctionmakeWFG7FunctionmakeWFG8FunctionmakeWFG9FunctionmakeZDT1FunctionmakeZDT2FunctionmakeZDT3FunctionmakeZDT4FunctionmakeZDT6FunctionmakeZettlFunctionmnofplot1DNumericplot2DNumericplot3DresetEvaluationCountershouldBeMinimizedsnofviolatesConstraintsvisualizeParetoOptimalFront

Dependencies:backportsBBmisccheckmateclicolorspacedata.tablefansifarverfastmatchggplot2gluegtableisobandlabelinglatticelifecyclemagrittrMASSMatrixmgcvmunsellnlmeParamHelperspillarpkgconfigR6RColorBrewerRcppRcppArmadillorlangscalestibbleutf8vctrsviridisLitewithr

Readme and manuals

Help Manual

Help pageTopics
smoof: Single and Multi-Objective Optimization test functions.smoof-package
Return a function which counts its function evaluations.addCountingWrapper
Return a function which internally stores x or y values.addLoggingWrapper
Generate ggplot2 object.autoplot.smoof_function
Compute the Expected Running Time (ERT) performance measure.computeExpectedRunningTime
Conversion between minimization and maximization problems.conversion convertToMaximization convertToMinimization
Check whether the function is counting its function evaluations.doesCountEvaluations
Export/import (rM)NK-landscapesexportNKFunction importNKFunction
Get a list of implemented test functions with specific tags.filterFunctionsByTags
Returns a character vector of possible function tags.getAvailableTags
Returns the description of the function.getDescription
Returns the global optimum and its value.getGlobalOptimum
Returns the ID / short name of the function.getID
Returns the local optima of a single objective smoof function.getLocalOptimum
Extracts the logged values of a function wrapped by a logging wrapper.getLoggedValues
Returns lower box constraints for a Smoof function.getLowerBoxConstraints
Returns the true mean function in the noisy case.getMeanFunction
Returns the name of the function.getName
Returns the number of function evaluations performed by the wrapped 'smoof_function'.getNumberOfEvaluations
Determines the number of objectives.getNumberOfObjectives
Determines the number of parameters.getNumberOfParameters
Get Data Frame of optima.getOptimaDf
Get parameter set.getParamSet
Returns the reference point of a multi-objective function.getRefPoint
Returns the vector of associated tags.getTags
Return upper box constaints.getUpperBoxConstraints
Extract wrapped function.getWrappedFunction
Checks whether the objective function has box constraints.hasBoxConstraints
Checks whether the objective function has constraints.hasConstraints
Checks whether the global optimum is known.hasGlobalOptimum
Checks whether local optima are known.hasLocalOptimum
Checks whether the objective function has other constraints.hasOtherConstraints
Checks if the function has assigned special tags.hasTags
Checks whether the given function is multi-objective.isMultiobjective
Checks whether the given function is noisy.isNoisy
Checks whether the given function is single-objective.isSingleobjective
Checks whether the given object is a 'smoof_function' or a 'smoof_wrapped_function'.isSmoofFunction
Checks whether the given function accepts "vectorized" input.isVectorized
Checks whether the function is of type 'smoof_wrapped_function'.isWrappedSmoofFunction
Ackley FunctionmakeAckleyFunction
Adjiman functionmakeAdjimanFunction
Alpine01 functionmakeAlpine01Function
Alpine02 functionmakeAlpine02Function
Aluffi-Pentini function.makeAluffiPentiniFunction
Bartels Conn FunctionmakeBartelsConnFunction
Generator for noiseless function set of the real-parameter BBOB.makeBBOBFunction
Beale FunctionmakeBealeFunction
Bent-Cigar FunctionmakeBentCigarFunction
Generate Bi-Objective Function from the Real-Parameter Bi-Objective Black-Box Optimization Benchmarking (BBOB)makeBiObjBBOBFunction
Bird FunctionmakeBirdFunction
Bi-objective Sphere functionmakeBiSphereFunction
BK1 function generatormakeBK1Function
Bohachevsky function N. 1makeBohachevskyN1Function
Booth FunctionmakeBoothFunction
Branin RCOS functionmakeBraninFunction
Brent FunctionmakeBrentFunction
Brown FunctionmakeBrownFunction
Bukin function N. 2makeBukinN2Function
Bukin function N. 4makeBukinN4Function
Bukin function N. 6makeBukinN6Function
Carrom Table FunctionmakeCarromTableFunction
Chichinadze FunctionmakeChichinadzeFunction
Chung Reynolds FunctionmakeChungReynoldsFunction
Complex function.makeComplexFunction
Cosine Mixture FunctionmakeCosineMixtureFunction
Cross-In-Tray FunctionmakeCrossInTrayFunction
Cube FunctionmakeCubeFunction
Deckkers-Aarts FunctionmakeDeckkersAartsFunction
Deflected Corrugated Spring functionmakeDeflectedCorrugatedSpringFunction
Dent Function GeneratormakeDentFunction
Dixon-Price FunctionmakeDixonPriceFunction
Double-Sum FunctionmakeDoubleSumFunction
DTLZ1 Function (family)makeDTLZ1Function
DTLZ2 Function (family)makeDTLZ2Function
DTLZ3 Function (family)makeDTLZ3Function
DTLZ4 Function (family)makeDTLZ4Function
DTLZ5 Function (family)makeDTLZ5Function
DTLZ6 Function (family)makeDTLZ6Function
DTLZ7 Function (family)makeDTLZ7Function
Easom FunctionmakeEasomFunction
ED1 FunctionmakeED1Function
ED2 FunctionmakeED2Function
Egg Crate FunctionmakeEggCrateFunction
Egg Holder functionmakeEggholderFunction
El-Attar-Vidyasagar-Dutta FunctionmakeElAttarVidyasagarDuttaFunction
Complex function.makeEngvallFunction
Exponential FunctionmakeExponentialFunction
Freudenstein Roth FunctionmakeFreudensteinRothFunction
Generate smoof function by passing a character vector of generator names.makeFunctionsByName
Generalized Drop-Wave FunctionmakeGeneralizedDropWaveFunction
Giunta FunctionmakeGiuntaFunction
Goldstein-Price FunctionmakeGoldsteinPriceFunction
GOMOP function generator.makeGOMOPFunction
Griewank FunctionmakeGriewankFunction
Hansen FunctionmakeHansenFunction
Hartmann FunctionmakeHartmannFunction
Himmelblau FunctionmakeHimmelblauFunction
Holder Table function N. 1makeHolderTableN1Function
Holder Table function N. 2makeHolderTableN2Function
Hosaki FunctionmakeHosakiFunction
Hyper-Ellipsoid functionmakeHyperEllipsoidFunction
Inverted Vincent FunctionmakeInvertedVincentFunction
Jennrich-Sampson function.makeJennrichSampsonFunction
Judge function.makeJudgeFunction
Keane FunctionmakeKeaneFunction
Kearfott function.makeKearfottFunction
Kursawe FunctionmakeKursaweFunction
Leon FunctionmakeLeonFunction
Matyas FunctionmakeMatyasFunction
McCormick FunctionmakeMcCormickFunction
Michalewicz FunctionmakeMichalewiczFunction
MMF10 FunctionmakeMMF10Function
MMF11 FunctionmakeMMF11Function
MMF12 FunctionmakeMMF12Function
MMF13 FunctionmakeMMF13Function
MMF14a FunctionmakeMMF14aFunction
MMF14 FunctionmakeMMF14Function
MMF15a FunctionmakeMMF15aFunction
MMF15 FunctionmakeMMF15Function
MMF1e FunctionmakeMMF1eFunction
MMF1 FunctionmakeMMF1Function
MMF1z FunctionmakeMMF1zFunction
MMF2 FunctionmakeMMF2Function
MMF3 FunctionmakeMMF3Function
MMF4 FunctionmakeMMF4Function
MMF5 FunctionmakeMMF5Function
MMF6 FunctionmakeMMF6Function
MMF7 FunctionmakeMMF7Function
MMF8 FunctionmakeMMF8Function
MMF9 FunctionmakeMMF9Function
Generators for (r)MNK-landscapesmakeMNKFunction makeRMNKFunction
Rastrigin FunctionmakeModifiedRastriginFunction
MOP1 function generator.makeMOP1Function
MOP2 function generator.makeMOP2Function
MOP3 function generator.makeMOP3Function
MOP4 function generator.makeMOP4Function
MOP5 function generator.makeMOP5Function
MOP6 function generator.makeMOP6Function
MOP7 function generator.makeMOP7Function
Generator for function with multiple peaks following the multiple peaks model 2.makeMPM2Function
Generator for multi-objective target functions.makeMultiObjectiveFunction
Generator for NK-landscapesmakeNKFunction
Internal generator for function of smoof type.makeObjectiveFunction
MMF13 FunctionmakeOmniTestFunction
Periodic FunctionmakePeriodicFunction
Powell-Sum FunctionmakePowellSumFunction
Price Function N. 1makePriceN1Function
Price Function N. 2makePriceN2Function
Price Function N. 4makePriceN4Function
Rastrigin FunctionmakeRastriginFunction
Rosenbrock FunctionmakeRosenbrockFunction
Modified Schaffer Function N. 2makeSchafferN2Function
Schaffer Function N. 4makeSchafferN4Function
Schwefel functionmakeSchwefelFunction
Shekel functionsmakeShekelFunction
Shubert FunctionmakeShubertFunction
Generator for single-objective target functions.makeSingleObjectiveFunction
Three-Hump Camel FunctionmakeSixHumpCamelFunction
Sphere FunctionmakeSphereFunction
Styblinkski-Tang functionmakeStyblinkskiTangFunction
Sum of Different Squares FunctionmakeSumOfDifferentSquaresFunction
Swiler2014 function.makeSwiler2014Function
SYM-PART Rotated FunctionmakeSYMPARTrotatedFunction
SYM-PART Simple FunctionmakeSYMPARTsimpleFunction
Three-Hump Camel FunctionmakeThreeHumpCamelFunction
Trecanni FunctionmakeTrecanniFunction
Generator for the functions UF1, ..., UF10 of the CEC 2009.makeUFFunction
Viennet function generatormakeViennetFunction
WFG1 FunctionmakeWFG1Function
WFG2 FunctionmakeWFG2Function
WFG3 FunctionmakeWFG3Function
WFG4 FunctionmakeWFG4Function
WFG5 FunctionmakeWFG5Function
WFG6 FunctionmakeWFG6Function
WFG7 FunctionmakeWFG7Function
WFG8 FunctionmakeWFG8Function
WFG9 FunctionmakeWFG9Function
ZDT1 FunctionmakeZDT1Function
ZDT2 FunctionmakeZDT2Function
ZDT3 FunctionmakeZDT3Function
ZDT4 FunctionmakeZDT4Function
ZDT6 FunctionmakeZDT6Function
Zettl FunctionmakeZettlFunction
Helper function to create a numeric multi-objective optimization test function.mnof
Generate ggplot2 object.plot.smoof_function
Plot an one-dimensional function.plot1DNumeric
Plot a two-dimensional numeric function.plot2DNumeric
Surface plot of two-dimensional test function.plot3D
Reset evaluation counter.resetEvaluationCounter
Check if function should be minimized.shouldBeMinimized
Smoof functionsmoof_function smoof_multi_objective_function smoof_single_objective_function
Helper function to create numeric single-objective optimization test function.snof
Checks whether constraints are violated.violatesConstraints
Pareto-optimal front visualization.visualizeParetoOptimalFront