Quantum optimization ProblemType
ProblemType
from azure.quantum.optimization import ProblemType
The ProblemType enum allows you to specify the type of optimization problem
you would like to solve.
ProblemType.pubo
A polynomial unconstrained binary optimization problem (PUBO) is a problem of the form:
$$H = \sum_{i} c_{i} x_{i} + \sum_{i,j} c_{i,j} x_{i} x_{j} + \sum_{i,j,k} c_{i,j,k} x_{i} x_{j} x_{k} \text{ where } c_{i,j,k} \in R \text{ and } x_{i,j,k} \in [0, 1]$$
Where H is the cost function, also known as the Hamiltonian. It is called k-local if the maximum degree of the polynomial is k.
ProblemType.ising
An Ising Model is a cost function of the form:
$$H = \sum_{i} c_{i} s_{i} + \sum_{i,j} c_{i,j} s_{i} s_{j} + \sum_{i,j,k} c_{i,j,k} s_{i} s_{j} s_{k} \text{ where } c_{i,j,k} \in R \text{ and } s_{i,j,k} \in [-1, 1]$$
It is called k-local if the maximum degree of the polynomial is k.
Grouped terms
Both problem types support grouped terms. If grouped terms are included in the cost function, use ProblemType.pubo_grouped or ProblemType.ising_grouped.
The SDK will adjust the problem type automatically used once a grouped term is added.
Note
Only a subset of optimization solvers currently support grouped terms.
Refer to the SlcTerm documentation for details.
Feedback
Issottometti u ara feedback għal