import networkx as nx
import matplotlib.pyplot as plt
from blueqat import vqe
from blueqat.pauli import Z
#グラフを作ります。
G = nx.Graph()
#エッジを準備します。
edges = [(0,1),(0,3),(1,2),(2,3),(2,4),(3,4)]
G.add_edges_from(edges)
#描画します
nx.draw_networkx(G)
#量子回路を作ります
ansatz = vqe.QaoaAnsatz(sum([Z(i)*Z(j) for i, j in edges]), 1)
#こちらを量子古典ハイブリッド計算で実行します
result = vqe.Vqe(ansatz).run()
print(result.most_common(12))
#計算結果を表示します
nx.draw_networkx(G,node_color = result.most_common()[0][0])