class_docstr: Implementation of SMAC's local search.
  
  Parameters
  ----------
  configspace : ConfigurationSpace
  acquisition_function : AbstractAcquisitionFunction
  challengers : int, defaults to 5000
      Number of challengers.
  max_steps: int | None, defaults to None
      Maximum number of iterations that the local search will perform.
  n_steps_plateau_walk: int, defaults to 10
      Number of steps during a plateau walk before local search terminates.
  vectorization_min_obtain : int, defaults to 2
      Minimal number of neighbors to obtain at once for each local search for vectorized calls. Can be tuned to
      reduce the overhead of SMAC.
  vectorization_max_obtain : int, defaults to 64
      Maximal number of neighbors to obtain at once for each local search for vectorized calls. Can be tuned to
      reduce the overhead of SMAC.
  seed : int, defaults to 0
class_docstr_tok: ["Implementation","of","SMAC","'s","local","search",".","Parameters","--","--","--","--","--","configspace",":","ConfigurationSpace","acquisition_function",":","AbstractAcquisitionFunction","challengers",":","int",",","defaults","to","5000","Number","of","challengers",".","max_steps",":","int","|","None",",","defaults","to","None","Maximum","number","of","iterations","that","the","local","search","will","perform",".","n_steps_plateau_walk",":","int",",","defaults","to","10","Number","of","steps","during","a","plateau","walk","before","local","search","terminates",".","vectorization_min_obtain",":","int",",","defaults","to","2","Minimal","number","of","neighbors","to","obtain","at","once","for","each","local","search","for","vectorized","calls",".","Can","be","tuned","to","reduce","the","overhead","of","SMAC",".","vectorization_max_obtain",":","int",",","defaults","to","64","Maximal","number","of","neighbors","to","obtain","at","once","for","each","local","search","for","vectorized","calls",".","Can","be","tuned","to","reduce","the","overhead","of","SMAC",".","seed",":","int",",","defaults","to","0"]
docstr: Get initial points to start search from.
  
  Parameters
  ----------
  previous_configs : list[Configuration]
      Previous configuration (e.g., from the runhistory).
  n_points : int
      Number of initial points to be generated.
  additional_start_points : list[tuple[float, Configuration]] | None
      Additional starting points.
  
  Returns
  -------
  list[Configuration]
      A list of initial points/configurations.
docstr_tok: ["Get","initial","points","to","start","search","from",".","Parameters","--","--","--","--","--","previous_configs",":","list","[","Configuration","]","Previous","configuration","(","e.g.",",","from","the","runhistory",")",".","n_points",":","int","Number","of","initial","points","to","be","generated",".","additional_start_points",":","list","[","tuple","[","float",",","Configuration","]","]","|","None","Additional","starting","points",".","Returns","--","--","--","-","list","[","Configuration","]","A","list","of","initial","points\/configurations","."]
code: def _get_initial_points(
      self,
      previous_configs: list[Configuration],
      n_points: int,
      additional_start_points: list[tuple[float, Configuration]] | None,
  ) -> list[Configuration]:
      """Get initial points to start search from.
  
      Parameters
      ----------
      previous_configs : list[Configuration]
          Previous configuration (e.g., from the runhistory).
      n_points : int
          Number of initial points to be generated.
      additional_start_points : list[tuple[float, Configuration]] | None
          Additional starting points.
  
      Returns
      -------
      list[Configuration]
          A list of initial points/configurations.
      """
      if len(previous_configs) == 0:
          init_points = self._configspace.sample_configuration(
              size=n_points
          )
      else:
          init_points = self._get_init_points_from_previous_configs(
              previous_configs,
              n_points,
              additional_start_points,
          )
  
      return init_points
  
file_path: SMAC3/smac/acquisition/maximizer/local_search.py
imports: from __future__ import annotations
  from typing import Any
  import itertools
  import time
  import numpy
  from ConfigSpace import Configuration, ConfigurationSpace
  from ConfigSpace.exceptions import ForbiddenValueError
  from smac.acquisition.function import AbstractAcquisitionFunction
  from smac.acquisition.maximizer.abstract_acqusition_maximizer import AbstractAcquisitionMaximizer
  from smac.utils.configspace import convert_configurations_to_array, get_one_exchange_neighbourhood
  from smac.utils.logging import get_logger
label_desc: Use image node_id 4 for calling the LocalSearch obj's underlying member method code with example usage: obj._get_initial_points(previous_configs, n_points, additional_start_points) and returns: init_points