Quadratic unconstrained binary optimization

1

Quadratic unconstrained binary optimization (QUBO), also known as unconstrained binary quadratic programming (UBQP), is a combinatorial optimization problem with a wide range of applications from finance and economics to machine learning. QUBO is an NP hard problem, and for many classical problems from theoretical computer science, like maximum cut, graph coloring and the partition problem, embeddings into QUBO have been formulated. Embeddings for machine learning models include support-vector machines, clustering and probabilistic graphical models. Moreover, due to its close connection to Ising models, QUBO constitutes a central problem class for adiabatic quantum computation, where it is solved through a physical process called quantum annealing.

Definition

The set of binary vectors of a fixed length n>0 is denoted by, where is the set of binary values (or bits). We are given a real-valued upper triangular matrix, whose entries Q_{ij} define a weight for each pair of indices within the binary vector. We can define a function that assigns a value to each binary vector through Intuitively, the weight Q_{ij} is added if both x_i and x_j have value 1. When i=j, the values Q_{ii} are added if x_i=1, as x_ix_i=x_i for all. The QUBO problem consists of finding a binary vector x^* that is minimal with respect to f_Q, namely In general, x^* is not unique, meaning there may be a set of minimizing vectors with equal value w.r.t. f_Q. The complexity of QUBO arises from the number of candidate binary vectors to be evaluated, as grows exponentially in n. Sometimes, QUBO is defined as the problem of maximizing f_Q, which is equivalent to minimizing f_{-Q}=-f_Q.

Properties

QUBO is scale invariant for positive factors \alpha>0, which leave the optimum x^* unchanged: In its general form, QUBO is NP-hard and cannot be solved efficiently by any polynomial-time algorithm. However, there are polynomially-solvable special cases, where Q has certain properties, for example: QUBO can be solved using integer linear programming solvers like CPLEX or Gurobi Optimizer. This is possible since QUBO can be reformulated as a linear constrained binary optimization problem. To achieve this, substitute the product x_ix_j by an additional binary variable and add the constraints, and. Note that z_{ij} can also be relaxed to continuous variables within the bounds zero and one.

Applications

QUBO is a structurally simple, yet computationally hard optimization problem. It can be used to encode a wide range of optimization problems from various scientific areas.

Cluster Analysis

As an illustrative example of how QUBO can be used to encode an optimization problem, we consider the problem of cluster analysis. Here, we are given a set of 20 points in 2D space, described by a matrix, where each row contains two cartesian coordinates. We want to assign each point to one of two classes or clusters, such that points in the same cluster are similar to each other. For two clusters, we can assign a binary variable to the point corresponding to the i-th row in D, indicating whether it belongs to the first (x_i=0) or second cluster (x_i=1). Consequently, we have 20 binary variables, which form a binary vector that corresponds to a cluster assignment of all points (see figure). One way to derive a clustering is to consider the pairwise distances between points. Given a cluster assignment x, one of x_ix_j or evaluates to 1 if points i and j are in the same cluster. Similarly, one of x_i(1-x_j) or (1-x_i)x_j indicates that they are in different clusters. Let denote the Euclidean distance between points i and j. In order to define a cost function to minimize, when points i and j are in the same cluster we add their positive distance d_{ij}, and subtract it when they are in different clusters. This way, an optimal solution tends to place points which are far apart into different clusters, and points that are close into the same cluster. The cost function thus comes down to From the second line, the QUBO parameters can be easily found by re-arranging to be: Using these parameters, the optimal QUBO solution will correspond to an optimal cluster w.r.t. above cost function.

Connection to Ising models

QUBO is very closely related and computationally equivalent to the Ising model, whose Hamiltonian function is defined as with real-valued parameters for all i,j. The spin variables \sigma_j are binary with values from instead of \mathbb{B}. Moreover, in the Ising model the variables are typically arranged in a lattice where only neighboring pairs of variables can have non-zero coefficients. Applying the identity yields an equivalent QUBO problem: where and using the fact that for a binary variable. As the constant C does not change the position of the optimum x^*, it can be neglected during optimization and is only important for recovering the original Hamiltonian function value.

This article is derived from Wikipedia and licensed under CC BY-SA 4.0. View the original article.

Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc.
Bliptext is not affiliated with or endorsed by Wikipedia or the Wikimedia Foundation.

View original