Variable

class Variable

Bases: object

A base class representing a decision variable for the optimization problem.

Methods

__init__

Initialize a decision variable.

to_poly

Converts the variable to the Amplify SDK's polynomial representation.

Attributes

bounds

Returns the bounds of the variable.

encoding

Returns the encoding method for the variable.

name

Returns the name of the variable.

possible_values

Returns a list of possible values for a discrete variable, or a pair of boundary values for a continuous variable.

type

Returns the type of the variable.

__add__(other: Variable | Poly | float) Poly
__eq__(other: object) bool

Return self==value.

__hash__() int

Return hash(self).

__init__(
var_type: VariableType,
bounds: tuple[float, float] | None = None,
encoding: _EncodingMethodBase | None = None,
) None

Initialize a decision variable.

Parameters:
  • var_type (amplify.VariableType) – The type of the variable.

  • bounds (tuple[float, float] | None, optional) – The bounds of the variable. Defaults to None.

  • encoding (_EncodingMethodBase | None, optional) – The encoding method for the variable. Defaults to None.

__mul__(other: Variable | Poly | float) Poly
__ne__(other: object) bool

Return self!=value.

__neg__() Poly
__pos__() Poly
__pow__(other: int) Poly
__radd__(other: Poly | float) Poly
__repr__() str

Return repr(self).

__rmul__(other: Poly | float) Poly
__rsub__(other: Poly | float) Poly
__str__() str

Return str(self).

__sub__(other: Variable | Poly | float) Poly
__truediv__(other: float) Poly
to_poly() Poly

Converts the variable to the Amplify SDK’s polynomial representation.

Returns:

The Amplify SDK’s polynomial representation of the variable.

Return type:

amplify.Poly

__dict__ = mappingproxy({'__module__': 'amplify_bbopt.variable', '__doc__': 'A base class representing a decision variable for the optimization problem.', '__init__': <function Variable.__init__>, 'name': <property object>, 'type': <property object>, 'possible_values': <property object>, 'bounds': <property object>, 'encoding': <property object>, 'to_poly': <function Variable.to_poly>, '__add__': <function Variable.__add__>, '__radd__': <function Variable.__radd__>, '__sub__': <function Variable.__sub__>, '__rsub__': <function Variable.__rsub__>, '__mul__': <function Variable.__mul__>, '__rmul__': <function Variable.__rmul__>, '__truediv__': <function Variable.__truediv__>, '__pos__': <function Variable.__pos__>, '__neg__': <function Variable.__neg__>, '__pow__': <function Variable.__pow__>, '__eq__': <function Variable.__eq__>, '__hash__': <function Variable.__hash__>, '__ne__': <function Variable.__ne__>, '__str__': <function Variable.__str__>, '__repr__': <function Variable.__repr__>, '_repr_latex_': <function Variable._repr_latex_>, '__dict__': <attribute '__dict__' of 'Variable' objects>, '__weakref__': <attribute '__weakref__' of 'Variable' objects>, '__annotations__': {}})
__weakref__

list of weak references to the object (if defined)

property bounds: tuple[float | None, float | None] | None

Returns the bounds of the variable.

property encoding: _EncodingMethodBase

Returns the encoding method for the variable.

property name: str

Returns the name of the variable.

property possible_values: list[float | int] | tuple[float, float]

Returns a list of possible values for a discrete variable, or a pair of boundary values for a continuous variable.

Returns:

The possible values or bounds.

Return type:

list[float | int] | tuple[float, float]

property type: VariableType

Returns the type of the variable.