opytimizer.optimizers.swarm.sfo¶
Sailfish Optimizer.
-
class
opytimizer.optimizers.swarm.sfo.
SFO
(params: Optional[Dict[str, Any]] = None)¶ A SFO class, inherited from Optimizer.
This is the designed class to define SFO-related variables and methods.
References
S. Shadravan, H. Naji and V. Bardsiri. The Sailfish Optimizer: A novel nature-inspired metaheuristic algorithm for solving constrained engineering optimization problems. Engineering Applications of Artificial Intelligence (2019).
-
__init__
(params: Optional[Dict[str, Any]] = None) → None¶ Initialization method.
Parameters: params – Contains key-value parameters to the meta-heuristics.
-
PP
¶ Percentage of initial sailfishes.
-
A
¶ Attack power coefficient.
-
e
¶ Attack power decrease.
-
sardines
¶ List of sardines.
-
compile
(space: opytimizer.core.space.Space) → None¶ Compiles additional information that is used by this optimizer.
Parameters: space – A Space object containing meta-information.
-
_generate_random_agent
(agent: opytimizer.core.agent.Agent) → opytimizer.core.agent.Agent¶ Generates a new random-based agent.
Parameters: agent – Agent to be copied. Returns: Random-based agent. Return type: (Agent)
-
_calculate_lambda_i
(n_sailfishes: int, n_sardines: int) → float¶ Calculates the lambda value (eq. 7).
Parameters: - n_sailfishes (int) – Number of sailfishes.
- n_sardines (int) – Number of sardines.
Returns: Lambda value from current iteration.
Return type: (float)
-
_update_sailfish
(agent: opytimizer.core.agent.Agent, best_agent: opytimizer.core.agent.Agent, best_sardine: opytimizer.core.agent.Agent, lambda_i: float) → numpy.ndarray¶ Updates the sailfish’s position (eq. 6).
Parameters: - agent – Current agent’s.
- best_agent – Best sailfish.
- best_sardine – Best sardine.
- lambda_i – Lambda value.
Returns: An updated position.
Return type: (np.ndarray)
-
update
(space: opytimizer.core.space.Space, function: opytimizer.core.function.Function, iteration: int) → None¶ Wraps Sailfish 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.
-