class_docstr: Experimental evolution-strategy-like algorithm
  The behavior is going to evolve
class_docstr_tok: ["Experimental","evolution-strategy-like","algorithm","The","behavior","is","going","to","evolve"]
code: def __init__(
      self,
      parametrization: base.IntOrParameter,
      budget: tp.Optional[int] = None,
      num_workers: int = 1,
      *,
      config: tp.Optional["EvolutionStrategy"] = None,
  ) -> None:
      if budget is not None and budget < 60:
          warnings.warn(
              "ES algorithms are inefficient with budget < 60",
              base.errors.InefficientSettingsWarning,
          )
      super().__init__(
          parametrization, budget=budget, num_workers=num_workers
      )
      self._population: tp.Dict[str, p.Parameter] = {}
      self._uid_queue = UidQueue()
      self._waiting: tp.List[p.Parameter] = []
      # configuration
      self._config = EvolutionStrategy() if config is None else config
      self._rank_method: tp.Any = (
          None  # TODO better typing (eventually)
      )
      if self._config.ranker == "nsga2":
          self._rank_method = nsga2.rank
      elif self._config.ranker != "simple":
          raise NotImplementedError(
              f"Unknown ranker {self._config.ranker}"
          )
      self._no_hypervolume = self._config.offsprings is None
  
file_path: nevergrad/nevergrad/optimization/es.py
imports: import warnings
  import nevergrad.common.typing
  from nevergrad.parametrization import parameter
  from nevergrad.optimization.utils import UidQueue
  from .None import base
  from .multiobjective import nsga2
label_desc: Use image node_id 1 to create a new _EvolutionStrategy object from inherited base classes: base with example: obj = _EvolutionStrategy(parametrization, budget, num_workers)