opytimizer.optimizers.science.eo¶
Equilibrium Optimizer.
-
class
opytimizer.optimizers.science.eo.
EO
(params: Optional[Dict[str, Any]] = None)¶ An EO class, inherited from Optimizer.
This is the designed class to define EO-related variables and methods.
References
A. Faramarzi et al. Equilibrium optimizer: A novel optimization algorithm. Knowledge-Based Systems (2020).
-
__init__
(params: Optional[Dict[str, Any]] = None) → None¶ Initialization method.
Parameters: params – Contains key-value parameters to the meta-heuristics.
-
a1
¶ Exploration constant.
-
a2
¶ Exploitation constant.
-
GP
¶ Generation probability.
-
V
¶ Velocity.
-
C
¶ Concentrations (agents).
-
compile
(space: opytimizer.core.space.Space) → None¶ Compiles additional information that is used by this optimizer.
Parameters: space – A Space object containing meta-information.
-
_calculate_equilibrium
(agents: List[opytimizer.core.agent.Agent]) → None¶ Calculates the equilibrium concentrations.
Parameters: agents – List of agents.
-
_average_concentration
(function: opytimizer.core.function.Function) → opytimizer.core.agent.Agent¶ Averages the concentrations.
Parameters: function – A Function object that will be used as the objective function. Returns: Averaged concentration. Return type: (Agent)
-
update
(space: opytimizer.core.space.Space, function: opytimizer.core.function.Function, iteration: int, n_iterations: int) → None¶ Wraps Equilibrium Optimizer 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.
-