Skip to main content
IBM Quantum Platform
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.

QuadraticExpression

class QuadraticExpression(quadratic_program, coefficients)

GitHub

Bases: qiskit.optimization.problems.quadratic_program_element.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}.

Parameters

  • quadratic_program (Any) – The parent QuadraticProgram.
  • coefficients (Union[ndarray, spmatrix, List[List[float]], Dict[Tuple[Union[int, str], Union[int, str]], float]]) – The (sparse) representation of the coefficients.

Methods

evaluate

QuadraticExpression.evaluate(x)

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

Parameters

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

Return type

float

Returns

The value of the quadratic expression given the variable values.

evaluate_gradient

QuadraticExpression.evaluate_gradient(x)

Evaluate the gradient of the quadratic expression for given variables.

Parameters

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

Return type

ndarray

Returns

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

to_array

QuadraticExpression.to_array(symmetric=False)

Returns the coefficients of the quadratic expression as array.

Parameters

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

Return type

ndarray

Returns

An array with the coefficients corresponding to the quadratic expression.

to_dict

QuadraticExpression.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.

Parameters

  • 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.

Return type

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

Returns

An dictionary with the coefficients corresponding to the quadratic expression.


Attributes

coefficients

Returns the coefficients of the quadratic expression.

Return type

dok_matrix

Returns

The coefficients of the quadratic expression.

quadratic_program

Returns the parent QuadraticProgram.

Return type

Any

Returns

The parent QuadraticProgram.

Was this page helpful?
Report a bug or request content on GitHub.