physbo.search.score_multi module

physbo.search.score_multi.EHVI(fmean, fstd, pareto)[source]

Calculate Expected Hyper-Volume Improvement (EHVI).

Reference: (Couckuyt et al., 2014) Fast calculation of multiobjective probability of improvement and expected improvement criteria for Pareto optimization

Parameters:
  • fmean (numpy.ndarray) – mean of the predictive distribution

  • fstd (numpy.ndarray) – standard deviation of the predictive distribution

  • pareto (Pareto object) – Pareto object

Returns:

score – score of the candidate

Return type:

numpy.ndarray

physbo.search.score_multi.HVPI(fmean, fstd, pareto)[source]

Calculate Hypervolume-based Probability of Improvement (HVPI).

Reference: (Couckuyt et al., 2014) Fast calculation of multiobjective probability of improvement and expected improvement criteria for Pareto optimization

Parameters:
  • fmean (numpy.ndarray) – mean of the predictive distribution

  • fstd (numpy.ndarray) – standard deviation of the predictive distribution

  • pareto (Pareto object) – Pareto object

Returns:

score – score of the candidate

Return type:

numpy.ndarray

physbo.search.score_multi.TS(predictor_list, training_list, test, alpha=1, reduced_candidate_num=None)[source]

Thompson Sampling for multi-objective optimization.

Parameters:
  • predictor_list (list of Predictor) – List of predictors for each objective.

  • training_list (list of Variable) – List of training data for each objective.

  • test (Variable) – Test points.

  • alpha (float, optional) – Scaling parameter for sampling from posterior distribution. Default is 1.

  • reduced_candidate_num (int, optional) – Number of candidates to randomly select for Pareto front calculation. If None or less than number of test points, all points are used. Default is None.

Returns:

score_res – Score array with 1 at the chosen index and 0 elsewhere.

Return type:

numpy.ndarray

physbo.search.score_multi.score(mode, predictor_list, test, training_list, **kwargs)[source]