Particle Swarms

does this and that…

class olympus.planners.ParticleSwarms(goal='minimize', max_iters=100000000, options={'c1': 0.5, 'c2': 0.3, 'w': 0.9}, particles=10)[source]

Particle swarm optimizer.

Parameters
  • goal (str) – The optimization goal, either ‘minimize’ or ‘maximize’. Default is ‘minimize’.

  • max_iters (int) – The maximum number of iterations for the swarm to search.

  • options (dict) –

    ???

  • particles (int) – The number of particles in the swarm.

Methods

tell([observations])

Provide the planner with all previous observations.

ask([return_as])

suggest new set of parameters

recommend([observations, return_as])

Consecutively executes tell and ask: tell the planner about all previous observations, and ask about the next query point.

optimize(emulator[, num_iter, verbose])

Optimizes a surface for a fixed number of iterations.

set_param_space(param_space)

Defines the parameter space over which the planner will search.

ask(return_as=None)

suggest new set of parameters

Parameters

return_as (string) – choose data type for returned parameters allowed options (dict, array)

Returns

newly generated parameters

Return type

ParameterVector

optimize(emulator, num_iter=1, verbose=False)

Optimizes a surface for a fixed number of iterations.

Parameters
  • emulator (object) – Emulator or a Surface instance to optimize over.

  • num_iter (int) – Maximum number of iterations allowed.

  • verbose (bool) – Whether to print information to screen.

Returns

Campaign object with information about the optimization, including all parameters

tested and measurements obtained.

Return type

campaign (Campaign)

recommend(observations=None, return_as=None)

Consecutively executes tell and ask: tell the planner about all previous observations, and ask about the next query point.

Parameters
  • observations (list of ???) –

  • return_as (string) – choose data type for returned parameters allowed options (dict, array)

Returns

newly generated parameters

Return type

list

set_param_space(param_space)

Defines the parameter space over which the planner will search.

Parameters

param_space (ParameterSpace) – a ParameterSpace object defining the space over which to search.

tell(observations=<olympus.campaigns.observations.Observations object>)

Provide the planner with all previous observations.

Parameters

observations (Observations) – an Observation object containing all previous observations. This defines the history of the campaign seen by the planner. The default is None, i.e. there are no previous observations.