Particle Swarm Optimisation AlgorithmsThe following classes are available (all discussions assume CIlib version 0.5, and therefor assumes the same directory structure as used in CIlib):
 gbest PSO [ Show ]
 lbest PSO [ Show ]
 Swarm Initialization [ Hide ]
Default Implementation of Initialisation
How are particles initialised?All particles are initialised to fall in the domain of the optimization problem as specified via the CIlib type system. Domains are specified in the XML file via the domain tag. Each problem will have an implementation in the functions package, and for each function, the constructor will specify a default domain. Take note that the current implementation of CIlib, by default assigns an infinitely large number to particles that leave the the specified boundaries of the search space. Velocities are initialised to zero, and personal bests are initialised to the corresponding particle's position.
Are the control parameters initialised with default values? All control parameters and parameter update strategies have default values, as follows:
 Number of particles: 20
 Inertia weight: 0.729844
 Acceleration coefficients: 1.496180
 Velocity clamping: none
 Stochasticity: random value sampled for each dimension of the velocity vector
 Neihborhood topology: star topology (i.e. global best PSO)
 Update strategy: synchronous
 Neighborhoodbest update strategy: memorybased (i.e. selected from the personal best positions)
 Inertia strategy: constant, i.e. does not change
 Acceleration coefficient strategy: constant, i.e. does not change
 Stopping Conditions [ Show ]
 Neighborhood Topologies [ Show ]
