Abstract
The quadratic unconstrained binary optimization (QUBO) problem belongs to the NP-hard complexity class of problems and has been the subject of intense research since the 1960s. Many problems in various areas of research can be reformulated as QUBO problems, and several reformulated instances have sparse matrices. Thus, speeding up implementations of methods for solving the QUBO problem can benefit all of those problems. Among such methods, Tabu Search (TS) has been particularly successful. In this work, we propose data structures to speed up TS implementations when the instance matrix is sparse. Our main result consists in employing a compressed sparse row representation of the instance matrix, and priority queues for conducting the search over the solution space. While our literature review indicates that current TS procedures for QUBO take linear time on the number of variables to execute one iteration, our proposed structures may allow better time complexities than that, depending on the sparsity of the instance matrix. We show, by means of extensive computational experiments, that our techniques can significantly decrease the processing time of TS implementations, when solving QUBO problem instances with matrices of relatively high sparsity. To assess the quality of our results regarding more intricate procedures, we also experimented with a Path Relinking metaheuristic implemented with the TS using our techniques. This experiment showed that our techniques can allow such metaheuristics to become more competitive.
Similar content being viewed by others
Availability of data and materials
All data that support the findings of this study are available from the corresponding author upon request.
References
Alidaee, B., Sloan, H., Wang, H.: Simple and fast novel diversification approach for the UBQP based on sequential improvement local search. Comput. Ind. Eng. 111, 164–175 (2017). https://doi.org/10.1016/j.cie.2017.07.012
Anacleto, E.A., Meneses, C.N., Ravelo, S.V.: Closed-form formulas for evaluating r-flip moves to the unconstrained binary quadratic programming problem. Comput. Oper. Res. 113(104), 774 (2020). https://doi.org/10.1016/j.cor.2019.104774
Aramon, M., Rosenberg, G., Valiante, E., et al.: Physics-inspired optimization for quadratic unconstrained problems using a digital annealer. Nat. Phys. 7, 48 (2019). https://doi.org/10.3389/fphy.2019.00048
Bian, Z., Chudak, F., Israel, R., et al.: Discrete optimization using quantum annealing on sparse ising models. Front. Phys. 2, 56 (2014). https://doi.org/10.3389/fphy.2014.00056
Boettcher, S.: Analysis of the relation between quadratic unconstrained binary optimization and the spin-glass ground-state problem. Phys. Rev. Res. 1(3), 033,142 (2019). https://doi.org/10.1103/physrevresearch.1.033142
Boixo, S., Rønnow, T.F., Isakov, S.V., et al.: Evidence for quantum annealing with more than one hundred qubits. Nat. Phys. 10, 218–224 (2014). https://doi.org/10.1038/nphys2900
Boros, E., Hammer, P.L., Tavares, G.: Local search heuristics for quadratic unconstrained binary optimization (QUBO). J. Heuristics 13(2), 99–132 (2007). https://doi.org/10.1007/s10732-007-9009-3
Branda, M., Novotný, J., Olstad, A.: Fixed interval scheduling under uncertainty—a Tabu Search algorithm for an extended robust coloring formulation. Comput. Ind. Eng. 93, 45–54 (2016). https://doi.org/10.1016/j.cie.2015.12.021
Buluç, A., Fineman, J.T., Frigo, M., et al.: Parallel sparse matrix–vector and matrix-transpose–vector multiplication using compressed sparse blocks. In: Proceedings of the Twenty-First Annual Symposium on Parallelism in Algorithms and Architectures—SPAA ’09. ACM Press, pp. 233–244 (2009). https://doi.org/10.1145/1583991.1584053
Chapuis, G., Djidjev, H., Hahn, G., et al.: Finding maximum cliques on the d-wave quantum annealer. J. Signal Process. Syst. 91(3–4), 363–377 (2018). https://doi.org/10.1007/s11265-018-1357-8
Cormen, T.H., Leiserson, C.E., Rivest, R.L., et al.: Introduction to Algorithms, 2nd edn. The MIT Press, Cambridge, MA (2001)
Cruz-Santos, W., Venegas-Andraca, S., Lanzagorta, M.: A QUBO formulation of the stereo matching problem for D-Wave quantum annealers. Entropy 20(10), 786 (2018). https://doi.org/10.3390/e20100786
Duff, I.S.: A survey of sparse matrix research. Proc. IEEE 65(4), 500–535 (1977). https://doi.org/10.1109/PROC.1977.10514
Dunning, I., Gupta, S., Silberholz, J.: What works best when? A systematic evaluation of heuristics for max-cut and QUBO. INFORMS J. Comput. 30(3), 608–624 (2018). https://doi.org/10.1287/ijoc.2017.0798
Eisenstat, S.C., Gursky, M.C., Schultz, M.H., et al.: Yale sparse matrix package I: the symmetric codes. Int. J. Numer. Methods Eng. 18(8), 1145–1151 (1982). https://doi.org/10.1002/nme.1620180804
Glover, F.: Exterior path relinking for zero-one optimization. Int. J. Appl. Metaheuristic Comput. 5(3), 1–8 (2014). https://doi.org/10.4018/ijamc.2014070101
Glover, F., Hao, J.K.: Efficient evaluations for solving large 0–1 unconstrained quadratic optimisation problems. Int. J. Metaheuristics 1(1), 3 (2010). https://doi.org/10.1504/ijmheur.2010.033120
Glover, F., Laguna, M.: Tabu Search. Springer, Boston, MA (1997). https://doi.org/10.1007/978-1-4615-6089-0
Glover, F., Kochenberger, G.A., Alidaee, B.: Adaptive memory Tabu Search for binary quadratic programs. Manage. Sci. 44(3), 336–345 (1998). https://doi.org/10.1287/mnsc.44.3.336
Glover, F., Alidaee, B., Rego, C., et al.: One-pass heuristics for large-scale unconstrained binary quadratic problems. Eur. J. Oper. Res. 137(2), 272–287 (2002). https://doi.org/10.1016/s0377-2217(01)00209-0
Glover, F., Lü, Z., Hao, J.K.: Diversification-driven Tabu Search for unconstrained binary quadratic problems. 4OR 8(3), 239–253 (2010). https://doi.org/10.1007/s10288-009-0115-y
Glover, F., Laguna, M., Martí, R.: Principles and strategies of Tabu Search. In: Gonzalez, T.F. (ed.) Handbook of Approximation Algorithms and Metaheuristics, 2nd edn., pp. 361–377. Chapman and Hall/CRC, New York (2018). https://doi.org/10.1201/9781351236423-21
Hua, R., Dinneen, M.J.: Improved QUBO formulation of the graph isomorphism problem. SN Comput. Sci. 1(1), 1–18 (2019). https://doi.org/10.1007/s42979-019-0020-1
Kochenberger, G.A., Hao, J.K., Lü, Z., et al.: Solving large scale max cut problems via Tabu Search. J. Heuristics 19(4), 565–571 (2011). https://doi.org/10.1007/s10732-011-9189-8
Kochenberger, G.A., Hao, J.K., Glover, F., et al.: The unconstrained binary quadratic programming problem: a survey. J. Comb. Optim. 28(1), 58–81 (2014). https://doi.org/10.1007/s10878-014-9734-0
Lewis, M., Metcalfe, J., Kochenberger, G.A.: Robust optimisation of unconstrained binary quadratic problems. Int. J. Oper. Res. 36(4), 441 (2019). https://doi.org/10.1504/ijor.2019.104050
Lü, Z., Glover, F., Hao, J.K.: A hybrid metaheuristic approach to solving the UBQP problem. Eur. J. Oper. Res. 207(3), 1254–1262 (2010). https://doi.org/10.1016/j.ejor.2010.06.039
Lucas, A.: Ising formulations of many NP problems. Front. Phys. 2, 5 (2014). https://doi.org/10.3389/fphy.2014.00005
Ma, F., Hao, J.K.: A multiple search operator heuristic for the max-k-cut problem. Ann. Oper. Res. 248(1–2), 365–403 (2016). https://doi.org/10.1007/s10479-016-2234-0
Manber, U.: Introduction to Algorithms: A Creative Approach. Addison-Wesley, Reading, MA (1989)
Matsumoto, M., Nishimura, T.: Mersenne twister. ACM Trans. Model. Comput. Simul. 8(1), 3–30 (1998). https://doi.org/10.1145/272991.272995
Merz, P., Katayama, K.: Memetic algorithms for the unconstrained binary quadratic programming problem. Biosystems 78(1–3), 99–118 (2004). https://doi.org/10.1016/j.biosystems.2004.08.002
Milne, A., Rounds, M., Goddard, P.: Optimal feature selection using a quantum annealer. In: Dempster, M.A.H., Kanniainen, J., Keane, J., Vynckier, E. (eds.) High-Performance Computing in Finance, pp. 561–588. Chapman and Hall/CRC, New York p (2018). https://doi.org/10.1201/9781315372006-19
Oliveira, N.M.D., Silva, R.M.A., Oliveira, W.R.D.: QUBO formulation for the contact map overlap problem. Int. J. Quantum Inf. 16(08), 1840007 (2018). https://doi.org/10.1142/s0219749918400075
Palubeckis, G.: Multistart Tabu Search strategies for the unconstrained binary quadratic optimization problem. Ann. Oper. Res. 131(1–4), 259–282 (2004). https://doi.org/10.1023/b:anor.0000039522.58036.68
Palubeckis, G.: Iterated Tabu Search for the unconstrained binary quadratic optimization problem. Informatica 17(2), 279–296 (2006). https://doi.org/10.15388/informatica.2006.138
Papp, D.: On the complexity of local search in unconstrained quadratic binary optimization. SIAM J. Optim. 26(2), 1257–1261 (2016). https://doi.org/10.1137/15m1047775
Pardalos, P.M., Rodgers, G.P.: Computational aspects of a branch and bound algorithm for quadratic zero-one programming. Computing 45(2), 131–144 (1990). https://doi.org/10.1007/bf02247879
Pastorello, D., Blanzieri, E.: Quantum annealing learning search for solving QUBO problems. Quantum Inf. Process. 18(10), 1–17 (2019). https://doi.org/10.1007/s11128-019-2418-z
Samorani, M., Wang, Y., Wang, Y., et al.: Clustering-driven evolutionary algorithms: an application of path relinking to the quadratic unconstrained binary optimization problem. J. Heuristics 25(4–5), 629–642 (2019). https://doi.org/10.1007/s10732-018-9403-z
Wang, Y., Lü, Z., Glover, F., et al.: Backbone guided Tabu Search for solving the UBQP problem. J. Heuristics 19(4), 679–695 (2011). https://doi.org/10.1007/s10732-011-9164-4
Wang, Y., Lü, Z., Glover, F., et al.: Path relinking for unconstrained binary quadratic programming. Eur. J. Oper. Res. 223(3), 595–604 (2012). https://doi.org/10.1016/j.ejor.2012.07.012
Wang, Y., Lü, Z., Glover, F., et al.: Probabilistic GRASP-Tabu Search algorithms for the UBQP problem. Comput. Oper. Res. 40(12), 3100–3107 (2013). https://doi.org/10.1016/j.cor.2011.12.006
Acknowledgements
This work was supported by São Paulo Research Foundation (FAPESP) (Grant 2018/03819–4), CNPq (Grant 312206/2015-1) and the Coordenação de Aperfeiçoamento de Pessoal de Nível Superior – Brasil (CAPES) Finance Code 001 (Grant 88887.497750/2020-00).
Author information
Authors and Affiliations
Contributions
RNL: Conceptualization, Methodology, Formal analysis, Writing—original draft, Writing—review & editing, Software, Validation, Data curation, Investigation, Resources, Project administration, Visualization. EAJA: Conceptualization, Methodology, Formal analysis, Data curation, Writing—review & editing, Validation, Investigation, Project administration, Supervision. CNM: Methodology, Formal analysis, Writing—review & editing, Validation, Investigation, Project administration, Supervision, Resources, Funding acquisition.
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Code availability
All source codes used in this study are available from the corresponding author upon request.
Ethical approval
Not applicable.
Consent to participate
Not applicable.
Consent for publication
Not applicable.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendices
Appendix A Constructing a CSR matrix from a matrix in full form
In Algorithm 12 we present one algorithm that can build a CSR representation of a Q matrix. It has asymptotic time complexity \(O(n^2)\). In Lines 1 to 13, we compute the values of \(\deg {i}\) for each \(i \in \{1,2,\ldots ,n\}\). Based on that, we fill the R, C and V vectors in the remaining lines of the algorithm. We use this algorithm in our computational experiments.
Appendix B Algorithms for manipulating indexed priority queues
Here we describe in a detailed manner the operations which we used to manipulate indexed priority queues, as proposed in Definition 6. These algorithms are relatively simple modifications of well-known procedures for maintaining minimum heap data structures (Cormen et al. 2001).
Throughout our algorithms, every indexed priority queue is initialized using Algorithm 13. This algorithm has asymptotic time complexity O(n).
Algorithm 14 obtains the current number of elements in the queue. This algorithm and has asymptotic time complexity O(1).
Algorithm 15 checks whether a given element is in the queue. This algorithm has asymptotic time complexity O(1).
Algorithm 16 obtains the element in the queue with the minimum priority value. This algorithm has asymptotic time complexity O(1).
Algorithm 17 is used as a subroutine of Algorithms 18 to 21, for the purpose of placing an element i at a specific position k in the queue. The element already at the position k is placed at the previous position of i. This algorithm has asymptotic time complexity O(1).
Algorithm 18 is used for correcting the minimum-heap property, starting from a given position k up to the last position of the queue. It is based on the well-known Heapify procedure (Cormen et al. 2001). This algorithm has asymptotic time complexity \(O(\log {m})\).
Algorithm 19, like Algorithm 18, is also used for correcting the minimum-heap property, except it starts from a given position k down to the first position of the queue. This algorithm has asymptotic time complexity \(O(\log {m})\).
Algorithm 20 is used to insert an element into the queue. This algorithm has asymptotic time complexity \(O(\log {m})\).
Algorithm 21 is used to remove an element from the queue. This algorithm has asymptotic time complexity \(O(\log {m})\).
Algorithm 22 is used to change the priority value of an element in the queue. This algorithm has asymptotic time complexity \(O(\log {m})\).
Rights and permissions
About this article
Cite this article
Liang, R.N., Anacleto, E.A.J. & Meneses, C.N. Data structures for speeding up Tabu Search when solving sparse quadratic unconstrained binary optimization problems. J Heuristics 28, 433–479 (2022). https://doi.org/10.1007/s10732-022-09498-0
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10732-022-09498-0