Click or drag to resize

CrossEntropy Class

This class implements the noisy cross entropy method as described in the following article. Christophe Thiery, Bruno Scherrer.Improvements on Learning Tetris with Cross Entropy. International Computer Games Association Journal, ICGA, 2009, 32. The algorithm aims to minimize an objective function through stochastic search. It works iteratively until a certain stopping criteria is met. At each iteration, it samples a number of vectors from a Gaussian distribution and evaluates each of these against the supplied objective function. Based on the return value from the objective function, a subset of the the best ranked vectors are chosen to update the search parameters of the next generation. The mean of the Gaussian distribution is set to the centroid of the best ranked vectors, and the variance is set to the variance of the best ranked vectors in each individual dimension.
Inheritance Hierarchy
SystemObject
  FinMath.MachineLearning.EvolutionaryAlgorithmsBaseOptimizer
    FinMath.MachineLearning.EvolutionaryAlgorithmsCrossEntropy

Namespace:  FinMath.MachineLearning.EvolutionaryAlgorithms
Assembly:  FinMath (in FinMath.dll) Version: 2.4.7-0a995bd0ea1854c2c868ec3f8dae606c5777e170
Syntax
C#
public class CrossEntropy : BaseOptimizer

The CrossEntropy type exposes the following members.

Constructors
  NameDescription
Public methodCrossEntropy
Initializes a new instance of the CrossEntropy class
Top
Properties
  NameDescription
Public propertyInitialVariance
The start point initial variance. The elements number must equals to the start point dimension. By default the initial variance on each dimension is set to 100.
Public propertyMinimizationSteps
Overall minimization steps number.
(Inherited from BaseOptimizer.)
Public propertyParallelize
Use multiple threads to find objective function minimum.
Public propertyPopulationSize
The population size (number of function estimations on one step).
Public propertyRestartCount
The minimization process restarts number.
(Inherited from BaseOptimizer.)
Public propertySelectionSize
The selection size (the number of points from population, selected to create new step).
Public propertySolutionPoint
The best found solution point.
(Inherited from BaseOptimizer.)
Public propertySolutionStep
The step number where the best solution found.
(Inherited from BaseOptimizer.)
Public propertySolutionValue
The best found objective function value.
(Inherited from BaseOptimizer.)
Public propertyTerminationDelegate
The user's stop criterion function.
(Inherited from BaseOptimizer.)
Public propertyTerminationIterations
The maximum optimization iterations number.
(Inherited from BaseOptimizer.)
Public propertyTerminationObjectiveChange
Objective function change stop criterion. Null means no objective change termination conditions.
(Inherited from BaseOptimizer.)
Public propertyTerminationTimeout
The algorithm timeout: the execution will be interrupted on the next step after the timeout expiration.
(Inherited from BaseOptimizer.)
Top
Methods
  NameDescription
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodOptimize
Minimization method.
(Overrides BaseOptimizerOptimize(BaseOptimizerObjectiveDelegateType, Vector).)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
See Also