DifferentialEvolutionOptimizer.DifferentialWeight Property

Gets or sets the differential weight factor used in the mutation step.

Definition

Namespace: Numerics.NET.Optimization
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 9.1.0
C#
public double DifferentialWeight { get; set; }

Property Value

Double

Remarks

The differential weight must be between 0 and 2. The default value is 0.8.

The differential weight (F) controls the amplification of the differential variation between two individuals. A higher value of F increases the mutation step size, which can enhance exploration of the search space but may also lead to instability and overshooting. Conversely, a lower value of F reduces the mutation step size, promoting exploitation of the current population and fine-tuning of solutions, but it may also increase the risk of premature convergence.

The optimal value of F depends on the specific optimization problem. For problems with many local optima, a higher F value may help in escaping local optima. For smoother landscapes, a lower F value might suffice. It is often useful to experiment with different values to find the most effective one for a given problem.

The default value for the differential weight is 0.8.

Exceptions

ArgumentOutOfRangeException

The value is outside the range [0,2].

See Also