Neural Computing and Applications

, Volume 26, Issue 6, pp 1297–1309 | Cite as

A hybrid meta-heuristic algorithm for VM scheduling with load balancing in cloud computing

  • Keng-Mao Cho
  • Pang-Wei Tsai
  • Chun-Wei TsaiEmail author
  • Chu-Sing Yang
Original Article


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.


Scheduling Load balance Cloud computing Ant colony optimization Particle swarm optimization 



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.


  1. 1.
    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–415Google Scholar
  2. 2.
    Alford T, Morton G (2009) The economics of cloud computing: addressing the benefits of infrastructure in the cloud. Booz Allen Hamilton, McLeanGoogle Scholar
  3. 3.
    Amazon (2008) Amazon elastic compute cloud.
  4. 4.
    Amazon (2008) Amazon simple storage service.
  5. 5.
    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–2719Google Scholar
  6. 6.
    Blum C, Roli A (2003) Metaheuristics in combinatorial optimization: overview and conceptual comparison. ACM Comput Surv 35(3):268–308CrossRefGoogle Scholar
  7. 7.
    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–289Google Scholar
  8. 8.
    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 49Google Scholar
  9. 9.
    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–43CrossRefGoogle Scholar
  10. 10.
    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–380CrossRefGoogle Scholar
  11. 11.
    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–10Google Scholar
  12. 12.
    Colorni A, Dorigo M, Maniezzo V, Trubian M (1994) Ant system for job-shop scheduling. J Oper Res Stat Comput Sci 34(1):39–53Google Scholar
  13. 13.
    Croce FD, Tadei R, Volta G (1995) A genetic algorithm for the job shop problem. Comput Oper Res 22(1):15–24CrossRefGoogle Scholar
  14. 14.
    Dell’Amico M, Trubian M (1993) Applying tabu search to the job-shop scheduling problem. Ann Oper Res 41(3):231–252CrossRefGoogle Scholar
  15. 15.
    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–41CrossRefGoogle Scholar
  16. 16.
    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–478Google Scholar
  17. 17.
    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–924CrossRefGoogle Scholar
  18. 18.
    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–839CrossRefGoogle Scholar
  19. 19.
    Graham RL, Lawler EL, Lenstra JK, Kan AHGR (1979) Optimization and approximation in deterministic sequencing and scheduling: a survey. Ann Discrete Math 4:287–326CrossRefGoogle Scholar
  20. 20.
    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–107Google Scholar
  21. 21.
    Hamilton D (2008) Cloud computing seen as next wave for technology investors. Financial Post.
  22. 22.
    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–241Google Scholar
  23. 23.
    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 ArborGoogle Scholar
  24. 24.
    Huang KL, Liao CJ (2008) Ant colony optimization combined with taboo search for the job shop scheduling problem. Comput Oper Res 35(4):1030–1046MathSciNetCrossRefGoogle Scholar
  25. 25.
    Jeon H, Lee WH, Chung SW (2010) Load unbalancing strategy for multicore embedded processors. IEEE Trans Comput 59(10):1434–1440MathSciNetCrossRefGoogle Scholar
  26. 26.
    Jiankang D, Hongbo W, Yangyang L, Shiduan C (2014) Virtual machine scheduling for improving energy efciency in IaaS cloud. China Commun 11(3):1–12CrossRefGoogle Scholar
  27. 27.
    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–1696Google Scholar
  28. 28.
    Kennedy J, Eberhart R (1995) Particle swarm optimization. In: Proceedings of the IEEE international conference on neural networks, vol 4, pp 1942–1948Google Scholar
  29. 29.
    Kirkpatrick S, Gelatt CD, Vecchi MP (1983) Optimization by simulated annealing. Science 220(4598):671–680MathSciNetCrossRefGoogle Scholar
  30. 30.
    Lin C, Lu S (2011) Scheduling scientific workflows elastically for cloud computing. In: Proceedings of the IEEE international conference on cloud computing, pp 746–747Google Scholar
  31. 31.
    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–27CrossRefGoogle Scholar
  32. 32.
    Lu W, Zhiliang W, Siquan H, Lei L (2013) Ant colony optimization for task allocation in multi-agent systems. China Commun 10(3):125–132CrossRefGoogle Scholar
  33. 33.
    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–300Google Scholar
  34. 34.
    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–25CrossRefGoogle Scholar
  35. 35.
    Parsopoulos KE, Varhatis MN (2010) Particle swarm optimization and intelligence: advances and applications. Information Science Reference, HersheyCrossRefGoogle Scholar
  36. 36.
    Pinedo ML (2008) Scheduling: theory, algorithms, and systems, 3rd edn. Springer, BerlinGoogle Scholar
  37. 37.
    Poli R, Kennedy J, Blackwell T (2007) Particle swarm optimization. Swarm Intell 1(1):33–57CrossRefGoogle Scholar
  38. 38.
    Rodammer F, White KPJ (1988) A recent survey of production scheduling. IEEE Trans Syst Man Cybern 18(6):841–851MathSciNetCrossRefGoogle Scholar
  39. 39.
    Sadiku M, Musa S, Momoh O (2014) Cloud computing: opportunities and challenges. IEEE Potentials 33(1):34–36CrossRefGoogle Scholar
  40. 40.
    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–638Google Scholar
  41. 41.
    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–5Google Scholar
  42. 42.
    Sheth R (2009) What we talk about when we talk about cloud computing. Google Enterprise Blog.
  43. 43.
    Taillard ED (1994) Parallel taboo search techniques for the job shop scheduling problem. ORSA J Comput 6(2):108–117CrossRefGoogle Scholar
  44. 44.
    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 Google Scholar
  45. 45.
    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–3Google Scholar
  46. 46.
    Tsakalozos K, Roussopoulos M, Delis A (2013) Hint-based execution of workloads in clouds with nefeli. IEEE Trans Parallel Distrib Syst 24(7):1331–1340CrossRefGoogle Scholar
  47. 47.
    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–82Google Scholar
  48. 48.
    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–171Google Scholar
  49. 49.
    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–997CrossRefGoogle Scholar
  50. 50.
    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–222Google Scholar
  51. 51.
    West DM (2010) Saving money through cloud computing. Brookings Institution
  52. 52.
    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–97Google Scholar
  53. 53.
    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–250Google Scholar
  54. 54.
    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–299Google Scholar
  55. 55.
    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–573CrossRefGoogle Scholar

Copyright information

© The Natural Computing Applications Forum 2014

Authors and Affiliations

  • Keng-Mao Cho
    • 1
  • Pang-Wei Tsai
    • 1
  • Chun-Wei Tsai
    • 2
    Email author
  • Chu-Sing Yang
    • 1
  1. 1.Institute of Computer and Communication Engineering, Department of Electrical EngineeringNational Cheng Kung UniversityTainanTaiwan, ROC
  2. 2.Department of Computer Science and Information EngineeringNational Ilan UniversityYilanTaiwan, ROC

Personalised recommendations