saealib.EnsembleSurrogateManager¶
- class saealib.EnsembleSurrogateManager(managers, weights=None)[source]¶
Bases:
SurrogateManagerSurrogate manager that aggregates scores from multiple sub-managers.
Each sub-manager produces scores, which are rank-normalized to [0, 1] before being aggregated via a weighted average. Rank normalization ensures scores from managers with incompatible scales (e.g., EI vs. raw mean) are made comparable before combining.
- Parameters:
managers (list[SurrogateManager]) – Sub-managers to aggregate.
weights (np.ndarray or None) – Weights for the weighted average. shape: (len(managers),). If None, uniform weights are used.
Methods
Aggregate rank-normalized scores from all sub-managers. |
Method Details
- EnsembleSurrogateManager.__init__(managers, weights=None)[source]¶
- Parameters:
managers (list[SurrogateManager])
weights (ndarray | None)
- EnsembleSurrogateManager.score_candidates(candidates_x, archive, provider=None, ctx=None)[source]¶
Aggregate rank-normalized scores from all sub-managers.
Returns the predictions from the first sub-manager as representative.
- Parameters:
candidates_x (np.ndarray)
archive (Archive)
provider (ComponentProvider | None)
ctx (OptimizationContext | None)
- Return type:
tuple[np.ndarray, list[SurrogatePrediction]]