Skip to main content

Quantum annealing with D-Wave

Here we introduce the calculation method using quantum annealing using D-Wave machine.

JijZept uses AWS Braket as its backend to access D-Wave's quantum annealing machines, so users do not need to subscribe to D-Wave separately.

Quantum annealing

Quantum annealing as implemented on D-Wave machines is performed using the transverse-field Ising model. The Hamiltonian of the transverse field Ising model is written as

H^(s)=A(s)i=1Nσ^ix+B(s)(i<jJijσ^izσ^jz+ihiσ^iz)(1)\hat{H}(s) = - A(s)\sum_{i=1}^N \hat{\sigma}_i^x + B(s)\left( \sum_{i<j} J_{ij} \hat{\sigma}_i^z \hat{\sigma}_j^z + \sum_i h_i \hat \sigma^z_i \right) \tag{1}

which σ^z,x\hat \sigma^{z, x} is a pauli operator and A(s),B(s)A(s), B(s) represents annealing schedule function.

Please check D-Wave's documentation for more detail.

JijAamazonBraketDWaveSampler

To use DWave with JijZept, use the JijAmazonBraketDWaveSampler.

import jijzept as jz

sampler = jz.JijAmazonBraketDWaveSampler(token='*** your API key ***', url='https://api.jijzept.com')

Of course, like other Samplers, this D-Wave Sampler can use the .sample_model method to perform optimization calculations using JijModeling.

response - sampler.sample_model(problem, ph_value)

With JijAmazonBraketDWaveSampler, the graph embedding process runs on the JijZept side, so you do not need to think about the physical graph of the D-Wave QPU and the logical graph of the problem.

note

JijZept provide only D-Wave Advantage. D-Wave 2000Q is not supported.