NeuralEngine
A Game Engine with embeded Machine Learning algorithms based on Gaussian Processes.
NeuralEngine::MachineLearning::IOptimizationMethod< Scalar > Class Template Referenceabstract

Common interface for function optimization methods. More...

#include <IOptimizationMethod.h>

Inheritance diagram for NeuralEngine::MachineLearning::IOptimizationMethod< Scalar >:

Public Member Functions

virtual int GetNumberOfVariables ()=0
 Gets the number of variables (free parameters) in the optimization problem. More...
 
virtual af::array GetSolution ()=0
 Gets the current solution found, the values of the parameters which optimizes the function. More...
 
virtual void SetSolution (af::array &x)=0
 Gets a solution. More...
 
virtual Scalar GetValue ()=0
 Gets the output of the function at the current Solution. More...
 
virtual bool Minimize (int *cycle=nullptr)=0
 Finds the minimum value of a function. The solution vector will be made available at the Solution property. More...
 
virtual bool Maximize (int *cycle=nullptr)=0
 Finds the maximum value of a function. The solution vector will be made available at the Solution property. More...
 

Detailed Description

template<typename Scalar>
class NeuralEngine::MachineLearning::IOptimizationMethod< Scalar >

Common interface for function optimization methods.

Hmetal T, 16.03.2017.

See also
BoundedBroydenFletcherGoldfarbShanno, BroydenFletcherGoldfarbShanno, ConjugateGradient, ResilientBackpropagation, GoldfarbIdnani

Definition at line 42 of file IOptimizationMethod.h.

Constructor & Destructor Documentation

◆ ~IOptimizationMethod()

Definition at line 121 of file IOptimizationMethod.h.

Member Function Documentation

◆ GetNumberOfVariables()

template<typename Scalar >
virtual int NeuralEngine::MachineLearning::IOptimizationMethod< Scalar >::GetNumberOfVariables ( )
pure virtual

Gets the number of variables (free parameters) in the optimization problem.

Hmetal T, 16.03.2017.

Returns
The number of parameters.

Implemented in NeuralEngine::MachineLearning::BaseOptimizationMethod< Scalar >.

◆ GetSolution()

template<typename Scalar >
virtual af::array NeuralEngine::MachineLearning::IOptimizationMethod< Scalar >::GetSolution ( )
pure virtual

Gets the current solution found, the values of the parameters which optimizes the function.

Hmetal T, 16.03.2017.

Returns
An af::array.

Implemented in NeuralEngine::MachineLearning::BaseOptimizationMethod< Scalar >.

◆ SetSolution()

template<typename Scalar >
virtual void NeuralEngine::MachineLearning::IOptimizationMethod< Scalar >::SetSolution ( af::array &  x)
pure virtual

Gets a solution.

Hmetal T, 16.03.2017.

Parameters
parameter1The first parameter.

Implemented in NeuralEngine::MachineLearning::BaseOptimizationMethod< Scalar >.

◆ GetValue()

template<typename Scalar >
virtual Scalar NeuralEngine::MachineLearning::IOptimizationMethod< Scalar >::GetValue ( )
pure virtual

Gets the output of the function at the current Solution.

Hmetal T, 16.03.2017.

Returns
A double.

Implemented in NeuralEngine::MachineLearning::BaseOptimizationMethod< Scalar >.

◆ Minimize()

template<typename Scalar >
virtual bool NeuralEngine::MachineLearning::IOptimizationMethod< Scalar >::Minimize ( int cycle = nullptr)
pure virtual

Finds the minimum value of a function. The solution vector will be made available at the Solution property.

Hmetal T, 16.03.2017.

Returns
Returns true if the method converged to a Solution. In this case, the found value will also be available at the Value property.

Implemented in NeuralEngine::MachineLearning::BaseOptimizationMethod< Scalar >.

◆ Maximize()

template<typename Scalar >
virtual bool NeuralEngine::MachineLearning::IOptimizationMethod< Scalar >::Maximize ( int cycle = nullptr)
pure virtual

Finds the maximum value of a function. The solution vector will be made available at the Solution property.

Hmetal T, 16.03.2017.

Returns
Returns true if the method converged to a Solution. In this case, the found value will also be available at the Value property.

Implemented in NeuralEngine::MachineLearning::BaseOptimizationMethod< Scalar >.


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