class_docstr: Baseclass of ES training master runners (serves as basis for dev and other runners).
class_docstr_tok: ["Baseclass","of","ES","training","master","runners","(","serves","as","basis","for","dev","and","other","runners",")","."]
docstr: Abstract method, derived runners like ESDevRunner return an appropriate rollout generator.
  
  :param env: The one and only environment.
  :param shared_noise: Noise table to be shared by all workers.
  :param agent_instance_seed: The agent seed to be used.
  :return: A newly instantiated rollout generator.
docstr_tok: ["Abstract","method",",","derived","runners","like","ESDevRunner","return","an","appropriate","rollout","generator",".",":","param","env",":","The","one","and","only","environment",".",":","param","shared_noise",":","Noise","table","to","be","shared","by","all","workers",".",":","param","agent_instance_seed",":","The","agent","seed","to","be","used",".",":","return",":","A","newly","instantiated","rollout","generator","."]
code: def create_distributed_rollouts(
      self,
      env: Union[StructuredEnv, StructuredEnvSpacesMixin],
      shared_noise: SharedNoiseTable,
      agent_instance_seed: int,
  ) -> ESDistributedRollouts:
      """Abstract method, derived runners like ESDevRunner return an appropriate rollout generator.
  
      :param env: The one and only environment.
      :param shared_noise: Noise table to be shared by all workers.
      :param agent_instance_seed: The agent seed to be used.
      :return: A newly instantiated rollout generator.
      """
  
imports: import dataclasses
  from abc import abstractmethod, ABC
  from typing import Union, Optional
  from maze.core.agent.policy import Policy
  from maze.core.agent.torch_model import TorchModel
  from maze.core.utils.factory import Factory
  from omegaconf import DictConfig
  from maze.core.agent.torch_policy import TorchPolicy
  from maze.core.annotations import override
  from maze.core.env.structured_env import StructuredEnv
  from maze.core.env.structured_env_spaces_mixin import StructuredEnvSpacesMixin
  from maze.train.trainers.common.model_selection.best_model_selection import BestModelSelection
  from maze.train.trainers.common.model_selection.model_selection_base import ModelSelectionBase
  from maze.train.trainers.common.training_runner import TrainingRunner
  from maze.train.trainers.es.distributed.es_distributed_rollouts import ESDistributedRollouts
  from maze.train.trainers.es.distributed.es_dummy_distributed_rollouts import ESDummyDistributedRollouts
  from maze.train.trainers.es.distributed.es_subproc_distributed_rollouts import ESSubprocDistributedRollouts
  from maze.train.trainers.es.es_shared_noise_table import SharedNoiseTable
  from maze.train.trainers.es.es_trainer import ESTrainer
  from maze.utils.bcolors import BColors
label_desc: Use image node_id 2 for calling the ESMasterRunner obj's underlying member method code with example usage: obj.create_distributed_rollouts(env, shared_noise, agent_instance_seed) without return types