C# Class SwarmOps.Optimizers.DESuite

Differential Evolution (DE) optimizer originally due to Storner and Price (1). This suite offers combinations of DE variants and various perturbation schemes for its behavioural parameters. Note that this has complicated the implementation somewhat.
References: (1) R. Storn and K. Price. Differential evolution - a simple and efficient heuristic for global optimization over continuous spaces. Journal of Global Optimization, 11:341-359, 1997.
Inheritance: Optimizer
Afficher le fichier Open project: DanWBR/dwsim3

Protected Properties

Свойство Type Description
_crossover DECrossover.Variant
_dither DitherVariant

Méthodes publiques

Méthode Description
DESuite ( DECrossover crossover, DitherVariant dither ) : System.Diagnostics

Construct the object.

DESuite ( Problem problem, DECrossover crossover, DitherVariant dither ) : System.Diagnostics

Construct the object.

GetCR ( double parameters ) : double

Get parameter, CR, aka. crossover probability.

GetF ( double parameters ) : double

Get parameter, F, aka. differential weight.

GetFMid ( double parameters ) : double

Get parameter, FMid, aka. differential weight dithering midpoint.

GetFRange ( double parameters ) : double

Get parameter, FRange, aka. differential weight dithering range.

GetNumAgents ( double parameters ) : int

Get parameter, Number of agents, aka. population size.

Optimize ( double parameters ) : Result

Perform one optimization run and return the best found solution.

Méthodes protégées

Méthode Description
SetVariant ( DECrossover crossover, DitherVariant dither ) : void

Set DE operator variants to be used, and determine the number of behavioural parameters associated with that variant.

Method Details

DESuite() public méthode

Construct the object.
public DESuite ( DECrossover crossover, DitherVariant dither ) : System.Diagnostics
crossover DECrossover Crossover variant to be used.
dither DitherVariant Dither variant to be used.
Résultat System.Diagnostics

DESuite() public méthode

Construct the object.
public DESuite ( Problem problem, DECrossover crossover, DitherVariant dither ) : System.Diagnostics
problem Problem Problem to optimize.
crossover DECrossover Crossover variant to be used.
dither DitherVariant Dither variant to be used.
Résultat System.Diagnostics

GetCR() public méthode

Get parameter, CR, aka. crossover probability.
public GetCR ( double parameters ) : double
parameters double Optimizer parameters.
Résultat double

GetF() public méthode

Get parameter, F, aka. differential weight.
public GetF ( double parameters ) : double
parameters double Optimizer parameters.
Résultat double

GetFMid() public méthode

Get parameter, FMid, aka. differential weight dithering midpoint.
public GetFMid ( double parameters ) : double
parameters double Optimizer parameters.
Résultat double

GetFRange() public méthode

Get parameter, FRange, aka. differential weight dithering range.
public GetFRange ( double parameters ) : double
parameters double Optimizer parameters.
Résultat double

GetNumAgents() public méthode

Get parameter, Number of agents, aka. population size.
public GetNumAgents ( double parameters ) : int
parameters double Optimizer parameters.
Résultat int

Optimize() public méthode

Perform one optimization run and return the best found solution.
public Optimize ( double parameters ) : Result
parameters double Control parameters for the optimizer.
Résultat Result

SetVariant() protected méthode

Set DE operator variants to be used, and determine the number of behavioural parameters associated with that variant.
protected SetVariant ( DECrossover crossover, DitherVariant dither ) : void
crossover DECrossover Crossover variant to be used.
dither DitherVariant Dither variant to be used.
Résultat void

Property Details

_crossover protected_oe property

protected DECrossover.Variant _crossover
Résultat DECrossover.Variant

_dither protected_oe property

protected DitherVariant _dither
Résultat DitherVariant