A Work-Time Optimal Parallel Exhaustive Search Algorithm for the QUBO and the Ising model, with GPU implementation
Masaki Tao, Koji Nakano, Yasuaki Ito, Ryota Yasudo, Masaru Tatekawa, Ryota Katsuki, Takashi Yazane, Yoko Inaba · 2020
The main contribution of this paper is to present a simple exhaustive search algorithm for the quadratic unconstraint binary optimization (QUBO) problem. It computes the values of the objective function E(X) for all n-bit input vector X in O(2n) time. Since Ω(2n) time is necessary to output E(X) for all 2nvectors X, this sequential algorithm is optimal. We also present a work-time optimal parallel algorithm running O(log n) time using 2n/ log n processors on the CREW-PRAM. This parallel algorithm is work optimal, because the total number of computational operations is equal to the running time of the optimal sequential algorithm. Also, it is time optimal because any parallel algorithm using any large number of processors takes at least Ω(log n) time for evaluating E(X). Further, we have implemented this parallel algorithm to run on the GPU. The experimental results on NVIDIA GeForce RTX 2080Ti GPU show that our GPU implementation runs more than 1000 times faster than the sequential algorithm running on Intel Corei7-8700K CPU(3.70GHz) for the QUBO with nbit vector whenever n ≥ 33. We also compare our exhaustive search parallel algorithm with several non-exhaustive search approaches for solving the QUBO including D-Wave 2000Q quantum annealer, simulated annealing algorithm, and Gurobi optimizer.