hops
Public Member Functions | List of all members
hops::Rosenbrock Class Reference

multi-dimensional extension of rosenbrock function to N dimensions. Only defined on spaces of even N! More...

#include <Rosenbrock.hpp>

Inheritance diagram for hops::Rosenbrock:
Inheritance graph
Collaboration diagram for hops::Rosenbrock:
Collaboration graph

Public Member Functions

 Rosenbrock (double scaleParameter, VectorType shiftParameter)
 
MatrixType::Scalar computeNegativeLogLikelihood (const VectorType &x) const override
 Evaluates the negative log likelihood for input x. More...
 
MatrixType computeHessian (const VectorType &x) const
 
std::optional< VectorTypecomputeLogLikelihoodGradient (const VectorType &x) const override
 
std::optional< MatrixTypecomputeExpectedFisherInformation (const VectorType &x) const override
 Actually this computes the softmax of the hessian instead of the the expected fisher information is intractable for this model. More...
 
- Public Member Functions inherited from hops::Model
virtual ~Model ()=default
 
virtual std::optional< std::vector< std::string > > getParameterNames () const
 

Detailed Description

multi-dimensional extension of rosenbrock function to N dimensions. Only defined on spaces of even N!

Reference: https://doi.org/10.1162/evco.2009.17.3.437
Definition: \( f(x_1, x_2,..., x_N) = \sum_{i=1}^{N/2} [s_i \cdot (x^2_{2i-1}-x_{2i})^2 + (x_{2i-1} -a_i)^2] \)
where \( \boldsymbol{a} \) is the shiftParameter and \( \boldsymbol{s} \) is the scaleParameter in the Constructor. Both vectors have dimensions ( \( \frac{N}{2} \)).

Constructor & Destructor Documentation

◆ Rosenbrock()

hops::Rosenbrock::Rosenbrock ( double  scaleParameter,
VectorType  shiftParameter 
)

@Brief shiftParameter has half the dimensions of the state vector

Parameters
scaleParameter
shiftParameter

Member Function Documentation

◆ computeExpectedFisherInformation()

std::optional< MatrixType > hops::Rosenbrock::computeExpectedFisherInformation ( const VectorType x) const
overridevirtual

Actually this computes the softmax of the hessian instead of the the expected fisher information is intractable for this model.

See 10.1007/978-3-642-40020-9_35

Returns

Reimplemented from hops::Model.

◆ computeHessian()

MatrixType hops::Rosenbrock::computeHessian ( const VectorType x) const

◆ computeLogLikelihoodGradient()

std::optional< VectorType > hops::Rosenbrock::computeLogLikelihoodGradient ( const VectorType x) const
overridevirtual

Reimplemented from hops::Model.

◆ computeNegativeLogLikelihood()

MatrixType::Scalar hops::Rosenbrock::computeNegativeLogLikelihood ( const VectorType x) const
overridevirtual

Evaluates the negative log likelihood for input x.

Parameters
x
Returns

Implements hops::Model.


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