A Biased Random-key Genetic Algorithm for Placement of Virtual Machines across Geo-Separated Data Centers

Cloud computing has recently emerged as a new technology for hosting and supplying services over the Internet. This technology has brought many benefits, such as eliminating the need for maintaining expensive computing hardware and allowing business owners to start from small and increase resources only when there is a rise in service demand. With an increasing demand for cloud computing, providing performance guarantees for applications that run over cloud become important. Applications can be abstracted into a set of virtual machines with certain guarantees depicting the quality of service of the application. In this paper, we consider the placement of these virtual machines across multiple data centers, meeting the quality of service requirements while minimizing the bandwidth cost of the data centers. This problem is a generalization of the NP-hard Generalized Quadratic Assignment Problem (GQAP). We formalize the problem and propose a novel algorithm based on a biased random-key genetic algorithm (BRKGA) to find near-optimal solutions for the problem. The experimental results show that the proposed algorithm is effective in quickly finding feasible solutions and it produces better results than a baseline aproach provided by a commercial solver and a multi-start algorithm.

[1]  A. Rowstron,et al.  Towards predictable datacenter networks , 2011, SIGCOMM.

[2]  Celso C. Ribeiro,et al.  Multi-start methods for combinatorial optimization , 2013, Eur. J. Oper. Res..

[3]  Thomas Stützle,et al.  F-Race and Iterated F-Race: An Overview , 2010, Experimental Methods for the Analysis of Optimization Algorithms.

[4]  Albert G. Greenberg,et al.  VL2: a scalable and flexible data center network , 2009, SIGCOMM '09.

[5]  Celso C. Ribeiro,et al.  TTT plots: a perl program to create time-to-target plots , 2007, Optim. Lett..

[6]  Thomas Stützle,et al.  Evaluating Las Vegas Algorithms: Pitfalls and Remedies , 1998, UAI.

[7]  Mauricio G. C. Resende,et al.  Biased random-key genetic algorithms for combinatorial optimization , 2011, J. Heuristics.

[8]  Mauricio G. C. Resende,et al.  A C++application programming interface for biased random-key genetic algorithms , 2015, Optim. Methods Softw..

[9]  P. Mahadevan,et al.  An overview , 2007, Journal of Biosciences.

[10]  Leslie Pérez Cáceres,et al.  The irace package: Iterated racing for automatic algorithm configuration , 2016 .

[11]  R Core Team,et al.  R: A language and environment for statistical computing. , 2014 .

[12]  Peter Dalgaard,et al.  R Development Core Team (2010): R: A language and environment for statistical computing , 2010 .

[13]  Chi-Guhn Lee,et al.  The Generalized Quadratic Assignment Problem , 2003 .

[14]  Thomas Stützle,et al.  On the empirical evaluation of Las Vegas algorithms , 1999 .

[15]  Di Xie,et al.  The only constant is change: incorporating time-varying network reservations in data centers , 2012, CCRV.

[16]  Helen J. Wang,et al.  SecondNet: a data center network virtualization architecture with bandwidth guarantees , 2010, CoNEXT.