|
SiMoLib.NET API V4.0.0.1
|
Interface to a single hill climbing algorithms thread. More...
Public Member Functions | |
| int | StartRaw (ref byte Maximization, ref int Dimension, double[] OptiPara, double[] OptiParaMin, double[] OptiParaMax, double[] OptiParaStep, byte[] OptiParaIsInvolved, byte[] OptiParaMaxIterate, double[] OptiParaOptimum, byte[] RandomizeStartParam, ref byte InfeasibleSolution, ref byte BreakOptimization, ref byte HaltOptimization, TargetFunctionCallRaw TargetFunctionRaw, SearchTypes SearchType, int RandomPopulationSize) |
| Starts a direct optimization run without using properties, these have to be given then as parameters in the funtion call, the return values are OK = 0, OPTI_ERROR_NOT_LICENSED = -1, OPTI_ERROR_TARGET_FUNCTION_NULL = -2, OPTI_ERROR_DIMENSION_OVERSIZED = -3, OPTI_ERROR_IS_RUNNING = -4, OPTI_ERROR_NO_FEASIBLE_SOLUTION = -5, OPTI_ERROR_EXCEPTION = -100 or OPTI_ERROR_ARITHMETICEXCEPTION = -101. | |
| Public Member Functions inherited from SiMoPO.IParameterOptimization | |
| int | Start () |
| To trigger an optimization run, the return values are OK = 0, OPTI_ERROR_NOT_LICENSED = -1, OPTI_ERROR_TARGET_FUNCTION_NULL = -2, OPTI_ERROR_DIMENSION_OVERSIZED = -3, OPTI_ERROR_IS_RUNNING = -4, OPTI_ERROR_NO_FEASIBLE_SOLUTION = -5, OPTI_ERROR_EXCEPTION = -100 or OPTI_ERROR_ARITHMETICEXCEPTION = -101. | |
Properties | |
| int | RandomPopulationSize [get, set] |
| To set the the number of random seeds for one optimization run. | |
| int | RandomPopulationCounter [get] |
| To get the actual population number of random seeds the optimization run is working on, this can be used to trigger events during the optimization run, e.g. to update a user interface. | |
| byte[] | RandomizeStartParam [get] |
| If the RandomPopulationSize is greater than zero, this property can be used to explicitely select which parameter should be randomized in order to find a feasible solution. | |
| byte[] | OptiParaStepAdaptiveMode [get] |
| If set to 0 the adaptive step size control is done linear, if set to 1 exponential, linear step size control makes sense with integer parameters representing options, exponential step size control is advised with double parameters. | |
| double[] | OptiParaStepAdaptiveBase [get] |
| The base value when OptiParaStepAdaptiveMode is set to exponential. | |
| int[] | OptiParaStepAdaptiveAutoScaling [get] |
| If not set to zero the adaptive step size control is activated starting with OptiParaStep around the value of Parameter Range / OptiParaStepAdaptiveAutoScaling, OptiParaStepAdaptive and OptiParaStepAdaptiveDecrease are calculated automatically then. | |
| int[] | OptiParaStepAdaptive [get] |
| If not set to zero the adaptive step size control is activated starting with OptiParaStep = OptiParaStep * OptiParaStepAdaptiveBase^OptiParaStepAdaptive when OptiParaStepAdaptiveMode is set to exponential, with OptiParaStep = OptiParaStep * OptiParaStepAdaptive if set to linear. | |
| int[] | OptiParaStepAdaptiveDecrease [get] |
| Describes the decrease of the adaptive OptiParaStep, i.e. if set to OptiParaStepAdaptive then the final OptiParaStep is reached after one iteration. | |
| byte[] | OptiParaMaxIterate [get] |
| If TRUE the SimpleCoordinateSearch moves over the whole parameter range, this can be useful without adaptive step size control and integer parameters representing options. | |
| SearchTypes | SearchType [get, set] |
| To set the search type. | |
| string | LicenseKeyStacker [get, set] |
| To input a Stacker Developer or Stacker Developer Deploy license string, when read the hardware or software license is stated. | |
| Properties inherited from SiMoPO.IParameterOptimization | |
| byte | Maximization [get, set] |
| If TRUE the search goes for a maximum of the target function, if FALSE for a minimum. | |
| int | Dimension [get, set] |
| Number of parameters to be optimized. | |
| int | Id [get, set] |
| Id of the PO algorithm to be used with parallel computing. | |
| double[] | OptiPara [get] |
| Start parameters and runtime values of the parameters. | |
| double[] | OptiParaMin [get] |
| Minimal allowed values for the parameters. | |
| double[] | OptiParaMax [get] |
| Maximal allowed values for the parameters. | |
| double[] | OptiParaStep [get] |
| Step width for the parameters (until now only used by Simple Hill Climbing). | |
| byte[] | OptiParaIsInvolved [get] |
| If FALSE this parameter is not taken into optimization. | |
| double[] | OptiParaOptimum [get] |
| Optimal values of the parameters after an optimization run. | |
| double | Optimum [get] |
| Target function value after an optimization run. | |
| byte | InfeasibleSolution [get, set] |
| If hill climbing parameters are set to RandomizeStartParam and hill climbing property RandomPopulationSize is greater than zero the target function must set this flag if the solution is infeasible (and reset if feasible), with genetic algorithms this parameter has no meaning yet. | |
| byte | BreakOptimization [get, set] |
| To break an optimization run. | |
| byte | HaltOptimization [get, set] |
| To halt an optimization run, as a handshake the optimization sets BreakOptimization, which has to be reset by the user. | |
| string | LicenseKey [get, set] |
| To input a Developer or Developer Deploy license string, when read the hardware or software license is stated. | |
| TargetFunctionCall | TargetFunction [get, set] |
| The target funtion is the function to be searched for an optimum according the parameters. | |
| byte | IsRunning [get] |
| Signals the user that an optimization run is in progress. | |
Interface to a single hill climbing algorithms thread.
| int SiMoPO.HC.IHillClimbingAlgorithms.StartRaw | ( | ref byte | Maximization, |
| ref int | Dimension, | ||
| double[] | OptiPara, | ||
| double[] | OptiParaMin, | ||
| double[] | OptiParaMax, | ||
| double[] | OptiParaStep, | ||
| byte[] | OptiParaIsInvolved, | ||
| byte[] | OptiParaMaxIterate, | ||
| double[] | OptiParaOptimum, | ||
| byte[] | RandomizeStartParam, | ||
| ref byte | InfeasibleSolution, | ||
| ref byte | BreakOptimization, | ||
| ref byte | HaltOptimization, | ||
| TargetFunctionCallRaw | TargetFunctionRaw, | ||
| SearchTypes | SearchType, | ||
| int | RandomPopulationSize ) |
Starts a direct optimization run without using properties, these have to be given then as parameters in the funtion call, the return values are OK = 0, OPTI_ERROR_NOT_LICENSED = -1, OPTI_ERROR_TARGET_FUNCTION_NULL = -2, OPTI_ERROR_DIMENSION_OVERSIZED = -3, OPTI_ERROR_IS_RUNNING = -4, OPTI_ERROR_NO_FEASIBLE_SOLUTION = -5, OPTI_ERROR_EXCEPTION = -100 or OPTI_ERROR_ARITHMETICEXCEPTION = -101.
References SiMoPO.IParameterOptimization.BreakOptimization, SiMoPO.IParameterOptimization.Dimension, SiMoPO.IParameterOptimization.HaltOptimization, SiMoPO.IParameterOptimization.InfeasibleSolution, SiMoPO.IParameterOptimization.Maximization, SiMoPO.IParameterOptimization.OptiPara, SiMoPO.IParameterOptimization.OptiParaIsInvolved, SiMoPO.IParameterOptimization.OptiParaMax, OptiParaMaxIterate, SiMoPO.IParameterOptimization.OptiParaMin, SiMoPO.IParameterOptimization.OptiParaOptimum, SiMoPO.IParameterOptimization.OptiParaStep, RandomizeStartParam, RandomPopulationSize, and SearchType.
|
getset |
To input a Stacker Developer or Stacker Developer Deploy license string, when read the hardware or software license is stated.
|
get |
If TRUE the SimpleCoordinateSearch moves over the whole parameter range, this can be useful without adaptive step size control and integer parameters representing options.
Default values are FALSE
Referenced by StartRaw().
|
get |
If not set to zero the adaptive step size control is activated starting with OptiParaStep = OptiParaStep * OptiParaStepAdaptiveBase^OptiParaStepAdaptive when OptiParaStepAdaptiveMode is set to exponential, with OptiParaStep = OptiParaStep * OptiParaStepAdaptive if set to linear.
Default values are 0
|
get |
If not set to zero the adaptive step size control is activated starting with OptiParaStep around the value of Parameter Range / OptiParaStepAdaptiveAutoScaling, OptiParaStepAdaptive and OptiParaStepAdaptiveDecrease are calculated automatically then.
Default values are 0
|
get |
The base value when OptiParaStepAdaptiveMode is set to exponential.
Default values are 2.0
|
get |
Describes the decrease of the adaptive OptiParaStep, i.e. if set to OptiParaStepAdaptive then the final OptiParaStep is reached after one iteration.
Default values are 1
|
get |
If set to 0 the adaptive step size control is done linear, if set to 1 exponential, linear step size control makes sense with integer parameters representing options, exponential step size control is advised with double parameters.
Default values are 1
|
get |
If the RandomPopulationSize is greater than zero, this property can be used to explicitely select which parameter should be randomized in order to find a feasible solution.
Default values are FALSE
Referenced by StartRaw().
|
get |
To get the actual population number of random seeds the optimization run is working on, this can be used to trigger events during the optimization run, e.g. to update a user interface.
Default value is 0
|
getset |
To set the the number of random seeds for one optimization run.
Default value is 0, this means the OptiPara values are used as only seed
Referenced by StartRaw().
|
getset |