AI-ParticleSwarmOptimization-MCE

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

	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)

      Returns a list containing the best value of the fit and the vector of
      its point in hyper space.

          my ($fit, @vector) = $pso->getParticleBestPos (3)

    getIterationCount ()

      Return the number of iterations performed. This may be useful when
      the -exitFit criteria has been met or where multiple calls to
      optimize have been made.

BUGS

    None... I hope.

    If any: A small script which yields the problem will probably be of
    help.

SEE ALSO

    http://en.wikipedia.org/wiki/Particle_swarm_optimization

THANKS

    Mario Roy for suggestions about efficiency.

AUTHOR

    Strzelecki Lukasz <lukasz@strzeleccy.eu>

SEE ALSO



( run in 0.660 second using v1.01-cache-2.11-cpan-39bf76dae61 )