ProbabilityOfImprovement

class baybe.acquisition.acqfs.ProbabilityOfImprovement[source]

Bases: AcquisitionFunction

Analytical probability of improvement.

Public methods

__init__()

Method generated by attrs for class ProbabilityOfImprovement.

evaluate(candidates, surrogate, searchspace, ...)

Get the acquisition values for the given candidates.

from_dict(dictionary)

Create an object from its dictionary representation.

from_json(source, /)

Create an object from its JSON representation.

to_botorch(surrogate, searchspace, ...[, ...])

Create the botorch-ready representation of the function.

to_dict()

Create an object's dictionary representation.

to_json([sink, overwrite])

Create an object's JSON representation.

Public attributes and properties

abbreviation

An alternative name for type resolution.

supports_multi_output

Whether this acquisition function can handle models with multiple outputs.

__init__()

Method generated by attrs for class ProbabilityOfImprovement.

For details on the parameters, see Public attributes and properties.

evaluate(candidates: DataFrame, surrogate: SurrogateProtocol, searchspace: SearchSpace, objective: Objective, measurements: DataFrame, pending_experiments: DataFrame | None = None, *, jointly: bool = False)

Get the acquisition values for the given candidates.

Parameters:
Return type:

Series | float

Returns:

Depending on the joint mode, either a single batch acquisition value or a series of individual acquisition values.

classmethod from_dict(dictionary: dict)

Create an object from its dictionary representation.

Parameters:

dictionary (dict) – The dictionary representation.

Return type:

TypeVar(_T, bound= SerialMixin)

Returns:

The reconstructed object.

classmethod from_json(source: str | Path | SupportsRead[str], /)

Create an object from its JSON representation.

Parameters:

source (str | Path | SupportsRead[str]) –

The JSON source. Can be:

  • A string containing JSON content.

  • A file path or Path object pointing to a JSON file.

  • A file-like object with a read() method.

Raises:

ValueError – If source is not one of the allowed types.

Return type:

_T

Returns:

The reconstructed object.

to_botorch(surrogate: SurrogateProtocol, searchspace: SearchSpace, objective: Objective, measurements: DataFrame, pending_experiments: DataFrame | None = None)

Create the botorch-ready representation of the function.

The required structure of measurements is specified in baybe.recommenders.base.RecommenderProtocol.recommend().

Return type:

AcquisitionFunction

to_dict()

Create an object’s dictionary representation.

Return type:

dict

Returns:

The dictionary representation of the object.

to_json(sink: str | Path | SupportsWrite[str] | None = None, /, *, overwrite: bool = False, **kwargs: Any)

Create an object’s JSON representation.

Parameters:
  • sink (str | Path | SupportsWrite[str] | None) –

    The JSON sink. Can be:

    • None (only returns the JSON string).

    • A file path or Path object pointing to a location where to write the JSON content.

    • A file-like object with a write() method.

  • overwrite (bool) – Boolean flag indicating if to overwrite the file if it already exists. Only relevant if sink is a file path or Path object.

  • **kwargs (Any) – Additional keyword arguments to pass to json.dumps().

Raises:

FileExistsError – If sink points to an already existing file but overwrite is False.

Return type:

str

Returns:

The JSON representation as a string.

abbreviation: ClassVar[str] = 'PI'

An alternative name for type resolution.

supports_multi_output: ClassVar[bool] = False

Whether this acquisition function can handle models with multiple outputs.