opytimizer.optimizers.evolutionary.foa

Forest Optimization Algorithm.

class opytimizer.optimizers.evolutionary.foa.FOA(params: Optional[Dict[str, Any]] = None)

A FOA class, inherited from Optimizer.

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

References

M. Ghaemi, Mohammad-Reza F.-D. Forest Optimization Algorithm. Expert Systems with Applications (2014).

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

Initialization method.

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

Maximum age of trees.

area_limit

Maximum number of trees in the florest.

LSC

Local Seeding Changes.

GSC

Global Seeding Changes.

transfer_rate

Global seeding percentage.

age

Trees ages.

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

Compiles additional information that is used by this optimizer.

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

Performs the local seeding on zero-aged trees.

Parameters:
  • space – A Space object containing meta-information.
  • function – A Function object that will be used as the objective function.
_population_limiting(space: opytimizer.core.space.Space) → List[opytimizer.core.agent.Agent]

Limits the population by removing old trees.

Parameters:space – A Space object containing meta-information.
Returns:A list of candidate trees that were removed from the forest.
Return type:(List[Agent])
_global_seeding(space: opytimizer.core.space.Space, function: opytimizer.core.function.Function, candidate: List[opytimizer.core.agent.Agent]) → None

Performs the global seeding.

Parameters:
  • space – A Space object containing meta-information.
  • function – A Function object that will be used as the objective function.
  • candidate – Candidate trees.
update(space: opytimizer.core.space.Space, function: opytimizer.core.function.Function) → None

Wraps Forest Optimization Algorithm 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.