ESDevRunner

class maze.train.trainers.es.es_runners.ESDevRunner(state_dict_dump_file: str, dump_interval: Optional[int], spaces_config_dump_file: str, normalization_samples: int, shared_noise_table_size: int, n_eval_rollouts: int)

Runner config for single-threaded training, based on ESDummyDistributedRollouts.

classmethod create_distributed_rollouts(env: Union[maze.core.env.structured_env.StructuredEnv, maze.core.env.structured_env_spaces_mixin.StructuredEnvSpacesMixin], shared_noise: maze.train.trainers.es.es_shared_noise_table.SharedNoiseTable, agent_instance_seed: int, n_eval_rollouts: int)maze.train.trainers.es.distributed.es_distributed_rollouts.ESDistributedRollouts

(overrides ESMasterRunner)

use single-threaded rollout generation

n_eval_rollouts: int

Fixed number of evaluation runs per epoch.

run(n_epochs: Optional[int] = None, distributed_rollouts: Optional[maze.train.trainers.es.distributed.es_distributed_rollouts.ESDistributedRollouts] = None, model_selection: Optional[maze.train.trainers.common.model_selection.model_selection_base.ModelSelectionBase] = None)None

(overrides TrainingRunner)

See run(). :param distributed_rollouts: The distribution interface for experience collection. :param n_epochs: Number of epochs to train. :param model_selection: Optional model selection class, receives model evaluation results.