config_ps: Configuration object for the Particle Swarm Algorithm

View source: R/ALGO__PS.R

config_psR Documentation

Configuration object for the Particle Swarm Algorithm

Description

Create a configuration object for the Particle Swarm Algorithm (PS). At minimum the number of iterations (parameter iterations) and the number of particles (parameter population_size) have to be provided.

Usage

config_ps(
  iterations,
  population_size,
  iterations_same_cost = NULL,
  absolute_tol = NULL,
  alpha_vel = 0.5,
  alpha_evolution = 1,
  cognitive = 2,
  social = 2,
  inertia = 0.9
)

Arguments

iterations

maximum number of iterations.

population_size

number of particles.

iterations_same_cost

maximum number of consecutive iterations with the same (see the parameter absolute_tol) best cost before ending the minimization. If NULL the minimization continues for the number of iterations specified by the parameter iterations. Default is NULL.

absolute_tol

absolute tolerance when comparing best costs from consecutive iterations. If NULL the machine epsilon is used. Default is NULL.

alpha_vel

maximum velocity of particles, defined as a fraction of the range on each parameter. Default is 0.5.

alpha_evolution

parameter to control the decreasing alpha_vel value with the iterations. Default is 1.0 (linear).

cognitive

parameter influencing the motion of the particle on the basis of distance between its current and best positions. Default is 2.0.

social

parameter influencing the motion of the particle on the basis of distance between its current position and the best position in the swarm. Default is 2.0.

inertia

parameter influencing the dependency of the velocity on its value at the previous iteration. Default 0.9.

Value

config_ps returns an object of class PSConfig.

References

\insertRef

eberhart1995newEmiR

Examples

conf <- config_ps(iterations = 100, population_size = 50, iterations_same_cost = NULL,
absolute_tol = NULL,alpha_vel = 0.5, alpha_evolution = 1.0, cognitive = 2.0,
social = 2.0, inertia = 0.9)


EmiR documentation built on Dec. 10, 2022, 1:12 a.m.