docstr: Returns an Expected Improvement acquisition function.
  
  Parameters
  ----------
  scenario : Scenario
  xi : float, defaults to 0.0
      Controls the balance between exploration and exploitation of the
      acquisition function.
docstr_tok: ["Returns","an","Expected","Improvement","acquisition","function",".","Parameters","--","--","--","--","--","scenario",":","Scenario","xi",":","float",",","defaults","to","0.0","Controls","the","balance","between","exploration","and","exploitation","of","the","acquisition","function","."]
code: def get_acquisition_function(  # type: ignore
      scenario: Scenario,
      *,
      xi: float = 0.0,
  ) -> EI:
      """Returns an Expected Improvement acquisition function.
  
      Parameters
      ----------
      scenario : Scenario
      xi : float, defaults to 0.0
          Controls the balance between exploration and exploitation of the
          acquisition function.
      """
      return EI(xi=xi, log=True)
  
imports: from __future__ import annotations
  from ConfigSpace import Configuration
  from smac.acquisition.function.expected_improvement import EI
  from smac.acquisition.maximizer.local_and_random_search import LocalAndSortedRandomSearch
  from smac.facade.abstract_facade import AbstractFacade
  from smac.initial_design.sobol_design import SobolInitialDesign
  from smac.intensifier.intensifier import Intensifier
  from smac.model.random_forest.random_forest import RandomForest
  from smac.multi_objective.aggregation_strategy import MeanAggregationStrategy
  from smac.random_design.probability_design import ProbabilityRandomDesign
  from smac.runhistory.encoder.log_scaled_encoder import RunHistoryLogScaledEncoder
  from smac.scenario import Scenario
label_desc: Use image node_id 2 for calling the HyperparameterOptimizationFacade obj's underlying member method code with example usage: obj.get_acquisition_function(scenario) and returns: EI