You are currently viewing a new version of our website. To view the old version click .
Electronics
  • Article
  • Open Access

17 August 2023

Pattern QUBOs: Algorithmic Construction of 3SAT-to-QUBO Transformations

,
,
,
,
and
1
Institute for Informatics, LMU Munich, 80538 Munich, Germany
2
Quantum & Computer Engineering, Delft University of Technology, 2628 CD Delft, The Netherlands
*
Author to whom correspondence should be addressed.
This article belongs to the Special Issue Quantum Computing System Design and Architecture

Abstract

One way of solving 3sat instances on a quantum computer is to transform the 3sat instances into instances of Quadratic Unconstrained Binary Optimizations (QUBOs), which can be used as an input for the QAOA algorithm on quantum gate systems or as an input for quantum annealers. This mapping is performed by a 3sat-to-QUBO transformation. Recently, it has been shown that the choice of the 3sat-to-QUBO transformation can significantly impact the solution quality of quantum annealing. It has been shown that the solution quality can vary up to an order of magnitude difference in the number of correct solutions received, depending solely on the 3sat-to-QUBO transformation. An open question is: what causes these differences in the solution quality when solving 3sat-instances with different 3sat-to-QUBO transformations? To be able to conduct meaningful studies that assess the reasons for the differences in the performance, a larger number of different 3sat-to-QUBO transformations would be needed. However, currently, there are only a few known 3sat-to-QUBO transformations, and all of them were created manually by experts, who used time and clever reasoning to create these transformations. In this paper, we will solve this problem by proposing an algorithmic method that is able to create thousands of new and different 3sat-to-QUBO transformations, and thus enables researchers to systematically study the reasons for the significant difference in the performance of different 3sat-to-QUBO transformations. Our algorithmic method is an exhaustive search procedure that exploits properties of 4 × 4 dimensional pattern QUBOs, a concept which has been used implicitly in the creation of 3sat-to-QUBO transformations before, but was never described explicitly. We will thus also formally and explicitly introduce the concept of pattern QUBOs in this paper.

1. Introduction

Satisfiability problems occupy a central place in computer science. They have been among the first problems for which NP-completeness has been shown [1], and they have often been used to proof the NP-completeness of other NP problems [2]. Informally, the satisfiablilty problem (sat) of propositional logic is defined as follows: given a Boolean formula, is there any assignment of Boolean values to the involved variables such that the formula evaluates to “true”? [3]. These problems occur in various different domains, like planning [4], artificial intelligence [2], formal verification [5], automatic test-pattern generation [6], and more. Thus, in the past decades, several different methods for solving satisfiability problems have been developed [7,8,9,10,11]. Despite these efforts, to this day, no algorithm is known that can solve any instance of satisfiability problems in worst-case polynomial time.
Quantum computing, however, is a computational model that can solve some NP problems exponentially faster [12] than their classical counterparts by using phenomena of quantum mechanics for their calculations. There are two main approaches to quantum computing: the quantum gate model and adiabatic quantum computing. One method of solving hard problems with quantum computers is to transform them into an instance of a Quadratic Unconstrained Binary Optimization (QUBO), or into an instance of an Ising spin glass problem (Ising), because QUBO and Ising can be used as an input to quantum annealers [13] or the quantum approximate optimization algorithm (QAOA [14]) on quantum gate computers.
Due to recent advances in the manufacturing of quantum computers, the research community directs huge effort to employing quantum techniques to (NP-)hard problems in their respective fields. In the recent past, a particular research effort was to transform NP-hard optimization problems into instances of QUBO or Ising (e.g., see [15] for an overview). It is thus not surprising that the research community also studied satisfiability problems in the context of quantum computing (e.g., [16,17,18,19,20]).
To this day, several methods of transforming satisfiability problems to instances of QUBO have been published ([3,21,22], e.g.). These transformations result in different sizes or structures (i.e., the number, position and magnitude of the respective entries within the QUBO matrix) of the resulting QUBO instance. We will see shortly that these differences in the resulting QUBO instances can have a significant impact on the solution quality received by a quantum annealer. Finding new ways of transforming 3sat instances into an instance of QUBO is still a very up-to-date topic, as just recently, new 3sat-to-QUBO transformations were discovered and published [3]. All of these 3sat-to-QUBO transformations probably have in common that they were carefully crafted manually by experts in this field using expertise, time and clever reasoning. Recent studies showed that the choice of a 3sat-to-QUBO transformation can significantly impact the solution quality of quantum annealing ([11,23])—the results received by simply using another 3sat-to-QUBO transformation for the same 3sat instances vary up to an order of magnitude with respect to the number of correct answers returned by the quantum annealer. We thus argue that creating 3sat-to-QUBO transformations solely by hand does not seem to be optimal. The space of potential 3sat-to-QUBO transformations might be large (although we do not know how large, exactly), and the number of 3sat-to-QUBO transformations in that potentially large space that can be discovered by an expert using clever reasoning is very limited.
Another recent research focus is to develop methods to automatically map given problems (i.e., objective functions) to instances of QUBO or Ising [24,25,26,27]. There are two major goals that these research efforts are trying to achieve. Firstly, by using computational methods to find problem-to-QUBO mappings automatically, one may be able to identify better (with respect to the solution quality received on quantum annealers) QUBO formulations for given problem classes. Secondly, these methods reduce the barrier to entry to quantum technology, as an instance of a given problem can be mapped automatically to an instance of QUBO or Ising (the input format for quantum annealing, i.e., the QAOA algorithm on quantum gate systems). Thus, there is no longer a need to understand or implement various mappings from a given problem instance to an instance of QUBO.
In this paper, as our first contribution, we thus propose an algorithmic method that is able to create thousands of new 3sat-to-QUBO transformations automatically. All of the resulting 3sat-to-QUBO transformations map 3sat instances to instances of QUBO, which are of the dimension n + m , where n is the number of variables in a 3sat instance and m is the number of clauses in a 3sat instance. Firstly, this increases the number of known 3sat-to-QUBO transformations from a few to several thousand. Secondly, because this method increased the number of known 3sat-to-QUBO transformations from a few to several thousand, this method enables researchers to systematically study why some 3sat-to-QUBO transformations lead to better solutions then other 3sat-to-QUBO transformations when solving 3sat instances on a quantum annealer (which might ultimately lead to even better 3sat-to-QUBO transformations).
As our second contribution, we formally introduce the concept of pattern QUBOs, which are a core part of our algorithmic method. The concept of pattern QUBOs has been previously used implicitly in the creation of 3sat-to-QUBO transformations proposed by, e.g., Chancellor [22] or Nüßlein [3], but was never explicitly described before.
The remainder of this paper is structured as follows: Section 2 introduces necessary foundations for this paper, namely satisfiability problems, QUBO and Ising, and the maximum-weight independent set problem. In Section 3, we review state-of-the-art 3sat-to-QUBO transformations that will be used in Section 5 in a case study. In Section 4, we formally introduce pattern QUBOs and explain this concept in depth. In Section 5, we present our algorithmic method to finding new 3sat-to-QUBO transformations automatically. Additionally, we conduct a small benchmark study on D-Wave’s quantum annealer Advantage_system4.1, in which we show that our proposed algorithmic method can create 3sat-to-QUBO transformations that perform better than state-of-the-art 3sat-to-QUBO transformations. In Section 6, we discuss the implications of our proposed method on the application of quantum annealing (as a SAT-solver). Furthermore, we show new research opportunities that are enabled by our algorithmic method. Finally, we conclude the paper in Section 7.

