C# Class SwarmOps.Optimizers.DE

Differential Evolution (DE) optimizer originally due to Storner and Price (1). This simple and efficient variant is based on the The Joker variant by Pedersen et al. (2). It has been found to be very versatile and works well on a wide range of optimization problems, but may require tuning (or meta-optimization) of its parameters.
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. (2) M.E.H. Pedersen and A.J. Chipperfield. Parameter tuning versus adaptation: proof of principle study on differential evolution. Technical Report HL0802, Hvass Laboratories, 2008
Inheritance: Optimizer
Mostrar archivo Open project: DanWBR/dwsim3

Public Methods

Method Description
DE ( ) : System.Diagnostics

Construct the object.

DE ( Problem problem ) : 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.

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.

Method Details

DE() public method

Construct the object.
public DE ( ) : System.Diagnostics
return System.Diagnostics

DE() public method

Construct the object.
public DE ( Problem problem ) : System.Diagnostics
problem Problem Problem to optimize.
return System.Diagnostics

GetCR() public method

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

GetF() public method

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

GetNumAgents() public method

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

Optimize() public method

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