evorl.ec.optimizers.vanilla_es¶
Module Contents¶
Classes¶
Canonical Evolution Strategies. |
|
Variant of VanillaES. |
|
State of the VanillaES. |
API¶
- class evorl.ec.optimizers.vanilla_es.VanillaES[source]¶
Bases:
evorl.ec.optimizers.ec_optimizer.EvoOptimizerCanonical Evolution Strategies.
Paper: Back to basics: Benchmarking canonical evolution strategies for playing atari
- ask(state: evorl.ec.optimizers.vanilla_es.VanillaESState) tuple[evorl.types.Params, evorl.ec.optimizers.vanilla_es.VanillaESState][source]¶
- elite_weights: chex.Array¶
‘pytree_field(…)’
- init(mean: evorl.types.Params, key: chex.PRNGKey) evorl.ec.optimizers.vanilla_es.VanillaESState[source]¶
- noise_std_schedule: evorl.ec.optimizers.utils.ExponentialScheduleSpec¶
None
- num_elites: int¶
None
- pop_size: int¶
None
- tell(state: evorl.ec.optimizers.vanilla_es.VanillaESState, fitnesses: chex.Array) tuple[evorl.types.PyTreeDict, evorl.ec.optimizers.vanilla_es.VanillaESState][source]¶
- class evorl.ec.optimizers.vanilla_es.VanillaESMod[source]¶
Bases:
evorl.ec.optimizers.vanilla_es.VanillaESVariant of VanillaES.
Add
external_sizenumber of external individuals and corresponding fitnesses during the ES update bytell_external()- Variables:
external_size – number of external individuals
mix_strategy –
strategy to mix external individuals with the elites.
”always”: always mix external individuals with elites
”normal”: concat external individuals to the population and select
num_eliteselites from the combined population.
- external_size: int¶
None
- mix_strategy: str¶
‘always’
- tell_external(state: evorl.ec.optimizers.vanilla_es.VanillaESState, fitnesses: chex.Array) tuple[evorl.types.PyTreeDict, evorl.ec.optimizers.vanilla_es.VanillaESState][source]¶