2. Background

2.1. Satisfiability Problems

Satisfiability problems are concerned with solving special types of Boolean formulae. Thus, we first introduce Boolean formulae as presented in [2].
Definition 1
(Boolean formula). Let x 1 , . . . , x n { 0 , 1 } be Boolean variables. We set 0 : = F a l s e and 1 : = T r u e . A Boolean formula φ over n Boolean variables consists of the variables x 1 , . . . , x n and the logical operatorsAND (∧),OR (∨),NOT (¬). For a given z { 0 , 1 } n the expression φ ( z ) denotes the value of φ when each of the Boolean variables x i is assigned the value z i . If there exists some assignment z such that φ ( z ) = 1 ( T r u e ) we call φ satisfiable. Otherwise, we call φ unsatisfiable [2].
In this work, we are addressing 3sat problems, which are concerned with the satisfiability of Boolean formulae of a specific structure. The specific required structure is called the Conjunctive Normal Form (CNF):
Definition 2
(Conjunctive Normal Form). Let φ be a Boolean formula over the Boolean variables x 1 , . . . , x n . We say that φ is in CNF form, if φ is of the following form:
i j l i j
The terms  l i j are called literals. The value of a literal is either a variable x k or its negation ¬ x k (for  k { 1 , . . . , n } ) . The terms j l i j  are called clauses. A kCNF is a formula in CNF form in which all clauses contain at most k literals.
We can now formally define 3sat problems:
Definition 3
(3SAT). A 3sat instance is a Boolean formula in 3CNF form, which comprises n Boolean variables and m clauses. The problem of deciding whether a 3sat instance is satisfiable or not is the 3sat problem.
An example of a 3sat instance is φ 1 ( x 1 , x 2 , x 3 ) = ( x 1 x 2 x 3 ) ( ¬ x 1 ¬ x 2 x 3 ) . In this case, φ 1 is satisfiable as, for example, φ ( 1 , 0 , 0 ) = 1 .
Instances of the 3sat problem, as well as many other NP-hard problems, are subject to the phase transition phenomenon [28]. Problem classes that are subject to the phase transition phenomenon can be easy to solve until their parameterization reaches a critical point from which on they are suddenly very hard to solve or even become unsolvable. For randomly created 3sat instances with literals uniformly drawn from the variable pool of the 3sat instance, the critical point of the phase transition is reached when the quotient of the number of clauses (m) and the number of variables (n) is approximately m n = 4.24 [29].

2.2. Quadratic Unconstrained Binary Optimization (QUBO)

One way of solving problems on quantum computers is to transform them into an instance of a QUBO, as QUBOs are the accepted input for quantum algorithms like quantum annealing [13] and the QAOA algorithm [14] on quantum gate model computers.
Definition 4
(QUBO [30]). Let Q R n × n be a square matrix and let x B n be an n-dimensional vector of Boolean variables. The QUBO problem is given as:
minimize H QUBO ( x ) = x T Q x = i n Q i i x i + i < j n Q i j x i x j
We call H QUBO ( x ) the (QUBO) energy of vector x. Matrix Q will also be called QUBO matrix or just QUBO. QUBO is closely related to the Ising spin glass problem (Ising), which is defined as follows:
minimize H Ising ( s ) = i h i s i + i < j J i j s i s j
Here, h is an n-dimensional real-valued vector, J is a real-valued n × n -dimensional upper triangular matrix, and s i { 1 , 1 } are spin variables.
QUBO and Ising are isomorphic. That means a QUBO instance can equivalently be expressed as an Ising instance and vice versa. To transform an instance of QUBO into an instance of Ising, one can use transformation x i = ( s i + 1 ) / 2 [31]. Because of this isomorphism, we will use QUBO and Ising interchangeably in this work. QUBO and Ising are both NP-hard problems [30].

2.3. Maximum Weight Independent Set (MWIS)

