smt_optim.acquisition_functions package#

Submodules#

smt_optim.acquisition_functions.expected_improvement module#

smt_optim.acquisition_functions.expected_improvement.expected_improvement(mu: float, s2: float, f_min: float) float[source]#

Expected Improvement acquisition function.

Parameters:
  • mu (float) – Mean prediction.

  • s2 (float) – Variance prediction.

  • f_min (float) – Best minimum objective value in training data.

Returns:

Expected Improvement value.

Return type:

float

smt_optim.acquisition_functions.expected_improvement.fidelity_correlation(covariance: ndarray, li_var: ndarray, lj_var: ndarray) ndarray[source]#

GP posterior fidelity correlation between 2 fidelity levels. The correlation is clipped between 0 and 1.

Parameters:
  • covariance (np.ndarray) – Posterior covariance prediction between fidelity levels i and j.

  • li_var (np.ndarray) – Variance prediction of fidelity level i.

  • lj_var (np.ndarray) – Variance prediction of fidelity level j.

Returns:

The fidelity correlation value

Return type:

np.ndarray

smt_optim.acquisition_functions.expected_improvement.log1mexp(z: ndarray) ndarray[source]#
smt_optim.acquisition_functions.expected_improvement.log_ei(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#

Vectorized Log Expected Improvement acquisition function.

LogEI is more numerically stable that the EI acquisition function especially when the GP’s variance is small. From: https://arxiv.org/abs/2310.20708.

Parameters:
  • mu (np.ndarray) – Mean prediction of shape (num_points, 1).

  • s2 (np.ndarray) – Variance prediction of shape (num_points, 1).

  • f_min (float) – Best minimum objective value in training data.

Return type:

np.ndarray

smt_optim.acquisition_functions.expected_improvement.probability_of_improvement(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#

Probability of Improvement acquisition function. :param mu: Mean prediction. :type mu: np.ndarray

Parameters:
  • s2 (np.ndarray) – Variance prediction.

  • f_min (np.ndarray) – Minimum predicted objective value.

Returns:

The PI acquisition function value.

Return type:

np.ndarray

smt_optim.acquisition_functions.expected_improvement.vec_expected_improvement(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#

Vectorized Expected Improvement acquisition function.

Parameters:
  • mu (np.ndarray) – Mean prediction of shape (num_points, 1).

  • s2 (np.ndarray) – Variance prediction of shape (num_points, 1).

  • f_min (float) – Best minimum objective value in training data.

Returns:

Expected Improvement values of shape (num_points, 1).

Return type:

np.ndarray

Module contents#

smt_optim.acquisition_functions.expected_improvement(mu: float, s2: float, f_min: float) float[source]#

Expected Improvement acquisition function.

Parameters:
  • mu (float) – Mean prediction.

  • s2 (float) – Variance prediction.

  • f_min (float) – Best minimum objective value in training data.

Returns:

Expected Improvement value.

Return type:

float

smt_optim.acquisition_functions.log_ei(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#

Vectorized Log Expected Improvement acquisition function.

LogEI is more numerically stable that the EI acquisition function especially when the GP’s variance is small. From: https://arxiv.org/abs/2310.20708.

Parameters:
  • mu (np.ndarray) – Mean prediction of shape (num_points, 1).

  • s2 (np.ndarray) – Variance prediction of shape (num_points, 1).

  • f_min (float) – Best minimum objective value in training data.

Return type:

np.ndarray

smt_optim.acquisition_functions.probability_of_improvement(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#

Probability of Improvement acquisition function. :param mu: Mean prediction. :type mu: np.ndarray

Parameters:
  • s2 (np.ndarray) – Variance prediction.

  • f_min (np.ndarray) – Minimum predicted objective value.

Returns:

The PI acquisition function value.

Return type:

np.ndarray

smt_optim.acquisition_functions.vec_expected_improvement(mu: ndarray, s2: ndarray, f_min: float) ndarray[source]#

Vectorized Expected Improvement acquisition function.

Parameters:
  • mu (np.ndarray) – Mean prediction of shape (num_points, 1).

  • s2 (np.ndarray) – Variance prediction of shape (num_points, 1).

  • f_min (float) – Best minimum objective value in training data.

Returns:

Expected Improvement values of shape (num_points, 1).

Return type:

np.ndarray