English
Languages
English
Shortcuts



QuadraticExpression

class QuadraticExpression(quadratic_program, coefficients)[source]

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.

Attributes

bounds

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

coefficients

Returns the coefficients of the quadratic expression.

Methods

__getitem__(key)

Returns the coefficient where i, j can be a variable names or indices.

evaluate(x)

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

evaluate_gradient(x)

Evaluate the gradient of the quadratic expression for given variables.

to_array([symmetric])

Returns the coefficients of the quadratic expression as array.

to_dict([symmetric, use_name])

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