Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3297858.3304071acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
research-article
Public Access

Targeting Classical Code to a Quantum Annealer

Published: 04 April 2019 Publication History

Abstract

From a compiler's perspective, a quantum annealer represents a fundamentally different hardware target from a CPU, GPU, or other von Neumann architecture. Quantum annealers are special-purpose computers that use quantum effects to heuristically determine the set of Boolean variables that minimize a quadratic pseudo-Boolean function (an NP-hard problem). Natively programming such systems involves supplying them with a vector of function coefficients and receiving a vector of function-minimizing Booleans in return. The contribution of this work is to demonstrate how to compile conventional code into a minimization problem for solution on a quantum annealer. The resulting code can run either forward (from inputs to outputs) or backward (from outputs to inputs). We show how this capability can be exploited to simplify the expression and solution of problems in the NP complexity class.

References

[1]
Dorit Aharonov, Wilm van Dam, Julia Kempe, Zeph Landau, Seth Lloyd, and Oded Regev. 2008. Adiabatic quantum computation is equivalent to standard quantum computation. SIAM Review, 50, 4,755--787. issn: 1095--7200.
[2]
Francisco Barahona. 1982. On the computational complexity of Isingspin glass models. Journal of Physics A: Mathematical and General,15, 10, (October 1982), 3241--3253. issn: 1361--6447.
[3]
Berkeley Logic Synthesis and Verification Group. 2016. ABC: a system for sequential synthesis and verification. (July 17, 2016). Retrieved 07/31/2018 from http://www.eecs.berkeley.edu/~alanmi/abc/.
[4]
Jeff Bezanson, Alan Edelman, Stefan Karpinski, and Viral B. Shah. 2017. Julia: a fresh approach to numerical computing. SIAM Review, 59, 1, (March 2017), 65--98. Desmond Higham, editor. issn: 1095--7200.
[5]
Jacob D. Biamonte and Peter J. Love. 2008. Realizable Hamiltonians for universal adiabatic quantum computers. Physical Review A, 78, (July 28, 2008), 012352--1--7, 1, (July 28, 2008).
[6]
Zhengbing Bian, Fabian Chudak, Robert Israel, Brad Lackey, William G. Macready, and Aidan Roy. 2014. Discrete optimization using quantum annealing on sparse Ising models. Frontiers in Physics, 2,(September 18, 2014). issn: 2296--424X.
[7]
Armin Biere, Alessandro Cimatti, Edmund Clarke, and Yunshan Zhu. 1999. Symbolic model checking without BDDs. In Fifth International Conference on Tools and Algorithms for the Construction and Analysis of Systems. TACAS (Amsterdam, The Netherlands, March 20--28,1999). Cleveland and W. Rance, editors. Springer, Berlin, Germany and Heidelberg, Germany, 193--207. isbn: 978--3--540--49059--3.
[8]
Michael Booth, Edward Dahl, Mark Furtney, and Steven P. Reinhardt. 2016. Abstractions considered helpful: a tools architecture for quantum annealers. In Proceedings of the 2016 IEEE High Performance Extreme Computing Conference. HPEC (Waltham, Massachusetts, USA, September 13--15, 2016). IEEE, (December 1, 2016). isbn: 978--1--5090--3525-0.
[9]
M{ax} Born and V{ladimir} Fock. 1928. Beweis des adiabatensatzes.Zeitschrift für Physik, 51, 3--4, (March 1, 1928), 165--180. issn: 0044--3328.
[10]
Sergey Bravyi, David P. DiVincenzo, Roberto I. Oliveira, and Barbara M. Terhal. 2007. The complexity of stoquastic local Hamiltonian problems. (October 2, 2007). arXiv:0606140v4{quant-ph}.
[11]
Robert Brayton and Alan Mishchenko. 2010. ABC: an academic industrial-strength verification tool. In Proceedings of the 22nd Inter-national Conference on Computer Aided Verification. CAV (Edinburgh,United Kingdom, July 15--19, 2010). Tayssir Touili, Byron Cook, and Paul Jackson, editors. Springer, Berlin, Germany and Heidelberg, Germany, 24--40. isbn: 978--3--642--14295--6.
[12]
Paul I. Bunyk, Emile M. Hoskinson, Mark W. Johnson, Elena Tolkacheva, Fabio Altomare, Andrew J. Berkley, Richard Harris, Jeremy P. Hilton, Trevor Lanting, Anthony J. Przybysz, and Jed Whittaker.2014. Architectural considerations in the design of a superconducting quantum annealing processor. IEEE Transactions on Applied Superconductivity, 24, 4, (August 2014), 1--10. issn: 1051--8223.
[13]
Jun Cai, Bill Macready, and Aidan Roy. 2014. A practical heuristic for finding graph minors. D-Wave Systems Inc. (June 10, 2014). arXiv:1406.2741v1{quant-ph}.
[14]
Vicky Choi. 2008. Minor-embedding in adiabatic quantum computation. I. the parameter setting problem. Quantum Information Processing, 7, 5, (October 2008), 193--209. issn: 1573--1332.
[15]
Geoffrey Chu, Peter J. Stuckey, Andreas Schutt, Thorsten Ehlers, Graeme Gange, and Kathryn Francis. {n. d.} Chuffed, a lazy clause generation solver. Retrieved 12/19/2018 from https://github.com/chuffed/chuffed.
[16]
Edmund Clarke, Daniel Kroening, and Flavio Lerda. 2004. A tool for checking ANSI-C programs. In Tools and Algorithms for the Construction and Analysis of Systems (Lecture Notes in Computer Science). Kurt Jensen and Andreas Podelski, editors. Volume 2988. Springer, Berlin, Germany and Heidelberg, Germany, 168--176. isbn: 978--3--540--24730--2.
[17]
Edmund Clarke, Daniel Kroening, Natasha Sharygina, and Karen Yorav. 2004. Predicate abstraction of ANSI-C programs using SAT. Formal Methods in System Design, 25, 2--3, (September 2004), 105--127. issn: 1572--8102.
[18]
Emily Conover. 2018. Google moves toward quantum supremacy with 72-qubit computer. Science News, 193, 6, (March 5, 2018), 13. Retrieved 07/19/2018 from https://www.sciencenews.org/article/google-moves-toward-quantum-supremacy-72-qubit-computer.
[19]
Stephen A. Cook. 1971. The complexity of theorem-proving procedures. In Conference Record of Third Annual ACM Symposium on Theory of Computing. Papers Presented at the Symposium. STOC '71(Shaker Heights, Ohio, USA, May 3--5, 1971). Michael A. Harrison, Ranan B. Banerji, Jeffrey D. Ullman, and Philip M. Lewis, editors.ACM Special Interest Group for Automata and Computability Theory. ACM, New York, New York, USA, 151--158.
[20]
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. 2009. Introduction to Algorithms. (3rd edition). MIT Press, (July 31, 2009). 1312 pages. isbn: 978-0--262-03384--8.
[21]
D-Wave Systems, Inc. 2017. D-Wave initiates open quantum software environment. (January 11, 2017). Retrieved 08/02/2018 from https://www.dwavesys.com/press-releases/d-wave-initiates-open-quantum-software-environment.
[22]
D-Wave Systems, Inc. {n. d.} D-Wave Ocean software documentation. Retrieved 12/19/2018 from https://docs.ocean.dwavesys.com/en/latest/index.html.
[23]
D-Wave Systems, Inc. 2016. qbsolv-Minimize the Objective Function Represented by a QUBO. qbsolv(1) manual page. Burnaby, British Columbia, Canada. 3 pages. Retrieved 07/23/2018 from https://github.com/dwavesystems/qbsolv/blob/master/doc/qbsolv.pdf.
[24]
E. D. Dahl. 2013. Programming with D-Wave: Map Coloring Problem. White Paper. D-Wave Systems, Burnaby, British Columbia, Canada, (November 2013). https://www.dwavesys.com/sites/default/files/Map%20Coloring%20WP2.pdf.
[25]
2018. Developer Guide for Python. User Manual 09--1024 A-K. D-Wave Systems, Inc., Burnaby, British Columbia, Canada, (July 30, 2018).69 pages.
[26]
Edward Farhi, Jeffrey Goldstone, and Sam Gutmann. 2014. A Quantum Approximate Optimization Algorithm. Technical report MIT-CTP/4610. Center for Theoretical Physics, Massachusetts Institute of Technology, Cambridge, Massachusetts, USA, (November 14, 2014). 16 pages. arXiv:1411.4028v1{quant-ph}.
[27]
Edward Farhi, Jeffrey Goldstone, Sam Gutmann, and Michael Sipser. 2000. Quantum computation by adiabatic evolution. (January 28, 2000). arXiv:0001106v1{quant-ph}.
[28]
A. B. Finnila, M. A. Gomez, C. Sebenik, C. Stenson, and J. D. Doll. 1994. Quantum annealing: a new method for minimizing multidimensional functions. Chemical Physics Letters, 219, 5, (March 18, 1994), 343--348. issn: 0009--2614.
[29]
Elizabeth Gibney. 2017. D-Wave upgrade: how scientists are usingthe world's most controversial quantum computer. Nature, 541, 7638,(January 24, 2017), 447--448.
[30]
Carla P. Gomes, Henry Kautz, Ashish Sabharwal, and Bart Selman. 2008. Satisfiability solvers. In Handbook of Knowledge Representation.Foundations of Artificial Intelligence. Volume 3. Frank van Harmelen, Vladimir Lifschitz, and Bruce Porter, editors. Elsevier. Chapter 2, 89--134.
[31]
Alexander S. Green, Peter LeFanu Lumsdaine, Neil J. Ross, PeterSelinger, and Benoît Valiron. 2013. Quipper: a scalable quantum programming language. In Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation. PLDI (Seattle, Washington, USA, June 16--19, 2013). Hans Boehm and Cormac Flanagan, editors. Association of Computing Machinery, New York, New York, USA, 333--342. isbn: 978--1--4503--2014--6.
[32]
Aric A. Hagberg, Daniel A. Schult, and Pieter J. Swart. 2008. Exploring network structure, dynamics, and function using Network X. In Proceedings of the 7th Python in Science Conference. SciPy 2008 (Pasadena, California, USA, August 19--24, 2008). Gaël Varoquaux, Travis Vaught, and Jarrod Millman, editors, 11--15. Retrieved 12/19/2018 from http://conference.scipy.org/proceedings/SciPy2008/paper_2/.
[33]
P. L. Hammer, P. Hansen, and B. Simeone. 1984. Roof duality, complementation and persistency in quadratic 0--1 optimization. Mathematical Programming, 28, 2, (February 1984), 121--155. issn: 1436--4646.
[34]
R. Harris, T. Lanting, A. J. Berkley, J. Johansson, M. W. Johnson, P. Bunyk, E. Ladizinsky, N. Ladizinsky, T. Oh, and S. Han. 2009. Compound Josephson-junction coupler for flux qubits with minimal crosstalk. Physical Review B, 80, (August 20, 2009), 052506--1--4, 5,(August 20, 2009). issn: 2469--9969.
[35]
IEEE. 2006. IEEE Standard for Verilog Hardware Description Language. Standard IEEE Std 1364--2005. Design Automation StandardCommittee of the IEEE Computer Society, New York, New York, USA, (April 7, 2006). 590 pages.
[36]
Ali JavadiAbhari, Shruti Patil, Daniel Kudrow, Jeff Heckey, Alexey Lvov, Frederic T. Chong, and Margaret Martonosi. 2015. ScaffCC: scalable compilation and analysis of quantum programs. Parallel Computing, 45, (June 2015), 2--17. issn: 0167--8191.
[37]
Tadashi Kadowaki and Hidetoshi Nishimori. 1998. Quantum annealing in the transverse Ising model. Physical Review E, 58, (November 1998), 5355--5363, 5, (November 1998). issn: 1063--651X.
[38]
Hilary Kahn, Robin La Fontaine, and Rachel Lau. 2000. Electronic Design Interchange Format (EDIF). Part 2: Version 4 0 0. International Standard IEC 61690--2:2000. International Electrotechnical Commission, Manchester, United Kingdom, (January 31, 2000).
[39]
Richard M. Karp. 1972. Reducibility among combinatorial problems. In Complexity of Computer Computations. Symposium on the Complexity of Computer Computations (Yorktown Heights, New York, USA, March 20--22, 1972). Raymond E. Miller, James W. Thatcher, and Jean D. Bohlinger, editors. Plenum, New York, New York, USA, 85--103. isbn: 978--1--4684--2001--2.
[40]
S. Kirkpatrick, C. D. Gelatt, and M. P. Vecchi. 1983. Optimization by simulated annealing. Science, 220, 4598, (May 13, 1983), 671--680. issn: 0036--8075.
[41]
Gary Kochenberger, Jin-Kao Hao, Fred Glover, Mark Lewis, Zhipeng Lü, Haibo Wang, and Yang Wang. 2014. The unconstrained binary quadratic programming problem: a survey.Journal of Combinatorial Optimization, 28, 1, (July 2014), 58--81. issn: 1573--2886.
[42]
Andrew Lucas. 2014. Ising formulations of many NP problems. Frontiers in Physics, 2, (February 14, 2014), 5. issn: 2296--424X.
[43]
Satoshi Matsubara, Hirotaka Tamura, Motomu Takatsu, Danny Yoo, Behraz Vatankhahghadim, Hironobu Yamasaki, Toshiyuki Miyazawa, Sanroku Tsukamoto, Yasuhiro Watanabe, Kazuya Takemoto, and Ali Sheikholeslami. 2018. Ising-model optimizer withparallel-trial bit-sieve engine. In Proceedings of the 11th International Conference on Complex, Intelligent, and Software Intensive Systems(Advances in Intelligent Systems and Computing). CISIS (Torino,Italy, July 10--12, 2017). Leonard Barolli and Olivier Terzo, editors. Volume 611. Springer International, Cham, Germany, 432--438. isbn: 978--3--319--61566-0.
[44]
Microsoft Corp. 2017. The Q# progamming language. (December 11,2017). Retrieved 07/23/2018 fromhttps://docs.microsoft.com/en-us/quantum/quantum-qr-intro.
[45]
Ari Mizel, Daniel A. Lidar, and Morgan Mitchell. 2007. Simple proof of equivalence between adiabatic quantum computation and the circuit model. Physical Review Letters, 99, (August 16, 2007), 070502--1--4, 7,(August 16, 2007).
[46]
Nicholas Nethercote, Peter J. Stuckey, Ralph Becket, Sebastian Brand,Gregory J. Duck, and Guido Tack. 2007. MiniZinc: towards a standard CP modelling language. In Proceedings of the 13th International Conference on Principles and Practice of Constraint Programming. CP 2007 (Providence, Rhode Island, USA, September 25--29, 2007). Christian Bessière, editor. Springer, Berlin, Germany and Heidelberg, Germany, 529--543. isbn: 978--3--540--74970--7.
[47]
Daniel O'Malley and Velimir V. Vesselinov. 2016. ToQ.jl: a high-level programming language for D-Wave machines based on Julia. In Proceedings of the 2016 IEEE High Performance Extreme Computing Conference. HPEC (Waltham, Massachusetts, USA, September 13--15, 2016). IEEE, (December 1, 2016). isbn: 978--1--5090--3525-0.
[48]
Takuya Okuyama, Masato Hayashi, and Masanao Yamaoka. 2017. An Ising computer based on simulated quantum annealing by pathintegral Monte Carlo method. In 2017 IEEE International Conference on Rebooting Computing. ICRC (Washington, DC, USA, November 8--9, 2017). IEEE, (December 1, 2017). isbn: 978--1--5386--1553--9.
[49]
Scott Pakin. 2016. A quantum macro assembler. In Proceedings of the2016 IEEE High Performance Extreme Computing Conference. HPEC(Waltham, Massachusetts, USA, September 13--15, 2016). IEEE, (December 1, 2016). isbn: 978--1--5090--3525-0.
[50]
Scott Pakin. 2018. Performing fully parallel constraint logic programming on a quantum annealer. Theory and Practice of Logic Programming.
[51]
Carl Pomerance. 1996. A tale of two sieves. Notices of the AMS, 43,12, 1473--1485. issn: 0002--9920. Retrieved 08/05/2018 from https://www.ams.org/journals/notices/199612/pomerance.pdf.
[52]
Ben W. Reichardt. 2004. The quantum adiabatic optimization algorithm and local minima. In Proceedings of the Thirty-Sixth Annual ACM Symposium on Theory of Computing. STOC'04 (Chicago, Illinois, USA, June 13--16, 2004). ACM, New York, New York, USA, 502--510. isbn: 1--58113--852-0.
[53]
Eleanor G. Rieffel, Davide Venturelli, Bryan O'Gorman, Minh B. Do, Elicia M. Prystay, and Vadim N. Smelyanskiy. 2015. A case study in programming a quantum annealer for hard operational planning problems.Quantum Information Processing, 14, 1, (January 2015), 1--36. issn: 1573--1332.
[54]
Ronald L. Rivest. 1994. S-Expressions. Internet Draft draft-rivest-sexp-00.txt. Internet Engineering Task Force, Network Working Group, Cambridge, Massachusetts, USA, (May 4, 1994). Retrieved 08/01/2018 from http://people.csail.mit.edu/rivest/Sexp.txt.
[55]
Peter W. Shor. 1999. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM Review, 41, 2, 303--332.
[56]
Alexander Singh, Konstantinos Giannakis, and Theodore Andronikos. 2017. Qumin, a minimalist quantum programming language. (April 14, 2017). arXiv:1704.04460v1{cs.PL}.
[57]
Robert S. Smith, Michael J. Curtis, and William J. Zeng. 2017. Apractical quantum instruction set architecture. Rigetti & Co., Inc.(February 17, 2017). arXiv: 1608.03355v2{quant-ph}.
[58]
Damian S. Steiger, Thomas Häner, and Matthias Troyer. 2018. ProjectQ: an open source software framework for quantum computing. Quantum, 2, (January 31, 2018), 49. issn: 2521--327X. arXiv: 1612.08091v2{quant-ph}.
[59]
The Cirq Developers. {n. d.} Cirq: a Python library for NISQ circuits. Retrieved 12/19/2018 from https://cirq.readthedocs.io/.
[60]
Sanroku Tsukamoto, Motomu Takatsu, Satoshi Matsubara, and Hirotaka Tamura. 2017. An accelerator architecture for combinatorial optimization problems. Fujitsu Scientific & Technical Journal, 53, 5, (November 2017), 8--13. Retrieved 07/20/2018 from http://www.fujitsu.com/global/documents/about/resources/publications/fstj/archives/vol53--5/paper02.pdf.
[61]
Dave Wecker and Krysta M. Svore. 2014. LIQU i|: a software designarchitecture and domain-specific language for quantum computing. Microsoft Research. (February 18, 2014). arXiv:1402.4467v1{quant-ph}.
[62]
J. D. Whitfield, M. Faccin, and J. D. Biamonte. 2012. Ground-state spinlogic.Europhysics Letters, 99, 5, (September 11, 2012), 57004-p1--p7.issn: 1286--4854.
[63]
Clifford Wolf and Johann Glaser. 2013. Yosys-a free Verilog synthesis suite. In Proceedings of the 21st Austrian Workshop on Microelectronics. Austrochip 2013 (Linz, Austria). (October 10, 2013).Retrieved 08/01/2018 from http://www.clifford.at/yosys/files/yosys-austrochip2013.pdf.
[64]
Masanao Yamaoka, Chihiro Yoshimura, Masato Hayashi, Takuya Okuyama, Hidetaka Aoki, and Hiroyuki Mizuno. 2016. A 20k-spinIsing chip to solve combinatorial optimization problems with CMOSannealing. IEEE Journal of Solid-State Circuits, 51, 1, (January 2016), 303--309. issn: 0018--9200.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASPLOS '19: Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems
April 2019
1126 pages
ISBN:9781450362405
DOI:10.1145/3297858
© 2019 Association for Computing Machinery. ACM acknowledges that this contribution was authored or co-authored by an employee, contractor or affiliate of the United States government. As such, the United States Government retains a nonexclusive, royalty-free right to publish or reproduce this article, or to allow others to do so, for Government purposes only.

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 April 2019

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. D-wave
  2. EDIF
  3. quantum annealing
  4. quantum computing
  5. verilog

