مروری بر کاربرد الگوریتمهای فراابتکاری در توازن بار در رایانش ابری
محورهای موضوعی : فناوری اطلاعات و ارتباطاتمهدی مرسلی 1 * , ابوالفضل طرقی حقیقت 2 , ساسان حسینعلی زاده 3
1 - دانشکده مهندسی برق،کامپیوتر و فناوری اطلاعات، واحد قزوین، دانشگاه آزاد اسلامی، قزوین، ایران
2 - دانشکده مهندسی برق، کامپیوتر و فناوری اطلاعات، واحد قزوین، دانشگاه آزاد اسلامی، قزوین، ایران
3 - پژوهشکده فناوری اطلاعات، پژوهشگاه ارتباطات و فناوری اطلاعات، تهران ، ایران.
کلید واژه: رایانش ابری, توازن بار, روشهای فراابتکاری, بیشباری , کمباری,
چکیده مقاله :
با گسترش استفاده از رایانش ابری نیاز به بهبود کارایی و کاهش تاخیر در ابر افزایش مییابد. یکی از مسائل محیطهای توزیع شده و مخصوصا ابر، عدم توازن بار و در نتیجه کاهش سرعت و کارایی و افزایش تاخیر در زمان ذخیره و بازیابی اطلاعات میباشد. روشهای مختلفی برای متوازن سازی بار در محیط ابر ارائه شدهاند که هر کدام از منظری به موضوع پرداختهاند و مزایا و معایب خود را دارند. ما در این کار نخست معیارهایی برای سنجش توازن بار در ابر ارائه کردهایم و سپس به بررسی کاربرد روشهای فراابتکاری در متوازن سازی بار در محیط ابر پرداختهایم. پس از معرفی روشهای توازن بار فراابتکاری مختلف، آنها را براساس معیارهای مذکور باهم مقایسه کرده و به مزایا و معایب هر کدام پرداختهایم. الگوریتمهای کلونی مورچه، کلونی مورچه مصنوعی، کلونی زنبور، کلونی زنبور مصنوعی، جستوجوی غذای زنبور عسل، ازدحام ذرات، ازدحام گربهها، تبرید شبیهسازی شده، الگوریتم ژنتیک، جستوجوی ممنوعه، الگوریتم دسته ماهیها و الگوریتمهای ترکیبی و ... در این کار بررسی شدهاند.
By widespread use of cloud computing, the need to improve performance and reduce latency in the cloud increases. One of the problems of distributed environments, especially clouds, is unbalanced load which results in reducing speed and efficiency and increasing delay in data storage and retrieval time. Various methods for load balancing in the cloud environment have been proposed, each of which has addressed the issue from its own perspective and has its advantages and disadvantages. In this research, we first provide some criteria for measuring load balance in the cloud and then examine the use of Metaheuristic methods in load balancing in the cloud environment. After introducing Metaheuristic load balancing methods, we have compared them based on the aforementioned criteria and discussed the advantages and disadvantages of each. Ant Colony Algorithms, Artificial Ant Colony, Bee Colony, Artificial Bee Colony, Bee Foraging Algorithm, Particle Swarm, Cat Swarm, Simulated Annealing, Genetic Algorithm, Tabu Search, Fish Swarm and Hybrid Algorithms and etc. examined in this research.
1. Adhianto, L. et al. 2010. “HPCTOOLKIT: Tools for Performance Analysis of Optimized Parallel Programs.” Concurrency Computation Practice and Experience 22(6): 685–701.
2. Afzal, Shahbaz, and G. Kavitha. 2019. “Load Balancing in Cloud Computing – A Hierarchical Taxonomical Classification.” Journal of Cloud Computing 8(1).
3. Agarwal, Tusha, and Abhishek Saxena. 2018. “A Review On Load Balancing Algorithm in Cloud Computing Using Restful Web Services.” International Journal of Computer Sciences and Engineering 6(7): 704–7.
4. Ahmad, Mohammad Oqail, and Rafiqul Zaman Khan. 2018. “Load Balancing Tools and Techniques in Cloud Computing: A Systematic Review.” Advances in Intelligent Systems and Computing 554(November 2017): 181–95.
5. Alam, Mahfooz, and Zaki Ahmad Khan. 2017. “Issues and Challenges of Load Balancing Algorithm in Cloud Computing Environment.” Indian Journal of Science and Technology 10(25): 1–12.
6. Alankar, Bhavya et al. 2020. “Experimental Setup for Investigating the Efficient Load Balancing Algorithms on Virtual Cloud.” Sensors (Switzerland) 20(24): 1–26.
7. Anna Victoria Oikawa, C. R., Vinicius Freitas, Marcio Castro, and Laercio L. Pilla. 2020. “Adaptive Load Balancing Based on Machine Learning for Iterative Parallel Applications.” Proceedings - 2020 28th Euromicro International Conference on Parallel, Distributed and Network-Based Processing, PDP 2020: 94–101.
8. Aruna, M., D. Bhanu, and S. Karthik. 2019. “An Improved Load Balanced Metaheuristic Scheduling in Cloud.” Cluster Computing 22(March): 10873–81.
9. Ashouraei, Mehran, Seyed Nima Khezr, Rachid Benlamri, and Nima Jafari Navimipour. 2018. “A New SLA-Aware Load Balancing Method in the Cloud Using an Improved Parallel Task Scheduling Algorithm.” Proceedings - 2018 IEEE 6th International Conference on Future Internet of Things and Cloud, FiCloud 2018: 71–76.
10. Attiya, Ibrahim, Mohamed Abd Elaziz, and Shengwu Xiong. 2020. “Job Scheduling in Cloud Computing Using a Modified Harris Hawks Optimization and Simulated Annealing Algorithm.” Computational Intelligence and Neuroscience 2020.
11. Balaji, K., P. Sai Kiran, and M. Sunil Kumar. 2021. “An Energy Efficient Load Balancing on Cloud Computing Using Adaptive Cat Swarm Optimization.” Materials Today: Proceedings.
12. Basu, Sayantani, G. Kannayaram, Somula Ramasubbareddy, and C. Venkatasubbaiah. 2019. “Improved Genetic Algorithm for Monitoring of Virtual Machines in Cloud Environment.” Smart Innovation, Systems and Technologies 105: 319–26. http://dx.doi.org/10.1007/978-981-13-1927-3_34.
13. Bhargavi, K., B. Sathish Babu, and Jeremy Pitt. 2020. “Performance Modeling of Load Balancing Techniques in Cloud: Some of the Recent Competitive Swarm Artificial Intelligence-Based.” Journal of Intelligent Systems 30(1): 40–58.
14. Černý, V. 1985. “Thermodynamical Approach to the Traveling Salesman Problem: An Efficient Simulation Algorithm.” Journal of Optimization Theory and Applications 45(1): 41–51.
15. Chauhan, Prof Samir, and Jinal Patel. 2019. “Load Balancing in Cloud Computing Using Machine Learning Techniques.” JASC: Journal of Applied Science and Computations VI(Iv): 3533–41. 16. Dasgupta, Kousik et al. 2013. “A Genetic Algorithm (GA) Based Load Balancing Strategy for Cloud Computing.” Procedia Technology 10: 340–47. http://dx.doi.org/10.1016/j.protcy.2013.12.369.
17. Davidović, Tatjana, Dušan Teodorović, and Milica Šelmić. 2015. “Bee Colony Optimization Part I: The Algorithm Overview.” Yugoslav Journal of Operations Research 25(1): 33–56.
18. Dhiman, Gaurav, and Amandeep Kaur. 2018. “Optimizing the Design of Airfoil and Optical Buffer Problems Using Spotted Hyena Optimizer.” Designs 2(3): 1–16.
19. Djennane, Nabila, Rachida Aoudjit, and Samia Bouzefrane. 2018. “Energy-Efficient Algorithm for Load Balancing and VMs Reassignment in Data Centers.” Proceedings - 2018 IEEE 6th International Conference on Future Internet of Things and Cloud Workshops, W-FiCloud 2018: 225–30.
20. Fahim, Youssef et al. 2018. “Load Balancing in Cloud Computing Using Meta-Heuristic Algorithm.” Journal of Information Processing Systems 14(3): 569–89.
21. Gavvala, Siva Kumar, Chandrashekar Jatoth, G. R. Gangadharan, and Rajkumar Buyya. 2019. “QoS-Aware Cloud Service Composition Using Eagle Strategy.” Future Generation Computer Systems 90: 273–90.
22. Geethu, Gopinath P.P., and Shriram K. Vasudevan. 2015. “An In-Depth Analysis and Study of Load Balancing Techniques in the Cloud Computing Environment.” Procedia Computer Science 50: 427–32. http://dx.doi.org/10.1016/j.procs.2015.04.009.
23. Gulbaz, Rohail et al. 2021. “Balancer Genetic Algorithm-a Novel Task Scheduling Optimization Approach in Cloud Computing.” Applied Sciences (Switzerland) 11(14).
24. Kaur, Amanpreet, and Bikrampal Kaur. 2019. “Load Balancing Optimization Based on Hybrid Heuristic-Metaheuristic Techniques in Cloud Environment.” Journal of King Saud University - Computer and Information Sciences (xxxx). https://doi.org/10.1016/j.jksuci.2019.02.010.
25. Krishnaveni, H., and V. Sinthu Janita. 2019. “Modified Artificial Fish Swarm Algorithm for Efficient Task Scheduling in Cloud Environment.” International Journal of Computer Sciences and Engineering 7(5): 1363–71.
26. Kruekaew, Boonhatai, and Warangkhana Kimpan. 2020. “Enhancing of Artificial Bee Colony Algorithm for Virtual Machine Scheduling and Load Balancing Problem in Cloud Computing.” International Journal of Computational Intelligence Systems 13(1): 496–510.
27. Kumar, Arun Rana, Ayodeji Olalekan Salau, Swati Gupta, and Sandeep Arora. 2018. “A Survey of Machine Learning Methods for IoT and Their Future Applications.” Amity Journal of Computational Sciences 2(2): 1–5. www.amity.edu.in/ajcs.
28. Kumar, Jitendra, Ashutosh Kumar Singh, and Anand Mohan. 2020. “Resource-Efficient Load-Balancing Framework for Cloud Data Center Networks.” ETRI Journal 43(June 2019): 53–63.
29. Kumar, Kethavath Prem, Thirumalaisamy Ragunathan, Devara Vasumathi, and Pamulapati Krishna Prasad. 2020. “An Efficient Load Balancing Technique Based on Cuckoo Search and Firefly Algorithm in Cloud.” International Journal of Intelligent Engineering and Systems 13(3): 422–32.
30. Kumar Mishra, Sambit, Bibhudatta Sahoo, and Paramita Parida. 2018. “Load Balancing in Cloud Computing: A Big Picture Q.” https://doi.org/10.1016/j.jksuci.2018.01.003 (August 21, 2021).
31. Kumar, Pawan, and Rakesh Kumar. 2019. “Issues and Challenges of Load Balancing Techniques in Cloud Computing: A Survey.” ACM Computing Surveys 51(6).
32. Li, Kun et al. 2011. “Cloud Task Scheduling Based on Load Balancing Ant Colony Optimization.” Proceedings - 2011 6th Annual ChinaGrid Conference, ChinaGrid 2011: 3–9.
33. Lim, Jongbeom, and Daewon Lee. 2020. “A Load Balancing Algorithm for Mobile Devices in Edge Cloud Computing Environments.” Electronics (Switzerland) 9(4): 1–13.
34. Mallikarjuna, B., and P. Venkata Krishna. 2015. “OLB: A Nature Inspired Approach for Load Balancing in Cloud Computing.” Cybernetics and Information Technologies 15(4): 138–48.
35. Manasrah, Ahmad M., and Hanan Ba Ali. 2018. “Workflow Scheduling Using Hybrid GA-PSO Algorithm in Cloud Computing.” Wireless Communications and Mobile Computing 2018.
36. Milani, Alireza Sadeghi, and Nima Jafari Navimipour. 2016. “Load Balancing Mechanisms and Techniques in the Cloud Environments: Systematic Literature Review and Future Trends.” Journal of Network and Computer Applications 71: 86–98.
37. Mishra, Kaushik, Jharashree Pati, and Santosh Kumar Majhi. 2020. “A Dynamic Load Scheduling in IaaS Cloud Using Binary JAYA Algorithm.” Journal of King Saud University - Computer and Information Sciences. https://doi.org/10.1016/j.jksuci.2020.12.001.
38. Mohammad Oqail Ahmad and Rafiqul Zaman Khan. 2018. 554 Advances in Computer and Computational Sciences.
39. de Monts, Robert et al. 2016. “Defined Categories of Security as a Service.” Cloud Security Alliance –. https://downloads.cloudsecurityalliance.org/assets/research/security-as-a-service/csa-categories-securities-prep.pdf.
40. Patel, Karan D., and Tosal M. Bhalodia. 2019. “An Efficient Dynamic Load Balancing Algorithm for Virtual Machine in Cloud Computing.” In 2019 International Conference on Intelligent Computing and Control Systems, ICCS 2019, , 145–50.
41. Pattnaik, Saumendra, Jyoti Prakash Mishra, Bidush Kumar Sahoo, and Binod Kumar Pattanayak. 2021. “Load Balancing in Cloud Computing Environment Using CloudSim.” Smart Innovation, Systems and Technologies 194(01): 197–205.
42. Prassanna, J., and Neelanarayanan Venkataraman. 2019. “Threshold Based Multi-Objective Memetic Optimized Round Robin Scheduling for Resource Efficient Load Balancing in Cloud.” Mobile Networks and Applications 24(4): 1214–25.
43. Ramadhan, Gema, Tito Waluyo Purboyo, Roswan Latuconsina, and A Round Robin. 2018. “Experimental Model for Load Balancing in Cloud Computing Using Throttled Algorithm.” International Journal of Applied Engineering Research 13(2): 1139–43. https://www.ripublication.com/ijaer18/ijaerv13n2_42.pdf.
44. Ramasubbareddy, Somula et al. 2019. “Analysis of Load Balancing Algorithms Using Cloud Analyst.” International Journal of Recent Technology and Engineering 7(6): 684–87.
45. Rani, Mercy Gnana et al. 2014. “Artificial Fish Swarm Load Balancing and Job Migration Task with Overloading Detection in Cloud Computing Environments.” International Review on Computers and Software (IRECOS) 9(4): 727–34. https://www.praiseworthyprize.org/jsm/index.php?journal=irecos&page=article&op=view&path[]=15345 (August 29, 2021).
46. Shahid, Muhammad Asim et al. 2020. “A Comprehensive Study of Load Balancing Approaches in the Cloud Computing Environment and a Novel Fault Tolerance Approach.” IEEE Access 8(c): 130500–526.
47. Sui, Xin et al. 2019. “Virtual Machine Scheduling Strategy Based on Machine Learning Algorithms for Load Balancing.” Eurasip Journal on Wireless Communications and Networking 2019(1).
48. Talaat, Fatma M. et al. 2020. “A Load Balancing and Optimization Strategy (LBOS) Using Reinforcement Learning in Fog Computing Environment.” Journal of Ambient Intelligence and Humanized Computing 11(11): 4951–66. https://doi.org/10.1007/s12652-020-01768-8.
49. Talbi, El-Ghazali. 2009. “Frontmatter Enhanced Reader.Pdf.” : 25.
50. ———. 2020. “Machine Learning into Metaheuristics: A Survey and Taxonomy of Data-Driven Meta-Heuristics.” : 1–30. https://hal.inria.fr/hal-02745295.
51. Téllez, Nadim, Miguel Jimeno, Augusto Salazar, and Elias D. Nino-Ruiz. 2018. “A Tabu Search Method for Load Balancing in Fog Computing.” International Journal of Artificial Intelligence 16(2): 106–35.
52. Thanka, M. Roshni, P. Uma Maheswari, and E. Bijolin Edwin. 2019. “An Improved Efficient: Artificial Bee Colony Algorithm for Security and QoS Aware Scheduling in Cloud Computing Environment.” Cluster Computing 22: 10905–13.
53. UMA, Mrs. R., M . BALA SARASWATHY. 2019. “OPTIMIZATION ALGORITHMS IN LOAD BALANCING: A STUDY.” XII(Iv): 1–22.
54. Venkata Rao, R. 2016. “Jaya: A Simple and New Optimization Algorithm for Solving Constrained and Unconstrained Optimization Problems.” International Journal of Industrial Engineering Computations 7(1): 19–34.
55. Viana, Monique Simplicio, Orides Morandin Junior, and Rodrigo Colnago Contreras. 2020. “A Modified Genetic Algorithm with Local Search Strategies and Multi-Crossover Operator for Job Shop Scheduling Problem.” Sensors (Switzerland) 20(18): 1–32.
56. Wang, Chuan’An et al. 2017. “A Switch Migration-Based Decision-Making Scheme for Balancing Load in SDN.” IEEE Access 5(c): 4537–44.
57. Wang, Chunpu, Chen Feng, and Julian Cheng. 2018. “Distributed Join-the-Idle-Queue for Low Latency Cloud Services.” IEEE/ACM Transactions on Networking 26(5): 2309–19.
58. Wang, Lijuan, and Jun Shen. 2016. “Multi-Phase Ant Colony System for Multi-Party Data-Intensive Service Provision.” IEEE Transactions on Services Computing 9(2): 264–78.
59. Xu, Peng, Guimin He, Zhenhao Li, and Zhongbao Zhang. 2018. “An Efficient Load Balancing Algorithm for Virtual Machine Allocation Based on Ant Colony Optimization.” International Journal of Distributed Sensor Networks 14(12).
60. Yaashuwanth, C et al. 2012. “Performance Comparison of Priority Rule Scheduling Algorithms Using Different Inter Arrival Time Jobs in Grid Environment.” International Journal of Grid and Distributed Computing 6(4): 157–68.