QuadraticExpression#

class QuadraticExpression(quadratic_program, coefficients)[ソース]#

ベースクラス: QuadraticProgramElement

Representation of a quadratic expression by its coefficients.

Creates a new quadratic expression.

The quadratic expression can be defined via an array, a list, a sparse matrix, or a dictionary that uses variable names or indices as keys and stores the values internally as a dok_matrix. We stores values in a compressed way, i.e., values at symmetric positions are summed up in the upper triangle. For example, {(0, 1): 1, (1, 0): 2} -> {(0, 1): 3}.

パラメータ:

Attributes

bounds#

Returns the lower bound and the upper bound of the quadratic expression

戻り値:

The lower bound and the upper bound of the quadratic expression

例外:

QiskitOptimizationError – if the quadratic expression contains any unbounded variable

coefficients#

Returns the coefficients of the quadratic expression.

戻り値:

The coefficients of the quadratic expression.

quadratic_program#

Returns the parent QuadraticProgram.

戻り値:

The parent QuadraticProgram.

Methods

evaluate(x)[ソース]#

Evaluate the quadratic expression for given variables: x * Q * x.

パラメータ:

x (ndarray | List | Dict[int | str, float]) – The values of the variables to be evaluated.

戻り値:

The value of the quadratic expression given the variable values.

戻り値の型:

float

evaluate_gradient(x)[ソース]#

Evaluate the gradient of the quadratic expression for given variables.

パラメータ:

x (ndarray | List | Dict[int | str, float]) – The values of the variables to be evaluated.

戻り値:

The value of the gradient quadratic expression given the variable values.

戻り値の型:

ndarray

to_array(symmetric=False)[ソース]#

Returns the coefficients of the quadratic expression as array.

パラメータ:

symmetric (bool) – Determines whether the output is in a symmetric form or not.

戻り値:

An array with the coefficients corresponding to the quadratic expression.

戻り値の型:

ndarray

to_dict(symmetric=False, use_name=False)[ソース]#

Returns the coefficients of the quadratic expression as dictionary, either using tuples of variable names or indices as keys.

パラメータ:
  • symmetric (bool) – Determines whether the output is in a symmetric form or not.

  • use_name (bool) – Determines whether to use index or names to refer to variables.

戻り値:

An dictionary with the coefficients corresponding to the quadratic expression.

戻り値の型:

Dict[Tuple[int, int] | Tuple[str, str], float]