In this paper, we will use a 3sat-to-QUBO transformation that requires an understanding of the Maximum Weight Independent Set (MWIS) problem. Thus, we will review the necessary foundations here. For the remainder of this section, let G = ( V , E ) be an undirected graph with vertex set V and edge set E.
A subset V V of the vertex set of G is called an independent set, if all vertices of V are pairwise non-adjacent, i.e., if u , v are vertices in V , it follows that ( u , v ) E [32].
Definition 5
(Maximum Weight Independent Set). In the MWIS problem, each vertex of G gets assigned a weight. Let w v R + be the weight that is assigned to vertex v. The MWIS problem is to find an independent set I of G, such that the total weight w t o t a l = v I w v is the largest among all possible independent sets [32].
To solve the MWIS problems on quantum annealers, they need to be transformed to QUBO instances. This can be performed as follows [21]:
If Q i j | min { w i , w j } | for all ( i , j ) E , then the maximum value of
H ( x 1 , . . . , x n ) = i V w i x i + ( i , j ) E Q i j x i x j
is the total value w t o t a l of the MWIS. The variables w i denote the weight that was assigned to vertex i and the variables x i { 0 , 1 } are binary variables. In particular, the maximum weight independent set of graph G is given by { i V : x i * = 1 } , where ( x 1 * , , x n * ) = arg min ( x 1 , , x n ) H ( x 1 , , x n ) .

4. Pattern QUBOs

The core contribution of our paper, namely the algorithmic method, which we will propose in Section 5, is based on exploitation of the concept of pattern QUBOs. As our first contribution, we will now formally introduce the concept of pattern QUBOs, which have been implicitly used in the creation of known 3sat-to-QUBO transformations, like the 3sat-to-QUBO transformations by Chancellor [22] or Nüßlein [3], but never was explained explicitly before.

4.1. QUBO Energy of a 3sat Assignment

We start by examining the QUBO for clause ( x 1 x 2 x 3 ) (shown in Table 1a). We call this QUBO Q 0 in the remainder of this section. QUBO Q 0 can be used to find satisfying assignments for clause ( x 1 x 2 x 3 ) . That is, each Boolean vector x = ( x 1 , x 2 , x 3 , a 1 ) that minimizes x T Q 0 x corresponds to a satisfying assignment of clause ( x 1 x 2 x 3 ) . As a 1 is an ancilla variable that is not part of the set of variables of a given clause, for each assignment of Boolean values to variables x 1 , x 2 , x 3 , there are two corresponding Boolean vectors in the QUBO minimization x T Q 0 x : ( x 1 , x 2 , x 3 , a 1 = 0 ) and ( x 1 , x 2 , x 3 , a 1 = 1 ) . We now define the energy of an assignment of Boolean values to the variables of a 3sat instance:
Definition 6
(Energy of an assignment). Let x 1 , . . . , x n be the variables of a 3sat instance and let Q be a QUBO instance consisting of the variables x 1 , . . . , x n as well as m additional ancilla variables a 1 , . . . , a m to represent the given 3sat instance as a QUBO instance. Given an assignment x 1 = k 1 , . . . , x n = k n , where k 1 , . . . , k n { 0 , 1 } , of Boolean values to variables x 1 , . . . , x n , we define a column vector x as x = ( k 1 , . . . , k n , a 1 , . . . , a m ) . The energy of an assignment of Boolean values to the variables x 1 , . . . , x n is given by:
E ( x 1 = k 1 , . . . , x n = k n ) = min x T Q x
Additionally, if QUBO Q was used to calculate the energy of an assignment x 1 = k 1 , . . . , x n = k n , we will also say: “The assignment x 1 = k 1 , . . . , x n = k n has energy E in Q”. With this, we emphasize that the specific QUBO Q was used to calculate the energy for assignment x 1 = k 1 , . . . , x n = k n .
The energy of an assignment is thus the value one obtains by choosing the values of the m ancilla variables a 1 , . . . , a m { 0 , 1 } m such that the corresponding QUBO optimization process yields the lowest value.
As an example, we calculate the energy for the assignment x 1 = x 2 = x 3 = 0 by using clause QUBO Q 0 . To do so, we first define two column vectors v 1 and v 2 :
  • Vector v 1 := ( 0 , 0 , 0 , a 1 = 0 ) T ;
  • Vector v 2 := ( 0 , 0 , 0 , a 1 = 1 ) T .
The energy of the assignment x 1 = x 2 = x 3 = 0 is thus given by:
E ( 0 , 0 , 0 ) = min ( v 1 T Q 0 v 1 , v 2 T Q 0 v 2 ) = min ( 0 , 1 ) = 1
Hence, the assignment x 1 = x 2 = x 3 = 0 has energy 1 in Q.
Next, we define the term clause QUBO that will heavily be used in the following sections.
Definition 7
(Clause QUBO). Let C be a clause of a 3sat instance. Let S SAT be the set of assignments of Boolean values to the variables of clause C that satisfy clause C. A clause QUBO is a QUBO for which each s S SAT has the same minimal energy and for which the only assignment that does not satisfy clause C has a higher energy than any of the assignments of S SAT .

4.2. Pattern QUBOs

