C# Class MingStar.SimUniversity.AI.Learning.NelderMeadSimplex

Datei anzeigen Open project: MingStar/SimUniversity

Public Methods

Method Description
Regress ( SimplexConstant simplexConstants, double convergenceTolerance, int maxEvaluations, ObjectiveFunctionDelegate objectiveFunction ) : RegressionResult

Private Methods

Method Description
_computeCentroid ( Vector vertices, ErrorProfile errorProfile ) : Vector

Compute the centroid of all points except the worst

_evaluateSimplex ( double errorValues ) : ErrorProfile

Examine all error values to determine the ErrorProfile

_hasConverged ( double convergenceTolerance, ErrorProfile errorProfile, double errorValues ) : bool

Check whether the points in the error profile have so little range that we consider ourselves to have converged

_initializeErrorValues ( Vector vertices, ObjectiveFunctionDelegate objectiveFunction ) : double[]

Evaluate the objective function at each vertex to create a corresponding list of error values for each vertex

_initializeVertices ( SimplexConstant simplexConstants ) : MingStar.SimUniversity.AI.Learning.Vector[]

Construct an initial simplex, given starting guesses for the constants, and initial step sizes for each dimension

_shrinkSimplex ( ErrorProfile errorProfile, Vector vertices, double errorValues, ObjectiveFunctionDelegate objectiveFunction ) : void

Contract the simplex uniformly around the lowest point

_tryToScaleSimplex ( double scaleFactor, ErrorProfile &errorProfile, Vector vertices, double errorValues, ObjectiveFunctionDelegate objectiveFunction ) : double

Test a scaling operation of the high point, and replace it if it is an improvement

Method Details

Regress() public static method

public static Regress ( SimplexConstant simplexConstants, double convergenceTolerance, int maxEvaluations, ObjectiveFunctionDelegate objectiveFunction ) : RegressionResult
simplexConstants SimplexConstant
convergenceTolerance double
maxEvaluations int
objectiveFunction ObjectiveFunctionDelegate
return RegressionResult