Abstract
In this paper, we propose a parallel processing model based on systolic computing merged with concepts of evolutionary algorithms. The proposed model works over a Graphics Processing Unit using the structure of threads as cells that form a systolic mesh. Data passes through those cells, each one performing a simple computing operation. The systolic algorithm is implemented using NVIDIA’s compute unified device architecture. To investigate the behavior and performance of the proposed model we test it over a NP-complete problem. The study of systolic algorithms on GPU and the different versions of the proposal show that our canonical model is a competitive solver with efficacy and presents a good scalability behavior across different instance sizes.
Similar content being viewed by others
References
Alba E (2005) Parallel metaheuristics: a new class of algorithms. Wiley-Interscience, New York
Alba E, Dorronsoro B (2008) Cellular genetic algorithms, operations research/computer science interfaces, vol 42. Springer, Heidelberg
Alba E, Vidal P (2011) Systolic optimization on gpu platforms. In: EUROCAST (1), pp 375–383
Chan H, Mazumder P (1995) A systolic architecture for high speed hypergraph partitioning using a genetic algorithm. In: Yao X (ed) Progress in evolutionary computation, lecture notes in computer science, vol 956. Springer, Berlin, pp 109–126
Chu P, Beasley J (1998) A genetic algorithm for the multidimensional knapsack problem. J Heuristics 4:63–86
CUDA (2007) NVIDIA CUDA Compute Unified Device Architecture—Programming Guide
Gavish B, Pirkul H (1986) Computer and database location in distributed computer systems. IEEE Trans Comput 35(7):583–590
Gilmore PC, Gomory RE (1966) The theory and computation of knapsack functions. Oper Res 14(6):1045–1074
Glover F, Kochenberger GA (1996) Critical event tabu search for multidimensional knapsack problems. metaheuristics: the theory and applications. Kluwer Academic Publishers, Boston, pp 407–427
Gottlieb J (2001) On the feasibility problem of penalty-based evolutionary algorithms for knapsack problems. In: Applications of evolutionary computing, lecture notes in computer science, pp 50–59
Grama A, Karypis G, Kumar V, Gupta A (2003) Introduction to parallel computing, 2nd edn. Addison Wesley, Pearson
Hanafi CWS (2009) New convergent heuristics for 0-1 mixed integer programming. Eur J Oper Res 195(1):62–74
Hanafi S, Wilbaut C (2011) Improved convergent heuristics for the 0-1 multidimensional knapsack problem. Ann Oper Res 183:125–142
Hwang J, Park S, Kong IY (2011) An integer programming-based local search for large-scale multidimensional knapsack problems. Int J Comput Sci Eng 3(6):2257–2264
Ke L, Feng Z, Ren Z, Wei X (2010) An ant colony optimization approach for the multidimensional knapsack problem. J Heuristics 16:65–83
Kung HT (1979) Let’s design algorithms for vlsi systems. In: Proceedings of the conference on very large scale integration: architecture, design, fabrication, pp 65–90
Lagae A, Lefebvre S, Drettakis G, Dutré P (2009) Procedural noise using sparse Gabor convolution. ACM Trans Graph (Proceedings of ACM SIGGRAPH 2009) 28(3):54:1–54:10
Megson G, Bland I (1998) Synthesis of a systolic array genetic algorithm. In: Parallel processing symposium, 1998. IPPS/SPDP 1998
Shih W (1979) A branch and bound method for the multiconstraint zero one knapsack problem. J Oper Res Soc 30(4):369–378
Thomas DB, Howes L, Luk W (2009) A comparison of CPUs, GPUs, FPGAs, and massively parallel processor arrays for random number generation. In: Symposium on Field Programmable Gate Arrays, pp 63–72
Vasquez M, Hao JK (2001) A hybrid approach for the 01 multidimensional knapsack problem. In: In Proceedings of the international joint conference on artificial intelligence 2001, pp 328–333
Vasquez M, Vimont Y (2005) Improved results on the 0-1 multidimensional knapsack problem. Eur J Oper Res 165:70–81
Zhang X, Liu Z, Bai Q (2012) A new hybrid algorithm for the multidimensional knapsack problem. In: Bio-inspired computing and applications, lecture notes in computer science, pp 191–198
Zhou Q, Luo W (2010) A novel multi-population genetic algorithm for multiple-choice multidimensional knapsack problems. In: Cai Z, Hu C, Kang Z, Liu Y (eds) Advances in computation and intelligence, lecture notes in computer science, vol 6382. Springer, Berlin, pp 148–157
Acknowledgments
Pablo Vidal acknowledges continuous support from the University of Patagonia Austral. The work of Francisco Luna and Enrique Alba has been partially funded by the Spanish Ministry of Science and Innovation and FEDER under contract TIN2011-28194 (the roadME project). Francisco Luna also acknowledges support from TIN2011-28336.
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by G . Acampora.
Rights and permissions
About this article
Cite this article
Vidal, P., Luna, F. & Alba, E. Systolic neighborhood search on graphics processing units. Soft Comput 18, 125–142 (2014). https://doi.org/10.1007/s00500-013-1041-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-013-1041-7