To introduce the concept of pattern QUBOs, we want to first point out the following (implicitly already used) observation. Suppose we are given the 3sat instance of Example 1, φ ( x 1 , x 2 , x 3 , x 4 ) = ( x 1 x 2 x 3 ) ( x 1 ¬ x 2 x 4 ) . To calculate the energy of an assignment of Boolean values to variables x 1 , . . . , x 4 , there are two equivalent ways:
(i)
Calculate the energy of x 1 = 1 , x 2 = 0 , x 3 = 0 for the first clause by using the QUBO shown in Table 1a. Calculate the energy of x 1 = 1 , x 2 = 0 , x 4 = 0 for the second clause by using the QUBO shown in Table 1b. Add both values;
(ii)
Calculate the energy of x 1 = 1 , x 2 = 0 , x 3 = 0 , x 4 = 0 by using the superimposed QUBO shown in Table 2.
It can easily be verified that this is true for all possible assignments (i.e., by visually understanding the construction of the superimposed QUBO in Table 2). Thus, we note that for each assignment, the energy of the superimposed QUBO (shown in Table 2) is equal to the sum of the energies of the respective assignments for the smaller QUBOs (shown in Table 1) that were used to create the superimposed QUBO.
An important consequence of this observation is that any assignment that does not satisfy the 3sat instance cannot possess the lowest energy value that is possible for the superimposed QUBO. That is the case because the QUBOs (shown in Table 1) that were used to create the superimposed QUBO (shown in Table 2) are clause QUBOs (see Definition 7)—i.e., they were constructed such that only satisfying assignments for that clause have the lowest possible energy. An assignment that does not satisfy the 3sat instance also does not satisfy at least one clause. This assignment has a higher than optimal energy for this clause. As the energy of an assignment of the superimposed QUBO is the sum of the energies of the respective assignments for the smaller QUBOs that were used to create the superimposed QUBO, it follows that the energy for this non-satisfying assignment cannot be the lowest possible energy of the superimposed QUBO. Thus, as long as every clause is transformed into a corresponding clause QUBO (see Definition 7), one can create a QUBO representation of a 3sat instance by combining all the clause QUBOs via superimposing.
For 3sat problems specifically, we observe that each clause of a 3sat instance has either exactly zero, one, two, or three negated variables. By rearranging the clause, we can assume, without loss of generality, that the negated variables are always at the end of the clause. Thus, each 3sat clause is represented by one of the following four types of clauses [3]:
  • Type 0 := ( a b c ) ;
  • Type 1 := ( a b ¬ c ) ;
  • Type 2 := ( a ¬ b ¬ c ) ;
  • Type 3 := ( ¬ a ¬ b ¬ c ) .
By using the previous argument, to create a new 3sat-to-QUBO transformation, we only need to find one clause QUBO for each of the four clause types. We will use the term pattern QUBOs for QUBOs that are clause QUBOs for one of the four types (type 0–3) of clauses. We now demonstrate why the term pattern QUBO is justified.
A pattern QUBO for a type 0 clause is shown in Table 3.
Table 3. Pattern QUBO for type 0 clause ( a b c ) .
If we want to transform a given 3sat instance with m clauses to a QUBO instance, and we encounter a clause with zero negations, say ( x 1 x 3 x 5 ) , we can substitute the variables a , b , c in the type 0 pattern QUBO (shown in Table 3) by x 1 , x 3 , x 5 . This substitution of variables leads to a clause QUBO (see Definition 7) for the clause ( x 1 x 3 x 5 ) . By repeating this process for all m clauses (using the correct type 0–3 pattern QUBO for the respective clauses), we create m QUBO representations of individual 3sat clauses. As explained earlier, the resulting clause QUBOs can then be combined into a single QUBO that represents the whole 3sat instance, by using the method of superimposing.
A certain 3sat-to-QUBO transformation can thus be seen as an ordered tuple ( c 0 , c 1 , c 2 , c 3 ) , where c i is a pattern QUBO for clause type i (for 0 i 3 ). Note in particular that there exist multiple such tuples, which we will demonstrate in the coming section.

5. Algorithmic Method

In this section, we are going to present an algorithmic method that uses the concept of pattern QUBOs to create thousands of new 3sat-to-QUBO transformations automatically. We will also perform a case study, in which we solve 3sat instances using both state-of-the-art and created-by-algorithm 3sat-to-QUBO transformations on D-Wave’s quantum annealer Advantage_system4.1. A python implementation of the proposed framework and all the 3sat-instances we used in the case study are provided in the GitHub repository associated with this paper [33].

5.1. Algorithm Description

As explained in Section 4.2, to create new 3sat-to-QUBO transformations, it suffices to find pattern QUBOs for type 0–3 clauses. These pattern QUBOs can be reused and combined (by superimposing) to create a QUBO instance corresponding to a given 3sat instance.
We will now present an algorithmic method (see Algorithm 1) that uses the blueprint for a pattern QUBO shown in Table 4 to create new pattern QUBOs for clause types 0–3.
Table 4. Blueprint for a pattern QUBO of any clause type.
This method has to find values for all Q i , such that the resulting QUBO is a clause QUBO (see Definition 7) for the given clause type. As an input to this method, we have to specify a set of values from which Q i can be chosen. If this set is small enough, we can use exhaustive search to search all possible combinations of the 10 variables:
Algorithm 1 Search procedure to generate pattern QUBOs for type 0–3 clauses automatically
  • Require: Minimum value m i n R , maximum value, m a x R , and step size s t e p R
  • Require: Upper triangular matrix Q. All values of Q ( Q 1 to Q 10 ) should initially be m i n .
  •   procedure Search clause QUBOs(clause type)
  •     FoundQUBOS = {}
  •     while  Q i < = m a x Q i  do
  •         if IsClauseQUBO(Q) then
  •            FoundQUBOS.insert(Q)
  •         end if
  •          Q 1 Q 1 + s t e p
  •         for  i = 1 to 9 do
  •            if  Q i > m a x  then
  •                 Q i m i n
  •                 Q i + 1 Q i + 1 + s t e p
  •            else
  •                break
  •            end if
  •         end for
  •     end while
  •     return FoundQUBOS
  •   end procedure
