dimod.from_networkx_graph

from_networkx_graph(G, vartype=None, node_attribute_name='bias', edge_attribute_name='bias', cls=<class 'dimod.bqm.adjdictbqm.AdjDictBQM'>)[source]

Create a binary quadratic model from a NetworkX graph.

Parameters:
  • G (networkx.Graph) – A NetworkX graph with biases stored as node/edge attributes.
  • vartype (Vartype/str/set, optional) –

    Variable type for the binary quadratic model. Accepted input values:

    • Vartype.SPIN, 'SPIN', {-1, 1}
    • Vartype.BINARY, 'BINARY', {0, 1}

    If not provided, the G should have a vartype attribute. If vartype is provided and G.vartype exists then the argument overrides the property.

  • node_attribute_name (hashable, optional, default='bias') – Attribute name for linear biases. If the node does not have a matching attribute then the bias defaults to 0.
  • edge_attribute_name (hashable, optional, default='bias') – Attribute name for quadratic biases. If the edge does not have a matching attribute then the bias defaults to 0.
  • cls (type, optional, default=:obj:.AdjDictBQM) – The type of binary quadratic model to construct.
Returns:

A binary quadratic model of type cls.