deephyper.skopt.moo.MoPBIFunction#
- class deephyper.skopt.moo.MoPBIFunction(n_objectives: int = 1, weight=None, weight_sampling_periode: int = 1, utopia_point=None, random_state=None, penalty: float = 5.0)[source]#
Bases:
MoScalarFunction
This scalarizing function computes the projection of the objective vector along a reference vector and adds a penalty term to minimize deviations from the projected point to the attainable objective set. See https://doi.org/10.1109/TEVC.2007.892759
- Parameters:
n_objectives (int, optional) – Number of objective functions. Defaults to
1
.weight (float or 1-D array, optional) – Array of weights for each objective function. Defaults to
`None
.weight_sampling_periode (int, optional) – Sampling periode for the weight vector. Defaults to
5
.utopia_point (float or 1-D array, optional) – Array of reference values for each objective function. Defaults to
None
.random_state (int, optional) – Random seed. Defaults to
None
.penalty (float, optional) – Value of penalty parameter. Defaults to
100.0
.
Methods
Compute normalization constants based on the history of evaluated objective values.
Convert the input array (or scalar) into a scalar value.
update_weight
- normalize(yi)#
Compute normalization constants based on the history of evaluated objective values.
- Parameters:
yi (array) – Array of evaluated objective values.
- Raises:
ValueError – Raised if yi is not a list of scalars each of length _n_objectives.