class_docstr: Abstract class for the acquisition maximization.
  
  In order to use this class it has to be subclassed and the
  method `_maximize` must be implemented.
  
  Parameters
  ----------
  configspace : ConfigurationSpace
  acquisition_function : AbstractAcquisitionFunction
  challengers : int, defaults to 5000
      Number of configurations to sample from the configuration space to get
      the acquisition function value for, thus challenging the current
      incumbent and becoming a candidate for the next function evaluation.
  seed : int, defaults to 0
class_docstr_tok: ["Abstract","class","for","the","acquisition","maximization",".","In","order","to","use","this","class","it","has","to","be","subclassed","and","the","method","`","_maximize","`","must","be","implemented",".","Parameters","--","--","--","--","--","configspace",":","ConfigurationSpace","acquisition_function",":","AbstractAcquisitionFunction","challengers",":","int",",","defaults","to","5000","Number","of","configurations","to","sample","from","the","configuration","space","to","get","the","acquisition","function","value","for",",","thus","challenging","the","current","incumbent","and","becoming","a","candidate","for","the","next","function","evaluation",".","seed",":","int",",","defaults","to","0"]
docstr: Sort the given configurations by the acquisition value.
  
  Parameters
  ----------
  configs : list[Configuration]
  
  Returns
  -------
  challengers : list[tuple[float, Configuration]]
      Candidates ordered by their acquisition value (descending).
docstr_tok: ["Sort","the","given","configurations","by","the","acquisition","value",".","Parameters","--","--","--","--","--","configs",":","list","[","Configuration","]","Returns","--","--","--","-","challengers",":","list","[","tuple","[","float",",","Configuration","]","]","Candidates","ordered","by","their","acquisition","value","(","descending",")","."]
code: def _sort_by_acquisition_value(
      self, configs: list[Configuration]
  ) -> list[tuple[float, Configuration]]:
      """Sort the given configurations by the acquisition value.
  
      Parameters
      ----------
      configs : list[Configuration]
  
      Returns
      -------
      challengers : list[tuple[float, Configuration]]
          Candidates ordered by their acquisition value (descending).
      """
      assert self._acquisition_function is not None
      acq_values = self._acquisition_function(configs)
  
      # From here
      # http://stackoverflow.com/questions/20197990/how-to-make-argsort-result-to-be-random-between-equal-values
      random = self._rng.rand(len(acq_values))
  
      # Last column is primary sort key!
      indices = np.lexsort((random.flatten(), acq_values.flatten()))
  
      # Cannot use zip here because the indices array cannot index the
      # rand_configs list, because the second is a pure python list
      return [
          (acq_values[ind][0], configs[ind]) for ind in indices[::-1]
      ]
  
file_path: SMAC3/smac/acquisition/maximizer/abstract_acqusition_maximizer.py
imports: from __future__ import annotations
  from abc import abstractmethod
  from typing import Any, Iterator
  import numpy
  from ConfigSpace import Configuration, ConfigurationSpace
  from smac.acquisition.function.abstract_acquisition_function import AbstractAcquisitionFunction
  from smac.acquisition.maximizer.helpers import ChallengerList
  from smac.random_design.abstract_random_design import AbstractRandomDesign
  from smac.utils.logging import get_logger
label_desc: Use image node_id 7 for calling the AbstractAcquisitionMaximizer obj's underlying member method code with example usage: obj._sort_by_acquisition_value(configs) and returns: unknown