PSO

class gob.optimizers.PSO.PSO(bounds, n_particles=200, iter=1000, dt=0.01, omega=0.7, c2=2, beta=100000.0, alpha=1, batch_size=0, verbose=False)

Bases: Optimizer

Interface for the social only PSO optimizer.

Parameters:
  • bounds (ndarray) – The bounds of the search space.

  • n_particles (int) – The number of particles.

  • iter (int) – The number of iterations.

  • dt (float) – The time step.

  • omega (float) – The inertia weight.

  • c2 (float) – The cognitive coefficient.

  • beta (float) – The inverse temperature for using a Gibbs measure to select the global best instead of the argmin. Default is 0 (no Gibbs measure).

  • alpha (float) – The coefficient to decrease the step size.

  • batch_size (int) – The batch size for the mini-batch optimization. If 0, no mini-batch optimization is used.

  • verbose (bool) – Whether to print information about the optimization process.

minimize(f)

Minimize a function using the optimizer.

Parameters:

f (Function) – The objective function.

Returns:

The minimum point and the minimum value.

Return type:

pair

set_stop_criterion(stop_criterion)

Set a stop criterion for the optimizer.

Parameters:

stop_criterion (float) – The stop criterion.