Examples

Solving Simple QUBO Model with Anneal's RandomSampler

using JuMP
using Anneal

model = Model(RandomSampler.Optimizer)

Q = [
    -1.0  2.0  2.0
     2.0 -1.0  2.0
     2.0  2.0 -1.0
]

@variable(model, x[1:3], Bin)
@objective(model, Min, x' * Q * x)

optimize!(model)

Recover Results

for i = 1:result_count(model)
    # State vector
    xi = value.(x; result=i)

    # Energy
    yi = objective_value(model; result=i)

    # Sampling Frequency
    ri = reads(model; result=i)

    println("f($xi) = $(yi)\t×$(ri)")
end
f([0.0, 0.0, 1.0]) = -1.0	×132
f([0.0, 1.0, 0.0]) = -1.0	×118
f([1.0, 0.0, 0.0]) = -1.0	×127
f([0.0, 0.0, 0.0]) = 0.0	×133
f([0.0, 1.0, 1.0]) = 2.0	×140
f([1.0, 0.0, 1.0]) = 2.0	×123
f([1.0, 1.0, 0.0]) = 2.0	×132
f([1.0, 1.0, 1.0]) = 9.0	×95

Plot: Sampling distribution

using Plots

# Extract SampleSet
ω = sampleset(model)

plot(ω)