WoodFunction Class Reference

The Wood function, defined by f(x) = f1(x) + f2(x) + f3(x) + f4(x) + f5(x) + f6(x) f1(x) = 100 (x2 - x1^2)^2 f2(x) = (1 - x1)^2 f3(x) = 90 (x4 - x3^2)^2 f4(x) = (1 - x3)^2 f5(x) = 10 (x2 + x4 - 2)^2 f6(x) = (1 / 10) (x2 - x4)^2 x_0 = [-3, -1, -3, -1]. More...

Public Member Functions

 WoodFunction ()
 Initialize the WoodFunction. More...

 
double Evaluate (const arma::mat &coordinates, const size_t begin, const size_t batchSize) const
 
double Evaluate (const arma::mat &coordinates) const
 
arma::mat GetInitialPoint () const
 Get the starting point. More...

 
void Gradient (const arma::mat &coordinates, const size_t begin, arma::mat &gradient, const size_t batchSize) const
 
void Gradient (const arma::mat &coordinates, arma::mat &gradient) const
 
size_t NumFunctions () const
 Return 1 (the number of functions). More...

 
void Shuffle ()
 Shuffle the order of function visitation. More...

 

Detailed Description

The Wood function, defined by f(x) = f1(x) + f2(x) + f3(x) + f4(x) + f5(x) + f6(x) f1(x) = 100 (x2 - x1^2)^2 f2(x) = (1 - x1)^2 f3(x) = 90 (x4 - x3^2)^2 f4(x) = (1 - x3)^2 f5(x) = 10 (x2 + x4 - 2)^2 f6(x) = (1 / 10) (x2 - x4)^2 x_0 = [-3, -1, -3, -1].

This should optimize to f(x) = 0, at x = [1, 1, 1, 1].

For more information, please refer to:

@article{Grippo1989,
title = {A truncated Newton method with nonmonotone line search for
unconstrained optimization},
author = {Grippo, L. and Lampariello, F. and Lucidi, S.},
journal = {Journal of Optimization Theory and Applications},
year = {1989},
volume = {60},
number = {3},
pages = {401--419},
}

Definition at line 50 of file wood_function.hpp.

Constructor & Destructor Documentation

◆ WoodFunction()

Initialize the WoodFunction.

Member Function Documentation

◆ Evaluate() [1/2]

double Evaluate ( const arma::mat &  coordinates,
const size_t  begin,
const size_t  batchSize 
) const

◆ Evaluate() [2/2]

double Evaluate ( const arma::mat &  coordinates) const

◆ GetInitialPoint()

arma::mat GetInitialPoint ( ) const
inline

Get the starting point.

Definition at line 66 of file wood_function.hpp.

References WoodFunction::Evaluate(), and WoodFunction::Gradient().

◆ Gradient() [1/2]

void Gradient ( const arma::mat &  coordinates,
const size_t  begin,
arma::mat &  gradient,
const size_t  batchSize 
) const

◆ Gradient() [2/2]

void Gradient ( const arma::mat &  coordinates,
arma::mat &  gradient 
) const

◆ NumFunctions()

size_t NumFunctions ( ) const
inline

Return 1 (the number of functions).

Definition at line 63 of file wood_function.hpp.

◆ Shuffle()

void Shuffle ( )

Shuffle the order of function visitation.

This may be called by the optimizer.


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