Skip to main content
Log in

Optimizing adiabatic quantum program compilation using a graph-theoretic framework

  • Published:
Quantum Information Processing Aims and scope Submit manuscript

Abstract

Adiabatic quantum computing has evolved in recent years from a theoretical field into an immensely practical area, a change partially sparked by D-Wave System’s quantum annealing hardware. These multimillion-dollar quantum annealers offer the potential to solve optimization problems millions of times faster than classical heuristics, prompting researchers at Google, NASA and Lockheed Martin to study how these computers can be applied to complex real-world problems such as NASA rover missions. Unfortunately, compiling (embedding) an optimization problem into the annealing hardware is itself a difficult optimization problem and a major bottleneck currently preventing widespread adoption. Additionally, while finding a single embedding is difficult, no generalized method is known for tuning embeddings to use minimal hardware resources. To address these barriers, we introduce a graph-theoretic framework for developing structured embedding algorithms. Using this framework, we introduce a biclique virtual hardware layer to provide a simplified interface to the physical hardware. Additionally, we exploit bipartite structure in quantum programs using odd cycle transversal (OCT) decompositions. By coupling an OCT-based embedding algorithm with new, generalized reduction methods, we develop a new baseline for embedding a wide range of optimization problems into fault-free D-Wave annealing hardware. To encourage the reuse and extension of these techniques, we provide an implementation of the framework and embedding algorithms.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  1. Agarwal, A., Charikar, M., Makarychev, K., Makarychev, Y.: \(O(\sqrt{\log {n}})\) approximation algorithms for min UnCut, min 2CNF deletion, and directed cut problems. In: Proceedings of the Thirty-seventh Annual ACM Symposium on Theory of Computing, pp. 573–581. ACM (2005)

  2. Albert, R., Barabási, A.L.: Statistical mechanics of complex networks. Rev. Mod. Phys. 74(1), 47 (2002)

    Article  ADS  MathSciNet  MATH  Google Scholar 

  3. Batagelj, V., Zaversnik, M.: An \(O(m)\) algorithm for cores decomposition of networks. arXiv preprint cs/0310049 (2003)

  4. Beasley, J.E.: OR-library: distributing test problems by electronic mail. J. Oper. Res. Soc. 41, 1069–1072 (1990)

    Article  Google Scholar 

  5. Boothby, T., King, A.D., Roy, A.: Fast clique minor generation in Chimera qubit connectivity graphs. Quantum Inf. Process. 15(1), 495–508 (2016)

    Article  ADS  MathSciNet  MATH  Google Scholar 

  6. Boros, E., Hammer, P.L.: Pseudo-boolean optimization. Discrete Appl. Math. 123(1), 155–225 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  7. Britt, K.A., Humble, T.S.: High-performance computing with quantum processing units. arXiv preprint arXiv:1511.04386 (2015)

  8. Cai, J., Macready, W.G., Roy, A.: A practical heuristic for finding graph minors. arXiv preprint arXiv:1406.2741 (2014)

  9. Choi, V.: Minor-embedding in adiabatic quantum computation: I. The parameter setting problem. Quantum Inf. Process. 7(5), 193–209 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  10. Choi, V.: Minor-embedding in adiabatic quantum computation: II. Minor-universal graph design. Quantum Inf. Process. 10(3), 343–353 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  11. D-Wave Systems Inc.: SAPI 2.4. D-Wave Systems Inc., Burnaby (2016)

  12. Denchev, V.S., Boixo, S., Isakov, S.V., Ding, N., Babbush, R., Smelyanskiy, V., Martinis, J., Neven, H.: What is the computational value of finite-range tunneling? Phys. Rev. X 6(3), 031,015 (2016)

    Google Scholar 

  13. Diestel, R.: Graph Theory. Graduate Texts in Mathematics, vol. 173 (2005)

  14. Eppstein, D.: Parallel recognition of series-parallel graphs. Inf. Comput. 98(1), 41–55 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  15. Erdos, P., Rényi, A.: On the evolution of random graphs. Publ. Math. Inst. Hung. Acad. Sci 5(1), 17–60 (1960)

    MathSciNet  MATH  Google Scholar 

  16. Farhi, E., Goldstone, J., Gutmann, S., Sipser, M.: Quantum computation by adiabatic evolution. arXiv preprint arXiv:quant-ph/0001106 (2000)

  17. Hagberg, A.A., Schult, D.A., Swart, P.J.: Exploring network structure, dynamics, and function using NetworkX. In: Proceedings of the 7th Python in Science Conference (SciPy2008), pp. 11–15. Pasadena, CA, USA (2008)

  18. Halldórsson, M., Radhakrishnan, J.: Greed is good: approximating independent sets in sparse and bounded-degree graphs. In: Proceedings of the Twenty-sixth Annual ACM Symposium on Theory of Computing, pp. 439–448. ACM (1994)

  19. Hamilton, K.E., Humble, T.S.: Identifying the minor set cover of dense connected bipartite graphs via random matching edge sets. arXiv preprint arXiv:1612.07366 (2016)

  20. Hüffner, F.: Algorithm engineering for optimal graph bipartization. In: International Workshop on Experimental and Efficient Algorithms, pp. 240–252. Springer (2005)

  21. Humble, T.S., McCaskey, A.J., Bennink, R.S., Billings, J.J., D’Azevedo, E., Sullivan, B.D., Klymko, C.F., Seddiqi, H.: An integrated programming and development environment for adiabatic quantum optimization. Comput. Sci. Discov. 7(1), 015,006 (2014)

    Article  Google Scholar 

  22. Humble, T.S., McCaskey, A.J., Schrock, J., Seddiqi, H., Britt, K.A., Imam, N.: Performance models for split-execution computing systems. In: IEEE International on Parallel and Distributed Processing Symposium Workshops, 2016, pp. 545–554. IEEE (2016)

  23. Kadowaki, T., Nishimori, H.: Quantum annealing in the transverse Ising model. Phys. Rev. E 58(5), 5355 (1998)

    Article  ADS  Google Scholar 

  24. Kassal, I., Whitfield, J.D., Perdomo-Ortiz, A., Yung, M.H., Aspuru-Guzik, A.: Simulating chemistry using quantum computers. Ann. Rev. Phys. Chem. 62, 185–207 (2011)

    Article  ADS  Google Scholar 

  25. King, J., Yarkoni, S., Raymond, J., Ozfidan, I., King, A.D., Nevisi, M.M., Hilton, J.P., McGeoch, C.C.: Quantum annealing amid local ruggedness and global frustration. arXiv preprint arXiv:1701.04579 (2017)

  26. Klymko, C., Sullivan, B.D., Humble, T.S.: Adiabatic quantum programming: minor embedding with hard faults. Quantum Inf. Process. 13(3), 709–729 (2014)

    Article  ADS  MathSciNet  MATH  Google Scholar 

  27. Leighton, F.T.: Introduction to Parallel Algorithms and Architectures: Arrays Trees Hypercubes. Elsevier, Amsterdam (2014)

    MATH  Google Scholar 

  28. Lewis, J.M., Yannakakis, M.: The node-deletion problem for hereditary properties is NP-complete. J. Comput. Syst. Sci. 20(2), 219–230 (1980)

    Article  MathSciNet  MATH  Google Scholar 

  29. Lokshtanov, D., Saurabh, S., Sikdar, S.: Simpler parameterized algorithm for OCT. In: International Workshop on Combinatorial Algorithms, pp. 380–384. Springer (2009)

  30. Lokshtanov, D., Saurabh, S., Wahlström, M.: Subexponential parameterized odd cycle transversal on planar graphs. In: LIPIcs-Leibniz International Proceedings in Informatics, vol. 18. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2012)

  31. Lucas, A.: Ising formulations of many NP problems. Front. Phys. 2, 5 (2014)

    Article  Google Scholar 

  32. Lund, C., Yannakakis, M.: The approximation of maximum subgraph problems. In: International Colloquium on Automata, Languages, and Programming, pp. 40–51. Springer (1993)

  33. Neven, H., Rose, G., Macready, W.G.: Image recognition with an adiabatic quantum computer I. mapping to quadratic unconstrained binary optimization. arXiv preprint arXiv:0804.4457 (2008)

  34. Reed, B., Smith, K., Vetta, A.: Finding odd cycle transversals. Oper. Res. Lett. 32(4), 299–301 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  35. Rieffel, E.G., Venturelli, D., O’Gorman, B., Do, M.B., Prystay, E.M., Smelyanskiy, V.N.: A case study in programming a quantum annealer for hard operational planning problems. Quantum Inf. Process. 14(1), 1–36 (2015)

    Article  ADS  MATH  Google Scholar 

  36. Robertson, N., Seymour, P.D.: Graph minors. XIII. The disjoint paths problem. J. Comb. Theory Ser. B 63(1), 65–110 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  37. Schmidt, J.M.: A simple test on 2-vertex-and 2-edge-connectivity. Inf. Process. Lett. 113(7), 241–244 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  38. Venturelli, D., Mandrà, S., Knysh, S., O’Gorman, B., Biswas, R., Smelyanskiy, V.: Quantum optimization of fully connected spin glasses. Phys. Rev. X 5(3), 031,040 (2015)

    Google Scholar 

  39. Wang, C., Jonckheere, E., Brun, T.: Ollivier–Ricci curvature and fast approximation to tree-width in embeddability of QUBO problems. In: 6th International Symposium on Communications, Control and Signal Processing (ISCCSP), 2014, pp. 598–601. IEEE (2014)

