Satin Bowerbird Optimizer.

class opytimizer.optimizers.swarm.sbo.SBO(params: Optional[Dict[str, Any]] = None)

A SBO class, inherited from Optimizer.

This is the designed class to define SBO-related variables and methods.


S. H. S. Moosavi and V. K. Bardsiri. Satin bowerbird optimizer: a new optimization algorithm to optimize ANFIS for software development effort estimation. Engineering Applications of Artificial Intelligence (2017).

__init__(params: Optional[Dict[str, Any]] = None) → None

Initialization method.

Parameters:params – Contains key-value parameters to the mp_mutation-heuristics.

Step size.


Probability of mutation.


Percentage of width between lower and upper bounds.


List of widths.

compile(space: opytimizer.core.space.Space) → None

Compiles additional information that is used by this optimizer.

Parameters:space – A Space object containing meta-information.
update(space: opytimizer.core.space.Space, function: opytimizer.core.function.Function) → None

Wraps Satin Bowerbird Optimizer over all agents and variables (eq. 1-7).

  • space – Space containing agents and update-related information.
  • function – A Function object that will be used as the objective function.