The function IsClauseQUBO(Q) in line 4 checks whether the modified upper triangular matrix Q is a clause QUBO for the given clause type. That is, this function checks whether all satisfying assignments for that clause type have the same energy in Q, while the one assignment that does not satisfy the clause specified by the given clause type has a higher energy than any of the satisfying assignments.
By using this method and m i n = 1 , m a x = 1 and s t e p = 1 , we find six pattern QUBOs for clause type 0, seven pattern QUBOs for clause type 1, six pattern QUBOs for clause type 2, and 8 pattern QUBOs for clause type 3. As any tuple ( c 0 , c 1 , c 2 , c 3 ) , where c i is a pattern QUBO for clause type i ( 0 i 3 ), can be seen as a valid 3sat-to-QUBO transformation, we have created a total of 2016 = 6 · 7 · 6 · 8 3sat-to-QUBO transformations. By decreasing m i n and increasing m a x , even more combinations will be found.
Because we are using a new ancilla variable in each of the pattern QUBOs, all 3sat-to-QUBO transformations created by this method result in QUBO matrices of dimensions n + m , where n is the number of variables and m is the number of clauses of a 3sat instance. Thus, by choosing appropriate values for m i n , m a x , and s t e p , this method can also produce previously published 3sat-to-QUBO transformations of size n + m . Chancellor’s 3sat-to-QUBO transformation, for example, can be found with our method by using m i n = 2 , m a x = 1 , and s t e p = 1 .

5.2. Case Study Using Quantum Hardware

We are now going to conduct a case study in which we show that our method can create competitive 3sat-to-QUBO transformations by comparing the results of a 3sat-to-QUBO transformation created by our algorithm with the results of well known state-of-the-art 3sat-to-QUBO transformations when solving 3sat instances on D-Wave’s quantum annealer Advantage_system4.1. That is, we will show that our automatically created 3sat-to-QUBO transformations can solve equally many 3sat instances as state-of-the-art 3sat-to-QUBO transformations, and that they can find correct solutions with an equal or higher probability than state-of-the-art 3sat-to-QUBO transformations.
To do so, we create 1000 3sat instances according to the following description:
  • Each 3sat instance has m = 50 clauses and n = 12 variables ( m / n 4.16 );
  • For each of the m clauses, we uniformly select three different variables from the n variables of the instance. Additionally, there is a 50% chance that each of the three chosen variables will get negated in that clause;
  • Verify that the created 3sat instance is solvable (using a SAT solver).
