def METHOD_NAME(self, trials, current_request_number):
    """
    Get the new suggested trials with skopt algorithm.
    """
    logger.info("-" * 100 + "\n")
    logger.info("New GetSuggestions call with current request number: {}\n".format(current_request_number))
    skopt_suggested = []
    loss_for_skopt = []
    if len(trials) > self.succeeded_trials or self.succeeded_trials == 0:
        self.succeeded_trials = len(trials)
        if self.succeeded_trials != 0:
            logger.info("Succeeded Trials changed: {}\n".format(self.succeeded_trials))
        for trial in trials:
            if trial.name not in self.recorded_trials_names:
                self.recorded_trials_names.append(trial.name)
                trial_assignment = []
                for param in self.search_space.params:
                    parameter_value = None
                    for assignment in trial.assignments:
                        if assignment.name == param.name:
                            parameter_value = assignment.value
                            break
                    if param.type == INTEGER:
                        trial_assignment.append(int(parameter_value))
                    elif param.type == DOUBLE:
                        trial_assignment.append(float(parameter_value))
                    else:
                        trial_assignment.append(parameter_value)
                skopt_suggested.append(trial_assignment)
                loss_value = float(trial.target_metric.value)
                if self.search_space.goal == MAX_GOAL:
                    loss_value = -1 * loss_value
                loss_for_skopt.append(loss_value)
        if loss_for_skopt != [] and skopt_suggested != []:
            logger.info("Running Optimizer tell to record observation")
            logger.info("Evaluated parameters: {}".format(skopt_suggested))
            logger.info("Objective values: {}\n".format(loss_for_skopt))
            t1 = datetime.datetime.now()
            self.skopt_optimizer.tell(skopt_suggested, loss_for_skopt)
            logger.info("Optimizer tell method takes {} seconds".format((datetime.datetime.now()-t1).seconds))
            logger.info("List of recorded Trials names: {}\n".format(self.recorded_trials_names))
    else:
        logger.error("Succeeded Trials didn't change: {}\n".format(self.succeeded_trials))
    logger.info("Running Optimizer ask to query new parameters for Trials\n")
    return_trial_list = []
    skopt_suggested = self.skopt_optimizer.ask(n_points=current_request_number)
    for suggestion in skopt_suggested:
        logger.info("New suggested parameters for Trial: {}".format(suggestion))
        return_trial_list.append(
            BaseSkoptService.convert(self.search_space, suggestion))
    logger.info("GetSuggestions returns {} new Trials\n\n".format(len(return_trial_list)))
    return return_trial_list