opytimizer.optimizers.science.weo

Water Evaporation Optimization.

class opytimizer.optimizers.science.weo.WEO(params: Optional[Dict[str, Any]] = None)

A WEO class, inherited from Optimizer.

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

References

A. Kaveh and T. Bakhshpoori. Water Evaporation Optimization: A novel physically inspired optimization algorithm. Computers & Structures (2016).

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

Initialization method.

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

Minimum substrate energy.

E_max

Maximum substrate energy.

theta_min

Minimum contact angle.

theta_max

Maximum contact angle.

_evaporation_flux(theta: float) → float

Calculates the evaporation flux (eq. 7).

Parameters:theta – Radian-based angle.
Returns:Evaporation flux.
Return type:(float)
update(space: opytimizer.core.space.Space, function: opytimizer.core.function.Function, iteration: int, n_iterations: int) → None

Wraps Water Evaporation Optimization over all agents and variables.

Parameters:
  • space – Space containing agents and update-related information.
  • function – A Function object that will be used as the objective function.
  • iteration – Current iteration.
  • n_iterations – Maximum number of iterations.