AI-ParticleSwarmOptimization-MCE
view release on metacpan or search on metacpan
Seed for the random number generator. Useful if you want to rerun
an optimization, perhaps for benchmarking or test purposes.
-randStartVelocity: boolean, optional
Set true to initialize particles with a random velocity. Otherwise
particle velocity is set to 0 on initalization.
A range based on 1/100th of --posMax - -posMin is used for the
initial speed in each dimension of the velocity vector if a random
start velocity is used.
-stallSpeed: positive number, optional
Speed below which a particle is considered to be stalled and is
repositioned to a new random location with a new initial speed.
By default -stallSpeed is undefined but particles with a speed of 0
will be repositioned.
-themWeight: number, optional
Coefficient determining the influence of the neighbourhod best
position on the next iterations velocity. Defaults to 0.5.
See also -inertia and -meWeight.
-exitPlateau: boolean, optional
Set true to have the optimization check for plateaus (regions where
the fit hasn't improved much for a while) during the search. The
optimization ends when a suitable plateau is detected following the
burn in period.
Defaults to undefined (option disabled).
-exitPlateauDP: number, optional
Specify the number of decimal places to compare between the current
fitness function value and the mean of the previous
-exitPlateauWindow values.
Defaults to 10.
-exitPlateauWindow: number, optional
Specify the size of the window used to calculate the mean for
comparison to the current output of the fitness function.
Correlates to the minimum size of a plateau needed to end the
optimization.
Defaults to 10% of the number of iterations (-iterations).
-exitPlateauBurnin: number, optional
Determines how many iterations to run before checking for plateaus.
Defaults to 50% of the number of iterations (-iterations).
-verbose: flags, optional
If set to a non-zero value -verbose determines the level of
diagnostic print reporting that is generated during optimization.
The following constants may be bitwise ored together to set logging
options:
* kLogBetter
prints particle details when its fit becomes bebtter than its
previous best.
* kLogStall
prints particle details when its velocity reaches 0 or falls
below the stall threshold.
* kLogIter
Shows the current iteration number.
* kLogDetail
Shows additional details for some of the other logging options.
* kLogIterDetail
Shorthand for kLogIter | kLogIterDetail
setParams (%parameters)
Set or change optimization parameters. See -new above for a
description of the parameters that may be supplied.
init ()
Reinitialize the optimization. init () will be called during the
first call to optimize () if it hasn't already been called.
optimize ()
Runs the minimization optimization. Returns the fit value of the best
fit found. The best possible fit is negative infinity.
optimize () may be called repeatedly to continue the fitting process.
The fit processing on each subsequent call will continue from where
the last call left off.
getParticleState ()
Returns the vector of position
getBestParticles ([$n])
Takes an optional count.
Returns a list containing the best $n particle numbers. If $n is not
specified only the best particle number is returned.
getParticleBestPos ($particleNum)
( run in 1.892 second using v1.01-cache-2.11-cpan-39bf76dae61 )