QuadraticExpression
class QuadraticExpression(quadratic_program, coefficients)
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.