As explained in Section 5.1, by using our method with parameters m i n = 1 , m a x = 1 , and s t e p = 1 , we can create 2016 3sat-to-QUBO transformations. As we cannot evaluate all of these transformations on real quantum hardware in a meaningful study (for cost reasons), we solved one of the 1000 created 3sat instances with all of the 2016 different 3sat-to-QUBO transformations on classical hardware using a tabu search. Finally, out of all 3sat-to-QUBO transformations that were performing well, we chose on at random. We call this transformation the Algorithm QUBO in the following evaluation.
We now apply Chancellor’s, Choi’s and the Algorithm’s 3sat-to-QUBO transformation to all of the formerly created 1000 3sat instances. Each of the resulting 3000 QUBO instances will be solved 1000 times on D-Wave’s quantum annealer Advantage_system4.1. We used default parameters to solve all the QUBO instances on the quantum annealer. Specifically, we used the sample method of D-Waves Embedding Composite class (https://docs.ocean.dwavesys.com/projects/system/en/stable/reference/generated/dwave.system.composites.EmbeddingComposite.sample.html#dwave.system.composites.EmbeddingComposite.sample, accessed on 14 August 2023) without any modifications and “num_reads=1000” as the only input to the “**parameters” dictionary. The results of this experiment are shown in Table 5.
Table 5. Results of the case study. A total of 1000 3sat instances were solved 1000 times by Chancellor’s, Choi’s, and the Algorithm’s 3sat-to-QUBO transformation.
We can see that the Algorithm’s 3sat-to-QUBO transformation solves the most of the 1000 3sat instances, closely followed by Chancellor’s 3sat-to-QUBO transformation. However, the Algorithm’s QUBOs finds approximately 30% more correct solutions than Chancellor’s QUBOs. We also observe that the results of Choi’s QUBOs are far behind the results of Chancellor’s and the Algorithm’s QUBOs. The latter observation is in accordance with the comparison of these two transformations in [23], where it was also observed that Choi’s QUBOs seem to perform significantly worse than Chancellor’s QUBOs on similar 3sat instances.
The results of this case study show that our algorithmic method can produce 3sat-to-QUBO transformations that can compete with or even outperform state-of-the-art 3sat-to-QUBO transformations with regards to the number of solved instances, i.e., the number of correct solutions. We note that in the benchmark study performed in [23], the worst-performing 3sat-to-QUBO transformation produced QUBO instances of size n + m . As our algorithmic method also creates n + m sized 3sat-to-QUBO transformations, the worst-performing 3sat-to-QUBO transformation of the benchmark study in [23] can also be found with our algorithmic method. Thus, it should be clear that not every 3sat-to-QUBO transformation created by our proposed algorithmic method will outperform state-of-the-art 3sat-to-QUBO transformations.

6. Discussion

A recent benchmark study (see [23]) showed that the choice of a 3sat-to-QUBO transformation can significantly impact the solution quality when solving 3sat instances via quantum annealing. The results varied up to an order of magnitude with respect to to the received solution quality (i.e., number of correct answers to a given 3sat instance returned by the quantum annealer), depending solely on the 3sat-to-QUBO transformation used. This result has an important consequence for the evaluation of the problem solving capabilities of quantum annealing with regards to 3sat instances.
Algorithms, or more generally, problem solvers are naturally classified according to their ability to solve a given problem. Important metrics are the time it takes the solver to reach a correct (or good enough) answer, as well as the capability to find correct (or good enough) answers in the first place. Now that quantum computers (and in our situation, quantum annealers especially) became a reality, it is natural to compare the ability of quantum annealers to solve 3sat problems against already existing classical methods. Leaving aside obvious problems of current quantum computers, like missing error-correction or limited amount of qubits (and thus limited size of problems that can be solved), it is still the case that we are comparing highly optimized classical methods vs. newly available and less optimized quantum hardware and quantum methods.
In classical computing, we have been dedicating decades to the development of different algorithms that are able to solve 3sat instances or heuristics that produce very good answers (although not satisfying solutions). As part of these efforts, researchers explored the applicability of many different problem-solving techniques from various different domains to the 3sat problem, which ultimately led to the availability of powerful SAT solvers today. In the relatively new field of quantum computing, we are just learning how to properly use currently available quantum solving techniques. In quantum annealing, the algorithm is quite fixed; however, the underlying problem representation can be varied by using different 3sat-to-QUBO transformations. Thus, analogously to the classical case where one tries to improve the problem solving capabilities of classical hardware by finding more powerful algorithms, finding better 3sat-to-QUBO transformations can be interpreted as an effort to improve the problem solving capabilities of quantum hardware where the algorithm is fixed. This is especially true in the current NISQ era. It may be the case that different solution landscapes created by the use of different QUBO representations of a given problem can deal better (or worse) with the given impact of noise on the process of quantum annealing. Of course, the performance gain of changing the QUBO representation of a 3sat instance is limited by the general problem solving capability of the underlying algorithm (quantum annealing, in this case). In other words, by assuming that future quantum computers improve in their general problem solving capabilities (i.e., by reducing the influence of noise), the goal of finding better QUBO transformations for given problems is to enhance the problem-solving capabilities of the quantum computer even further (i.e., further than just considering technical improvements) and thus making quantum computers a viable or even superior (with respect to classical methods) solver for certain problems in the future.
Despite the importance of the 3sat-to-QUBO transformation on the solution quality, only a few 3sat-to-QUBO transformations are known. This is what we have addressed in this paper. Our algorithmic method, although simple and certainly limited in the scalability (as exhaustive search scales exponentially in this case), is able to create thousands of new 3sat-to-QUBO transformations. This has an immediate consequence for the application of solving 3sat instances via quantum annealing: it is now possible to choose from a significantly wider variety of 3sat-to-QUBO transformations. As we increased the number of available 3sat-to-QUBO transformations by orders of magnitude, it is very likely that some of the new 3sat-to-QUBO transformations created by our algorithmic method will perform significantly better than currently known 3sat-to-QUBO transformations. We provided some empirical evidence for this hypothesis by performing a small case study in Section 5, where we observed that one of the 3sat-to-QUBO transformations created by our algorithmic method lead to approx 30% (i.e., approx 400%) more correct answers than current state-of-the-art 3sat-to-QUBO transformations.
Another implication of our algorithmic method is that it increases the accessibility to quantum technology. Previously, it was necessary to understand how exactly one has to transform a given 3sat instance into an instance of QUBO. This process can be quite complicated (as seen for example in the transformation of Chancellor described in Section 3.2). Because of the effort that needs to be put into understanding a single transformation, it is plausible that someone who just wants to apply quantum annealing as a solver for a 3sat problem might just try to understand and implement a single (or a few) 3sat-to-QUBO transformations and evaluate the quantum problem solving capabilities based on the use of the very limited amount of 3sat-to-QUBO transformations. As previously stated, this may result in an impression that does not reflect the currently possible problem solving capabilities of quantum annealing correctly (i.e., the results may be orders of magnitude worse, because a sub-optimal 3sat-to-QUBO transformation has been used). By understanding the concept of pattern QUBOs, which we introduced in Section 4, it is possible to create a large number of different 3sat-to-QUBO transformations with our algorithmic method, including currently known 3sat-to-QUBO transformations like Chancellor’s transformation, without having to understand the logic behind each and every one of these transformations. From an application perspective, our algorithmic method thus replaces the need for understanding of a lot of different concepts behind a lot of different 3sat-to-QUBO transformations by the understanding of a single concept—the concept of pattern QUBOs.
Because there are now thousands of 3sat-to-QUBO transformations available, researchers can now systematically study why some 3sat-to-QUBO transformations perform significantly better (or worse) than others. Results of these investigations might lead to new insights that lead to the creation of even better-performing 3sat-to-QUBO transformations. Finally, we want to discuss some additional ideas for future research. Although our algorithmic methods increased the number of known 3sat-to-QUBO transformations by orders of magnitude, it has a downside when it comes to exploring the space of all possible 3sat-to-QUBO transformations: the algorithm scales exponentially. Thus, although our algorithm enables to explore a significantly larger space of possible 3sat-to-QUBO transformations, it is possible that we still can explore only a small part of the space of all possible 3sat-to-QUBO transformations. When finding methods of creating pattern QUBOs more efficiently, one can explore an even bigger part of the space of possible 3sat-to-QUBO transformations. This may possibly be performed by employing methods from evolutionary computing.
By solving large amounts of different 3sat instances with a given number of 3sat-to-QUBO transformations, it may be possible to use techniques from machine learning to create some form of recommendation system that suggests a 3sat-to-QUBO transformation when providing a 3sat input.
The efficiency of quantum annealing depends on the proper selection of the annealing schedule, i.e., the schedule that describes how the perturbations decrease with time [34]. A recent publication ([35]) proposes an optimization of annealing schedules via machine learning. Thus, a promising idea for the future is to extend our proposed framework by also including techniques to automatically find better (than the default) annealing schedules for given QUBOs. We suspect that an optimization of annealing schedules might be necessary for each instance individually, or at least for each class of structurally similar instances.

7. Conclusions

In this paper, we presented an algorithmic method that enables the automatic creation of new 3sat-to-QUBO transformations. With this method, we increased the number of known 3sat-to-QUBO transformations from approximately a dozen to several thousand. Our algorithmic method builds upon the concept of pattern QUBOs, which can be seen as a generalization of techniques that have been previously used in the creation of 3sat-to-QUBO transformations. By conducting a small benchmark study, we have shown, that our algorithmic method can produce 3sat-to-QUBO transformations that perform better than state-of-the-art 3sat-to-QUBO transformations. Because our method is able to create thousands of new 3sat-to-QUBO transformations, researchers can now study the differences between well- and badly-performing 3sat-to-QUBO transformations. Results of this investigation might lead to insights that help to create even better 3sat-to-QUBO transformations. Finally our algorithmic method also increases the accessibility of quantum technologies. Previously, it was necessary to understand the often complicated logic behind a given 3sat-to-QUBO transformation in order to be able to apply quantum annealing as solver for 3sat instances. However, as it was shown, that the choice of a 3sat-to-QUBO can significantly impact the solution quality of quantum annealing, it is also necessary to understand and use different 3sat-to-QUBO transformations to solve given 3sat instances. By using our method, one only needs to understand a single concept (pattern QUBOs) to be able to use thousands of different 3sat-to-QUBO transformations, including current state-of-the-art 3sat-to-QUBO transformations, without the need to understand their (potentially) complicated underlying logic. Thus, in addition to seeing pattern QUBOs as a generalization of known concepts, our algorithmic method can also be seen as an abstraction layer for the application of 3sat-to-QUBO transformations.

Author Contributions

Conceptualization, S.Z. and J.N.; methodology, S.Z.; software, S.Z.; validation, S.Z., J.N. and J.S.; investigation, S.Z.; writing—original draft preparation, S.Z.; writing—review and editing, J.N., J.S., S.F., T.G. and C.L.-P.; supervision, T.G., S.F. and C.L.-P.; funding acquisition, C.L-P. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the German Federal Ministry of Education and Research through the funding program “quantum technologies—from basic research to market” (contract number: 13N16196).

Data Availability Statement

Used 3SAT instances and the code for the proposed algorithm and framework can be found in the git repository corresponding to this paper [33].

Conflicts of Interest

The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript; or in the decision to publish the results.

References

  1. Cook, S.A. The complexity of theorem-proving procedures. In Proceedings of the Third Annual ACM Symposium on Theory of Computing, Shaker Heights, OH, USA, 3–5 May 1971; pp. 151–158. [Google Scholar]
  2. Arora, S.; Barak, B. Computational Complexity: A Modern Approach; Cambridge University Press: Cambridge, MA, USA, 2009. [Google Scholar]
  3. Nüßlein, J.; Zielinski, S.; Gabor, T.; Linnhoff-Popien, C.; Feld, S. Solving (Max) 3-SAT via Quadratic Unconstrained Binary Optimization. arXiv 2023, arXiv:2302.03536. [Google Scholar]
  4. Kautz, H.A.; Selman, B. Planning as Satisfiability. In Proceedings of the ECAI, Vienna, Austria, 3–7 August 1992; Volume 92, pp. 359–363. [Google Scholar]
  5. Prasad, M.R.; Biere, A.; Gupta, A. A survey of recent advances in SAT-based formal verification. Int. J. Softw. Tools Technol. Transf. 2005, 7, 156–173. [Google Scholar] [CrossRef]
  6. Marques-Silva, J. Practical applications of boolean satisfiability. In Proceedings of the 2008 9th International Workshop on Discrete Event Systems, Goteborg, Sweden, 28–30 May 2008; pp. 74–80. [Google Scholar]
  7. Schoning, T. A probabilistic algorithm for k-SAT and constraint satisfaction problems. In Proceedings of the 40th Annual Symposium on Foundations of Computer Science (Cat. No. 99CB37039), New York, NY, USA, 17–18 October 1999; pp. 410–414. [Google Scholar]
  8. Selman, B.; Kautz, H.A.; Cohen, B. Local search strategies for satisfiability testing. Cliques Color. Satisf. 1993, 26, 521–532. [Google Scholar]
  9. Marques Silva, J.P.; Sakallah, K.A. GRASP—A New Search Algorithm for Satisfiability; Springer: Berlin, Germany, 2003. [Google Scholar]
  10. Davis, M.; Logemann, G.; Loveland, D. A machine program for theorem-proving. Commun. ACM 1962, 5, 394–397. [Google Scholar] [CrossRef]
  11. Kurin, V.; Godil, S.; Whiteson, S.; Catanzaro, B. Improving SAT solver heuristics with graph networks and reinforcement learning. arXiv 2019, arXiv:1909.11830. [Google Scholar]
  12. Shor, P.W. Algorithms for quantum computation: Discrete logarithms and factoring. In Proceedings of the 35th Annual Symposium on Foundations of Computer Science, Santa Fe, NM, USA, 20–22 November 1994; pp. 124–134. [Google Scholar]
  13. McGeoch, C.C. Theory versus practice in annealing-based quantum computing. Theor. Comput. Sci. 2020, 816, 169–183. [Google Scholar] [CrossRef]
  14. Farhi, E.; Goldstone, J.; Gutmann, S. A quantum approximate optimization algorithm. arXiv 2014, arXiv:1411.4028. [Google Scholar]
  15. Lucas, A. Ising formulations of many NP problems. Front. Phys. 2014, 2, 5. [Google Scholar] [CrossRef]
  16. Nüßlein, J.; Gabor, T.; Linnhoff-Popien, C.; Feld, S. Algorithmic QUBO formulations for k-SAT and Hamiltonian cycles. In Proceedings of the Genetic and Evolutionary Computation Conference Companion, Boston, MA, USA, 9–13 July 2022; pp. 2240–2246. [Google Scholar]
  17. Gabor, T.; Zielinski, S.; Feld, S.; Roch, C.; Seidel, C.; Neukart, F.; Galter, I.; Mauerer, W.; Linnhoff-Popien, C. Assessing solution quality of 3SAT on a quantum annealing platform. In Proceedings of the Quantum Technology and Optimization Problems: First International Workshop, QTOP 2019, Munich, Germany, 18 March 2019; pp. 23–35. [Google Scholar]
  18. Sax, I.; Feld, S.; Zielinski, S.; Gabor, T.; Linnhoff-Popien, C.; Mauerer, W. Approximate approximation on a quantum annealer. In Proceedings of the 17th ACM International Conference on Computing Frontiers, Sicily, Italy, 11–13 May 2020; pp. 108–117. [Google Scholar]
  19. Mandl, A.; Barzen, J.; Bechtold, M.; Leymann, F.; Wild, K. Amplitude amplification-inspired QAOA: Improving the success probability for solving 3SAT. arXiv 2023, arXiv:2303.01183. [Google Scholar]
  20. Ayanzadeh, R.; Halem, M.; Finin, T. Reinforcement quantum annealing: A hybrid quantum learning automata. Sci. Rep. 2020, 10, 7952. [Google Scholar] [CrossRef] [PubMed]
  21. Choi, V. Adiabatic quantum algorithms for the NP-complete maximum-weight independent set, exact cover and 3SAT problems. arXiv 2010, arXiv:1004.2226. [Google Scholar]
  22. Chancellor, N.; Zohren, S.; Warburton, P.A.; Benjamin, S.C.; Roberts, S. A direct mapping of Max k-SAT and high order parity checks to a chimera graph. Sci. Rep. 2016, 6, 37107. [Google Scholar] [CrossRef] [PubMed]
  23. Zielinski, S.; Nüßlein, J.; Stein, J.; Gabor, T.; Linnhoff-Popien, C.; Feld, S. Influence of Different 3SAT-to-QUBO Transformations on the Solution Quality of Quantum Annealing: A Benchmark Study. arXiv 2023, arXiv:2305.00720. [Google Scholar]
  24. Moraglio, A.; Georgescu, S.; Sadowski, P. AutoQubo: Data-driven automatic QUBO generation. In Proceedings of the Genetic and Evolutionary Computation Conference Companion, Boston, MA, USA, 9–13 July 2022; pp. 2232–2239. [Google Scholar]
  25. Pauckert, J.; Ayodele, M.; García, M.D.; Georgescu, S.; Parizy, M. AutoQUBO v2: Towards Efficient and Effective QUBO Formulations for Ising Machines. In Proceedings of the Companion Conference on Genetic and Evolutionary Computation, Lisbon, Portugal, 15–19 July 2023; pp. 227–230. [Google Scholar]
  26. Richoux, F.; Baffier, J.F.; Codognet, P. Learning QUBO Models for Quantum Annealing: A Constraint-based Approach. In Proceedings of the International Conference on Computational Science, Prague, Czech Republic, 3–5 July 2023. [Google Scholar]
  27. Zaman, M.; Tanahashi, K.; Tanaka, S. PyQUBO: Python library for mapping combinatorial optimization problems to QUBO form. IEEE Trans. Comput. 2021, 71, 838–850. [Google Scholar] [CrossRef]
  28. Cheeseman, P.C.; Kanefsky, B.; Taylor, W.M. Where the really hard problems are. In Proceedings of the IJCAI, Sydney, Australia, 24–30 August 1991; Volume 91, pp. 331–337. [Google Scholar]
  29. Gent, I.P.; Walsh, T. The SAT phase transition. In Proceedings of the ECAI, Amsterdam, The Netherlands, 8–12 August 1994; Volume 94, pp. 105–109. [Google Scholar]
  30. Glover, F.; Kochenberger, G.; Du, Y. A tutorial on formulating and using QUBO models. arXiv 2018, arXiv:1811.11538. [Google Scholar]
  31. Tanahashi, K.; Takayanagi, S.; Motohashi, T.; Tanaka, S. Application of Ising machines and a software development for Ising machines. J. Phys. Soc. Jpn. 2019, 88, 061010. [Google Scholar] [CrossRef]
  32. Lamm, S.; Schulz, C.; Strash, D.; Williger, R.; Zhang, H. Exactly solving the maximum weight independent set problem on large real-world graphs. In Proceedings of the 2019 Twenty-First Workshop on Algorithm Engineering and Experiments (ALENEX), San Diego, CA, USA, 7–8 January 2019; pp. 144–158. [Google Scholar]
  33. Zielinski, S. Pattern QUBO 3SAT Framework. 2023. Available online: https://github.com/ZielinskiSebastian/SAT-QUBO-Framework (accessed on 14 August 2023).
  34. Galindo, O.; Kreinovich, V. What is the optimal annealing schedule in quantum annealing. In Proceedings of the 2020 IEEE Symposium Series on Computational Intelligence (SSCI), Canberra, Australia, 1–4 December 2020; pp. 963–967. [Google Scholar]
  35. Chen, Y.Q.; Chen, Y.; Lee, C.K.; Zhang, S.; Hsieh, C.Y. Optimizing quantum annealing schedules with Monte Carlo tree search enhanced with neural networks. Nat. Mach. Intell. 2022, 4, 269–278. [Google Scholar] [CrossRef]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.