Abstract
In cloud computing, the virtual machine placement is a critical process which aims to identify the most appropriate physical machine to host the virtual machine. It has a significant impact on the performance, resource usage and energy consumption of the datacenters. In order to reduce the number of active physical machines in a datacenter, several virtual machine placement schemes have already been designed and proposed. This study investigates how do four different methods compare to each other in terms of accuracy and efficiency for solving the virtual machine placement as a knapsack problem. A new approach has been adopted which focuses on maximizing the use of a server’s central processing unit resource considering a certain capacity threshold. The compared methods are classified; two belong to the category of the exact methods, i.e., branch and bound and dynamic programming, while the other two represent the approximate approach, i.e., genetic algorithm and ant colony optimization algorithm. Experimental results show that the metaheuristic ant colony optimization algorithm outperforms the other three algorithms in terms of efficiency.








Similar content being viewed by others
References
Kant K (2009) Data center evolution: a tutorial on state of the art, issues, and challenges. Comput Netw 53(17):2939–2965
Usmani Z, Singh S (2016) A survey of virtual machine placement techniques in a cloud data center. Procedia Comput Sci 78:491–498 (1st International Conference on Information Security & Privacy 2015)
Bobroff N, Kochut A, Beaty K (2007) Dynamic placement of virtual machines for managing sla violations. In: 2007 10th IFIP/IEEE International Symposium on Integrated Network Management, pp 119–128
Shawish A, Salama M (2014) Cloud computing: paradigms and technologies. Springer, Berlin, pp 39–67
Wang X, Wang Y (2011) Coordinating power control and performance management for virtualized server clusters. IEEE Trans Parallel Distrib Syst 22(2):245–259
Masdari M, Shahab Nabavi S, Ahmadi V (2016) An overview of virtual machine placement schemes in cloud computing. J Netw Comput Appl 66:106–127
Mishra SK, Puthal D, Sahoo B, Prakash Jayaraman P, Jun S, Zomaya AY, Ranjan R (2018) Energy-efficient VM-placement in cloud data center. Sustain Comput Inform Syst 20:48–55
Choudharya A, Ranab S, Matahaic KJ (2016) A critical analysis of energy efficient virtual machine placement techniques and its optimization in a cloud computing environment. In: International Conference on Information Security & Privacy (ICISP2015), 11–12 December 2015, Nagpur, India, pp 132–138
Hassan Z, Morteza BS (2017) A method for the optimum selection of datacenters in geographically distributed clouds. J Supercomput 73(9):4042–4081
Speitkamp B, Bichler M (2010) A mathematical programming approach for server consolidation problems in virtualized data centers. IEEE Trans Serv Comput 3(4):266–278
Pisinger D (1995) Algorithms for knapsack problems. PhD thesis, Universitetsparken 1, DK-2100 Copenhagen, Denmark
Wikipedia. Np-hardness, 2018
Camati RS, Lima L Jr, Calsavara A (2014) Solving the virtual machine placement problem as a multiple multidimensional knapsack problem. In: ICN 2014: The Thirteenth International Conference on Networks
Alboaneen DA, Tianfield H, Zhang Y (2016) Glowworm swarm optimisation algorithm for virtual machine placement in cloud computing. In: 2016 International IEEE Conferences on Ubiquitous Intelligence Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Cloud and Big Data Computing, Internet of People, and Smart World Congress (UIC/ATC/ScalCom/CBDCom/IoP/SmartWorld), pp 808–814
Yan Y, Jian C, Minglu L (2013) A network-aware virtual machine allocation in cloud datacenter. In: Proceedings of the 10th IFIP International Conference on Network and Parallel Computing, Volume 8147, New York, NY, USA, 2013. Springer, New York, pp 71–82
Campegiani P (2009) A genetic algorithm to solve the virtual machines resources allocation problem in multi-tier distributed systems
Al-Dulaimy A, Zekri A, Itani W, Zantout R (2017) Paving the way for energy efficient cloud data centers: a type-aware virtual machine placement strategy. In: 2017 IEEE International Conference on Cloud Engineering (IC2E), pp 5–8
Amarante SRM, Roberto FM, Cardoso AR, Celestino J (2013) Using the multiple knapsack problem to model the problem of virtual machine allocation in cloud computing. In: 2013 IEEE 16th International Conference on Computational Science and Engineering, pp 476–483
Gandhi A, Balter Mor H, Rajarshi D, Charles L (2009) Optimal power allocation in server farms. SIGMETRICS Perform Eval Rev 37(1):157–168
Arjona J, Chatzipapas A, Anta AF, Mancuso V (2014) A measurement-based analysis of the energy consumption of data center servers, vol 3, no 4, pp 266–278
Shaheen A, Sleit A (2016) Comparing between different approaches to solve the 0/1 knapsack problem. IJCSNS Int J Comput Sci Netw Secur 16:1–10
Maya H, Shrestha D (2004) Different approaches to solve the 0/1 knapsack problem. PhD thesis, Simpson College, Indianola, IA 50125
Blum C, Puchinger J, Raidl GR, Roli A (2011) Hybrid metaheuristics in combinatorial optimization: a survey. Appl Soft Comput 11:4135–4151
Dudzinski K, Walukiewicz S (1987) Exact methods for the knapsack problem and its generalizations. Eur J Oper Res 28:3–21
Silvano M, Paolo T (1984) A mixture of dynamic programming and branch-and-bound for the subset-sum problem. Manag Sci 30:765–771
Kolesar PJ (1968) A branch and bound algorithm for knapsack problem. Manag Sci 13:723–735
Anne B, Yves R, Frédéric V (2013) A guide to algorithm design: paradigms, methods, and complexity analysis. Applied algorithms and data structures series. Chapman & Hall/CRC, Boca Raton
Richard B (2010) Dynamic programming. Princeton University Press, Princeton
Shachar I, Rohit S, Armando S, Kuat Y, Yongquan L, Charles L, Rezaul C (2016) Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations. SIGPLAN Not 51:145–164
Silver EA, Victor R, Vidal V, de Werra D (1980) A tutorial on heuristic methods. Eur J Oper Res 5(3):153–162
Uwe A, Alistair C (2011) Heuristic optimisation. J Oper Res Soc 62:251–252
Baghel M, Agrawal S, Silakari S (2012) Survey of metaheuristic algorithms for combinatorial optimization. Int J Comput Appl 58(19):21–31
Holland JH (1992) Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control and artificial intelligence. MIT Press, Cambridge
Sami K, Thomas B, Jörg H (1994) The zero/one multiple knapsack problem and genetic algorithms. In: Proceedings of the 1994 ACM Symposium on Applied Computing, New York, NY, USA. ACM, pp 188–193
Chu P, Beasley J (1998) A genetic algorithm for the multidimensional knapsack problem. J Heuristics 4:63–86
Cotta C, Troya JM (1998) A hybrid genetic algorithm for the 0–1 multiple knapsack problem. Springer, Vienna
Raidl GR (1998) An improved genetic algorithm for the multiconstrained 0-1 knapsack problem. In: 1998 IEEE International Conference on Evolutionary Computation Proceedings. IEEE World Congress on Computational Intelligence (Cat. No. 98TH8360), pp 207–211
Dorigo M, Maniezzo V, Colorni A (1996) Ant system: optimization by a colony of cooperating agents. IEEE Trans Syst Man Cybern Part B (Cybern) 26(1):29–41
Dorigo M, Di Caro G (1999) Ant colony optimization: a new meta-heuristic. In: Proceedings of the 1999 Congress on Evolutionary Computation-CEC99 (Cat. No. 99TH8406), vol 2, pp 1470–1477
Shi H (2006) Solution to 0/1 knapsack problem based on improved ant colony algorithm. In: 2006 IEEE International Conference on Information Acquisition, pp 1062–1066
Zhao P, Zhao P, Zhang X (2006) A new ant colony optimization for the knapsack problem. In: 2006 7th International Conference on Computer-Aided Industrial Design and Conceptual Design, pp 1–3
Changdar C, Mahapatra GS, Pal RK (2013) An ant colony optimization approach for binary knapsack problem under fuzziness. Appl Math Comput 223:243–253
Leguizamon G, Michalewicz Z (1999) A new version of ant system for subset problems. In: Proceedings of the 1999 Congress on Evolutionary Computation-CEC99 (Cat. No. 99TH8406), vol 2, pp 1459–1464
Fidanova S (2004) Evolutionary algorithm for multiple knapsack problem
Ines A, Christine S, Khaled G (2004) Ant algorithm for the multidimensional knapsack problem. In: Proceedings of International Conference on Bioinspired Methods and Their Applications (BIOMA 2004), Slovenia, Slovenia, pp 63–72
Wikipedia (2018) Pseudo-polynomial time
Changyeon J, Youngsu C, Bernhard E (2017) A machine learning approach to live migration modeling. In: ACM Symposium on Cloud Computing, SoCC’17
Rodola G (2019) Psutil documentation
Beazley DM (2001) Python essential reference. Sams Publishing, Indianapolis
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix
Appendix




Rights and permissions
About this article
Cite this article
El Motaki, S., Yahyaouy, A., Gualous, H. et al. Comparative study between exact and metaheuristic approaches for virtual machine placement process as knapsack problem. J Supercomput 75, 6239–6259 (2019). https://doi.org/10.1007/s11227-019-02847-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-019-02847-0