C# Класс 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.
Наследование: Optimizer
Показать файл Открыть проект

Защищенные свойства (Protected)

Свойство Тип Описание
_crossover DECrossover.Variant
_dither DitherVariant

Открытые методы

Метод Описание
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.

Защищенные методы

Метод Описание
SetVariant ( DECrossover crossover, DitherVariant dither ) : void

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

Описание методов

DESuite() публичный Метод

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.
Результат System.Diagnostics

DESuite() публичный Метод

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.
Результат System.Diagnostics

GetCR() публичный Метод

Get parameter, CR, aka. crossover probability.
public GetCR ( double parameters ) : double
parameters double Optimizer parameters.
Результат double

GetF() публичный Метод

Get parameter, F, aka. differential weight.
public GetF ( double parameters ) : double
parameters double Optimizer parameters.
Результат double

GetFMid() публичный Метод

Get parameter, FMid, aka. differential weight dithering midpoint.
public GetFMid ( double parameters ) : double
parameters double Optimizer parameters.
Результат double

GetFRange() публичный Метод

Get parameter, FRange, aka. differential weight dithering range.
public GetFRange ( double parameters ) : double
parameters double Optimizer parameters.
Результат double

GetNumAgents() публичный Метод

Get parameter, Number of agents, aka. population size.
public GetNumAgents ( double parameters ) : int
parameters double Optimizer parameters.
Результат int

Optimize() публичный Метод

Perform one optimization run and return the best found solution.
public Optimize ( double parameters ) : Result
parameters double Control parameters for the optimizer.
Результат Result

SetVariant() защищенный Метод

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.
Результат void

Описание свойств

_crossover защищенное свойство

protected DECrossover.Variant _crossover
Результат DECrossover.Variant

_dither защищенное свойство

protected DitherVariant _dither
Результат DitherVariant