class_docstr: Abstract base class of ES rollout distribution.
docstr: Declare a new rollout task and start producing results that can be obtained from the returned generator.
  
  Note that different distribution strategies have different ways of balancing evaluation and training rollouts.
  
  :param policy: Multi-step policy encapsulating the policy networks
  :param max_steps: Optionally limit the rollout to a number of environment steps (horizon).
  :param noise_stddev: The standard deviation of the applied parameter noise.
  :param normalization_stats: Normalization statistics as calculated by the NormalizeObservationWrapper.
docstr_tok: ["Declare","a","new","rollout","task","and","start","producing","results","that","can","be","obtained","from","the","returned","generator",".","Note","that","different","distribution","strategies","have","different","ways","of","balancing","evaluation","and","training","rollouts",".",":","param","policy",":","Multi-step","policy","encapsulating","the","policy","networks",":","param","max_steps",":","Optionally","limit","the","rollout","to","a","number","of","environment","steps","(","horizon",")",".",":","param","noise_stddev",":","The","standard","deviation","of","the","applied","parameter","noise",".",":","param","normalization_stats",":","Normalization","statistics","as","calculated","by","the","NormalizeObservationWrapper","."]
code: def generate_rollouts(
      self,
      policy: Union[Policy, TorchModel],
      max_steps: Optional[int],
      noise_stddev: float,
      normalization_stats: Dict[str, Tuple[np.ndarray, np.ndarray]],
  ) -> Generator[ESRolloutResult, None, None]:
      """Declare a new rollout task and start producing results that can be obtained from the returned generator.
  
      Note that different distribution strategies have different ways of balancing evaluation and training rollouts.
  
      :param policy: Multi-step policy encapsulating the policy networks
      :param max_steps: Optionally limit the rollout to a number of environment steps (horizon).
      :param noise_stddev: The standard deviation of the applied parameter noise.
      :param normalization_stats: Normalization statistics as calculated by the NormalizeObservationWrapper.
      """
  
file_path: maze/maze/train/trainers/es/distributed/es_distributed_rollouts.py
imports: from abc import ABC, abstractmethod
  from typing import List, Generator, Optional, Tuple, Dict, Union
  import numpy
  from maze.core.agent.policy import Policy
  from maze.core.agent.torch_model import TorchModel
  from maze.core.log_stats.log_stats import LogStats
label_desc: Use image node_id 1 for calling the ESDistributedRollouts obj's underlying member method code with example usage: obj.generate_rollouts(policy, max_steps, noise_stddev, normalization_stats) without return types