Qualifiers

  • Research-article

Funding Sources

Conference

ASPLOS '19

Acceptance Rates

ASPLOS '19 Paper Acceptance Rate 74 of 351 submissions, 21%;
Overall Acceptance Rate 535 of 2,713 submissions, 20%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)209
  • Downloads (Last 6 weeks)31
Reflects downloads up to 27 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2022)How to Solve Combinatorial Optimization Problems Using Real Quantum Machines: A Recent SurveyIEEE Access10.1109/ACCESS.2022.321890810(120106-120121)Online publication date: 2022
  • (2021)Models in quantum computing: a systematic reviewQuantum Information Processing10.1007/s11128-021-03021-320:2Online publication date: 24-Feb-2021
  • (2019)Programminga D-wave annealing-based quantum computerQuantum Information & Computation10.5555/3370263.337026419:9-10(721-759)Online publication date: 1-Aug-2019
  • (2019)Statistical assertions for validating patterns and finding bugs in quantum programsProceedings of the 46th International Symposium on Computer Architecture10.1145/3307650.3322213(541-553)Online publication date: 22-Jun-2019
  • (2019)QxSQA: GPGPU-Accelerated Simulated Quantum Annealer within a Non-Linear Optimization and Boltzmann Sampling Framework2019 IEEE High Performance Extreme Computing Conference (HPEC)10.1109/HPEC.2019.8916450(1-8)Online publication date: Sep-2019
  • (2019)C to D-Wave: A High-level C Compilation Framework for Quantum Annealers2019 IEEE High Performance Extreme Computing Conference (HPEC)10.1109/HPEC.2019.8916231(1-8)Online publication date: Sep-2019

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media