  We present QUBO.jl, an end-to-end Julia package for working with QUBO
(Quadratic Unconstrained Binary Optimization) instances. This tool aims to
convert a broad range of JuMP problems for straightforward application in many
physics and physics-inspired solution methods whose standard optimization form
is equivalent to the QUBO. These methods include quantum annealing, quantum
gate-circuit optimization algorithms (Quantum Optimization Alternating Ansatz,
Variational Quantum Eigensolver), other hardware-accelerated platforms, such as
Coherent Ising Machines and Simulated Bifurcation Machines, and more
traditional methods such as simulated annealing. Besides working with
reformulations, QUBO.jl allows its users to interface with the aforementioned
hardware, sending QUBO models in various file formats and retrieving results
for subsequent analysis. QUBO.jl was written as a JuMP / MathOptInterface (MOI)
layer that automatically maps between the input and output frames, thus
providing a smooth modeling experience.
