SiMoLib.NET API V3.0.1.1
Loading...
Searching...
No Matches
SiMoPO.GA.IGeneticAlgorithms Interface Reference

Interface to a single evolutionary and genetic algorithms thread. More...

+ Inheritance diagram for SiMoPO.GA.IGeneticAlgorithms:

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, int PopulationSize, int MaxGenerations, double CrossoverProbability, double MutationProbability, IStoppingCriteria StopCriteria)
 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.
 
int StartRaw101 (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, int PopulationSize, int MaxGenerations, double CrossoverProbability, double MutationProbability, IStoppingCriteria StopCriteria)
 Starts a direct Stacker 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 PopulationSize [get, set]
 To set the population size, this is the number of individuals used for an optimization run.
 
int MaxGenerations [get, set]
 To set the maximal number of generations to be used before an optimization run stops.
 
double CrossoverProbability [get, set]
 This is the rate with which crossover between individuals occurs during propagation.
 
double MutationProbability [get, set]
 This is rate with which mutation of an individual occurs during propagation.
 
double RandomPopulationRatio [get, set]
 To set the ratio of random seeds with reference to the PopulationSize.
 
IStoppingCriteria StoppingCriteria [get]
 Stopping criteria for the genetic algorithm.
 
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.
 

Detailed Description

Interface to a single evolutionary and genetic algorithms thread.

Member Function Documentation

◆ StartRaw()

int SiMoPO.GA.IGeneticAlgorithms.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,
int PopulationSize,
int MaxGenerations,
double CrossoverProbability,
double MutationProbability,
IStoppingCriteria StopCriteria )

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.

◆ StartRaw101()

int SiMoPO.GA.IGeneticAlgorithms.StartRaw101 ( 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,
int PopulationSize,
int MaxGenerations,
double CrossoverProbability,
double MutationProbability,
IStoppingCriteria StopCriteria )

Starts a direct Stacker 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.

Property Documentation

◆ CrossoverProbability

double SiMoPO.GA.IGeneticAlgorithms.CrossoverProbability
getset

This is the rate with which crossover between individuals occurs during propagation.

Limits [0.0, 1.0], default value is 0.9

◆ LicenseKeyStacker

string SiMoPO.GA.IGeneticAlgorithms.LicenseKeyStacker
getset

To input a Stacker Developer or Stacker Developer Deploy license string, when read the hardware or software license is stated.

◆ MaxGenerations

int SiMoPO.GA.IGeneticAlgorithms.MaxGenerations
getset

To set the maximal number of generations to be used before an optimization run stops.

Default value is 120

◆ MutationProbability

double SiMoPO.GA.IGeneticAlgorithms.MutationProbability
getset

This is rate with which mutation of an individual occurs during propagation.

Limits [0.0, 1.0], default value is 0.1

◆ PopulationSize

int SiMoPO.GA.IGeneticAlgorithms.PopulationSize
getset

To set the population size, this is the number of individuals used for an optimization run.

Default value is 100

◆ RandomPopulationRatio

double SiMoPO.GA.IGeneticAlgorithms.RandomPopulationRatio
getset

To set the ratio of random seeds with reference to the PopulationSize.

Limits [0.0, 1.0], default value is 0.99, this means as a rule that only for one individual the OptiPara values are used as seed

◆ StoppingCriteria

IStoppingCriteria SiMoPO.GA.IGeneticAlgorithms.StoppingCriteria
get

Stopping criteria for the genetic algorithm.