class_docstr: Fits a GP by tuning the kernel hyper-params. 
class_docstr_tok: ["Fits","a","GP","by","tuning","the","kernel","hyper-params","."]
docstr: Optimises the continuous hyper-parameters for the given discrete hyper-params.
      
code: def _optimise_cts_hps_for_given_dscr_hps(self, given_dscr_hps):
      """Optimises the continuous hyper-parameters for the given discrete hyper-params."""
      if not self.options.use_additive_gp:
          return super(
              EuclideanGPFitter, self
          )._optimise_cts_hps_for_given_dscr_hps(given_dscr_hps)
      else:
          return optimise_cts_hps_for_given_dscr_hps_in_add_model(
              given_dscr_hps,
              self.options.num_groups_per_group_size,
              self.dim,
              self.hp_tune_max_evals,
              self.cts_hp_optimise,
              self._tuning_objective,
          )
  
imports: from __future__ import division
  from argparse import Namespace
  import numpy
  from .None import gp_core, mf_gp
  from .None import kernel
  from ..utils.ancillary_utils import get_list_of_floats_as_str
  from ..utils.general_utils import get_sublist_from_indices, map_to_bounds
  from ..utils.option_handler import get_option_specs, load_options
  from ..utils.oper_utils import random_sample_from_discrete_domain
  from ..utils.reporters import get_reporter
label_desc: Use image node_id 8 for calling the EuclideanGPFitter obj's underlying member method code with example usage: obj._optimise_cts_hps_for_given_dscr_hps(given_dscr_hps) and returns: super, optimise_cts_hps_for_given_dscr_hps_in_add_model