# {py:mod}`evorl.ec.optimizers.vanilla_ga` ```{py:module} evorl.ec.optimizers.vanilla_ga ``` ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga :parser: autodoc2_docstrings_parser :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`VanillaGA ` - ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA :parser: autodoc2_docstrings_parser :summary: ``` * - {py:obj}`VanillaGAState ` - ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGAState :parser: autodoc2_docstrings_parser :summary: ``` ```` ### API `````{py:class} VanillaGA :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA Bases: {py:obj}`evorl.ec.optimizers.ec_optimizer.EvoOptimizer` ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA :parser: autodoc2_docstrings_parser ``` ````{py:method} ask(state: evorl.ec.optimizers.vanilla_ga.VanillaGAState) -> tuple[chex.ArrayTree, evorl.ec.optimizers.vanilla_ga.VanillaGAState] :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.ask ```` ````{py:attribute} enable_crossover :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.enable_crossover :type: bool :value: > True ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.enable_crossover :parser: autodoc2_docstrings_parser ``` ```` ````{py:method} init(pop: chex.ArrayTree, key: chex.PRNGKey) -> evorl.ec.optimizers.vanilla_ga.VanillaGAState :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.init ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.init :parser: autodoc2_docstrings_parser ``` ```` ````{py:attribute} matrix_num_mutation_frac :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.matrix_num_mutation_frac :type: float :value: > 0.01 ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.matrix_num_mutation_frac :parser: autodoc2_docstrings_parser ``` ```` ````{py:attribute} mut_strength :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.mut_strength :type: float :value: > 0.1 ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.mut_strength :parser: autodoc2_docstrings_parser ``` ```` ````{py:attribute} num_crossover_frac :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.num_crossover_frac :type: float :value: > 0.1 ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.num_crossover_frac :parser: autodoc2_docstrings_parser ``` ```` ````{py:attribute} num_elites :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.num_elites :type: int :value: > None ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.num_elites :parser: autodoc2_docstrings_parser ``` ```` ````{py:attribute} pop_size :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.pop_size :type: int :value: > None ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.pop_size :parser: autodoc2_docstrings_parser ``` ```` ````{py:method} tell(state: evorl.ec.optimizers.vanilla_ga.VanillaGAState, fitnesses: chex.Array) -> tuple[evorl.types.PyTreeDict, evorl.ec.optimizers.vanilla_ga.VanillaGAState] :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.tell ```` ````{py:attribute} tournament_size :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.tournament_size :type: int :value: > 2 ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.tournament_size :parser: autodoc2_docstrings_parser ``` ```` ````{py:attribute} vector_num_mutation_frac :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.vector_num_mutation_frac :type: float :value: > 0.0 ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.vector_num_mutation_frac :parser: autodoc2_docstrings_parser ``` ```` ````{py:attribute} weight_max_magnitude :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGA.weight_max_magnitude :type: float :value: > 1000000.0 ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGA.weight_max_magnitude :parser: autodoc2_docstrings_parser ``` ```` ````` `````{py:class} VanillaGAState :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGAState Bases: {py:obj}`evorl.types.PyTreeData` ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGAState :parser: autodoc2_docstrings_parser ``` ````{py:attribute} key :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGAState.key :type: chex.PRNGKey :value: > None ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGAState.key :parser: autodoc2_docstrings_parser ``` ```` ````{py:attribute} pop :canonical: evorl.ec.optimizers.vanilla_ga.VanillaGAState.pop :type: chex.ArrayTree :value: > None ```{autodoc2-docstring} evorl.ec.optimizers.vanilla_ga.VanillaGAState.pop :parser: autodoc2_docstrings_parser ``` ```` `````