numerical-collection-cpp 0.10.0
A collection of algorithms in numerical analysis implemented in C++
Loading...
Searching...
No Matches
num_prob_collect::opt::shekel_function Class Reference

Class of Shekel function in 4 dimensions. More...

#include <num_prob_collect/opt/shekel_function.h>

+ Collaboration diagram for num_prob_collect::opt::shekel_function:

Public Types

using value_type = double
 Type of function values.
 
using variable_type = Eigen::Vector4d
 Type of variables.
 

Public Member Functions

 shekel_function (int m)
 Constructor.
 
void evaluate_on (const Eigen::Vector4d &x)
 Evaluate function value on variable.
 
auto value () const -> const double &
 Get function value.
 

Private Attributes

Eigen::Matrix< double, 10, 1 > beta_ {}
 Offset in the function.
 
Eigen::Matrix< double, 4, 10 > c_ {}
 Centers in the function.
 
int m_
 Number of terms.
 
double value_ {}
 Function value.
 

Detailed Description

Class of Shekel function in 4 dimensions.

This function has m local minimum and the global one at (4, 4, 4, 4). Search region is [0, 10] for each dimension.

Reference: https://www.sfu.ca/~ssurjano/shekel.html

Definition at line 34 of file shekel_function.h.

Member Typedef Documentation

◆ value_type

Type of function values.

Definition at line 40 of file shekel_function.h.

◆ variable_type

Type of variables.

Definition at line 37 of file shekel_function.h.

Constructor & Destructor Documentation

◆ shekel_function()

num_prob_collect::opt::shekel_function::shekel_function ( int m)
inlineexplicit

Constructor.

Parameters
[in]mNumber of terms.

Definition at line 47 of file shekel_function.h.

Member Function Documentation

◆ evaluate_on()

void num_prob_collect::opt::shekel_function::evaluate_on ( const Eigen::Vector4d & x)
inline

Evaluate function value on variable.

Parameters
[in]xVariable.

Definition at line 65 of file shekel_function.h.

◆ value()

auto num_prob_collect::opt::shekel_function::value ( ) const -> const double&
inlinenodiscard

Get function value.

Returns
Function value.

Definition at line 77 of file shekel_function.h.

Member Data Documentation

◆ beta_

Eigen::Matrix<double, 10, 1> num_prob_collect::opt::shekel_function::beta_ {}
private

Offset in the function.

Definition at line 84 of file shekel_function.h.

◆ c_

Eigen::Matrix<double, 4, 10> num_prob_collect::opt::shekel_function::c_ {}
private

Centers in the function.

Definition at line 87 of file shekel_function.h.

◆ m_

int num_prob_collect::opt::shekel_function::m_
private

Number of terms.

Definition at line 81 of file shekel_function.h.

◆ value_

double num_prob_collect::opt::shekel_function::value_ {}
private

Function value.

Definition at line 90 of file shekel_function.h.


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