Table of Contents

Class DecreasingGaussianWalk

Namespace
NanoQL.Experimental
Assembly
NanoQL.dll

A Gaussian random walk whose step decreases: after each round of the moved fireflies' walks, δ becomes δ²: QuantLib's DecreasingGaussianWalk.

[Experimental("NQL0001")]
public sealed class DecreasingGaussianWalk : GaussianWalk
Inheritance
DecreasingGaussianWalk
Inherited Members

Remarks

δ squares at each round's first walk from the second round, so the fireflies of round r walk at δ₀^(2^(r − 1)). QuantLib's counts its walks and restarts the count at 0 on the call that squares, itself the next round's first walk, so δ squares once every Mfa + 1 walks, at a drifting place within the round, and with one firefly every second round (Divergences/FireflyAlgorithmTests.cs). Each minimization starts again from the given δ.

Constructors

DecreasingGaussianWalk(double, double, long)

Initializes a new instance of the DecreasingGaussianWalk class.

public DecreasingGaussianWalk(double sigma, double delta, long seed)

Parameters

sigma double

The radius's standard deviation σ.

delta double

The step's initial scale δ, QuantLib's default 0.9.

seed long

The seed, in [1, 4294967295].

Exceptions

ArgumentOutOfRangeException

seed is outside [1, 4294967295].

Methods

Clone()

A copy for a minimization, unbound, its generators at their seeds.

public override FireflyAlgorithmRandomWalk Clone()

Returns

FireflyAlgorithmRandomWalk

The copy.

Init()

Prepares the walk once it is bound to a population, QuantLib's init; nothing by default.

protected override void Init()

Remarks

The isotropic walk's dimension and ellipsoid set from the problem's bounds.

WalkImpl(Vector)

Draws one firefly's walk.

protected override void WalkImpl(Vector xRW)

Parameters

xRW Vector

The walk, which it sets.

Remarks

The isotropic walk's step, times δ.