Quantum annealers are specialized quantum computers for solving combinatorial optimization problems using special characteristics of quantum computing (QC), such as superposition, entanglement, and quantum tunneling. Theoretically, quantum annealers can outperform classical computers. However, the currently available quantum annealers are small-scale, i.e., they have limited quantum bits (qubits); hence, they currently cannot demonstrate the quantum advantage. Nonetheless, research is warranted to develop novel mechanisms to formulate combinatorial optimization problems for quantum annealing (QA). However, solving combinatorial problems with QA in software engineering remains unexplored. Toward this end, we propose BootQA, the very first effort at solving the test case minimization (TCM) problem with QA. In BootQA, we provide a novel formulation of TCM for QA, followed by devising a mechanism to incorporate bootstrap sampling to QA to optimize the use of qubits. We also implemented our TCM formulation in three other optimization processes: classical simulated annealing (SA), QA without problem decomposition, and QA with an existing D-Wave problem decomposition strategy, and conducted an empirical evaluation with three real-world TCM datasets. Results show that BootQA outperforms QA without problem decomposition and QA with the existing decomposition strategy in terms of effectiveness. Moreover, BootQA's effectiveness is similar to SA. Finally, BootQA has higher efficiency in terms of time when solving large TCM problems than the other three optimization processes.
翻译:量子退火器是一种利用量子计算(QC)的特殊性质(如叠加、纠缠和量子隧穿)来解决组合优化问题的专用量子计算机。理论上,量子退火器的性能可超越经典计算机。然而,当前可用的量子退火器规模较小(即量子比特数量有限),因此尚无法展现量子优势。尽管如此,开发将组合优化问题转化为量子退火(QA)问题的新机制仍具有研究价值。然而,在软件工程领域使用量子退火解决组合优化问题仍属空白。为此,我们提出BootQA——首次尝试用量子退火解决测试用例最小化(TCM)问题的研究工作。在BootQA中,我们针对量子退火提出了一种全新的TCM问题形式化方法,并设计了一种将自助采样机制融入量子退火的方案以优化量子比特的使用。我们还实现了另外三种优化过程中的TCM形式化方法:经典模拟退火(SA)、无问题分解的量子退火以及采用现有D-Wave问题分解策略的量子退火,并基于三个真实TCM数据集进行实证评估。结果表明,BootQA在有效性上优于无问题分解的量子退火和采用现有分解策略的量子退火。此外,BootQA的有效性与模拟退火相当。最后,在解决大规模TCM问题时,BootQA在时间效率上优于其他三种优化过程。