Learn OCEAN-SDK with Real Code Examples
Updated Nov 25, 2025
Code Sample Descriptions
1
Ocean SDK Minimal Optimization Problem
from dwave.system import DWaveSampler, EmbeddingComposite
import dimod
# BQM: minimize x0 + x1 - 2*x0*x1
bqm = dimod.BinaryQuadraticModel({'x0':1, 'x1':1}, {('x0','x1'):-2}, 0, vartype=dimod.BINARY)
sampler = EmbeddingComposite(DWaveSampler())
sampleset = sampler.sample(bqm, num_reads=10)
print(sampleset)
Defines a small BQM and samples it on a D-Wave system.
2
Ocean SDK Single Variable BQM
from dwave.system import DWaveSampler, EmbeddingComposite
import dimod
bqm = dimod.BinaryQuadraticModel({'x':-1}, {}, 0, vartype=dimod.BINARY)
sampleset = EmbeddingComposite(DWaveSampler()).sample(bqm, num_reads=20)
print(sampleset)
A simple one-variable binary quadratic model submitted to a sampler.
3
Ocean SDK Two-Variable Minimization
import dimod
from dwave.system import DWaveSampler, EmbeddingComposite
bqm = dimod.BinaryQuadraticModel({'a':0, 'b':0}, {('a','b'):1}, 0, vartype=dimod.BINARY)
samples = EmbeddingComposite(DWaveSampler()).sample(bqm, num_reads=50)
print(samples)
Minimizes a two-variable energy landscape using BQM.
4
Ocean SDK Spin Model Example
import dimod
from dwave.system import DWaveSampler, EmbeddingComposite
bqm = dimod.BinaryQuadraticModel({'s0':-1, 's1':1}, {('s0','s1'):-1}, 0, vartype=dimod.SPIN)
sampleset = EmbeddingComposite(DWaveSampler()).sample(bqm, num_reads=20)
print(sampleset)
Uses SPIN variables instead of BINARY.
5
Ocean SDK QUBO Example
import dimod
from dwave.system import DWaveSampler, EmbeddingComposite
Q = {('x0','x0'):1, ('x1','x1'):1, ('x0','x1'):-1}
bqm = dimod.BinaryQuadraticModel.from_qubo(Q)
sampleset = EmbeddingComposite(DWaveSampler()).sample(bqm, num_reads=15)
print(sampleset)
Creates a QUBO dictionary and solves it using dimod.
6
Ocean SDK Constraint Example
import dimod
from dwave.system import DWaveSampler, EmbeddingComposite
bqm = dimod.BinaryQuadraticModel({'x':1, 'y':1}, {('x','y'):2}, 0, vartype=dimod.BINARY)
bqm.add_variable('z', -1)
samples = EmbeddingComposite(DWaveSampler()).sample(bqm, num_reads=30)
print(samples)
Adds a soft constraint to a BQM and samples it.
7
Ocean SDK Penalty Model Example
import dimod
from dwave.system import DWaveSampler, EmbeddingComposite
x, y = 'x', 'y'
bqm = dimod.BinaryQuadraticModel({x:1, y:1}, {(x,y):-2}, 0, vartype=dimod.BINARY)
samples = EmbeddingComposite(DWaveSampler()).sample(bqm, num_reads=20)
print(samples)
Uses dimod to encode a penalty for x+y=1.
8
Ocean SDK Random BQM
import dimod
from dwave.system import EmbeddingComposite, DWaveSampler
bqm = dimod.generators.random.randint(3)
samples = EmbeddingComposite(DWaveSampler()).sample(bqm, num_reads=25)
print(samples)
Generates a random BQM with 3 variables.
9
Ocean SDK Simulated Annealing
import dimod
bqm = dimod.BinaryQuadraticModel({'x':1, 'y':1}, {('x','y'):-1}, 0, vartype=dimod.BINARY)
sampleset = dimod.SimulatedAnnealingSampler().sample(bqm, num_reads=10)
print(sampleset)
Uses dimod's simulated annealing sampler for local testing.
10
Ocean SDK Hybrid Solver Example
import dimod
from dwave.system import LeapHybridSampler
bqm = dimod.BinaryQuadraticModel({'a':-1, 'b':2}, {('a','b'):1}, 0, vartype=dimod.BINARY)
sampleset = LeapHybridSampler().sample(bqm)
print(sampleset)
Runs BQM on D-Wave's hybrid solver if available.