SG++
sgpp::optimization::test_problems::Himmelblau Class Reference

Himmelblau unconstrained test problem. More...

#include <Himmelblau.hpp>

Inheritance diagram for sgpp::optimization::test_problems::Himmelblau:
sgpp::optimization::test_problems::UnconstrainedTestProblem

Public Member Functions

TestScalarFunctiongetObjectiveFunction () override
 
double getOptimalPointUndisplaced (base::DataVector &x) override
 
 Himmelblau ()
 Constructor. More...
 
 ~Himmelblau () override
 Destructor. More...
 
- Public Member Functions inherited from sgpp::optimization::test_problems::UnconstrainedTestProblem
void generateDisplacement ()
 Generate normally distributed pseudorandom displacement with default standard deviation. More...
 
void generateDisplacement (double stdDev)
 Generate normally distributed pseudorandom displacement. More...
 
const base::DataVectorgetDisplacement () const
 
double getOptimalPoint (base::DataVector &x)
 Returns the minimal point of the displaced function. More...
 
void setDisplacement (const base::DataVector &displacement)
 Sets the displacement vector. More...
 
 UnconstrainedTestProblem (size_t d)
 Constructor. More...
 
virtual ~UnconstrainedTestProblem ()
 Destructor. More...
 

Protected Attributes

HimmelblauObjective f
 objective function More...
 
- Protected Attributes inherited from sgpp::optimization::test_problems::UnconstrainedTestProblem
size_t d
 number of parameters More...
 
base::DataVector displacement
 displacement vector More...
 

Additional Inherited Members

- Static Public Attributes inherited from sgpp::optimization::test_problems::UnconstrainedTestProblem
static constexpr double DEFAULT_STANDARD_DEVIATION = 0.01
 default standard deviation for the displacement vector More...
 
- Protected Member Functions inherited from sgpp::optimization::test_problems::UnconstrainedTestProblem
virtual bool isDisplacementFeasible ()
 Checks if the current displacement is ok for the specific objective function. More...
 

Detailed Description

Himmelblau unconstrained test problem.

  • Number of parameters: 2
  • Domain: \(\bar{\vec{x}} \in [-5, 5]^2\)
  • Optimal point: \(\bar{\vec{x}}_{\text{opt}} \in \{(3, 2), (-2.805118, 3.131313), (-3.779310, -3.283186), (3.584428, -1.848127)\}\)
  • Optimal function value: \(\bar{f}(\bar{\vec{x}}_{\text{opt}}) = 0\)

Constructor & Destructor Documentation

sgpp::optimization::test_problems::Himmelblau::Himmelblau ( )

Constructor.

sgpp::optimization::test_problems::Himmelblau::~Himmelblau ( )
override

Destructor.

Member Function Documentation

TestScalarFunction & sgpp::optimization::test_problems::Himmelblau::getObjectiveFunction ( )
overridevirtual
Returns
objective function of the test problem

Implements sgpp::optimization::test_problems::UnconstrainedTestProblem.

References f.

double sgpp::optimization::test_problems::Himmelblau::getOptimalPointUndisplaced ( base::DataVector x)
overridevirtual
Parameters
[out]xminimal point \(\vec{x}_\opt \in [0, 1]^d\)
Returns
minimal function value \(f(\vec{x}_\opt)\)

Implements sgpp::optimization::test_problems::UnconstrainedTestProblem.

Member Data Documentation

HimmelblauObjective sgpp::optimization::test_problems::Himmelblau::f
protected

objective function

Referenced by getObjectiveFunction().


The documentation for this class was generated from the following files: