![]() |
SG++-Doxygen-Documentation
|
Abstract class for optimizing objective functions. More...
#include <UnconstrainedOptimizer.hpp>
Static Public Attributes | |
static const size_t | DEFAULT_N = 1000 |
default maximal number of iterations or function evaluations | |
Protected Attributes | |
std::unique_ptr< base::ScalarFunction > | f |
objective function | |
std::unique_ptr< base::ScalarFunctionGradient > | fGradient |
objective function gradient | |
std::unique_ptr< base::ScalarFunctionHessian > | fHessian |
objective function Hessian | |
base::DataVector | fHist |
search history vector (optimal values) | |
double | fOpt |
result of optimization (optimal function value) | |
size_t | N |
maximal number of iterations or function evaluations | |
base::DataVector | x0 |
starting point | |
base::DataMatrix | xHist |
search history matrix (optimal points) | |
base::DataVector | xOpt |
result of optimization (location of optimum) | |
Abstract class for optimizing objective functions.
|
inlineexplicit |
Constructor.
The starting point is set to \((0.5, \dotsc, 0.5)^{\mathrm{T}}\).
f | function to optimize |
fGradient | gradient of f (nullptr to omit) |
fHessian | Hessian of f (nullptr to omit) |
N | maximal number of iterations or function evaluations (depending on the implementation) |
|
inline |
|
inlinevirtual |
Destructor.
|
pure virtual |
Pure virtual method for cloning the optimizer.
It should generate a pointer to the cloned object and it's used for parallel computations.
[out] | clone | pointer to cloned object |
Implemented in sgpp::optimization::optimizer::AugmentedLagrangian, sgpp::optimization::optimizer::LogBarrier, sgpp::optimization::optimizer::SquaredPenalty, sgpp::optimization::optimizer::AdaptiveGradientDescent, sgpp::optimization::optimizer::AdaptiveNewton, sgpp::optimization::optimizer::BFGS, sgpp::optimization::optimizer::CMAES, sgpp::optimization::optimizer::DifferentialEvolution, sgpp::optimization::optimizer::GradientDescent, sgpp::optimization::optimizer::MultiStart, sgpp::optimization::optimizer::NelderMead, sgpp::optimization::optimizer::Newton, sgpp::optimization::optimizer::NLCG, and sgpp::optimization::optimizer::Rprop.
Referenced by sgpp::optimization::optimizer::ConstrainedOptimizer::ConstrainedOptimizer(), sgpp::optimization::optimizer::ConstrainedOptimizer::ConstrainedOptimizer(), sgpp::optimization::optimizer::ConstrainedOptimizer::ConstrainedOptimizer(), sgpp::optimization::optimizer::MultiStart::MultiStart(), and sgpp::optimization::optimizer::MultiStart::optimize().
|
inline |
References xHist.
Referenced by sgpp::optimization::optimizer::MultiStart::optimize().
|
inline |
References fHist.
|
inline |
References N.
|
inline |
References f.
|
inline |
References fGradient.
|
inline |
References fHessian.
|
inline |
References xOpt.
Referenced by sgpp::datadriven::OperationInverseRosenblattTransformation1DBspline::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DBsplineBoundary::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DBsplineClenshawCurtis::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DModBspline::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DModBsplineClenshawCurtis::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DModPoly::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DModPolyClenshawCurtis::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DPoly::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DPolyBoundary::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DPolyClenshawCurtis::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DPolyClenshawCurtisBoundary::doTransformation1D(), sgpp::datadriven::BayesianOptimization::fitScales(), sgpp::datadriven::BayesianOptimization::main(), sgpp::optimization::SplineResponseSurface::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), and sgpp::datadriven::MaximumLikelihoodCrossValidation::optimizeBandwidths().
|
inline |
References fOpt.
Referenced by sgpp::datadriven::BayesianOptimization::main(), and sgpp::optimization::optimizer::MultiStart::optimize().
|
inline |
References x0.
|
pure virtual |
Pure virtual method for optimization of the objective function.
The result of the optimization process can be obtained by member functions, e.g., getOptimalPoint() and getOptimalValue().
Implemented in sgpp::optimization::optimizer::AugmentedLagrangian, sgpp::optimization::optimizer::LogBarrier, sgpp::optimization::optimizer::SquaredPenalty, sgpp::optimization::optimizer::AdaptiveGradientDescent, sgpp::optimization::optimizer::AdaptiveNewton, sgpp::optimization::optimizer::BFGS, sgpp::optimization::optimizer::CMAES, sgpp::optimization::optimizer::DifferentialEvolution, sgpp::optimization::optimizer::GradientDescent, sgpp::optimization::optimizer::MultiStart, sgpp::optimization::optimizer::NelderMead, sgpp::optimization::optimizer::Newton, sgpp::optimization::optimizer::NLCG, and sgpp::optimization::optimizer::Rprop.
Referenced by sgpp::optimization::optimizer::MultiStart::optimize().
|
inline |
N | maximal number of iterations or function evaluations |
References N.
Referenced by sgpp::optimization::optimizer::MultiStart::optimize().
|
inlinevirtual |
f | objective function |
Reimplemented in sgpp::optimization::optimizer::MultiStart.
References f.
Referenced by sgpp::optimization::optimizer::MultiStart::setObjectiveFunction().
|
inlinevirtual |
fGradient | objective gradient |
Reimplemented in sgpp::optimization::optimizer::MultiStart.
References fGradient.
Referenced by sgpp::optimization::optimizer::MultiStart::setObjectiveGradient().
|
inlinevirtual |
fHessian | objective Hessian |
Reimplemented in sgpp::optimization::optimizer::MultiStart.
References fHessian.
Referenced by sgpp::optimization::optimizer::MultiStart::setObjectiveHessian().
|
inline |
startingPoint | starting point |
References x0.
Referenced by sgpp::optimization::SplineResponseSurface::optimize(), and sgpp::optimization::optimizer::MultiStart::optimize().
|
static |
default maximal number of iterations or function evaluations
|
protected |
objective function
Referenced by sgpp::optimization::optimizer::AugmentedLagrangian::findFeasiblePoint(), getObjectiveFunction(), sgpp::optimization::optimizer::MultiStart::initialize(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::Newton::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), python.uq.refinement.RefinementStrategy.PredictiveRanking::rank(), setObjectiveFunction(), sgpp::optimization::optimizer::MultiStart::setObjectiveFunction(), and UnconstrainedOptimizer().
|
protected |
objective function gradient
Referenced by getObjectiveGradient(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), setObjectiveGradient(), sgpp::optimization::optimizer::MultiStart::setObjectiveGradient(), and UnconstrainedOptimizer().
|
protected |
|
protected |
search history vector (optimal values)
Referenced by getHistoryOfOptimalValues(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::Newton::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), and UnconstrainedOptimizer().
|
protected |
result of optimization (optimal function value)
Referenced by getOptimalValue(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::Newton::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), and UnconstrainedOptimizer().
|
protected |
maximal number of iterations or function evaluations
Referenced by getN(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::Newton::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), and setN().
|
protected |
starting point
Referenced by getStartingPoint(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::Newton::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), setStartingPoint(), and UnconstrainedOptimizer().
|
protected |
search history matrix (optimal points)
Referenced by getHistoryOfOptimalPoints(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::Newton::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), and UnconstrainedOptimizer().
|
protected |
result of optimization (location of optimum)
Referenced by getOptimalPoint(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::Newton::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), and UnconstrainedOptimizer().