ContinuousLinearInequalityConstraint

class baybe.constraints.continuous.ContinuousLinearInequalityConstraint[source]

Bases: ContinuousConstraint

Class for continuous inequality constraints.

The constraint is defined as sum_i[ x_i * c_i ] >= rhs, where x_i are the parameter names from parameters and c_i are the entries of coefficients. If you want to implement a constraint of the form <=, multiply rhs and coefficients by -1. The constraint is typically fulfilled up to a small numerical tolerance.

The class has no real content as it only serves the purpose of distinguishing the constraints.

Public methods

__init__(parameters[, coefficients, rhs])

Method generated by attrs for class ContinuousLinearInequalityConstraint.

from_dict(dictionary)

Create an object from its dictionary representation.

from_json(string)

Create an object from its JSON representation.

summary()

Return a custom summarization of the constraint.

to_botorch(parameters[, idx_offset])

Cast the constraint in a format required by botorch.

to_dict()

Create an object's dictionary representation.

to_json()

Create an object's JSON representation.

Public attributes and properties

coefficients

In-/equality coefficient for each entry in parameters.

eval_during_creation

Class variable encoding whether the condition is evaluated during creation.

eval_during_modeling

Class variable encoding whether the condition is evaluated during modeling.

is_continuous

Boolean indicating if this is a constraint over continuous parameters.

is_discrete

Boolean indicating if this is a constraint over discrete parameters.

parameters

The list of parameters used for the constraint.

rhs

Right-hand side value of the in-/equality.

__init__(parameters: list[str], coefficients: list[float] = NOTHING, rhs: float = 0.0)

Method generated by attrs for class ContinuousLinearInequalityConstraint.

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

classmethod from_dict(dictionary: dict)

Create an object from its dictionary representation.

Parameters:

dictionary (dict) – The dictionary representation.

Return type:

TypeVar(_T)

Returns:

The reconstructed object.

classmethod from_json(string: str)

Create an object from its JSON representation.

Parameters:

string (str) – The JSON representation of the object.

Return type:

TypeVar(_T)

Returns:

The reconstructed object.

summary()

Return a custom summarization of the constraint.

Return type:

dict

to_botorch(parameters: list[NumericalContinuousParameter], idx_offset: int = 0)

Cast the constraint in a format required by botorch.

Used in calling optimize_acqf_* functions, for details see https://botorch.org/api/optim.html#botorch.optim.optimize.optimize_acqf

Parameters:
  • parameters (list[NumericalContinuousParameter]) – The parameter objects of the continuous space.

  • idx_offset (int) – Offset to the provided parameter indices.

Return type:

tuple[Tensor, Tensor, float]

Returns:

The tuple required by botorch.

to_dict()

Create an object’s dictionary representation.

Return type:

dict

to_json()

Create an object’s JSON representation.

Return type:

str

Returns:

The JSON representation as a string.

coefficients: list[float]

In-/equality coefficient for each entry in parameters.

eval_during_creation: ClassVar[bool] = False

Class variable encoding whether the condition is evaluated during creation.

eval_during_modeling: ClassVar[bool] = True

Class variable encoding whether the condition is evaluated during modeling.

property is_continuous: bool

Boolean indicating if this is a constraint over continuous parameters.

property is_discrete: bool

Boolean indicating if this is a constraint over discrete parameters.

parameters: list[str]

The list of parameters used for the constraint.

rhs: float

Right-hand side value of the in-/equality.