C# Class SwarmOps.Optimizers.MOL

Many Optimizing Liaisons (MOL) optimization method devised as a simplification to the PSO method originally due to Eberhart et al. (1, 2). The MOL method does not have any attraction to the particle's own best known position, and the algorithm also makes use of random selection of which particle to update instead of iterating over the entire swarm. It is similar to the "Social Only" PSO suggested by Kennedy (3), and was studied more thoroguhly by Pedersen et al. (4) who found it to sometimes outperform PSO, and have more easily tunable control parameters.
References: (1) J. Kennedy and R. Eberhart. Particle swarm optimization. In Proceedings of IEEE International Conference on Neural Networks, volume IV, pages 1942-1948, Perth, Australia, 1995 (2) Y. Shi and R.C. Eberhart. A modified particle swarm optimizer. In Proceedings of the IEEE International Conference on Evolutionary Computation, pages 69-73, Anchorage, AK, USA, 1998. (3) J. Kennedy. The particle swarm: social adaptation of knowledge, In: Proceedings of the IEEE International Conference on Evolutionary Computation, Indianapolis, USA, 1997. (4) M.E.H. Pedersen and A.J. Chipperfield. Simplifying particle swarm optimization. Applied Soft Computing, 10, p. 618-628, 2010.
Inheritance: Optimizer
显示文件 Open project: DanWBR/dwsim3

Public Methods

Method Description
EnforceConstraints ( double &parameters ) : bool

Enforce constraints and evaluate feasiblity of the wrapped problem.

Feasible ( double parameters ) : bool

Evaluate feasibility (constraint satisfaction) of the wrapped problem.

GetNumAgents ( double parameters ) : int

Get parameter, Number of agents, aka. swarm-size.

GetOmega ( double parameters ) : double

Get parameter, Omega.

GetPhi ( double parameters ) : double

Get parameter, Phi.

MOL ( ) : System.Diagnostics

Construct the object.

MOL ( Problem problem ) : System.Diagnostics

Construct the object.

Optimize ( double parameters ) : Result

Perform one optimization run and return the best found solution.

Method Details

EnforceConstraints() public method

Enforce constraints and evaluate feasiblity of the wrapped problem.
public EnforceConstraints ( double &parameters ) : bool
parameters double Candidate solution.
return bool

Feasible() public method

Evaluate feasibility (constraint satisfaction) of the wrapped problem.
public Feasible ( double parameters ) : bool
parameters double Candidate solution.
return bool

GetNumAgents() public method

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

GetOmega() public method

Get parameter, Omega.
public GetOmega ( double parameters ) : double
parameters double Optimizer parameters.
return double

GetPhi() public method

Get parameter, Phi.
public GetPhi ( double parameters ) : double
parameters double Optimizer parameters.
return double

MOL() public method

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

MOL() public method

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

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