One hot constraints
For examples such as eg the distributed-computing tutorial, the tutorials note that graph nodes must be assigned a one hot constraint such that a constraint may be applied that the sum of binary variables in a solution is 1. I am curious why you couldn't just omit this one hot constraint and instead assign each node a binary representation, e.g. instead of {1000, 0100, 0010, 0001} instead encode as {00, 01, 10, 11}, and then omit the constraint. Would this be greatly more efficient towards qubit utilization?
Comments
Nicholas,
You are correct in that those four-qubit states can be efficiently mapped to the four two-qubit states and it would cut down on qubit requirements. However, doing so makes implementing algorithms more complicated because it adds another layer of abstraction. In the one-hot encoding, each binary variable is represented by a qubit. In the binary encoding variables are represented by a set of qubits; similar to the idea of a chain but more abstract.
One simple difference in how the one-hot and binary encodings act is that the one-hot encoding allows for non-feasible solutions (e.g. 1101). In situations where perfect feasibility isn't possible, the binary encoding would not be able to produce near-feasible solutions.
Does the ocean protocol natively support integrations of additional layers of abstraction of this nature? I built some python binarization encode/decode implementations for Automunge library would be happy to share (BSD-3 license).
Hello,
It is possible to create workflows that integrate D-Wave solvers using the dwave-hybrid framework. Custom modules can be written and run as part of this workflow.
If you are interested in having your Python binarization encode/decode implementations included in the D-Wave Ocean Tools library directly, please submit your code to the Ocean Tools GitHub repository via pull request for consideration in our code review process.
I hope this helped answer your questions. Please feel free to reach out with further clarifications.
Please sign in to leave a comment.