# {py:mod}`evorl.algorithms.ec.so.es_workflow` ```{py:module} evorl.algorithms.ec.so.es_workflow ``` ```{autodoc2-docstring} evorl.algorithms.ec.so.es_workflow :parser: autodoc2_docstrings_parser :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ESWorkflowTemplate ` - ```` ### API `````{py:class} ESWorkflowTemplate(*, env: evorl.envs.Env, agent: evorl.agent.Agent, ec_optimizer: evorl.ec.optimizers.EvoOptimizer, ec_evaluator: evorl.evaluators.Evaluator, evaluator: evorl.evaluators.Evaluator, agent_state_vmap_axes: evorl.agent.AgentStateAxis = 0, config: omegaconf.DictConfig) :canonical: evorl.algorithms.ec.so.es_workflow.ESWorkflowTemplate Bases: {py:obj}`evorl.workflows.ECWorkflowTemplate` ````{py:method} enable_jit() -> None :canonical: evorl.algorithms.ec.so.es_workflow.ESWorkflowTemplate.enable_jit :classmethod: ```` ````{py:method} enable_shmap(axis_name) -> None :canonical: evorl.algorithms.ec.so.es_workflow.ESWorkflowTemplate.enable_shmap :classmethod: ```` ````{py:method} evaluate(state: evorl.types.State) -> tuple[evorl.metrics.MetricBase, evorl.types.State] :canonical: evorl.algorithms.ec.so.es_workflow.ESWorkflowTemplate.evaluate ```{autodoc2-docstring} evorl.algorithms.ec.so.es_workflow.ESWorkflowTemplate.evaluate :parser: autodoc2_docstrings_parser ``` ```` ````{py:method} learn(state: evorl.types.State) -> evorl.types.State :canonical: evorl.algorithms.ec.so.es_workflow.ESWorkflowTemplate.learn ```` `````