Download references

Acknowledgements

The authors would like to thank Steve Reinhardt from D-Wave Systems Inc. and the anonymous reviewers for feedback. This work is supported in part by the Gordon and Betty Moore Foundation’s Data-Driven Discovery Initiative through Grant GBMF4560 to Blair D. Sullivan, a National Defense Science and Engineering Graduate Fellowship and a fellowship by the National Space Grant College and Fellowship Program and the NC Space Grant Consortium to Timothy D. Goodrich. This manuscript has been authored by UT-Battelle, LLC, under Contract No. DE-AC0500OR22725 with the U.S. Department of Energy. The United States Government retains and the publisher, by accepting the article for publication, acknowledges that the United States Government retains a non-exclusive, paid-up, irrevocable, world-wide license to publish or reproduce the published form of this manuscript, or allow others to do so, for the United States Government purposes. The Department of Energy will provide public access to these results of federally sponsored research in accordance with the DOE Public Access Plan (http://energy.gov/downloads/doe-public-access-plan).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Timothy D. Goodrich.

Computing OCT in series–parallel graphs

Computing OCT in series–parallel graphs

In this appendix we prove the following result:

Proposition 5

OCT(G) can be computed in linear time for a series–parallel graph G.

The proof is based on the equivalence between series–parallel graphs and graphs with nested ear decompositions. Using this decomposition, we show that a greedy algorithm constructs a minimum OCT set. We start by defining series–parallel graphs and nested ear decompositions:

Definition 8

(Eppstein [14]) A graph G is two-terminal series–parallel with terminals s and t if it can be produced by a sequence of the following operations:

  1. 1.

    Base case: Create new graph, consisting of a single edge directed from s to t.

  2. 2.

    Parallel composition: Given two-terminal series–parallel graphs X and Y with terminals \(s_X,t_X,s_Y\), and \(t_Y\), form a new graph \(G = P(X, Y)\) by identifying \(s = s_X = s_Y\) and \(t = t_X = t_Y\).

  3. 3.

    Series composition: Given two-terminal series–parallel graphs X and Y, with terminals \(s_X,t_X,s_Y\), form a new graph \(G = S(X, Y)\) by identifying \(s = s_X,t_X = s_Y\), and \(t = t_Y\).

Definition 9

(Ear decomposition (Eppstein [14])) An ear decomposition of an undirected graph G is defined to be a partition of the edges of G into a sequence of ears \((E_1, E_2, \dots , E_k)\). Each ear is a path in the graph with the following properties:

  1. 1.

    If two vertices in the path are the same, they must be two endpoints of the path.

  2. 2.

    The two endpoints of each ear \(E_i,i > 1\), appear in previous ears \(E_j\) and \(E_j'\), with \(j < i\) and \(j' < i\).

  3. 3.

    No interior point of \(E_i\) is in \(E_j\) for any \(j < i\).

Definition 10

(Nest intervals (Eppstein [14])) Given an ear decomposition \((E_1, E_2,\dots , E_k)\), we say that \(E_i\) is nested in \(E_j\) if both endpoints of \(E_i\) are contained in \(E_j\). The nest interval of \(E_i\) in \(E_j\) is the path in \(E_j\) between the two endpoints of \(E_i\).

Definition 11

(Nested ear decomposition (Eppstein [14])) An ear decomposition is nested if the following hold:

  1. 1.

    For each \(i > 1\) there is some \(j < i\) such that \(E_i\) is nested in \(E_j\).

  2. 2.

    If two ears \(E_i\) and \(E_{i'}\) are both nested in the same ear \(E_j\), then either the nest interval of \(E_i\) contains that of \(E_{i'}\) or vice versa.

Eppstein’s result shows that these two graph classes are equivalent:

Theorem 1

(Eppstein [14]) Any undirected two-terminal series–parallel graph has a nested ear decomposition starting with a path between the terminals, and any undirected graph with a nested ear decomposition is two-terminal series–parallel with its terminals being the endpoints of the first ear.

Furthermore, Eppstein shows that these decompositions can be computed in \(O(\log ^2(n))\) time on a parallel computer; therefore, computing the decomposition itself will not bottleneck an OCT-computing algorithm. We now show that given a nested ear decomposition, we can greedily compute a minimum OCT set. First, we define the parity of ears.

Definition 12

(Ear parity) We say that an ear \(E_i\) is odd if the number of vertices in \(E_i\) and its nest interval sum to an odd number. We define an even ear analogously.

Next, we want to show that we can compute the minimum OCT set on a single nest interval correctly.

Lemma 5

Given an ear decomposition \((E_1, \dots , E_k)\), let \(E = (E_i, \dots , E_j)\) be an ordered, maximal list of ears contained in a single nest interval. Then the minimum number of OCT vertices contained in these ears is number of maximal in-order sublists of E composed only of odd ears.

Proof

We proceed by induction on the number of sublists. Suppose that there are zero maximal sublists of odd ears, therefore every ear is even. Then every path from the left-most vertex on the nest interval to the right-most vertex on the nest interval will have the same parity, and we are able to two-color these cycles and the minimum OCT number is zero. Suppose instead that there is one maximal sublist of odd ears, therefore all ears are odd. Removing an endpoint from the inner-most odd cycle renders the remaining edges of this smallest nest interval into bridges that cannot be part of a cycle. This removal also breaks all odd cycles in the maximal nest interval, because any cycle on the remaining ears must use the vertices from two odd cycles of length \(2x+1\) and \(2y+1\), minus the length of the smallest nest interval twice, leaving an odd number of vertices in the cycle. Again we can two-color these and we are done.

Suppose we have an interval with k maximal sublists. If there are any even ears on the outside, then we can remove them using the first base case. We now find the inner-most odd ear that is outside of every remaining even ear. Removing an endpoint from this ear renders the outer odd ears bipartite by the second base case. Applying the inductive hypothesis to the earlier ears finds \(k-1\) OCT vertices; therefore, we have found a total of k OCT vertices. \(\square \)

Corollary 4

We can compute the minimum OCT number of the ears contained in a single maximal nest interval in linear time.

Proof

In the above proof we visited each ear once. \(\square \)

Proposition 6

OCT(G) can be computed in linear time for a series–parallel graph G.

Proof

We proceed by induction on the number of maximal nest intervals. If there are no nest intervals, then we have a single ear and are done, the graph is (by definition) bipartite. Otherwise there is some nest interval. Applying Lemma 5, we can compute a minimum OCT set. Since every nest interval is disjoint, by definition, we can apply the inductive hypothesis to compute the minimum OCT set of the other intervals, visiting each interval exactly once. The number of intervals is bounded by the number of vertices; therefore, we compute a minimum OCT set in linear time. \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Goodrich, T.D., Sullivan, B.D. & Humble, T.S. Optimizing adiabatic quantum program compilation using a graph-theoretic framework. Quantum Inf Process 17, 118 (2018). https://doi.org/10.1007/s11128-018-1863-4

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s11128-018-1863-4

Keywords

Navigation