-
Towards an Automatic Framework for Solving Optimization Problems with Quantum Computers
Authors:
Deborah Volpe,
Nils Quetschlich,
Mariagrazia Graziano,
Giovanna Turvani,
Robert Wille
Abstract:
Optimizing objective functions stands to benefit significantly from leveraging quantum computers, promising enhanced solution quality across various application domains in the future. However, harnessing the potential of quantum solvers necessitates formulating problems according to the Quadratic Unconstrained Binary Optimization (QUBO) model, demanding significant expertise in quantum computation…
▽ More
Optimizing objective functions stands to benefit significantly from leveraging quantum computers, promising enhanced solution quality across various application domains in the future. However, harnessing the potential of quantum solvers necessitates formulating problems according to the Quadratic Unconstrained Binary Optimization (QUBO) model, demanding significant expertise in quantum computation and QUBO formulations. This expertise barrier limits access to quantum solutions.
Fortunately, automating the conversion of conventional optimization problems into QUBO formulations presents a solution for promoting accessibility to quantum solvers. This article addresses the unmet need for a comprehensive automatic framework to assist users in utilizing quantum solvers for optimization tasks while preserving interfaces that closely resemble conventional optimization practices. The framework prompts users to specify variables, optimization criteria, as well as validity constraints and, afterwards, allows them to choose the desired solver. Subsequently, it automatically transforms the problem description into a format compatible with the chosen solver and provides the resulting solution. Additionally, the framework offers instruments for analyzing solution validity and quality.
Comparative analysis against existing libraries and tools in the literature highlights the comprehensive nature of the proposed framework. Two use cases (the knapsack problem and linear regression) are considered to show the completeness and efficiency of the framework in real-world applications.
Finally, the proposed framework represents a significant advancement towards automating quantum computing solutions and widening access to quantum optimization for a broader range of users.
△ Less
Submitted 18 June, 2024;
originally announced June 2024.
-
The MQT Handbook: A Summary of Design Automation Tools and Software for Quantum Computing
Authors:
Robert Wille,
Lucas Berent,
Tobias Forster,
Jagatheesan Kunasaikaran,
Kevin Mato,
Tom Peham,
Nils Quetschlich,
Damian Rovara,
Aaron Sander,
Ludwig Schmid,
Daniel Schönberger,
Yannick Stade,
Lukas Burgholzer
Abstract:
Quantum computers are becoming a reality and numerous quantum computing applications with a near-term perspective (e.g., for finance, chemistry, machine learning, and optimization) and with a long-term perspective (e.g., for cryptography or unstructured search) are currently being investigated. However, designing and realizing potential applications for these devices in a scalable fashion requires…
▽ More
Quantum computers are becoming a reality and numerous quantum computing applications with a near-term perspective (e.g., for finance, chemistry, machine learning, and optimization) and with a long-term perspective (e.g., for cryptography or unstructured search) are currently being investigated. However, designing and realizing potential applications for these devices in a scalable fashion requires automated, efficient, and user-friendly software tools that cater to the needs of end users, engineers, and physicists at every level of the entire quantum software stack. Many of the problems to be tackled in that regard are similar to design problems from the classical realm for which sophisticated design automation tools have been developed in the previous decades.
The Munich Quantum Toolkit (MQT) is a collection of software tools for quantum computing developed by the Chair for Design Automation at the Technical University of Munich which explicitly utilizes this design automation expertise. Our overarching objective is to provide solutions for design tasks across the entire quantum software stack. This entails high-level support for end users in realizing their applications, efficient methods for the classical simulation, compilation, and verification of quantum circuits, tools for quantum error correction, support for physical design, and more. These methods are supported by corresponding data structures (such as decision diagrams) and core methods (such as SAT encodings/solvers). All of the developed tools are available as open-source implementations and are hosted on https://github.com/cda-tum.
△ Less
Submitted 27 May, 2024;
originally announced May 2024.
-
Towards Application-Aware Quantum Circuit Compilation
Authors:
Nils Quetschlich,
Florian J. Kiwit,
Maximilian A. Wolf,
Carlos A. Riofrio,
Lukas Burgholzer,
Andre Luckow,
Robert Wille
Abstract:
Quantum computing has made tremendous improvements in both software and hardware that have sparked interest in academia and industry to realize quantum computing applications. To this end, several steps are necessary: The underlying problem must be encoded in a quantum circuit, a suitable device must be selected to execute it, and it must be compiled accordingly. This compilation step has a signif…
▽ More
Quantum computing has made tremendous improvements in both software and hardware that have sparked interest in academia and industry to realize quantum computing applications. To this end, several steps are necessary: The underlying problem must be encoded in a quantum circuit, a suitable device must be selected to execute it, and it must be compiled accordingly. This compilation step has a significant influence on the quality of the resulting solution. However, current state-of-the-art compilation tools treat the quantum circuit as a sequence of instructions without considering the actual application it realizes -- wasting a yet untapped potential to increase the solution quality. In this work, a different approach is explored that explicitly incorporates the application considered and aims to optimize its solution quality during compilation. Initial results show the benefits of this approach: For an industry-inspired application of a quantum generative model, the proposed approach outperformed Qiskit's most-optimized compilation scheme and led to better solution quality. Therefore, this work presents a first step towards application-aware compilation.
△ Less
Submitted 9 June, 2024; v1 submitted 18 April, 2024;
originally announced April 2024.
-
A Framework to Formulate Pathfinding Problems for Quantum Computing
Authors:
Damian Rovara,
Nils Quetschlich,
Robert Wille
Abstract:
With the applications of quantum computing becoming more and more widespread, finding ways that allow end users without experience in the field to apply quantum computers to solve their individual problems is becoming a crucial task. However, current optimization algorithms require problem instances to be posed in complex formats that are challenging to formulate, even for experts. In particular,…
▽ More
With the applications of quantum computing becoming more and more widespread, finding ways that allow end users without experience in the field to apply quantum computers to solve their individual problems is becoming a crucial task. However, current optimization algorithms require problem instances to be posed in complex formats that are challenging to formulate, even for experts. In particular, the Quadratic Unconstrained Binary Optimization (QUBO) formalism employed by many quantum optimization algorithms, such as the Quantum Approximate Optimization Algorithm (QAOA), involves the mathematical rewriting of constraints under strict conditions. To facilitate this process, we propose a framework to automatically generate QUBO formulations for pathfinding problems. This framework allows users to translate their specific problem instances into formulations that can be passed directly to quantum algorithms for optimization without requiring any expertise in the field of quantum computing. It supports three different encoding schemes that can easily be compared without requiring manual reformulation efforts. The resulting QUBO formulations are robust and efficient, reducing the previously tedious and error-prone reformulation process to a task that can be completed in a matter of seconds. In addition to an open-source Python package available on https://github.com/cda-tum/mqt-qubomaker, we also provide a graphical user interface accessible through the web (https://cda-tum.github.io/mqt-qubomaker/), which can be used to operate the framework without requiring the end user to write any code.
△ Less
Submitted 16 April, 2024;
originally announced April 2024.
-
Utilizing Resource Estimation for the Development of Quantum Computing Applications
Authors:
Nils Quetschlich,
Mathias Soeken,
Prakash Murali,
Robert Wille
Abstract:
Quantum computing has made considerable progress in recent years in both software and hardware. But to unlock the power of quantum computers in solving problems that cannot be efficiently solved classically, quantum computing at scale is necessary. Unfortunately, quantum simulators suffer from their exponential complexity and, at the same time, the currently available quantum computing hardware is…
▽ More
Quantum computing has made considerable progress in recent years in both software and hardware. But to unlock the power of quantum computers in solving problems that cannot be efficiently solved classically, quantum computing at scale is necessary. Unfortunately, quantum simulators suffer from their exponential complexity and, at the same time, the currently available quantum computing hardware is still rather limited (even if roadmaps make intriguing promises). Hence, in order to evaluate quantum computing applications, end-users are still frequently restricted to toy-size problem instances (which additionally often do not take error correction into account). This substantially hinders the development and assessment of real-world quantum computing applications. In this work, we demonstrate how to utilize Resource Estimation to improve this situation. We show how the current workflow (relying on simulation and/or execution) can be complemented with an estimation step, allowing that end-users (1) actually can consider real-world problem instances already today (also considering error correction schemes and correspondingly required hardware resources), (2) can start exploring possible optimizations of those instances across the entire design space, and (3) can incorporate hypotheses of hardware development trends to derive more informed and, thus, better design space parameters. Overall, this enables end-users already today to check out the promises of possible future quantum computing applications, even if the corresponding hardware to execute them is not available yet.
△ Less
Submitted 19 February, 2024;
originally announced February 2024.
-
MQT Predictor: Automatic Device Selection with Device-Specific Circuit Compilation for Quantum Computing
Authors:
Nils Quetschlich,
Lukas Burgholzer,
Robert Wille
Abstract:
Fueled by recent accomplishments in quantum computing hardware and software, an increasing number of problems from various application domains are being explored as potential use cases for this new technology. Similarly to classical computing, realizing an application on a particular quantum device requires the corresponding (quantum) circuit to be compiled so that it can be executed on the device…
▽ More
Fueled by recent accomplishments in quantum computing hardware and software, an increasing number of problems from various application domains are being explored as potential use cases for this new technology. Similarly to classical computing, realizing an application on a particular quantum device requires the corresponding (quantum) circuit to be compiled so that it can be executed on the device. With a steadily growing number of available devices and a wide variety of different compilation tools, the number of choices to consider when trying to realize an application is quickly exploding. Due to missing tool support and automation, especially end-users who are not quantum computing experts are easily left unsupported and overwhelmed. In this work, we propose a methodology that allows one to automatically select a suitable quantum device for a particular application and provides an optimized compiler for the selected device. The resulting framework -- called the MQT Predictor -- not only supports end-users in navigating the vast landscape of choices, it also allows to mix-and-match compiler passes from various tools to create optimized compilers that transcend the individual tools. Evaluations of an exemplary framework instantiation based on more than 500 quantum circuits and seven devices have shown that -- compared to both Qiskit's and TKET's most optimized compilation flows for all devices -- the MQT Predictor produces circuits within the top-3 out of 14 baselines in more than 98% of cases while frequently outperforming any tested combination by up to 53% when optimizing for expected fidelity. MQT Predictor is publicly available as open-source on GitHub (https://github.com/cda-tum/mqt-predictor) and as an easy-to-use Python package (https://pypi.org/p/mqt.predictor).
△ Less
Submitted 10 October, 2023;
originally announced October 2023.
-
A Hybrid Classical Quantum Computing Approach to the Satellite Mission Planning Problem
Authors:
Nils Quetschlich,
Vincent Koch,
Lukas Burgholzer,
Robert Wille
Abstract:
Hundreds of satellites equipped with cameras orbit the Earth to capture images from locations for various purposes. Since the field of view of the cameras is usually very narrow, the optics have to be adjusted and rotated between single shots of different locations. This is even further complicated by the fixed speed -- determined by the satellite's altitude -- such that the decision what location…
▽ More
Hundreds of satellites equipped with cameras orbit the Earth to capture images from locations for various purposes. Since the field of view of the cameras is usually very narrow, the optics have to be adjusted and rotated between single shots of different locations. This is even further complicated by the fixed speed -- determined by the satellite's altitude -- such that the decision what locations to select for imaging becomes even more complex. Therefore, classical algorithms for this Satellite Mission Planning Problem (SMPP) have already been proposed decades ago. However, corresponding classical solutions have only seen evolutionary enhancements since then. Quantum computing and its promises, on the other hand, provide the potential for revolutionary improvement. Therefore, in this work, we propose a hybrid classical quantum computing approach to solve the SMPP combining the advantages of quantum hardware with decades of classical optimizer development. Using the Variational Quantum Eigensolver (VQE), Quantum Approximate Optimization Algorithm (QAOA), and its warm-start variant (W-QAOA), we demonstrate the applicability of solving the SMPP for up to 21 locations to choose from. This proof-of-concept -- which is available on GitHub (https://github.com/cda-tum/mqt-problemsolver) as part of the Munich Quantum Toolkit (MQT) -- showcases the potential of quantum computing in this application domain and represents a first step toward competing with classical algorithms in the future.
△ Less
Submitted 31 July, 2023;
originally announced August 2023.
-
Reducing the Compilation Time of Quantum Circuits Using Pre-Compilation on the Gate Level
Authors:
Nils Quetschlich,
Lukas Burgholzer,
Robert Wille
Abstract:
In order to implement a quantum computing application, problem instances must be encoded into a quantum circuit and then compiled for a specific platform. The lengthy compilation process is a key bottleneck in this workflow, especially for problems that arise repeatedly with a similar yet distinct structure (each of which requires a new compilation run thus far). In this paper, we aim to overcome…
▽ More
In order to implement a quantum computing application, problem instances must be encoded into a quantum circuit and then compiled for a specific platform. The lengthy compilation process is a key bottleneck in this workflow, especially for problems that arise repeatedly with a similar yet distinct structure (each of which requires a new compilation run thus far). In this paper, we aim to overcome this bottleneck by proposing a comprehensive pre-compilation technique that tries to minimize the time spent for compiling recurring problems while preserving the solution quality as much as possible. The following concepts underpin the proposed approach: Beginning with a problem class and a corresponding quantum algorithm, a predictive encoding scheme is applied to encode a representative problem instance into a general-purpose quantum circuit for that problem class. Once the real problem instance is known, the previously constructed circuit only needs to be adjusted -- with (nearly) no compilation necessary. Experimental evaluations on QAOA for the MaxCut problem as well as a case study involving a satellite mission planning problem show that the proposed approach significantly reduces the compilation time by several orders of magnitude compared to Qiskit's compilation schemes while maintaining comparable compiled circuit quality. All implementations are available on GitHub (https://github.com/cda-tum/mqt-problemsolver) as part of the Munich Quantum Toolkit (MQT).
△ Less
Submitted 31 July, 2023; v1 submitted 8 May, 2023;
originally announced May 2023.
-
Recommending Solution Paths for Solving Optimization Problems with Quantum Computing
Authors:
Benedikt Poggel,
Nils Quetschlich,
Lukas Burgholzer,
Robert Wille,
Jeanette Miriam Lorenz
Abstract:
Solving real-world optimization problems with quantum computing requires choosing between a large number of options concerning formulation, encoding, algorithm and hardware. Finding good solution paths is challenging for end users and researchers alike. We propose a framework designed to identify and recommend the best-suited solution paths. This introduces a novel abstraction layer that is requir…
▽ More
Solving real-world optimization problems with quantum computing requires choosing between a large number of options concerning formulation, encoding, algorithm and hardware. Finding good solution paths is challenging for end users and researchers alike. We propose a framework designed to identify and recommend the best-suited solution paths. This introduces a novel abstraction layer that is required to make quantum-computing-assisted solution techniques accessible to end users without requiring a deeper knowledge of quantum technologies. State-of-the-art hybrid algorithms, encoding and decomposition techniques can be integrated in a modular manner and evaluated using problem-specific performance metrics. Equally, tools for the graphical analysis of variational quantum algorithms are developed. Classical, fault tolerant quantum and quantum-inspired methods can be included as well to ensure a fair comparison resulting in useful solution paths. We demonstrate and validate our approach on a selected set of options and illustrate its application on the capacitated vehicle routing problem (CVRP). We also identify crucial requirements and the major design challenges for the proposed automation layer within a quantum-assisted solution workflow for optimization problems.
△ Less
Submitted 10 October, 2023; v1 submitted 21 December, 2022;
originally announced December 2022.
-
Compiler Optimization for Quantum Computing Using Reinforcement Learning
Authors:
Nils Quetschlich,
Lukas Burgholzer,
Robert Wille
Abstract:
Any quantum computing application, once encoded as a quantum circuit, must be compiled before being executable on a quantum computer. Similar to classical compilation, quantum compilation is a sequential process with many compilation steps and numerous possible optimization passes. Despite the similarities, the development of compilers for quantum computing is still in its infancy -- lacking mutua…
▽ More
Any quantum computing application, once encoded as a quantum circuit, must be compiled before being executable on a quantum computer. Similar to classical compilation, quantum compilation is a sequential process with many compilation steps and numerous possible optimization passes. Despite the similarities, the development of compilers for quantum computing is still in its infancy -- lacking mutual consolidation on the best sequence of passes, compatibility, adaptability, and flexibility. In this work, we take advantage of decades of classical compiler optimization and propose a reinforcement learning framework for develo** optimized quantum circuit compilation flows. Through distinct constraints and a unifying interface, the framework supports the combination of techniques from different compilers and optimization tools in a single compilation flow. Experimental evaluations show that the proposed framework -- set up with a selection of compilation passes from IBM's Qiskit and Quantinuum's TKET -- significantly outperforms both individual compilers in 73% of cases regarding the expected fidelity. The framework is available on GitHub (https://github.com/cda-tum/MQTPredictor) as part of the Munich Quantum Toolkit (MQT).
△ Less
Submitted 4 April, 2023; v1 submitted 8 December, 2022;
originally announced December 2022.
-
Towards an Automated Framework for Realizing Quantum Computing Solutions
Authors:
Nils Quetschlich,
Lukas Burgholzer,
Robert Wille
Abstract:
Quantum computing is fast evolving as a technology due to recent advances in hardware, software, as well as the development of promising applications. To use this technology for solving specific problems, a suitable quantum algorithm has to be determined, the problem has to be encoded in a form suitable for the chosen algorithm, it has to be executed, and the result has to be decoded. To date, eac…
▽ More
Quantum computing is fast evolving as a technology due to recent advances in hardware, software, as well as the development of promising applications. To use this technology for solving specific problems, a suitable quantum algorithm has to be determined, the problem has to be encoded in a form suitable for the chosen algorithm, it has to be executed, and the result has to be decoded. To date, each of these tedious and error-prone steps is conducted in a mostly manual fashion. This creates a high entry barrier for using quantum computing -- especially for users with little to no expertise in that domain. In this work, we envision a framework that aims to lower this entry barrier by allowing users to employ quantum computing solutions in an automatic fashion. To this end, interfaces as similar as possible to classical solvers are provided, while the quantum steps of the workflow are shielded from the user as much as possible by a fully automated backend. To demonstrate the feasibility and usability of such a framework, we provide proof-of-concept implementations for two different classes of problems which are publicly available on GitHub (https://github.com/cda-tum/MQTProblemSolver) as part of the Munich Quantum Toolkit (MQT). By this, this work provides the foundation for a low-threshold approach realizing quantum computing solutions with no or only moderate expertise in this technology.
△ Less
Submitted 28 February, 2023; v1 submitted 26 October, 2022;
originally announced October 2022.
-
Predicting Good Quantum Circuit Compilation Options
Authors:
Nils Quetschlich,
Lukas Burgholzer,
Robert Wille
Abstract:
Any potential application of quantum computing, once encoded as a quantum circuit, needs to be compiled in order to be executed on a quantum computer. Deciding which qubit technology, which device, which compiler, and which corresponding settings are best for the considered problem -- according to a measure of goodness -- requires expert knowledge and is overwhelming for end-users from different d…
▽ More
Any potential application of quantum computing, once encoded as a quantum circuit, needs to be compiled in order to be executed on a quantum computer. Deciding which qubit technology, which device, which compiler, and which corresponding settings are best for the considered problem -- according to a measure of goodness -- requires expert knowledge and is overwhelming for end-users from different domains trying to use quantum computing to their advantage. In this work, we treat the problem as a statistical classification task and explore the utilization of supervised machine learning techniques to optimize the compilation of quantum circuits. Based on that, we propose a framework that, given a quantum circuit, predicts the best combination of these options and, therefore, automatically makes these decisions for end-users. Experimental evaluations show that, considering a prototypical setting with 3000 quantum circuits, the proposed framework yields promising results: for more than three quarters of all unseen test circuits, the best combination of compilation options is determined. Moreover, for more than 95% of the circuits, a combination of compilation options within the top-three is determined -- while the median compilation time is reduced by more than one order of magnitude. Furthermore, the resulting methodology not only provides end-users with a prediction of the best compilation options, but also provides means to extract explicit knowledge from the machine learning technique. This knowledge helps in two ways: it lays the foundation for further applications of machine learning in this domain and, also, allows one to quickly verify whether a machine learning algorithm is reasonably trained. The corresponding framework and the pre-trained classifier are publicly available on GitHub (https://github.com/cda-tum/MQTPredictor) as part of the Munich Quantum Toolkit (MQT).
△ Less
Submitted 19 May, 2023; v1 submitted 14 October, 2022;
originally announced October 2022.
-
MQT Bench: Benchmarking Software and Design Automation Tools for Quantum Computing
Authors:
Nils Quetschlich,
Lukas Burgholzer,
Robert Wille
Abstract:
Quantum software tools for a wide variety of design tasks on and across different levels of abstraction are crucial in order to eventually realize useful quantum applications. This requires practical and relevant benchmarks for new software tools to be empirically evaluated and compared to the current state of the art. Although benchmarks for specific design tasks are commonly available, the deman…
▽ More
Quantum software tools for a wide variety of design tasks on and across different levels of abstraction are crucial in order to eventually realize useful quantum applications. This requires practical and relevant benchmarks for new software tools to be empirically evaluated and compared to the current state of the art. Although benchmarks for specific design tasks are commonly available, the demand for an overarching cross-level benchmark suite has not yet been fully met and there is no mutual consolidation in how quantum software tools are evaluated thus far. In this work, we propose the MQT Bench benchmark suite (as part of the Munich Quantum Toolkit, MQT) based on four core traits: (1) cross-level support for different abstraction levels, (2) accessibility via an easy-to-use web interface (https://www.cda.cit.tum.de/mqtbench) and a Python package, (3) provision of a broad selection of benchmarks to facilitate generalizability, as well as (4) extendability to future algorithms, gate-sets, and hardware architectures. By comprising more than 70,000 benchmark circuits ranging from 2 to 130 qubits on four abstraction levels, MQT Bench presents a first step towards benchmarking different abstraction levels with a single benchmark suite to increase comparability, reproducibility, and transparency.
△ Less
Submitted 16 July, 2023; v1 submitted 28 April, 2022;
originally announced April 2022.