Abstract
Virtual machine (VM) scheduling with load balancing in cloud computing aims to assign VMs to suitable servers and balance the resource usage among all of the servers. In an infrastructure-as-a-service framework, there will be dynamic input requests, where the system is in charge of creating VMs without considering what types of tasks run on them. Therefore, scheduling that focuses only on fixed task sets or that requires detailed task information is not suitable for this system. This paper combines ant colony optimization and particle swarm optimization to solve the VM scheduling problem, with the result being known as ant colony optimization with particle swarm (ACOPS). ACOPS uses historical information to predict the workload of new input requests to adapt to dynamic environments without additional task information. ACOPS also rejects requests that cannot be satisfied before scheduling to reduce the computing time of the scheduling procedure. Experimental results indicate that the proposed algorithm can keep the load balance in a dynamic environment and outperform other approaches.



Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
The source code of the proposed algorithm and all of the test datasets are available for download at http://itlab.ee.ncku.edu.tw/ACOPS_Program_and_TestData.rar and http://goo.gl/6Upnw5.
References
Ahn Y, Kim WJ, Chung KS, Kim SH, Kim HS, Han TH (2010) A novel load balancing method for multi-core with non-uniform memory architecture. In: Proceedings of the international SoC design conference, pp 412–415
Alford T, Morton G (2009) The economics of cloud computing: addressing the benefits of infrastructure in the cloud. Booz Allen Hamilton, McLean
Amazon (2008) Amazon elastic compute cloud. http://aws.amazon.com/ec2
Amazon (2008) Amazon simple storage service. http://aws.amazon.com/s3
Bai L, Hu YL, Lao S, Zhang WM (2010) Task scheduling with load balancing using multiple ant colonies optimization in grid computing. In: Proceedings of the international conference on natural computation, pp 2715–2719
Blum C, Roli A (2003) Metaheuristics in combinatorial optimization: overview and conceptual comparison. ACM Comput Surv 35(3):268–308
Buyya R, Abramson D, Giddy J (2000) Nimrod/g: an architecture for a resource management and scheduling system in a global computational grid. In: Proceedings of the international conference/exhibition on high performance computing in the Asia-Pacific region, vol 1, pp 283–289
Cao J, Spooner D, Jarvis S, Saini S, Nudd GR (2003) Agent-based grid load balancing using performance-driven task scheduling. In: Proceedings of the international parallel and distributed processing symposium, p 49
Chen WN, Zhang J (2009) An ant colony optimization approach to a grid workflow scheduling problem with various qos requirements. IEEE Trans Syst Man Cybern C Appl Rev 39(1):29–43
Chiang CW, Lee YC, Lee CN, Chou TY (2006) Ant colony optimisation for task matching and scheduling. IEE Proc Comput Digit Tech 153(6):373–380
Cho KM, Tsai PW, Tsai CW, Yang CS (2014) An aco-based algorithm for vm scheduling with load balancing in cloud computing. In: Proceedings of the international conference on computing, measurement, control and sensor network, pp 1–10
Colorni A, Dorigo M, Maniezzo V, Trubian M (1994) Ant system for job-shop scheduling. J Oper Res Stat Comput Sci 34(1):39–53
Croce FD, Tadei R, Volta G (1995) A genetic algorithm for the job shop problem. Comput Oper Res 22(1):15–24
Dell’Amico M, Trubian M (1993) Applying tabu search to the job-shop scheduling problem. Ann Oper Res 41(3):231–252
Dorigo M, Maniezzo V, Colorni A (1996) Ant system: optimization by a colony of cooperating agents. IEEE Trans Syst Man Cybern B Cybern 26(1):29–41
Elhossini A, Huissman J, Debowski B, Areibi S, Dony R (2010) An efficient scheduling methodology for heterogeneous multi-core processor systems. In: Proceedings of the international conference on microelectronics, pp 475–478
Ferrandi F, Lanzi PL, Pilato C, Sciuto D, Tumeo A (2010) Ant colony heuristic for mapping and scheduling tasks and communications on heterogeneous embedded systems. IEEE Trans Comput Aided Des Integr Circuits Syst 29(6):911–924
Garcia-Nieto J, Olivera A, Alba E (2013) Optimal cycle program of traffic lights with particle swarm optimization. IEEE Trans Evol Comput 17(6):823–839
Graham RL, Lawler EL, Lenstra JK, Kan AHGR (1979) Optimization and approximation in deterministic sequencing and scheduling: a survey. Ann Discrete Math 4:287–326
Hahne EL, Gallager RG (1986) Round robin scheduling for fair flow control in data communication networks. In: Proceedings of the IEEE international conference on communication, pp 103–107
Hamilton D (2008) Cloud computing seen as next wave for technology investors. Financial Post. http://www.financialpost.com/money/story.html
Hao S, Liu Q, Zhang L, Wang J (2010) Processes scheduling on heterogeneous multi-core architecture with hardware support. In: Proceedings of the IEEE international conference on networking, architecture and storage, pp 236–241
Holland JH (1975) Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control, and artificial intelligence. The University of Michigan press, Ann Arbor
Huang KL, Liao CJ (2008) Ant colony optimization combined with taboo search for the job shop scheduling problem. Comput Oper Res 35(4):1030–1046
Jeon H, Lee WH, Chung SW (2010) Load unbalancing strategy for multicore embedded processors. IEEE Trans Comput 59(10):1434–1440
Jiankang D, Hongbo W, Yangyang L, Shiduan C (2014) Virtual machine scheduling for improving energy efciency in IaaS cloud. China Commun 11(3):1–12
Junqiang W, Aijia O (2012) A hybrid algorithm of ACO and delete-cross method for TSP. In: Proceedings of the international conference on industrial control and electronics engineering, pp 1694–1696
Kennedy J, Eberhart R (1995) Particle swarm optimization. In: Proceedings of the IEEE international conference on neural networks, vol 4, pp 1942–1948
Kirkpatrick S, Gelatt CD, Vecchi MP (1983) Optimization by simulated annealing. Science 220(4598):671–680
Lin C, Lu S (2011) Scheduling scientific workflows elastically for cloud computing. In: Proceedings of the IEEE international conference on cloud computing, pp 746–747
Liu B, Wang L, Jin YH (2007) An effective PSO-based memetic algorithm for flow shop scheduling. IEEE Trans Syst Man Cybern B Cybern 37(1):18–27
Lu W, Zhiliang W, Siquan H, Lei L (2013) Ant colony optimization for task allocation in multi-agent systems. China Commun 10(3):125–132
Lu X, Gu Z (2011) A load-adapative cloud resource scheduling model based on ant colony algorithm. In: Proceedings of the IEEE international conference on cloud computing and intelligence systems, pp 296–300
Moreno-Vozmediano R, Montero R, Llorente I (2013) Key challenges in cloud computing: enabling the future internet of services. IEEE Internet Comput 17(4):18–25
Parsopoulos KE, Varhatis MN (2010) Particle swarm optimization and intelligence: advances and applications. Information Science Reference, Hershey
Pinedo ML (2008) Scheduling: theory, algorithms, and systems, 3rd edn. Springer, Berlin
Poli R, Kennedy J, Blackwell T (2007) Particle swarm optimization. Swarm Intell 1(1):33–57
Rodammer F, White KPJ (1988) A recent survey of production scheduling. IEEE Trans Syst Man Cybern 18(6):841–851
Sadiku M, Musa S, Momoh O (2014) Cloud computing: opportunities and challenges. IEEE Potentials 33(1):34–36
Schwiegelshohn U, Yahyapour R (1998) Analysis of first-come-first-serve parallel job scheduling. In: Proceedings of the SIAM symposium on discrete algorithms, pp 629–638
Selvarani S, Sadhasivam G (2010) Improved cost-based algorithm for task scheduling in cloud computing. In: Proceedings of the IEEE international conference on computational intelligence and computing research, pp 1–5
Sheth R (2009) What we talk about when we talk about cloud computing. Google Enterprise Blog. http://googleenterprise.blogspot.tw/2009/04/what-we-talk-about-when-we-talk-about.html
Taillard ED (1994) Parallel taboo search techniques for the job shop scheduling problem. ORSA J Comput 6(2):108–117
Tsai CW, Huang KW, Chiang MC, Yang CS (2014) A fast particle swarm optimization for clustering. Soft Comput. doi:10.1007/s00500-014-1255-3
Tsai PW, Lai YT, Cheng PW, Luo MY, Yang CS (2013) Design and develop an OpenFlow testbed within virtualized architecture. In: Proceedings of the Asia-Pacific network operations and management symposium, pp 1–3
Tsakalozos K, Roussopoulos M, Delis A (2013) Hint-based execution of workloads in clouds with nefeli. IEEE Trans Parallel Distrib Syst 24(7):1331–1340
Umale J, Mahajan S (2010) Optimized grid scheduling using two level decision algorithm (TLDA). In: Proceedings of the international conference on parallel distributed and grid computing, pp 78–82
Wang J, Duan Q, Jiang Y, Zhu X (2010) A new algorithm for grid independent task schedule: genetic simulated annealing. In: Proceedings of the World Automation Congress, pp 165–171
Warneke D, Kao O (2011) Exploiting dynamic resource allocation for efficient parallel data processing in the cloud. IEEE Trans Parallel Distrib Syst 22(6):985–997
Wen X, Huang M, Shi J (2012) Study on resources scheduling based on ACO allgorithm and PSO algorithm in cloud computing. In: Proceedings of the international symposium on distributed computing and applications to business, engineering science, pp 219–222
West DM (2010) Saving money through cloud computing. Brookings Institution http://www.brookings.edu/research/papers/2010/04/07-cloud-computing-west
Xie X, Wu P (2010) Research on the optimal combination of ACO parameters based on PSO. In: Proceedings of the international conference on networking and digital Society, vol 1, pp 94–97
Yang X, Jiong Yu B.L, Yu F (2011) Grid schedule algorithm based on load with trust-driven mechanism. In: Proceedings of the chinagrid conference, pp 246–250
Zhong M, Pan X (2006) A two-step ACO–PSO approach to optimize flexible jobshop scheduling of air compressor based on petri net model. In: Proceedings of the international technology and innovation conference, pp 295–299
Zuo X, Zhang G, Tan W (2014) Self-adaptive learning PSO-based deadline constrained task scheduling for hybrid IaaS cloud. IEEE Trans Autom Sci Eng 11(2):564–573
Acknowledgments
This work was supported in part by the Ministry of Science and Technology of Taiwan, R.O.C., under grants NSC 100-2218-E-006-028-MY3, NSC 100-2218-E-006-031-MY3 and MOST-103-2221-E-197-034.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Cho, KM., Tsai, PW., Tsai, CW. et al. A hybrid meta-heuristic algorithm for VM scheduling with load balancing in cloud computing. Neural Comput & Applic 26, 1297–1309 (2015). https://doi.org/10.1007/s00521-014-1804-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00521-014-1804-9