code: def discrete_random_mutation(x, list_of_items):
      """Randomly chooses an index and changes it to something else from
      list_of_items."""
      ret = prod_discrete_random_mutation([x], [list_of_items])
      return ret[0]
  
imports: from copy import copy
  import numpy
  from scipy.spatial.distance import cdist
  from ..exd.cp_domain_utils import get_processed_func_from_raw_func_for_cp_domain, load_cp_domain_from_config_file
  from ..exd.experiment_caller import ExperimentCaller, CPFunctionCaller
  from ..exd.worker_manager import SyntheticWorkerManager
  from ..exd.exd_utils import get_cp_domain_initial_qinfos
  from .ga_optimiser import GAOptimiser, ga_opt_args
  from ..utils.general_utils import project_to_bounds
  from ..utils.option_handler import load_options
label_desc: Use image node_id 7 for calling a global function with example usage: discrete_random_mutation(x, list_of_items) and returns: ret