dimod.BinaryQuadraticModel.to_ising

BinaryQuadraticModel.to_ising()[source]

Converts a binary quadratic model to Ising format.

If the binary quadratic model’s vartype is not Vartype.SPIN, values are converted.

Returns:3-tuple of form (linear, quadratic, offset), where linear is a dict of linear biases, quadratic is a dict of quadratic biases, and offset is a number that represents the constant offset of the binary quadratic model.
Return type:tuple

Examples

This example converts a binary quadratic model to an Ising problem.

>>> import dimod
>>> model = dimod.BinaryQuadraticModel({0: 1, 1: -1, 2: .5},
...                                    {(0, 1): .5, (1, 2): 1.5},
...                                    1.4,
...                                    dimod.SPIN)
>>> model.to_ising()    # doctest: +SKIP
({0: 1, 1: -1, 2: 0.5}, {(0, 1): 0.5, (1, 2): 1.5}, 1.4)