saealib.ParEGOAcquisition#
- class saealib.ParEGOAcquisition(alpha=0.05, rng=None, direction=None)[ソース]#
ベースクラス:
PointwiseAcquisitionParEGO acquisition function for multi-objective Bayesian optimisation.
Scalarises objectives using the Augmented Tchebycheff function with a randomly sampled weight vector, then applies Expected Improvement on the scalarised prediction (Knowles 2006; a scalarization variant informed by Chugh 2020).
Scalarised objective (minimised):
g(f; w, z*) = max_i [w_i |f_i - z_i*|] + alpha * sum_i w_i |f_i - z_i*|
where z* is the component-wise minimum of the current archive and w is drawn uniformly from the (k-1)-simplex at each call to
compute_reference.Because saealib's ABC receives
(n_samples, n_obj)predictions rather than per-objective GP posteriors, the scalarised GP is approximated:mu_s = g(mu; w, z*) std_s = (w . std).sum(axis=-1) [linear-combination approximation]
EI is then computed on (mu_s, std_s) against the best scalarised archive value.
- パラメータ:
alpha (float) -- Augmentation coefficient (rho in some references). Default: 0.05 (mlr3mbo convention).
rng (np.random.Generator or None) -- Random number generator for weight sampling.
direction (np.ndarray or None) -- Per-objective optimization direction (+1 = maximize, -1 = minimize). shape: (n_obj,).
archive.fand the predicted mean are converted to minimize-space viadirection_to_minimize_signbefore the (minimize-only) scalarisation above runs.None(default) means already-minimize; when unset, it is auto-injected fromproblem.directionat run start.
参照
[29]: Knowles, J. (2006). ParEGO: A hybrid algorithm with on-line landscape approximation for expensive multiobjective optimization problems. IEEE Transactions on Evolutionary Computation, 10(1), 50-66. (Conceptual origin.)
[30]: Chugh, T. (2020). Scalarizing functions in Bayesian multiobjective optimization. 2020 IEEE Congress on Evolutionary Computation (CEC), 1-8. (Scalarization-family reference; saealib uses the weighted augmentation variant documented above.)
Methods
Sample a new weight vector and compute the ideal point. |
|
Return the ParEGO acquisition contract. |
|
Reject |
|
Delegate to |
|
Compute EI on the Augmented Tchebycheff scalarised prediction. |
Method Details
- ParEGOAcquisition.__init__(alpha=0.05, rng=None, direction=None)[ソース]#
- パラメータ:
alpha (float)
rng (Generator | None)
direction (ndarray | None)
- 戻り値の型:
None
- ParEGOAcquisition.compute_reference(archive, rng=None)[ソース]#
Sample a new weight vector and compute the ideal point.
- パラメータ:
archive (Archive) -- Archive of evaluated solutions.
rng (np.random.Generator or None, optional) -- Random number generator. When provided (e.g.
ctx.rng), it is used instead of the instance-level_rngso all randomness flows through the master RNG.
- 戻り値:
(z_star, weights, f_best_scalar)— component-wise minimum of archive objective values, a new weight vector drawn uniformly from the (k-1)-simplex, and the minimum scalarised archive value under these weights.- 戻り値の型:
tuple
- ParEGOAcquisition.evaluate(candidates_x, prediction, archive, ctx=None, *, prepared=<object object>)#
Reject
prediction is None, resolve the reference, thenscore().See
AcquisitionFunction.evaluate()for the shared parameter contract, including the_UNSETvs. explicitprepared=Nonedistinction.- パラメータ:
candidates_x (np.ndarray)
prediction (SurrogatePrediction | None)
archive (Archive)
ctx (OptimizationState | None)
prepared (Any)
- 戻り値の型:
AcquisitionResult
- ParEGOAcquisition.prepare(archive, ctx=None)#
Delegate to
compute_reference(archive, rng=ctx.rng if ctx else None).- パラメータ:
archive (Archive)
ctx (OptimizationState | None)
- 戻り値の型:
Any
- ParEGOAcquisition.score(prediction, reference, rng=None)[ソース]#
Compute EI on the Augmented Tchebycheff scalarised prediction.
- パラメータ:
prediction (SurrogatePrediction) -- Surrogate predictions. Must have std (has_uncertainty == True).
reference (tuple) --
(z_star, weights, f_best_scalar)fromcompute_reference.rng (Generator | None)
- 戻り値:
EI scores. shape: (n_samples,). Higher is better.
- 戻り値の型:
np.ndarray
- 例外:
TypeError -- If prediction does not contain uncertainty estimates.