SG++-Doxygen-Documentation
sgpp::optimization::test_problems::G03 Class Reference

G03 constrained test problem. More...

#include <G03.hpp>

Inheritance diagram for sgpp::optimization::test_problems::G03:
sgpp::optimization::test_problems::ConstrainedTestProblem

Public Member Functions

 G03 (size_t d)
 Constructor. More...
 
TestVectorFunctiongetEqualityConstraintFunction () override
 
TestVectorFunctiongetInequalityConstraintFunction () override
 
TestScalarFunctiongetObjectiveFunction () override
 
double getOptimalPointUndisplaced (base::DataVector &x) override
 
 ~G03 () override
 Destructor. More...
 
- Public Member Functions inherited from sgpp::optimization::test_problems::ConstrainedTestProblem
 ConstrainedTestProblem (size_t d)
 Constructor. More...
 
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)
 Returns the displacement vector. More...
 
virtual ~ConstrainedTestProblem ()
 Destructor. More...
 

Protected Attributes

G03Objective f
 objective function More...
 
G03InequalityConstraint g
 inequality constraint function More...
 
G03EqualityConstraint h
 equality constraint function More...
 
- Protected Attributes inherited from sgpp::optimization::test_problems::ConstrainedTestProblem
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::ConstrainedTestProblem
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::ConstrainedTestProblem
virtual bool isDisplacementFeasible ()
 Checks if the current displacement is ok for the specific objective function. More...
 

Detailed Description

G03 constrained test problem.

  • Number of parameters: \(d\)
  • Number of inequality constraints: 0
  • Number of equality constraints: 1
  • Domain: \(\bar{\vec{x}} \in [0, 1]^d\)
  • Optimal point: \(\bar{\vec{x}}_{\text{opt}} = d^{-1/2} \cdot \vec{1}\)
  • Optimal function value: \(\bar{f}(\bar{\vec{x}}_{\text{opt}}) = -d^{-d/2}\)

Constructor & Destructor Documentation

◆ G03()

sgpp::optimization::test_problems::G03::G03 ( size_t  d)
explicit

Constructor.

Parameters
dnumber of parameters

◆ ~G03()

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

Destructor.

Member Function Documentation

◆ getEqualityConstraintFunction()

TestVectorFunction & sgpp::optimization::test_problems::G03::getEqualityConstraintFunction ( )
overridevirtual
Returns
equality constraint function of the test problem

Implements sgpp::optimization::test_problems::ConstrainedTestProblem.

References h.

◆ getInequalityConstraintFunction()

TestVectorFunction & sgpp::optimization::test_problems::G03::getInequalityConstraintFunction ( )
overridevirtual
Returns
inequality function of the test problem

Implements sgpp::optimization::test_problems::ConstrainedTestProblem.

References g.

◆ getObjectiveFunction()

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

Implements sgpp::optimization::test_problems::ConstrainedTestProblem.

References f.

◆ getOptimalPointUndisplaced()

double sgpp::optimization::test_problems::G03::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::ConstrainedTestProblem.

References sgpp::optimization::test_problems::ConstrainedTestProblem::d, sgpp::combigrid::pow(), and sgpp::base::DataVector::setAll().

Member Data Documentation

◆ f

G03Objective sgpp::optimization::test_problems::G03::f
protected

objective function

Referenced by getObjectiveFunction().

◆ g

G03InequalityConstraint sgpp::optimization::test_problems::G03::g
protected

inequality constraint function

Referenced by getInequalityConstraintFunction().

◆ h

G03EqualityConstraint sgpp::optimization::test_problems::G03::h
protected

equality constraint function

Referenced by getEqualityConstraintFunction().


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