Acquisition Functions#

Layer 2: Compose

Base#

saealib.AcquisitionFunction

Abstract base class for acquisition functions (infill criteria).

Implementations#

saealib.ExpectedImprovement

Expected Improvement (EI) acquisition function.

saealib.BatchExpectedImprovement

Monte Carlo qEI with candidate-joint covariance and greedy set utility.

saealib.LowerConfidenceBound

Lower Confidence Bound (LCB) acquisition function.

saealib.MaxUncertainty

Acquisition function that maximizes predictive uncertainty (exploration).

saealib.MeanPrediction

Acquisition function based on predicted mean value (exploitation).

saealib.CORSDistance

CORS distance-constrained predicted-mean acquisition function.

saealib.acquisition.CORSReference

Prepared archive reference and beta for one CORS decision.

saealib.ProbabilityOfFeasibility

Probability of Feasibility (PoF) acquisition function.

saealib.ProductOfFeasibility

Joint probability of feasibility across all constraint columns.

saealib.EHVIAcquisition

Expected Hypervolume Improvement (EHVI) acquisition function.

saealib.ParEGOAcquisition

ParEGO acquisition function for multi-objective Bayesian optimisation.

saealib.SMSEGOAcquisition

SMS-EGO acquisition function for multi-objective Bayesian optimisation.

saealib.gp_ucb_beta_schedule(domain_size, delta=0.1)[source]#

Return the finite-domain GP-UCB beta_t schedule for use with beta_schedule.

Implements the finite-domain schedule beta_t = 2 log(domain_size * t^2 * pi^2 / (6 * delta)) [25], where domain_size is the cardinality |D| of a finite decision set. This helper does not implement the cited paper’s separate continuous-domain schedule (a different formula, for a compact domain). Passing a domain_size for a continuous search space only substitutes a number into this finite-domain formula; it does not by itself grant the finite-domain theorem’s regret guarantee – see the “GP-UCB” algorithm page in the docs for the additional conditions that requires.

Parameters:
  • domain_size (int) – Cardinality |D| of the finite decision set (the cited bound’s |D|). Must be an int and positive.

  • delta (float) – Confidence parameter. Must satisfy 0 < delta < 1. Default: 0.1.

Returns:

A picklable schedule(t) -> float, increasing in the round index t (t must be an int starting at 1; raises ValidationError for a non-integer t or t < 1).

Return type:

callable

Raises:

ValidationError – If domain_size is not an int or positive, or delta is not in (0, 1).

CORSDistance#

CORSDistance applies the CORS distance constraint to predicted-mean scores. prepare(archive, ctx) selects the beta value from ctx.decision_count and returns a CORSReference carrying it alongside the evaluated points, so the first decision uses the first search-pattern entry and later decisions repeat the pattern cyclically. The canonical source-faithful configuration sends one candidate to true evaluation per decision, for example with PreSelectionStrategy(..., n_select=1) or TopKEvaluation(1).

With delta=None, the distance scale is approximated from the current candidate pool as the maximum minimum distance to the evaluated archive. A finite positive delta can be supplied for a fixed scale.