  The Quadratic Unconstrained Binary Optimization (QUBO) model has gained
prominence in recent years with the discovery that it unifies a rich variety of
combinatorial optimization problems. By its association with the Ising problem
in physics, the QUBO model has emerged as an underpinning of the quantum
computing area known as quantum annealing and has become a subject of study in
neuromorphic computing. Through these connections, QUBO models lie at the heart
of experimentation carried out with quantum computers developed by D-Wave
Systems and neuromorphic computers developed by IBM. Computational experience
is being amassed by both the classical and the quantum computing communities
that highlights not only the potential of the QUBO model but also its
effectiveness as an alternative to traditional modeling and solution
methodologies. This tutorial discloses the basic features of the QUBO model
that give it the power and flexibility to encompass the range of applications
that have thrust it onto center stage of the optimization field. We show how
many different types of constraining relationships arising in practice can be
embodied within the "unconstrained" QUBO formulation in a very natural manner
using penalty functions, yielding exact model representations in contrast to
the approximate representations produced by customary uses of penalty
functions. Each step of generating such models is illustrated in detail by
simple numerical examples, to highlight the convenience of using QUBO models in
numerous settings. We also describe recent innovations for solving QUBO models
that offer a fertile avenue for integrating classical and quantum computing and
for applying these models in machine learning.
