class_docstr: Add constructor and call signature to match suggest()
  
  Also, detect when on_node is handling a hyperparameter, and
  delegate that to an `on_node_hyperparameter` method. This method
  must be implemented by a derived class.
class_docstr_tok: ["Add","constructor","and","call","signature","to","match","suggest","(",")","Also",",","detect","when","on_node","is","handling","a","hyperparameter",",","and","delegate","that","to","an","`","on_node_hyperparameter","`","method",".","This","method","must","be","implemented","by","a","derived","class","."]
code: def batch(self, new_ids):
      new_ids = list(new_ids)
      self.rng = np.random.default_rng([self._seed] + new_ids)
      memo = self.eval_nodes(
          memo={
              self.domain.s_new_ids: new_ids,
              self.domain.s_rng: self.rng,
          }
      )
      idxs, vals = memo[self.expr]
      return idxs, vals
  
file_path: hyperopt/hyperopt/algobase.py
imports: import copy
  from collections import deque
  import numpy
  from .None import pyll
  from .base import miscs_update_idxs_vals
label_desc: Use image node_id 4 for calling the SuggestAlgo obj's underlying member method code with example usage: obj.batch(new_ids) and returns: idxs,  vals