Combinatorial optimization (CO) problems are computationally challenging as evidenced in various industry and research domains. With recent advances in quantum computing hardware and algorithms, such problems represent an excellent case study for these technologies. Nevertheless, current software tools for CO lack platform-agnostic abstractions to enable researchers and practitioners to utilize quantum resources effectively. This thesis aims to validate and extend the QPLEX Python library, a platform-agnostic CO package built on DOcplex which integrates execution across multiple quantum providers using various algorithms. We focus on two key software quality attributes: completeness, examining the quantum providers QPLEX supports to look for features that could be added to our library, enhancing its capabilities for handling CO problems; and extensibility, making the library more adaptable for future expansions. We first compile a high-level workflow for solving CO problems to ensure that our elicited software requirements align with the actual process practitioners follow when solving these problems. Subsequently, we evaluate QPLEX through a comprehensive analysis of its completeness by comparing features against alternative solutions including platform-specific SDKs, and its extensibility by examining how easily new features can be integrated without disrupting existing functionality. Based on the identified functional and non-functional requirements, we design and implement several extensions to QPLEX, including support for Qiskit Runtime Sessions, integration with D-Wave's quantum solvers and implementation of the QAOAnsatz algorithm. Furthermore, we enhance the extensibility of the library through comprehensive documentation, automated testing, and CI/CD pipelines to ensure smooth integration of future open-source contributions. Validation results demonstrate that these enhancements successfully extend QPLEX's capabilities for solving CO problems using quantum resources, providing a more comprehensive suite of features for quantum-based CO while establishing robust foundations for future development. This work contributes to the evolving field of quantum software engineering by advancing an abstraction layer that shields practitioners from low-level quantum details, allowing them to focus on problem formulation. As quantum hardware and algorithms continue to advance, such platform-agnostic libraries will play a crucial role in broadening quantum computing adoption, enabling domain experts to leverage quantum resources without requiring deep quantum computing knowledge.
Combinatorial optimization (CO) problems are computationally challenging as evidenced in various industry and research domains. With recent advances in quantum computing hardware and algorithms, such problems represent an excellent case study for these technologies. Nevertheless, current software tools for CO lack platform-agnostic abstractions to enable researchers and practitioners to utilize quantum resources effectively. This thesis aims to validate and extend the QPLEX Python library, a platform-agnostic CO package built on DOcplex which integrates execution across multiple quantum providers using various algorithms. We focus on two key software quality attributes: completeness, examining the quantum providers QPLEX supports to look for features that could be added to our library, enhancing its capabilities for handling CO problems; and extensibility, making the library more adaptable for future expansions. We first compile a high-level workflow for solving CO problems to ensure that our elicited software requirements align with the actual process practitioners follow when solving these problems. Subsequently, we evaluate QPLEX through a comprehensive analysis of its completeness by comparing features against alternative solutions including platform-specific SDKs, and its extensibility by examining how easily new features can be integrated without disrupting existing functionality. Based on the identified functional and non-functional requirements, we design and implement several extensions to QPLEX, including support for Qiskit Runtime Sessions, integration with D-Wave's quantum solvers and implementation of the QAOAnsatz algorithm. Furthermore, we enhance the extensibility of the library through comprehensive documentation, automated testing, and CI/CD pipelines to ensure smooth integration of future open-source contributions. Validation results demonstrate that these enhancements successfully extend QPLEX's capabilities for solving CO problems using quantum resources, providing a more comprehensive suite of features for quantum-based CO while establishing robust foundations for future development. This work contributes to the evolving field of quantum software engineering by advancing an abstraction layer that shields practitioners from low-level quantum details, allowing them to focus on problem formulation. As quantum hardware and algorithms continue to advance, such platform-agnostic libraries will play a crucial role in broadening quantum computing adoption, enabling domain experts to leverage quantum resources without requiring deep quantum computing knowledge.
Quantum computing has the potential to surpass the capabilities of current classical computers when solving complex problems. Combinatorial optimization has emerged as a pivotal target area for quantum computers, as problems in this field are renowned for their complexity and resource-intensive nature. Moreover, these challenges play a critical role in various industrial sectors, including logistics, manufacturing, and finance. This thesis explores the integration of quantum computation into classical software tools as a means to potentially address combinatorial optimization problems more efficiently and effectively. This work introduces QPLEX, a Python software library that enables practitioners and researchers to implement the general mathematical formulation of a given combinatorial optimization problem once and execute it seamlessly on multiple quantum devices using various quantum algorithms. This software solution automatically adapts a general optimization model to the specific instructions utilized by the target quantum device’s SDK. It offers a versatile execution workflow capable of running gate-based hybrid quantum-classical algorithms for combinatorial optimization in a platform-agnostic manner. This approach reduces the programming overhead required for modeling and experimenting with combinatorial optimization solutions. Within this manuscript, we address and introduce the various aspects associated with the development of QPLEX in a clear and comprehensive manner. These aspects encompass the quantum algorithms and quantum hardware available in the library, along with QPLEX’s system design and implementation. Additionally, we provide a guide on how to use the library and conduct a thorough evaluation of the software solution within a specific use case as part of this thesis.
Quantum computing has the potential to surpass the capabilities of current classical computers when solving complex problems. Combinatorial optimization has emerged as one of the key target areas for quantum computers as problems found in this field play a critical role in many different industrial application sectors (e.g., enhancing manufacturing operations or improving decision processes). Currently, there are different types of high-performance optimization software (e.g., ILOG CPLEX and Gurobi) that support engineers and scientists in solving optimization problems using classical computers. In order to utilize quantum resources, users require domain-specific knowledge of quantum algorithms, SDKs and libraries, which can be a limiting factor for any practitioner who wants to integrate this technology into their workflows. Our goal is to add software infrastructure to a classical optimization package so that application developers can interface with quantum platforms readily when setting up their workflows. This paper presents a tool for the seamless utilization of quantum resources through a classical interface. Our approach consists of a Python library extension that provides a backend to facilitate access to multiple quantum providers. Our pipeline enables optimization software developers to experiment with quantum resources selectively and assess performance improvements of hybrid quantum-classical optimization solutions.
Context: Quantum computing offers promising approaches to solving combinatorial optimization problems. While there are many software frameworks for these approaches, they are developed by different providers, requiring users to re-implement their problems separately in each environment to facilitate comparisons. Additionally, due to the current limitations of quantum hardware, classical solvers are often used as reference methods, further increasing implementation overhead. This lack of integration highlights the need for a unified API that seamlessly connects all approaches, enabling efficient problem formulation and comparison of different methods. Objective: This work aims to provide a research tool with a unified interface for specifying combinatorial optimization problems, selecting different solvers, managing problem hyperparameters, and standardizing the output for effortless analysis and comparison. Methods: We have developed an open-source research tool with a modular architecture that fulfills the aforementioned objective. QHyper’s design provides an independent representation of the problem along with a converter that supports various formulations compatible with available solvers. Among them are the Quantum Approximate Optimization Algorithm implemented in PennyLane, the D-Wave Advantage solver, and the Gurobi optimizer. For optimization, QHyper offers various methods, from local techniques based on gradient descent to custom global Monte Carlo methods for hyperparameter optimization. Results: QHyper’s overhead is within the statistical margin of error compared to the stand-alone use of solvers. The included illustrative example shows how to create a custom problem and easily switch between the chosen solvers. The paper also contains references to real-life scientific use cases for the presented tool. Conclusion: QHyper’s design ensures easy extensibility to new problems, solvers, and optimizers, and has proven its usefulness for several scientific use cases mentioned in the paper. With simple configuration options and easy management, such as through Jupyter Notebooks, this library can be useful for practitioners, engineers, and academics working on combinatorial optimization research.
Combining quantum computers with classical compute power has become a standard means for developing algorithms and heuristics that are, eventually, supposed to beat any purely classical alternatives. While in-principle advantages for solution quality or runtime are expected for increasingly many approaches, substantial challenges remain: Non-functional properties like runtime or solution quality of many suggested approaches are not yet fully understood, and need to be explored empirically. This, in turn, makes it unclear which approach is best suited for a given problem. Accurately predicting behaviour and properties of quantum-classical algorithms opens possibilities for software abstraction layers, which in turn can automate decisionmaking for algorithm selection and parametrisation. While such techniques find frequent use in classical high-performance computing, they are still mostly absent from quantum software toolchains. In this paper, we present a methodology (accompanied by a reproducible reference implementation) to perform algorithm selection based on desirable non-functional requirements. This greatly simplifies decision-making processes for end users. Based on meta-information annotations at the source code level, our framework traces key characteristics of quantum-classical heuristics and algorithms, and uses this information to predict the most suitable approach and its parameters for given computational challenges and their non-functional requirements. As combinatorial optimisation is a very extensively studied aspect of quantumclassical systems, we perform a comprehensive case study based on numerical simulations of algorithmic approaches to implement and validate our ideas. We develop statistical models to quantify the influence of various factors on non-functional properties, and establish predictions for optimal algorithmic choices without manual user effort. We argue that our methodology generalises to problem classes beyond combinatorial optimisation, such as Hamiltonian optimisation, and lays a foundation for integrated software layers for quantum design automation.
We present a platform-agnostic modular architecture that addresses the increasingly fragmented landscape of quantum computing benchmarking by decoupling problem generation, circuit execution, and results analysis into independent, interoperable components. Supporting over 20 benchmark variants ranging from simple algorithmic tests like Bernstein-Vazirani to complex Hamiltonian simulation with observable calculations, the system integrates with multiple circuit generation APIs (Qiskit, CUDA-Q, Cirq) and enables diverse workflows. We validate the architecture through successful integration with Sandia's pyGSTi for advanced circuit analysis and CUDA-Q for multi-GPU HPC simulations. Extensibility of the system is demonstrated by implementing dynamic circuit variants of existing benchmarks and a new quantum reinforcement learning benchmark, which become readily available across multiple execution and analysis modes. Our primary contribution is identifying and formalizing modular interfaces that enable interoperability between incompatible benchmarking frameworks, demonstrating that standardized interfaces reduce ecosystem fragmentation while preserving optimization flexibility. This architecture has been developed as a key enhancement to the continually evolving QED-C Application-Oriented Performance Benchmarks for Quantum Computing suite.
The advent of quantum algorithms has initiated a discourse on the potential for quantum speedups for optimization problems. However, several factors still hinder a practical realization of the potential benefits. These include the lack of advanced, error-free quantum hardware, the absence of accessible software stacks for seamless integration and interaction, and the lack of methods that allow us to leverage the theoretical advantages to real-world use cases. This paper works towards the creation of an accessible hybrid software stack for solving optimization problems, aiming to create a fundamental platform that can utilize quantum technologies to enhance the solving process. We introduce a novel approach that we call Hybrid Meta-Solving, which combines classical and quantum optimization techniques to create customizable and extensible hybrid solvers. We decompose mathematical problems into multiple sub-problems that can be solved by classical or quantum solvers, and propose techniques to semi-automatically build the best solver for a given problem. Implemented in our ProvideQ toolbox prototype, Meta-Solving provides interactive workflows for accessing quantum computing capabilities. Our evaluation demonstrates the applicability of Meta-Solving in industrial use cases. It shows that we can reuse state-of-the-art classical algorithms and extend them with quantum computing techniques. Our approach is designed to be at least as efficient as state-of-the-art classical techniques, while having the potential to outperform them if future advances in the quantum domain are made.