Cover of Swarm Intelligence Book

Particle Swarm Optimisation Algorithms

The 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: memory-based (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 ]