dimod.BinaryQuadraticModel.from_json¶
-
classmethod
BinaryQuadraticModel.from_json(obj)[source]¶ Deserialize a binary quadratic model from a JSON encoding.
Parameters: obj – (str/file): Either a string or a .read()-supporting file object that represents linear and quadratic biases for a binary quadratic model formatted in accordance to the current BQM schema. Examples
This example shows a serialized binary quadratic model in JSON encoding for schema version 1.0.0.
{ "linear_terms": [ {"bias": 1.0, "label": 0}, {"bias": -1.0, "label": 1} ], "info": {}, "offset": 0.5, "quadratic_terms": [ {"bias": 0.5, "label_head": 1, "label_tail": 0} ], "variable_labels": [0, 1], "variable_type": "SPIN", "version": { "bqm_schema": "1.0.0", "dimod": "0.6.3" } }
This example saves a binary quadratic model to a JSON-format file and creates a new model by reading the saved file.
>>> import dimod >>> bqm = dimod.BinaryQuadraticModel({'a': -1.0, 'b': 1.0}, {('a', 'b'): -1.0}, 0.0, dimod.SPIN) >>> with open('tmp.txt', 'w') as file: ... bqm.to_json(file) >>> with open('tmp.txt', 'r') as file: ... new_bqm = dimod.BinaryQuadraticModel.from_json(file)