![]()  | 
  
    SG++-Doxygen-Documentation
    
   | 
 
Abstract class for optimizing objective functions. More...
#include <UnconstrainedOptimizer.hpp>
  
 Public Member Functions | |
| virtual void | clone (std::unique_ptr< UnconstrainedOptimizer > &clone) const =0 | 
| Pure virtual method for cloning the optimizer.  More... | |
| const base::DataMatrix & | getHistoryOfOptimalPoints () const | 
| const base::DataVector & | getHistoryOfOptimalValues () const | 
| size_t | getN () const | 
| ScalarFunction & | getObjectiveFunction () const | 
| const base::DataVector & | getOptimalPoint () const | 
| double | getOptimalValue () const | 
| const base::DataVector & | getStartingPoint () const | 
| virtual void | optimize ()=0 | 
| Pure virtual method for optimization of the objective function.  More... | |
| void | setN (size_t N) | 
| void | setStartingPoint (const base::DataVector &startingPoint) | 
| UnconstrainedOptimizer (const ScalarFunction &f, size_t N=DEFAULT_N) | |
| Constructor.  More... | |
| UnconstrainedOptimizer (const UnconstrainedOptimizer &other) | |
| Copy constructor.  More... | |
| virtual | ~UnconstrainedOptimizer () | 
| Destructor.  More... | |
Static Public Attributes | |
| static const size_t | DEFAULT_N = 1000 | 
| default maximal number of iterations or function evaluations  More... | |
Protected Attributes | |
| std::unique_ptr< ScalarFunction > | f | 
| objective function  More... | |
| base::DataVector | fHist | 
| search history vector (optimal values)  More... | |
| double | fOpt | 
| result of optimization (optimal function value)  More... | |
| size_t | N | 
| maximal number of iterations or function evaluations  More... | |
| base::DataVector | x0 | 
| starting point  More... | |
| base::DataMatrix | xHist | 
| search history matrix (optimal points)  More... | |
| base::DataVector | xOpt | 
| result of optimization (location of optimum)  More... | |
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 | 
| N | maximal number of iterations or function evaluations (depending on the implementation) | 
References sgpp::optimization::ScalarFunction::clone().
      
  | 
  inline | 
      
  | 
  inlinevirtual | 
Destructor.
References optimize().
      
  | 
  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::Newton, sgpp::optimization::optimizer::AdaptiveNewton, sgpp::optimization::optimizer::AugmentedLagrangian, sgpp::optimization::optimizer::SquaredPenalty, sgpp::optimization::optimizer::NLCG, sgpp::optimization::optimizer::LogBarrier, sgpp::optimization::optimizer::GradientDescent, sgpp::optimization::optimizer::BFGS, sgpp::optimization::optimizer::AdaptiveGradientDescent, sgpp::optimization::optimizer::Rprop, sgpp::optimization::optimizer::NelderMead, sgpp::optimization::optimizer::MultiStart, sgpp::optimization::optimizer::DifferentialEvolution, and sgpp::optimization::optimizer::CMAES.
Referenced by getHistoryOfOptimalValues(), and sgpp::optimization::optimizer::MultiStart::MultiStart().
      
  | 
  inline | 
References xHist.
Referenced by sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), and sgpp::optimization::optimizer::AugmentedLagrangian::optimize().
      
  | 
  inline | 
      
  | 
  inline | 
References N.
      
  | 
  inline | 
References f.
      
  | 
  inline | 
References xOpt.
Referenced by sgpp::datadriven::OperationInverseRosenblattTransformation1DBspline::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DBsplineBoundary::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DModPoly::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DPoly::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DPolyBoundary::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DModBspline::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DModPolyClenshawCurtis::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DBsplineClenshawCurtis::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DPolyClenshawCurtis::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DPolyClenshawCurtisBoundary::doTransformation1D(), sgpp::datadriven::OperationInverseRosenblattTransformation1DModBsplineClenshawCurtis::doTransformation1D(), sgpp::optimization::optimizer::AugmentedLagrangian::findFeasiblePoint(), sgpp::datadriven::BayesianOptimization::main(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AugmentedLagrangian::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::Newton, sgpp::optimization::optimizer::AdaptiveNewton, sgpp::optimization::optimizer::AugmentedLagrangian, sgpp::optimization::optimizer::SquaredPenalty, sgpp::optimization::optimizer::MultiStart, sgpp::optimization::optimizer::NLCG, sgpp::optimization::optimizer::DifferentialEvolution, sgpp::optimization::optimizer::LogBarrier, sgpp::optimization::optimizer::GradientDescent, sgpp::optimization::optimizer::NelderMead, sgpp::optimization::optimizer::BFGS, sgpp::optimization::optimizer::AdaptiveGradientDescent, sgpp::optimization::optimizer::Rprop, and sgpp::optimization::optimizer::CMAES.
Referenced by sgpp::optimization::optimizer::MultiStart::optimize(), and ~UnconstrainedOptimizer().
      
  | 
  inline | 
| N | maximal number of iterations or function evaluations | 
References N.
Referenced by sgpp::optimization::optimizer::MultiStart::optimize().
      
  | 
  inline | 
| startingPoint | starting point | 
References x0.
Referenced by sgpp::optimization::optimizer::AugmentedLagrangian::findFeasiblePoint(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), and sgpp::optimization::optimizer::SquaredPenalty::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::CMAES::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), and sgpp::optimization::optimizer::Newton::optimize().
      
  | 
  protected | 
search history vector (optimal values)
Referenced by getHistoryOfOptimalValues(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::Newton::optimize(), and UnconstrainedOptimizer().
      
  | 
  protected | 
result of optimization (optimal function value)
Referenced by getOptimalValue(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::Newton::optimize(), and UnconstrainedOptimizer().
      
  | 
  protected | 
maximal number of iterations or function evaluations
Referenced by getN(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::Newton::optimize(), and setN().
      
  | 
  protected | 
starting point
Referenced by getStartingPoint(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::Newton::optimize(), setStartingPoint(), and UnconstrainedOptimizer().
      
  | 
  protected | 
search history matrix (optimal points)
Referenced by getHistoryOfOptimalPoints(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::Newton::optimize(), and UnconstrainedOptimizer().
      
  | 
  protected | 
result of optimization (location of optimum)
Referenced by getOptimalPoint(), sgpp::optimization::optimizer::CMAES::optimize(), sgpp::optimization::optimizer::AdaptiveGradientDescent::optimize(), sgpp::optimization::optimizer::Rprop::optimize(), sgpp::optimization::optimizer::BFGS::optimize(), sgpp::optimization::optimizer::GradientDescent::optimize(), sgpp::optimization::optimizer::NelderMead::optimize(), sgpp::optimization::optimizer::LogBarrier::optimize(), sgpp::optimization::optimizer::DifferentialEvolution::optimize(), sgpp::optimization::optimizer::NLCG::optimize(), sgpp::optimization::optimizer::MultiStart::optimize(), sgpp::optimization::optimizer::AugmentedLagrangian::optimize(), sgpp::optimization::optimizer::SquaredPenalty::optimize(), sgpp::optimization::optimizer::AdaptiveNewton::optimize(), sgpp::optimization::optimizer::Newton::optimize(), and UnconstrainedOptimizer().