qiskit-documentation/docs/api/qiskit/0.26/qiskit.optimization.problem...

155 lines
7.8 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: QuadraticExpression
description: API reference for qiskit.optimization.problems.QuadraticExpression
in_page_toc_min_heading_level: 1
python_api_type: class
python_api_name: qiskit.optimization.problems.QuadraticExpression
---
# qiskit.optimization.problems.QuadraticExpression
<Class id="qiskit.optimization.problems.QuadraticExpression" isDedicatedPage={true} github="https://github.com/qiskit-community/qiskit-aqua/tree/stable/0.9/qiskit/optimization/problems/quadratic_expression.py" signature="QuadraticExpression(quadratic_program, coefficients)" modifiers="class">
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.
### \_\_init\_\_
<Function id="qiskit.optimization.problems.QuadraticExpression.__init__" signature="__init__(quadratic_program, 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.
</Function>
## Methods
| | |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| [`__init__`](#qiskit.optimization.problems.QuadraticExpression.__init__ "qiskit.optimization.problems.QuadraticExpression.__init__")(quadratic\_program, coefficients) | Creates a new quadratic expression. |
| [`evaluate`](#qiskit.optimization.problems.QuadraticExpression.evaluate "qiskit.optimization.problems.QuadraticExpression.evaluate")(x) | Evaluate the quadratic expression for given variables: x \* Q \* x. |
| [`evaluate_gradient`](#qiskit.optimization.problems.QuadraticExpression.evaluate_gradient "qiskit.optimization.problems.QuadraticExpression.evaluate_gradient")(x) | Evaluate the gradient of the quadratic expression for given variables. |
| [`to_array`](#qiskit.optimization.problems.QuadraticExpression.to_array "qiskit.optimization.problems.QuadraticExpression.to_array")(\[symmetric]) | Returns the coefficients of the quadratic expression as array. |
| [`to_dict`](#qiskit.optimization.problems.QuadraticExpression.to_dict "qiskit.optimization.problems.QuadraticExpression.to_dict")(\[symmetric, use\_name]) | Returns the coefficients of the quadratic expression as dictionary, either using tuples of variable names or indices as keys. |
## Attributes
| | |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| [`coefficients`](#qiskit.optimization.problems.QuadraticExpression.coefficients "qiskit.optimization.problems.QuadraticExpression.coefficients") | Returns the coefficients of the quadratic expression. |
| [`quadratic_program`](#qiskit.optimization.problems.QuadraticExpression.quadratic_program "qiskit.optimization.problems.QuadraticExpression.quadratic_program") | Returns the parent QuadraticProgram. |
### coefficients
<Attribute id="qiskit.optimization.problems.QuadraticExpression.coefficients">
Returns the coefficients of the quadratic expression.
**Return type**
`dok_matrix`
**Returns**
The coefficients of the quadratic expression.
</Attribute>
### evaluate
<Function id="qiskit.optimization.problems.QuadraticExpression.evaluate" signature="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.
</Function>
### evaluate\_gradient
<Function id="qiskit.optimization.problems.QuadraticExpression.evaluate_gradient" signature="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.
</Function>
### quadratic\_program
<Attribute id="qiskit.optimization.problems.QuadraticExpression.quadratic_program">
Returns the parent QuadraticProgram.
**Return type**
`Any`
**Returns**
The parent QuadraticProgram.
</Attribute>
### to\_array
<Function id="qiskit.optimization.problems.QuadraticExpression.to_array" signature="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.
</Function>
### to\_dict
<Function id="qiskit.optimization.problems.QuadraticExpression.to_dict" signature="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.
</Function>
</Class>