استفاده از یک الگوریتم بهینهسازی چند هدفه برای تخصیص کارها در سیستمهای مبتنی بر ابر با هدف کاهش انرژی مصرفی
الموضوعات :سارا طبقچی میلان 1 , نیما جعفری نویمی پور 2
1 - گروه مهندسی کامپیوتر، واحد تبریز، دانشگاه آزاد اسلامی، تبریز، ایران
2 - گروه مهندسی کامپیوتر، واحد تبریز، دانشگاه آزاد اسلامی، تبریز، ایران
الکلمات المفتاحية: رایانش ابری, انرژی مصرفی, تخصیص کار, الگوریتم بهینهسازی چند هدفه,
ملخص المقالة :
افزایش تقاضا منجر به افزایش تنوع، تعداد خدمات و درنتیجه ایجاد مراکز داده رایانش با مقیاس بزرگشده است که علاوه بر هزینههای عملیاتی بالا، مقادیر عظیمی از توان الکتریکی را مصرف میکند. از طرفی سیستمهای خنککننده ناکافی و ناکارآمد، نهتنها باعث گرم شدن بیشازحد منابع و کاهش عمر کاری دستگاهها میشود، بلکه باعث تولید کربن شده که در وضعیت آبوهوا نقش مهمی دارد. ازاینرو، در این پژوهش، یک روش مؤثر مدیریت منابع انرژی در مراکز داده ابری مجازی شده ارائهشده که علاوه بر کاهش مصرف انرژی و هزینههای عملیاتی، باعث افزایش کیفیت خدمات نیز شده است. این پژوهش، به ارائه یک استراتژی تخصیص منبع در سیستمهای ابری باهدف کاهش انرژی و هزینه اجرا پرداخته و کاربرد آن را در محیط رایانش ابری بررسی میکند. نتایج حاصل از شبیهسازی نشان میدهد که روش پیشنهادی میتواند نسبت به روشهای NPA[1]، [2]DVFS، [3]ST و [4]MM ، میانگین انرژی مصرفی را تا 0.626 کیلووات ساعت کاهش دهد، همچنین نیاز به مهاجرت و موارد نقض SLA نیز به ترتیب به 186 و 30.91% کاهش پیدا نمود.
[1] N. Jafari Navimipour and B. Zareie, "A model for assessing the impact of e-learning systems on employees’ satisfaction," Computers in Human Behavior, vol. 53, pp. 475-485, 2015/12/01/ 2015.
[2] M. Chiregi and N. J. Navimipour, "A new method for trust and reputation evaluation in the cloud environments using the recommendations of opinion leaders' entities and removing the effect of troll entities," Computers in Human Behavior, vol. 60, pp. 280-292, 7// 2016.
[3] A. Souri and N. Jafari Navimipour, "Behavioral modeling and formal verification of a resource discovery approach in Grid computing," Expert Systems with Applications, vol. 41, no. 8, pp. 3831-3849, 6/15/ 2014.
[4] Y. Ding, X. Qin, L. Liu, and T. Wang, "Energy efficient scheduling of virtual machines in cloud with deadline constraint," Future Generation Computer Systems, vol. 50, pp. 62-74, 9// 2015.
[5] N. Jafari Navimipour, A. M. Rahmani, A. Habibizad Navin, and M. Hosseinzadeh, "Expert Cloud: A Cloud-based framework to share the knowledge and skills of human resources," Computers in Human Behavior, vol. 46, pp. 57-74, 5// 2015.
[6] P. Xiao, Z.-G. Hu, and Y.-P. Zhang, "An Energy-Aware Heuristic Scheduling for Data-Intensive Workflows in Virtualized Datacenters," Journal of Computer Science and Technology, journal article vol. 28, no. 6, pp. 948-961, 2013.
[7] J. Song, T. Li, Z. Wang, and Z. Zhu, "Study on energy-consumption regularities of cloud computing systems by a novel evaluation model," Computing, journal article vol. 95, no. 4, pp. 269-287, 2013.
[8] D. B. L.D and P. Venkata Krishna, "Honey bee behavior inspired load balancing of tasks in cloud computing environments," Applied Soft Computing, vol. 13, no. 5, pp. 2292-2303, 5// 2013.
[9] B. Alami Milani and N. Jafari Navimipour, "A comprehensive review of the data replication techniques in the cloud environments: Major trends and future directions," Journal of Network and Computer Applications, vol. 64, pp. 229-238, 4// 2016.
[10] F. Lombardi and R. Di Pietro, "Secure virtualization for cloud computing," Journal of Network and Computer Applications, vol. 34, no. 4, pp. 1113-1122, 7// 2011.
[11] N. Jafari Navimipour, A. Habibizad Navin, A. M. Rahmani, and M. Hosseinzadeh, "Behavioral modeling and automated verification of a Cloud-based framework to share the knowledge and skills of human resources," Computers in Industry, vol. 68, pp. 65-77, 4// 2015.
[12] M. Almorsy, J. Grundy, and A. S. Ibrahim, "Adaptable, model-driven security engineering for SaaS cloud-based applications," Automated Software Engineering, journal article vol. 21, no. 2, pp. 187-224, 2014.
[13] L. Wu, S. Kumar Garg, and R. Buyya, "SLA-based admission control for a Software-as-a-Service provider in Cloud computing environments," Journal of Computer and System Sciences, vol. 78, no. 5, pp. 1280-1299, 9// 2012.
[14] S. Ramamoorthy and S. Rajalakshmi, "A Preventive Method for Host Level Security in Cloud Infrastructure," in Proceedings of the 3rd International Symposium on Big Data and Cloud Computing Challenges (ISBCC – 16’), V. Vijayakumar and V. Neelanarayanan, Eds. Cham: Springer International Publishing, 2016, pp. 3-12.
[15] S. Dam, G. Mandal, K. Dasgupta, and P. Dutta, "An Ant Colony Based Load Balancing Strategy in Cloud Computing," in Advanced Computing, Networking and Informatics- Volume 2: Wireless Networks and Security Proceedings of the Second International Conference on Advanced Computing, Networking and Informatics (ICACNI-2014), M. Kumar Kundu, P. D. Mohapatra, A. Konar, and A. Chakraborty, Eds. Cham: Springer International Publishing, 2014, pp. 403-413.
[16] J. Anselmi, D. Ardagna, and M. Passacantando, "Generalized Nash equilibria for SaaS/PaaS Clouds," European Journal of Operational Research, vol. 236, no. 1, pp. 326-339, 7/1/ 2014.
[17] A. Yousafzai et al., "Cloud resource allocation schemes: review, taxonomy, and opportunities," Knowledge and Information Systems, journal article vol. 50, no. 2, pp. 347-381, February 01 2017.
[18] A. Hameed et al., "A survey and taxonomy on energy efficient resource allocation techniques for cloud computing systems," Computing, journal article vol. 98, no. 7, pp. 751-774, July 01 2016.
[19] G. Wei, A. V. Vasilakos, Y. Zheng, and N. Xiong, "A game-theoretic method of fair resource allocation for cloud computing services," The Journal of Supercomputing, journal article vol. 54, no. 2, pp. 252-269, November 01 2010.
[20] W. Shu, W. Wang, and Y. Wang, "A novel energy-efficient resource allocation algorithm based on immune clonal optimization for green cloud computing," EURASIP Journal on Wireless Communications and Networking, journal article vol. 2014, no. 1, p. 64, April 23 2014.
[21] Z. Xiao, W. Song, and Q. Chen, "Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Environment," IEEE Transactions on Parallel and Distributed Systems, vol. 24, no. 6, pp. 1107-1117, 2013.
[22] C. Li, Y. C. Liu, and X. Yan, "Optimization-based resource allocation for software as a service application in cloud computing," Journal of Scheduling, journal article vol. 20, no. 1, pp. 103-113, February 01 2017.
[23] S. Son, G. Jung, and S. C. Jun, "An SLA-based cloud computing that facilitates resource allocation in the distributed data centers of a cloud provider," The Journal of Supercomputing, journal article vol. 64, no. 2, pp. 606-637, May 01 2013.
[24] H. Y. K. Lau and Y. Zhao, "Integrated scheduling of handling equipment at automated container terminals," International Journal of Production Economics, vol. 112, no. 2, pp. 665-682, 2008/04/01/ 2008.
[25] J. H. Holland, Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control, and artificial intelligence. MIT press, 1992.
[26] C. A. C. Coello, "Evolutionary multiobjective optimization," Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, vol. 1, no. 5, pp. 444-447, 2011.
[27] A. Abraham and L. Jain, "Evolutionary multiobjective optimization," Evolutionary Multiobjective Optimization, pp. 1-6, 2005.
[28] F. Sheikholeslami and N. J. Navimipour, "Service allocation in the cloud environments using multi-objective particle swarm optimization algorithm based on crowding distance," Swarm and Evolutionary Computation, vol. 35, pp. 53-64, 2017/08/01/ 2017.
[29] M. Clerc, "Standard particle swarm optimisation," 2012.
[30] R. N. Calheiros, R. Ranjan, A. Beloglazov, C. A. F. De Rose, and R. Buyya, "CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms," Software: Practice and Experience, vol. 41, no. 1, pp. 23-50, 2011.
[31] A. Beloglazov, J. Abawajy, and R. Buyya, "Energy-aware resource allocation heuristics for efficient management of data centers for Cloud computing," Future Generation Computer Systems, vol. 28, no. 5, pp. 755-768, 2012/05/01/ 2012.
دو فصلنامه علمي فناوري اطلاعات و ارتباطات ایران | سال دوازدهم، شمارههاي 43 و 44، بهار و تابستان 1399 صفحات: 71-85 |
|
استفاده از یک الگوریتم بهینه سازی چند هدفه برای تخصیص کارها در سیستمهای مبتنی بر ابر با هدف کاهش انرژی مصرفی
سارا طبقچی میلان* نیما جعفری نویمی پور**
*کارشناسی ارشد، گروه مهندسی کامپیوتر، واحد تبریز، دانشگاه آزاد اسلامی، تبریز، ایران
** دکتری، گروه مهندسی کامپیوتر، واحد تبریز، دانشگاه آزاد اسلامی، تبریز، ایران
تاریخ دریافت: 21/12/1398 تاریخ پذیرش: 30/07/1399
نوع مقاله: پژوهشی
چکیده
امروزه فناوریهای نوین باعث افزایش تقاضای کسب و کار در محیط وب شده است. لذا افزایش تقاضا منجر به افزایش تنوع و تعداد خدمات و در نتیجه ایجاد مراکز داده رایانش با مقیاس بزرگ شده است که علاوه بر هزینه های عملیاتی بالا، مقادیر عظیمی از توان الکتریکی را مصرف میکند. از طرفی سیستم های خنک کننده ناکافی و ناکارآمد، نه تنها باعث گرم شدن بیش از حد منابع و کاهش عمر کاری دستگاه ها می شود، بلکه باعث تولید کربن می شود که در وضعیت آب و هوا نقش مهمی دارد. از این رو باید با روشهای مناسب، مصرف انرژی کل این سیستمها را کاهش داد. در این پژوهش، یک روش موثر مدیریت منابع انرژی در مراکز داده ابری مجازی شده ارائه شده است که علاوه بر کاهش مصرف انرژی و هزینههای عملیاتی، باعث افزایش کیفیت خدمات نیز شده است. این پژوهش، به ارائه یک استراتژی تخصیص منبع در سیستمهای ابری با هدف کاهش انرژی و هزینه اجرا پرداخته و کاربرد آن را در محیط رایانش ابری را بررسی می نماید. نتایج حاصل از شبیهسازی نشان میدهد که روش پیشنهادی میتواند نسبت به روشهای NPA، DVFS، ST و MM، میانگین انرژی مصرفی را تا 0.626 کیلووات ساعت کاهش دهد، همچنین نیاز به مهاجرت و موارد نقض SLA نیز کاهش پیدا نمود.
واژگان کلیدی: رایانش ابری، انرژی مصرفی، تخصیص کار، الگوریتم بهینه سازی چند هدفه.
1- مقدمه
امروزه اینترنت و خدمات وب به اشتراکگذاری اطلاعات را تسهیل نمودهاند[1-3]. رایانش ابری1 نیز بهعنوان یک رویکرد جدید و مبتنی بر اینترنت قابلیت دسترسی2 بالا، مقیاسپذیری مناسب3، محاسبات انعطافپذیر4، کارایی5 بالا، ظرفیت6 زیاد و هزینههای زیرساخت معقول را فراهم مینماید [4] [5, 6]. با ظهور عصر رایانش ابری، تقاضا برای منابع فناوری اطلاعات و خدمت رسانها برای اتصال به اینترنت بهطور مداوم در حال افزایش میباشد[5, 7]. این فناوری شامل مفهوم رایانش موازی توزیعشده7 به منظور فراهم نمودن اشتراکگذاری منابع، سختافزار، نرمافزار و اطلاعات برای کامپیوترها و یا دیگر دستگاهها میباشد[5, 8] و حتی کل برنامههای کاربردی نرمافزاری به کاربران تحت خدمات حین تقاضا تحویل داده میشود[9]. رایانش ابری یک مدل خدمت برای تأمین خدمات فناوری اطلاعات است که اغلب مبنی بر مجازیسازی8 و فناوریهای رایانش توزیعشده میباشد[10]. منابع ابری شامل انواع مختلف منابع ازجمله منابع ذخیرهسازی9، پردازش10، حافظه11، پهنای باند شبکه 12 و ماشینهای مجازی13 است[11]. نرمافزار بهعنوان خدمت14[12, 13]، زیرساخت بهعنوان خدمت15[14, 15] و بستر نرمافزاری بهعنوان خدمت16 [16] سه شکل معروف منابع مجازی17 در رایانش ابری میباشند[5].
از طرف دیگر، تخصیص منابع یک فرآیند توزیع شده بین برنامهها و کاربران از دیدگاه اقتصادی است که منابع در دسترس را در اختیار برنامه های کاربردی ابری قرار میدهد که به عنوان مسئله Np-hard شناخته شده است [17]. هدف از تخصیص منابع برای ارائه خدمات منحصر به فرد بهینه سازی کیفیت خدمات و بهبود بهره وری منابع و انرژی می باشد[18]. با توجه به افزایش روزافزون محبوبیت رایانش ابری، اگر انرژی مصرفی در ارائه دهندگان خدمات کنترل نگردد، آنگاه در گام اول هزینه ارائه خدمت افزایش مییابد و در پی آن هزینه پرداختی خدمت گیرندگان افزایش خواهد داشت. علاوه بر این، افزایش مصرف انرژی سهم زیادی در افزایش آلودگی محیط زیست خواهد داشت؛ لذا کشف راهکارهای بهرهوری انرژی بسیار ضروری است. از این رو ضرورت ایجاب میکند تا با بهبود الگوریتم های تخصیص منبع به همراه شناسایی پارامترهای تأثیرگذار و کاهش مصرف انرژی، سطح رضایت کاربر نیز افزایش داده شود. در نتیجه این امر باعث کاهش هزینه تمام شده خدمات نیز خواهد شد. با توجه به ماهیت NP-hard این مساله[19]، در این پژوهش از یک الگوریتم کارآمد به نام بهینه سازی چند هدفه برای تخصیص منابع ابری استفاده شده است که اهداف آن به شرح زیر خواهد بود:
· کاهش مصرف انرژی
· کاهش هزینه کل
· کاهش میزان نیاز به مهاجرت
· افزایش توازن بار
ادامه این مقاله به ترتیب زیر سازمان یافته است. در فصل دوم، به مطالعه و بررسی کارهای مرتبط پرداخته است. فصل سوم، به ارائهی کامل روش پیشنهادی اختصاص یافته است، در فصل چهارم به معرفی محیط شبیه سازی و پارامترهای شبیه سازی و ارائه نتایج حاصل پرداخته شده است و در نهایت فصل پنجم نتیجه گیری و کارهای آتی ارائه شده است.
2- کارهای مرتبط
در این بخش، برخی از روش های مرتبط در زمینه ی تخصیص منابع در رایانش ابری به همراه مزایا و معایب آن ها بررسی و ارائه می شوند.
یک روش مبتنی بر نظریه بازیها برای زمانبندی مبتنی بر خدمات ابری با همکاری نیازهای کیفیت خدمات ارائه شده است[20]. ارائه خدمات محاسباتی هزینه هایی به همراه خواهد داشت که به تعداد زیادی رقابت وابسته است. هر وظیفه محاسباتی چندین وابستگی و زیر وظایف همگن دارد که در زمان اجرا تاثیر دارند. نظریه بازیها برای یافتن راه حل بهینه در نظر گرفته شده است. روش معرفی شده به این صورت است که در مرحله ی اول برای دست یافتن به بهینه سازی اولیه روش باینری پیشنهاد شده است که تخصیص دوباره منابع در نظر گرفته نشده است. سپس بر اساس نتایج اولیه مکانیسم تکاملی برای رسیدن به راه حل مطلوب و منصفانه طراحی شده است. در این روش بهره وری و کیفیت خدمات افزایش یافتهاند و پیچیدگی زمانی کاهش یافته است؛ اگر چه هزینه و انرژی مصرفی در نظر گرفته نشده است.
در ادامه یک روش تخصیص منابع انرژی موثر مبنی بر ایمنی کلونال18 برای مراکز داده مجازی ارائه شده است[21]. الگوریتم تخصیص منبع موثر، منابع را به کارها تخصیص می دهد طوری که انرژی مصرفی مراکز داده و زمان تکمیل اجرای کارها 19را کمینه می کند. در این پژوهش، بهبود تخصیص منابع با استفاده از الگوریتم انتخاب کلونال مبتنی بر بهینه سازی زمان تکمیل کارها و انرژی مصرفی می باشد. در روش پیشنهادی ابتدا عملگر کلونال یک نقشه تصادفی آنتی بال می باشد. در سیستم ایمنی بیولوژیکی کلونی یک گروه از سلول های یکسان می باشد و در سیستم ایمنی منظور از کلونی یک گروه از سلولهای یکسان می باشد که از یک اجداد مشترک تنها تولید می شود. در این روش زمان پاسخ، زمان تکمیل اجرای کارها و انرژی مصرفی کاهش یافته است؛ اما هزینه و توازن بار به خوبی بررسی نشده است.
در ادامه کارها و روش های مطالعاتی، سیستمی مبتنی بر فناوری مجازی سازی برای تخصیص منابع مراکز داده ارائه شده و دستیابی به رایانش سبز را با بهینه کردن تعداد سرورها تضمین میکند[22]. در این پژوهش، از چولگی برای محاسبهی ناهمواریها در بهره وری منابع در یک سرور استفاده شده است و با به حداقل رساندن چولگی میتوان حجم کارهای مختلفی را ترکیب نمود و بهره وری کلی از منابع بهبود مییابد. در روش ارائه شده، توازن بار، انرژی مصرفی و بهره وری از منابع و تعداد سرورهای استفاده شده بهبود یافته؛ اگرچه هزینه، زمان پاسخ و زمان تکمیل کارها به خوبی بررسی نشده است.
همچنین، در ادامه یک روش مبتنی بر بهینه سازی رویکردی تخصیص منبع برای برنامه های کاربردی خدمت به عنوان نرم افزار در محیط ابری ارائه شده است [23]. از آنجا که کاربران نیاز به ارسال خدمات به ارائه دهندگان ابری دارند، انتخاب ارائه دهنده مناسب بسیار مهم است. در روش پیشنهادی ارائه دهندگان خدمات به عنوان تامین کننده خدمات نرم افزاری عمل میکند که سرورها درخواست های کاربران خدمت نرم افزاری را با افزایش کیفیت خدمات تضمین میکنند. در روش پیشنهادی تخصیص منابع و هزینه انرژی مصرفی بهبود یافته است؛ اگر چه زمان تکمیل اجرای کل کارها، هزینه و انرژی مصرفی در نظر گرفته نشده است.
یک چارچوب مبتنی بر سطح توافقنامه خدمات به منظور تسهیل در تخصیص منابع ارائه شده است که حجم کارها و موقعیت جغرافیایی مراکز داده توزیع شده در نظر گرفته شده است[24]. در این چارچوب، ارائه دهنده ابر چندین مراکز داده دارند که در مناطق جغرافیایی گسترش یافته اند. در این پژوهش، بر تخصیص منابع پویا در مرکز داده بدون در نظر گرفتن تاخیر در شبکه جهانی تمرکز شده است که تخصیص منابع بر اساس انتخاب مراکز داده در میان مراکز داده توزیع شده می باشد. در این روش زمان پاسخ، توازن بار، هزینه بهبود یافته است؛ اگرچه انرژی مصرفی، زمان تکمیل کارها در نظر گرفته نشده است.
تخصیص و تامین منابع بر اساس کیفیت خدمات به شیوه ی موثری انجام می شود ولی در موارد خاصی تامین منابع بصورت پویا صورت نمی گیرد و بسیاری از کارهای انجام شده بر اساس مدیریت منابع همراه با هزینه و سرعت بالایی است. لذا سیاستی مبتنی بر مدیریت موثر در تخصیص منابع با زمان کم بر اساس منابع قابل دسترس و بهره وری بالای منابع و کاهش هزینه ها ارائه شده است [25]. در روش پیشنهادی ابتدا درخواست کاربر بر اساس مهلت زمانی و در دسترس بودن منابع ارسال می شود. کیفیت خدمات در روش پیشنهادی شامل پارامترهای همگن و ناهمگن از جمله زمان اجرا، سطح اطمینان مشتری براساس SLA می باشد . در مرحله بعدی کیفیت خدمات مد نظر متقاضی در منابع موجود بررسی می شود و لیستی از منابع ایجاد می گردد و مطابق درخواست تامین منابع صورت می گیرد و عمل تخصیص صورت می پذیرد. در روش ارائه شده، بهرهوری منابع، کیفیت خدمات و زمان اجرا بهبود یافته است؛ اگرچه هزینه، زمان پاسخ، انرژی مصرفی و زمان تکمیل کارها به خوبی بررسی نشده است.
در مراکز داده ابری، ماشین های مجازی نیاز به تخصیص در ماشین های فیزیکی دارند بطوری که کمترین میزان هدر رفت از منابع را داشته باشند. لذا روشی مبتنی بر گرده افشانی به منظور کاهش مصرف انرژی پیشنهاد شده است[26]. در این روش فریم وورکی در نظر گرفته شده است که بوسیله ی آن نزدیکترین و بهینه ترین راه حل یافت می شود که این راه حل بر اساس میزان حافظه و پردازنده منابع خواهد بود. در روش ارائه شده، توازن بار، انرژی مصرفی و بهره وری از منابع بهبود یافته؛ اگرچه هزینه، زمان پاسخ و زمان تکمیل کارها به خوبی بررسی نشده است.
طبق مقالات مطالعه شده قبلی همانطور که آشکار است عمده ترین مسائل در رایانش ابری انتخاب منبع مناسب برای مشتریان می باشد بصورتی که کیفیت خدمات در آن نقض نشود. لذا یک روشی چند هدفه مبتنی بر ژنتیک به منظور تخصیص منابع با به حداقل رساندن هزینه ها و افزایش کیفیت خدمات ارائه شده است[19]. بطور کلی فراهم کنندگان خدمات ابری تعداد نمونه های محاسباتی و پایگاه های داده را مجزا می نمایند. در روش پیشنهادی منابع مناسب براساس الگوریتم ژنتیک به تناسب تقاضاهای مشتری تخصیص می یابند. در روش پیشنهادی زمان پاسخ و کیفیت خدمات بهبود یافته است؛ اگر چه زمان تکمیل اجرای کل کارها، هزینه و انرژی مصرفی در نظر گرفته نشده است.
به طور خلاصه، در هیچ یک از روش های ذکر شده، کاهش زمان اجرای کل کارها، انرژی مصرفی و هزینه در محیط های ابری با استفاده از تخصیص منابع مورد استفاده قرار نگرفته اند؛ لذا روشی که قادر است تخصیص منابع در محیط های ابری را با استفاده از الگوریتم بهینه سازی چند هدفه انجام دهد در بخش بعدی بررسی و ارائه میشود.
3- روش پیشنهادی
در این بخش نسبت به معرفی مساله بهینه سازی چند هدفه و مجموعه پارتو، تشریح الگوریتم بهینه سازی ازدحام ذرات و در نهایت روش پیشنهادی پرداخته خواهد شد.
1-3. بهینه سازی چند هدفه
بهینهسازی با مسائلی سر و کار دارد که هدف آن انتخاب بهترین گزینه از مجموعهای از پاسخها بر اساس معیارهای خاص میباشد. اگر تنها یک معیار در نظر گرفته شود، مساله بهینهسازی به مساله بهینه سازی تک هدفه تبدیل میشود، که مطالعات گستردهای طی 50 سال گذشته در خصوص آن صورت پذیرفته است. اگر بیش از یک معیار وجود داشته باشد، که میبایستی همزمان مد نظر قرار گیرد، مساله بهینه سازی چند هدفه مطرح خواهد شد[27] که این مسائل در طراحی، مدلسازی و برنامهریزی سیستمهای واقعی بسیار پیچیده در حوزه صنعت، حمل و نقل شهری، مالی، مدیریت منابع طبیعی، توزیع انرژی و غیره کاربرد دارد. عمده مسائل تصمیمگیری در دنیای واقعی شامل اهداف متعدد هستند و اعمال محدودیتهای مختلف بر انتخاب راه حل بهینه لازم است که حل مسائل را پیچیده میکند. برای حل این مساله راهکارهایی ارائه شده است که مهمترین آنها روشی است که توسط پارتو ارائه شده است[28]. اخیرا الگوریتم بهینه سازی ازدحام ذرات20، توجه ویژهای را برای حل مساله بهینهسازی چند هدفه به سمت خود جذب کرده است، که نتایج آن در تحقیقات وگزارشهایی که به عنوان "ارزیابی بهینه سازی چند هدفه" (EMO21) ارائه شده است[29, 30]. صورت کلی مساله بهینه سازی چندهدفه با رابطه (1) مدل میشود.
(1)
که fi(x) تابع هدف iام مساله بهینهسازی چندهدفه است.
هدف کمینه کردن توابع چندگانه fi(x) بصورت توامان است. همانطور که در شکل 1 مشاهده می شود که مثالی از نمودار پارتو دو هدفه می باشد، هدف کمینه کردن دو تابع f1 و f2 است. اگر 2 عضوی از مجموع جوابهای پارتو باشد، 1 بر 2 غلبه دارد و اگر در هیچ یک از دو تابع بدتر از 2 نباشد، حداقل در یک تابع بهتر از آن می باشد.
شکل 1: مثالی از نمودار پارتو دو هدفه [31]
یک روش کارا برای بهینهسازی چند هدفه، بهترین راه حل را از مجموعهای از راه حلهای ( بهترین مجموعه شناسایی شده پارتو) ممکن انتخاب میکند، اما هر روشی که برای حل مساله بهینهسازی چند هدفه ارائه شده باید سه هدف متضاد زیر را برآورده کند:
1- مجموعه پارتو منتخب باید تا حدی که ممکن است به پارتو درست همگرا باشد، در حالت ایدهال، مجموعه پارتو منتخب باید زیر مجموعهای از مجموعه بهینه پارتو باشد.
2- راه حلهای مجموعه پارتو منتخب باید توزیع یکنواخت داشته باشند و تنوع آنها بر روی مجموعه پارتو حفظ شود تا تصمیمگیری واقعیتر و تصویر درستتری از واقعیت داشته باشد.
مجموعه پارتو منتخب بایستی تمام طیف مجموعه پارتو را پیمایش کند و اینکار مستلزم آن است که راه حلهایی که بیشترین فاصله را با تابع هدف دارند بررسی شوند. در روش پیشنهادی از بهینهسازی پارتو برای دو هدف اصلی پژوهش، کاهش مصرف انرژی و کاهش زمان کل اجرا استفاده شده است، روابط زیر:
(2) (3) |
|
(6) |
|
(7) |
|
(8) |
|
هزینه اجرا |
انرژی مصرفی |
شکل2: نمودار پارتو الگوریتم پیشنهادی
در شکل فوق، مجموعه نقاط قرمز رنگ مشخص شده بر روی روی منحنی مجموعه جبهه پارتو هستند که مخزن پارتو را تشکیل می دهند. این نقاط موقعیت ذراتی هستند که بهترین موقعیت محلی را نسبت به سایر موقعیت ها بر اساس دو هدف کاهش انرژی و هزینه اجرا دارا می باشد.. بنابراین برخلاف الگوریتم بهینهسازی ازدحام ذرات، در الگوریتم بهینهسازی ازدحام ذرات چند هدفه، بیش از یک موقعیت بهینه خواهد بود. در صورتی که از نظریه پارتو استفاده نمیشد، میبایستی بر روی مقادیر دو هدف نرمالسازی انجام می شد و از میانگین وزنی برای تعیین یک تابع برازش استفاده میشد. اما از آنجا که تعیین وزن و نرمالسازی مقادیر میتواند به دقت کار لطمه بزند و انتخاب یک مقدار میانگین میتواند دقت پایینتری داشته باشد لذا از نطریه پارتو استفاده شده و مجموعهای از موقعیتهای بهینه ذرات برای تعیین رهبر به کار گرفته میشود.
مراحل روش پیشنهادی به شرح زیر است:
گام(1): مقدار t=0 برای اولین تکرار انتخاب میشود. تمامی k ذره در اجتماع Stset با استفاده از الگوریتم حریصانه مقداردهی اولیه میشود.
گام(2): برای هر ذره محاسبات مربوطه با استفاده از روابط (بخش قبل) و توضیحات بند (2) این بخش انجام و K ذره جدید تولید میشود. مجموع ذرات جدید و قدیم به تعداد 2k اجتماع حافظه موقتی Tset را تشکیل میدهد.
گام(3): با استفاده از نظریه پارتو ذرات بهینه یا همان موقعیتهای محلی بهینه پیدا میشود و با POset نامگذاری میگردد و تعداد اعضای مجموعه بهینه با Npo نشان داده میشود. اگر Npo<K باشد گام(4) و در غیر اینصورت گام(5) اجرا میشود.
گام(4): به تعداد K-Npo ذره از بین ذراتی که بهینه پارتو نیستند برای اضافه کردن به مجموعه POset به خاطر تکمیل کردن تعداد مجموعه و رساندن آن به K تعداد انتخاب میشود تا مجموعه اجتماع ذرات در مرحله بعد St+1set را تشکیل دهند.
گام(5): به صورت تصادفی K تعداد از مجموعه انتخابی بهینه پارتو POset برای ایجاد مجموعه اجتماع ذرات مرحله بعد St+1set انتخاب میشود.
گام(6): شرط خاتمه الگوریتم بررسی میشود که شرایط به دست آمده مطلوب است یا تعداد تکرارها پایان یافته یا خیر. لازم به ذکر است که منظور از شرایط خاتمه شرایط تخصیصی می باشند که در بخش 3-3 به آن پرداخته شده است که شامل محدودیت نرم افزار، محدودیت تعداد منابع، محدودیت ترتیب و اولویت اجرای زیر وظایف است. (رجوع شود به بخش 3-3) در صورت تحقق شرط خاتمه گام(8) و در غیر اینصورت گام(7) اجرا میشود.
گام(7): مقدار t=t+1 به روز شده و گام(2) اجرا میشود.
گام(8): الگوریتم پایان یافته و به مجموعه بهینه پارتو POset برای تصمیم گیری و انتخاب راه حل بهینه سراسری مراجعه میشود.
4- نتایج
در این بخش محیط شبیه سازی، پارامترهای شبیه سازی و نتایج حاصل بررسی می شود.
1-4- محیط شبیه سازی
از آنجا که امکان آزمایش عملی با توجه به گستردگی محیط های ابری و در دسترس نبودن آن میسر نیست، براي آزمايش و اعتبارسنجي الگوريتم پيشنهادي، از زبان برنامهنويسي جاوا در محیط نت بینز آی دی ای 8.1 و نسخه 3.0.1 بسته شبیه سازی کلودسیم [34]، کتابخانه الگوریتم های فرااکتشافی و ابزار کمکی محیط جاوا با عنوان MOEA framework استفاده شده است. کامپیوتر مورد استفاده با مشخصات پردازنده اینتل با حافظه 4 گیگابایت و تحت سیستم عامل ویندوز 7 انتخاب گردید.
2-4- پارامترهای شبیه سازی
برای شبیه سازی از یک سناریو با اعمال مقادیر مناسب برای منبع تغذیه و انرژی مصرفی استفاده شده است[29] که مقادیر آن در جدول 1 آمده است.
جدول 1: پارامترها و مقادیر اولیه شبیه سازی
ماشین فیزیکی | HP ProLiant ML110 G4 (1 x [Xeon 3040 1860 MHz, 2 cores], 4GB) HP ProLiant ML110 G5 (1 x [Xeon 3075 2660 MHz, 2 cores], 4GB) | |
سرعت اجرای دستور العمل: {1860و 2660} تعداد پردازنده ها: 2 رم:4096 پهنای باند: 1 گیگا بایت بر ثانیه حافظه:1 گیگا بایت | ||
ماشین مجازی | سرعت اجرای دستورالعمل: {2500 و 2000 و 1000 و 500} تعداد پردازنده ها:1 رم: {870 و 1740 و 1740 و 613} پهنای باند: 10 مگابیت بر ثانیه | |
وظایف | طول:216 مگا بایت تعداد پردازنده ها:1 |
3-4- نتایج بدست آمده
در اولین ارزیابی، نتایج شبیه سازی برای چهار حالت مختلف ارائه میگردد. این چهار حالت شامل اتخاذ سیاستهای مختلف در دو کلاس منشعب از کلاسهای مادر ماشین مجازیallocation policy برای اعمال سیاست تخصیص و ماشین مجازیselection policy برای اعمال سیاست انتخاب می باشد که درجدول 2، حالت های مختلف اعمال شده در شبیه سازی آورده شده است.
جدول2: حالتها و سناریوهای مختلف شبیه سازی
سناریو | ماشین مجازیselection policy | ماشین مجازیallocation policy |
1 | Minimum Utilization(mu) | Threshold Allocation (thr) |
2 | Minimum Energy(me) with MOPSO | Threshold Allocation (thr) |
3 | Minimum Utilization(mu) | MOPSO Allocation (mopso) |
4 | Minimum Energy(me) with MOPSO | MOPSO Allocation (mopso) |
در سناریوی اول(حالت استاندارد)؛ کلاس انتخاب ماشین مجازی، از سیاست انتخاب ماشین مجازی با کمترین مقدار بهرهوری27 استفاده شده است، و در کلاس تخصیص ماشین مجازی از سیاست آستانه بهرهوری با مقدار آستانه 0.8 استفاده گردید. در واقع این روش حالت نرمال شبیه ساز کلود سیم بوده و سیاست خاصی در کلاس تخصیص اعمال نشده بلکه از سیاست انتخاب مبتنی بر انتخاب بیکارترین ماشینهای مجازی با یک آستانه مشخص استفاده شده است (جدول3).
در جدول 3، میزان کل مصرف انرژی به کیلوات ساعت را نشان داده شده است که برابر با 30.59 میباشد، تعداد مهاجرتهای ماشینهای مجازی 5700 میباشد که رقمی بالاست و حاکی از تخصیص اولیه غیرکارآمد است. موارد نقض سطح توافقنامه خدمت نسبتاً زیاد است و موارد نقض به دلیل مهاجرت 0.45% می باشد که موجب عدم رضایت مشتریان خواهد شد. دلیل این نقض، ناشی از تخصیصهای نامناسب و مهاجرتهای زیاد میباشد. تعداد خاموش شدنهای میزبانها 634 میباشد، که نسبتاً زیاد است. خاموش شدنهای بی مورد و زیاد، باعث افزایش زمان آماده به کار شدن آنها و در نتیجه افزایش زمان کل اجرا و همچنین افزایش انرژی مصرفی اولیه در لحظه آماده به کار شدن میگردد. میانگین زمان کل اجرا برای این سناریو برابر است با 0.00533 ثانیه، که در مقایسه با سایر سناریوها تحلیل خواهد شد. انحراف معیار زمان کل اجرای آن 0.00511 ثانیه است که مقدار زیادی است و نشان از پراکندگی زیاد در مقادیر زمان اجرا است و حاکی از عدم توازن بار بین منابع است.
در سناریوی دوم(اعمال سیاست پیشنهادی مبتنی بر الگوریتم ازدحام ذرات چند هدفه در کلاس VMselectionpolicy)؛ کلاس انتخاب ماشین مجازی از سیاست الگوریتم ارائه شده مبتنی بر بر الگوریتم ازدحام ذرات چند هدفه استفاده گردید تا ماشین های مجازی مناسب از بین ماشین مجازی های در دسترس انتخاب شوند. در کلاس تخصیص ماشین مجازی از سیاست انتخاب مبتنی بر آستانه و به تبعیت از سیاست اتخاذی در کلاس انتخاب ماشین مجازی استفاده گردید. در واقع در این روش، الگوریتم ارائه شده در کلاس VM selection policy اعمال گردید که در جدول3 قابل مشاهده است.
مقادیر ستون 2 از جدول3، در مقایسه با مقادیر به دست آمده از سناریوی اول در ستون 1 جدول 3 تفاوت محسوسی دارد. در سناریوی دوم، میزان انرژی مصرفی حدود 50% کاهش پیدا کرده است، تعداد مهاجرتها از 5700 مورد به 56 مورد کاهش یافته که دلیل بر تخصیص بهینه است. موارد نقض توافقنامه به 0.00143% کاهش پیدا کرده است و درصد موارد نقض به دلیل مهاجرت صفر شده است. موارد خاموش شدنهای میزبانها نیز به 46 مورد کاهش پیدا کرده که در مقایسه با مقدار آن در سناریوی اول، 634 مورد بسیار پایین است. میانگین زمان اجرای کل از 0.00533 به 0.00157 کاهش یافته است، که دلیل آن مهاجرتهای زیاد در سناریوی نخست و اتلاف زمان میباشد. انحراف معیار پایین سناریوی دوم نسبت به سناریوی اول کمتر است، وحاکی از توازن بار بیشتر است.
در سناریوی سوم (اعمال سیاست پیشنهادی مبتنی بر الگوریتم ازدحام ذرات چند هدفه در کلاس VMallocationpolicy) از سیاست انتخاب ماشین مجازی با کمترین مقدار بهرهوری استفاده شد و در کلاس تخصیص ماشین مجازی از سیاست الگوریتم ارایه شده مبتنی بر الگوریتم ازدحام ذرات چند هدفه استفاده گردید تا بهترین تخصیص بر اساس الگوریتم پیشنهادی صورت پذیرد (جدول 3).
نتایج سناریوی سوم که در ستون 3 از جدول 3 آمده است، نشان میدهد که در این پیادهسازی نتایج مشابه سناریوی اول است، به غیر از میانگین زمان کل اجرا که از 0.00533 به 0.00484 رسیده است و اندکی کاهش را نشان میدهد. اما انحراف معیار از 0.00511 به 0.00514 افزایش یافته است که نشان از توزان بار کمتر نسبت به سناریوی اول است.
در سناریوی چهارم(اعمال سیاست الگوریتم پیشنهادی در هر دو کلاس VM selection policy و VM allocation policy)، در هر دو کلاس انتخاب ماشین مجازی و تخصیص ماشین مجازی از سیاست الگوریتم پیشنهادی استفاده گردید (جدول 3).
نتایج جدول3 ستون 4 نشان میدهد که عملکرد سناریوی چهارم در کاهش مصرف انرژی، میزان نیاز به مهاجرت، درصد موارد نقض توافقنامه و خاموش شدنهای میزبان مشابه سناریوی دوم است اما میانگین زمان کل اجرای آن که درسناریوی دوم 0.00157 بود به 0.00187 افزایش یافته است و انحراف معیار زمان کل اجرا نیز از 0.00276 به 0.00370 افزایش یافته است که حاکی از ضعف سناریوی چهارم نسبت به سناریوی دوم است. سناریوی چهارم در مقایسه با سناریوهای اول و سوم بهتر عمل کرده است و در رده دوم قرار دارد.
جدول3: نتایج سناریوهای شبیه سازی شده
الف- مقادیر یکسان شبیه سازی Number of hosts: 50 Number of VMs: 50 Total simulation time: 86400.00 sec | ||||
ب- نتایج سناریوهای اجرایی | ||||
سناریو4 | سناریو3 | سناریو2 | سناریو1 | پارامترها |
16.09 | 30.59 | 16.09 | 30.59 | 1-Energy consumption(kwh) |
56 | 5700 | 56 | 5700 | 2- Number of VM migrations |
0.00143 | 0.10356 | 0.00143 | 0.10356 | 3- SLA(%) |
0.00 | 0.45 | 0.00 | 0.45 | 4- SLA perf degradation due to migration(%) |
73.72 | 22.8 | 73.72 | 22.8 | 5- SLA time per active hostL%) |
33.07 | 7.74 | 33.07 | 7.74 | 6- Overall SLA violation(%) |
36.27 | 18.83 | 36.27 | 18.83 | 7- Average SLA violation(%) |
46 | 634 | 46 | 634 | 8- Number of host shutdowns |
2278.74 | 1443.59 | 2278.74 | 1443.59 | 9- Mean time before a host shutdown(sec) |
8257.02 | 1319.58 | 8257/02 | 1319.58 | 10- StDev time before a host shutdown(sec) |
19.09 | 20.14 | 19.90 | 20.14 | 11- Mean time before a VM migration |
7.86 | 8.01 | 7.86 | 8.01 | 12- StDev time before a VM migration |
0.0019 | 0.00019 | 0.00024 | 0.00019 | 13- Execution time - VM selection mean |
0.00040 | 0.00084 | 0.00062 | 0.00039 | 14- Execution time - VM selection stDev |
0.00033 | 0.00026 | 0.00038 | 0.00033 | 15- Execution time - host selection mean |
0.00048 | 0.00046 | 0.00075 | 0.00048 | 16- Execution time - host selection stDev |
0.0003 | 0.00196 | 0.0003 | 0.00230 | 17- Execution time - VM reallocation mean |
0.00018 | 0.00246 | 0.00018 | 0.00303 | 18- Execution time - VM reallocation stDev |
0.00187 | 0.00484 | 0.00157 | 0.00533 | 19- Execution time - total mean |
0.00370 | 0.00514 | 0.00276 | 0.00511 | 20- Execution time - total stDev |
1-3-4 ارزیابی کارایی روش پیشنهادی در کاهش مصرف انرژی
از آنجا که یکی از اهداف اصلی روش پیشنهادی کاهش مصرف انرژی در ابر میباشد، در این بخش نقش الگوریتم پیشنهادی در کاهش مصرف انرژی مورد ارزیابی قرار میگیرد. برای این منظور نتایج حاصل از اعمال شرایط چهار حالت و سناریوی مختلف که در بخش قبل توضیح داده شد در شکل 3 آورده شده است.
همانطور که در شکل مشخص است میزان کاهش مصرف انرژی در سناریوی دوم و چهارم که الگوریتم پیشنهادی در کلاس انتخاب ماشین مجازی اعمال شده است به طور کاملا محسوسی کاهش پیدا کرده است. نتایج این نمودار نشان می دهد که در سناریوی چهارم که در مقایسه با سناریوی دوم، در کلاس تخصیص نیز الگوریتم پیشنهادی بصورت توامان اعمال شده است، بهینگی صورت نپذیرفته
شکل3:نمودار کاهش مصرف انرژی برای 4 سناریو
و نشان دهنده این است که اعمال الگوریتم پیشنهادی در کلاس انتخاب که زودتر از کلاس تخصیص در کلود اجرا می شود و یک لایه قبل تر است نتایج خوبی ارائه می دهد و اعمال آن در کلاس تخصیص تغییری در بهینه گی ایجاد نمی کند. عدم بهینگی کاهش مصرف انرژی در سناریوی سوم که الگوریتم پیشنهادی در آن در کلاس تخصیص اعمال شده است نیز دلیل دیگری بر عملکرد صحیح الگوریتم پیشنهادی در کلاس انتخاب است. کاهش تقریبا 50% در مصرف انرژی، توسط الگوریتم پیشنهادی نسبت به حالت استاندارد تخصیص منابع که بر اساس ترتیب لیست عمل مینماید، حاکی از قدرت الگوریتم بهینهسازی ازدحام ذرات چند هدفه، در انتخاب بهینه منابع ماشین مجازی برای تخصیص است.
2-3-4 ارزيابي کارایی روش پیشنهادی در کاهش نیاز به مهاجرت
شاخص دیگری که برای ارزیابی الگوریتم پیشنهادی مورد نظر قرار گرفت تعداد مهاجرتهای مورد نیاز ماشینهای مجازی است، بدیهی است هر جقدر که مقدار این مهاجرتها نسبت به نتایج حاصله کمتر باشد بهتر است و حاکی از تخصیصهای بهینه میباشد. در شکل 4 نتایج حاصل برای چهار سناریو آورده شده است.
شکل4 :تعداد مهاجرتهای ماشین مجازی در 4 سناریو
همانطور که در شکل 4 مشاهده می شود، سناریوی دوم و چهارم تعداد مهاجرت کمتری را داشتهاند و شرایط مطلوبتری دارند. تعداد مهاجرت کمتر حاکی از تخصیص اولیه بهتر است، زمانیکه تخصیصهای اولیه منابع بهینه باشد. تطابق قدرت منابع با ماشینهای مجازی باعث عدم نیاز به مهاجرت شده و در نتیجه باعث افزایش کارایی سیستم میگردد. این عمل هم در کاهش زمان اجرا و هم در کاهش مصرف انرژی به دلیل عدم اتلاف انرژی و در نتیجه منجر به تامین خواستههای هر دو طرف خدمت دهنده و خدمت گیرنده خواهد شد.
3-3-4- ارزيابي کارایی روش پیشنهادی در کاهش زمان کل اجرا و توازن بار
از پارامترهای مهم دیگر برای ارزیابی الگوریتم پیشنهادی، پارامتر زمان اجرای کل کارها است که نقش بسیار مهمی در رایانش ابری دارد، بدیهی است که کاهش زمان اجرا هم جزو شرایط کیفیت ارایه خدمات و درخواستهای مشتریان است، هم باعث کاهش انرژی مصرفی و علاوه بر این باعث سود اجاره دهندگان خواهد بود. در این بخش از ارزیابی زمان کل اجرای چهار سناریوی پیادهسازی الگوریتم پیشنهادی مبتنی بر الگوریتم بهینهسازی ازدحام ذرات چند هدفه را با همدیگر در شکل 5 آوردهایم.
شکل5: نمودار مقایسه زمان اجرای کل 4 سناریو پیادهسازی
همانطور که در شکل مشاهده میشود سناریوی دوم و چهارم وضعیت بهتری نسبت به دو سناریوی دیگر دارند، در بین این دو سناریو نیز سناریوی دوم زمان اجرای کل پائینتری دارد، و حاکی از عملکرد خوب آن است. در این نمودار همچنین مشخص است که میزان انحراف معیار سناریوی دوم نیز کمتر از بقیه است و نشان دهنده آن است که توازن بار نیز در پیادهسازی مذکور رعایت شده است.
4-3-4 ارزیابی کارایی روش پیشنهادی در مقایسه با روشهای پیشین
در ارزیابی دیگری به عنوان ارزیابی نهایی، کارایی الگوریتم پیشنهادی در مقایسه با الگوریتمهای قبلی مورد بررسی قرار گرفت، برای این منظور ابتدا شرایط و تنظیمات یکسان بصورت جدول4 اعمال گردید[35]. در این مرحله از ارزیابی سناریوی دوم که بهترین سناریو و پیادهسازی از الگوریتم پیشنهادی بود اجرا گردید.
جدول 4- تنظیمات شبیه سازی یکسان برای مقایسه با الگوریتمهای پیشین
مقدار دهی اولیه و تنظیمات شبیهسازی برای مقایسه روش پیشنهادی با روشهای دیگر |
NUMBER_OF_VMS = 290; NUMBER_OF_HOSTS = 100; VM_TYPES = 4; VM_MIPS = { 250, 500, 750, 1000 }; VM_PES = { 1, 1, 1, 1 }; VM_RAM = { 128, 128, 128, 128 }; VM_BW = 100000; // 100 Mbit/s VM_SIZE = 1000; // 1 GB HOST_TYPES = 3; HOST_MIPS = { 1000, 2000,3000 }; HOST_PES = { 1, 1,1 }; HOST_RAM = { 8192, 8192,8192 }; HOST_BW = 1000000; // 1 Gbit/s HOST_STORAGE = 1000000000; // 1 TB HOST_POWER = PowerModelSpecPowerHpProLiantMl110G4Xeon3040() |
در این مرحله از شبیهسازی، تعداد ماشینهای مجازی: 290، تعداد میزبان:100، انواع ماشین مجازی: 4 نوع با مشخصات پردازشی ، تعداد هسته ، حافظه رم ، پهنای باند و اندازه حافظه جانبی مندرج در جدول و سه نوع میزبان با مشخصات ذکر شده در جدول 4 ایجاد گردید. خروجی شبیهسازی در جدول 5 آورده شده است.
جدول 5- خروجی شبیهسازی با شرایط مقایسهای
نتایج شبیه سازی |
Experiment name: thr_me_0.8 Number of hosts: 100 Number of VMs: 290 Total simulation time: 86400.00 sec Energy consumption: 62.69 kWh Number of VM migrations: 186 SLA: 0.00007% SLA perf degradation due to migration: 0.00% SLA time per active host: 74.95% Overall SLA violation: 28.00% Average SLA violation: 30.91% Number of host shutdowns: 79 Mean time before a host shutdown: 2174.04 sec StDev time before a host shutdown: 9968.25 sec Mean time before a VM migration: 2.05 sec StDev time before a VM migration: 0.00 sec Execution time - VM selection mean: 0.00054 sec Execution time - VM selection stDev: 0.00067 sec Execution time - host selection mean: 0.00080 sec Execution time - host selection stDev: 0.00064 sec Execution time - VM reallocation mean: 0.00005 sec Execution time - VM reallocation stDev: 0.00023 sec Execution time - total mean: 0.00513 sec Execution time - total stDev: 0.00995 sec |
با توجه به نتایج جدول 8، میزان کل انرژی مصرفی روش ارائه شده برابر است با 62.69 کیلو وات ساعت، تعداد ماشینهای مجازی مهاجرت داده شده برابر است با 186 ماشین مجازی، موارد نقض توافقنامه کیفیت ارائه خدمات 0.00007 درصد است که مقدار بسیار پایینی است و حاکی از کارایی الگوریتم پیشنهادی در تضمین کیفیت ارائه خدمات است. با توجه به پایین بودن میزان نیاز به مهاجرت ماشینها، موارد نقض توافقنامه به دلیل مهاجرت صفر شده است. تعداد خاموش شدنهای میزبانها 79 مورد است ، در نهایت میانگین زمان کل اجرای کارها 0.00513 ثانیه و انحراف معیار آن 0.00995 ثانیه است. در ادامه این نتایج با نتایج سایر روشهای پیشین با شرایط شبیهسازی یکسان مورد بررسی قرار خواهد گرفت.
در [33]، که مروری بر کارهای گذشته در این حوزه داشته است، مقایسه الگوریتمهای ان پی آ28، دی وی اف اس29، اس تی 30و MM را در شرایط یکسانی که در جدول (3) آمده است، صورت پذیرفت. در جدول (5-4) نتایج نهایی این آزمایشها در مقایسه با روش پیشنهادی ارایه شده است. با توجه به جدول(3) میزان انرژی مصرفی توسط الگوریتم پیشنهادی برابر است با 62.69 کیلو وات ساعت و تعداد میزبان برابر است با 100 بنابراین میانگین مصرف انرژی برای هر میزبان برابر است با 0.6269کیلو وات ساعت و در مقایسه با روشهای قبلی کمترین میزان مصرف انرژی را دارد و از بهترین نتایج به دست آمده در روشهای ان پی آ، دی وی اف اس، اس تی با دو سناریوی پیادهسازی و ام ام با سه سناریوی پیادهسازی به طور محسوسی بهینه است.
جدول 6- نتایج نهایی مقایسه روش پیشنهادی با روشهای قبلی
میانگین SLA | مهاجرت ماشین مجازی | SLA violation | انرژی (کیلو وات ساعت) | الگوریتم |
- | - | - | 9.151 | ان پی آ |
- | - | - | 4.402 | دی وی اف اس |
81.8% | 35226 | 5.4% | 2.034 | اس تی 50% |
87.9% | 34519 | 7.4% | 1.622 | اس تی 60% |
56.9% | 3360 | 1.1% | 1.476 | ام ام 30%-70% |
65.7% | 3241 | 2.8% | 1.266 | ام ام 40%-80% |
76.1% | 3121 | 6.7% | 1.142 | ام ام 50%-90% |
30.91% | 186 | 28% | 0.626 | روش پیشنهادی |
ستون سوم نشان دهنده درصد نقض شرایط توافقنامه کیفیت ارائه خدمات سراسری است که الگوریتم پیشنهادی ضعیف تر از بقیه است. در ستون مهاجرت ماشین مجازی مشاهده میشود که تعداد مهاجرتها در روش پیشنهادی به طور قابل مقایسهای کاهش یافته است و این حاکی از تخصیص بهینه میباشد که نتایجاش در کاهش مصرف انرژی نیز ظهور پیدا کرده است. ستون آخر این ارزیابی مربوط است به میانگین توافقنامه سطح خدمت که اعداد مربوط به این ستون نشان دهنده درصد موارد رعایت توافقنامه کیفیت ارایه خدمات است، به عبارتی اعداد این ستون درصد تخصیصهای نامناسب را به لحاظ سرعت اجرای دستور العمل ماشین فیزیکی نسبت به سرعت اجرای دستور العمل درخواستی نشان میدهد، هر چقدر این مقدار کم باشد حاکی از بهینگی روش مذکور است. مشاهده میشود که روش پیشنهادی کمترین مقدار (30.91%) را در بین روشهای ارائه شده دارد.
5-نتیجه گیری و کارهای آتی
نتایج به دست آمده از شبیهسازی نشان داد که استفاده از الگوریتم فرااکتشافی بهینهسازی ازدحام ذرات برای تخصیص منابع میتواند به طور قابل توجهی میزان صرفهجویی در مصرف انرژی را بهبود بخشد. اهداف تعریف شده در این پژوهش کاهش مصرف انرژی و کاهش زمان اجرای کل بود که به آنها دست یافته شد. کاهش مدت زمان اجرا به 0.00513 ثانیه و کاهش میانگین انرژی مصرفی به 0.626 کیلووات ساعت در مقایسه با بهترین روش قبلی که 1.142 کیلووات ساعت بود، همچنین کاهش میزان نیاز به مهاجرت و توازن بار از دستاوردهای دیگر این پژوهش بود. طی این تحقیق مشخص شد که از قابلیتهای ویژه الگوریتمهای فرااکتشافی به ویژه الگوریتم بهینهسازی ازدحام ذرات و بهنیهسازی چندهدفه میتوان به نتایج بهتری بدست آورد. تعریف توابع جدید در بهینهسازی چندهدفه، برای دستیابی به حصول سایر شرایط و اهداف مورد نیاز میتواند موثر باشد.
به عنوان كارهاي پژوهشی آينده استفاده از روش پيشنهادي برای زمانبندی وظایف در ماشینهای مجازی، اعمال پارامترهاي سودمند ديگر براي تعیین تابع برازندگی، استفاده از روش ارایه شده برای سایر اهداف سیستمهای ابری، همانند کاهش هزینه مشتری و افزایش سود ارایه دهندگان خدمت، استفاده از روشهای دیگر فرا ابتکاری و روشهای ترکیبی مشابه جهت تخصیص منابع، آزمایش روش پیشنهادی بر روی محیط اتحادیه ابر برای صرفهجویی بیشتر در مصرف انرژی و نتایج بهتر ميتوانند در جهت توسعة روش ارائه شده در اين پژوهش انجام شوند.
مراجع
1. Jafari Navimipour, N. and B. Zareie, A model for assessing the impact of e-learning systems on employees’ satisfaction. Computers in Human Behavior, 2015. 53: p. 475-485.
2. Chiregi, M. and N.J. Navimipour, A new method for trust and reputation evaluation in the cloud environments using the recommendations of opinion leaders' entities and removing the effect of troll entities. Computers in Human Behavior, 2016. 60: p. 280-292.
3. Souri, A. and N. Jafari Navimipour, Behavioral modeling and formal verification of a resource discovery approach in Grid computing. Expert Systems with Applications, 2014. 41(8): p. 3831-3849.
4. Ding, Y., et al., Energy efficient scheduling of virtual machines in cloud with deadline constraint. Future Generation Computer Systems, 2015. 50: p. 62-74.
5. Jafari Navimipour, N., et al., Expert Cloud: A Cloud-based framework to share the knowledge and skills of human resources. Computers in Human Behavior, 2015. 46: p. 57-74.
6. Xiao, P., Z.-G. Hu, and Y.-P. Zhang, An Energy-Aware Heuristic Scheduling for Data-Intensive Workflows in Virtualized Datacenters. Journal of Computer Science and Technology, 2013. 28(6): p. 948-961.
7. Song, J., et al., Study on energy-consumption regularities of cloud computing systems by a novel evaluation model. Computing, 2013. 95(4): p. 269-287.
8. L.D, D.B. and P. Venkata Krishna, Honey bee behavior inspired load balancing of tasks in cloud computing environments. Applied Soft Computing, 2013. 13(5): p. 2292-2303.
9. Alami Milani, B. and N. Jafari Navimipour, A comprehensive review of the data replication techniques in the cloud environments: Major trends and future directions. Journal of Network and Computer Applications, 2016. 64: p. 229-238.
10. Lombardi, F. and R. Di Pietro, Secure virtualization for cloud computing. Journal of Network and Computer Applications, 2011. 34(4): p. 1113-1122.
11. Jafari Navimipour, N., et al., Behavioral modeling and automated verification of a Cloud-based framework to share the knowledge and skills of human resources. Computers in Industry, 2015. 68: p. 65-77.
12. Almorsy, M., J. Grundy, and A.S. Ibrahim, Adaptable, model-driven security engineering for SaaS cloud-based applications. Automated Software Engineering, 2014. 21(2): p. 187-224.
13. Wu, L., S. Kumar Garg, and R. Buyya, SLA-based admission control for a Software-as-a-Service provider in Cloud computing environments. Journal of Computer and System Sciences, 2012. 78(5): p. 1280-1299.
14. Ramamoorthy, S. and S. Rajalakshmi, A Preventive Method for Host Level Security in Cloud Infrastructure, in Proceedings of the 3rd International Symposium on Big Data and Cloud Computing Challenges (ISBCC – 16’), V. Vijayakumar and V. Neelanarayanan, Editors. 2016, Springer International Publishing: Cham. p. 3-12.
15. Dam, S., et al., An Ant Colony Based Load Balancing Strategy in Cloud Computing, in Advanced Computing, Networking and Informatics- Volume 2: Wireless Networks and Security Proceedings of the Second International Conference on Advanced Computing, Networking and Informatics (ICACNI-2014), M. Kumar Kundu, et al., Editors. 2014, Springer International Publishing: Cham. p. 403-413.
16. Anselmi, J., D. Ardagna, and M. Passacantando, Generalized Nash equilibria for SaaS/PaaS Clouds. European Journal of Operational Research, 2014. 236(1): p. 326-339.
17. Yousafzai, A., et al., Cloud resource allocation schemes: review, taxonomy, and opportunities. Knowledge and Information Systems, 2017. 50(2): p. 347-381.
18. Hameed, A., et al., A survey and taxonomy on energy efficient resource allocation techniques for cloud computing systems. Computing, 2016. 98(7): p. 751-774.
19. Devarasetty, P. and S. Reddy, Genetic algorithm for quality of service based resource allocation in cloud computing. Evolutionary Intelligence, 2019.
20. Wei, G., et al., A game-theoretic method of fair resource allocation for cloud computing services. The Journal of Supercomputing, 2010. 54(2): p. 252-269.
21. Shu, W., W. Wang, and Y. Wang, A novel energy-efficient resource allocation algorithm based on immune clonal optimization for green cloud computing. EURASIP Journal on Wireless Communications and Networking, 2014. 2014(1): p. 64.
22. Xiao, Z., W. Song, and Q. Chen, Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Environment. IEEE Transactions on Parallel and Distributed Systems, 2013. 24(6): p. 1107-1117.
23. Li, C., Y.C. Liu, and X. Yan, Optimization-based resource allocation for software as a service application in cloud computing. Journal of Scheduling, 2017. 20(1): p. 103-113.
24. Son, S., G. Jung, and S.C. Jun, An SLA-based cloud computing that facilitates resource allocation in the distributed data centers of a cloud provider. The Journal of Supercomputing, 2013. 64(2): p. 606-637.
25. Jala, J. and K.R.H. Rao. QOS-Based Technique for Dynamic Resource Allocation in Cloud Services. 2019. Singapore: Springer Singapore.
26. Usman, M.J., et al., Energy-efficient Virtual Machine Allocation Technique Using Flower Pollination Algorithm in Cloud Datacenter: A Panacea to Green Computing. Journal of Bionic Engineering, 2019. 16(2): p. 354-366.
27. Lau, H.Y.K. and Y. Zhao, Integrated scheduling of handling equipment at automated container terminals. International Journal of Production Economics, 2008. 112(2): p. 665-682.
28. Holland, J.H., Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control, and artificial intelligence. 1992: MIT press.
29. Coello, C.A.C., Evolutionary multi-objective optimization. Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, 2011. 1(5): p. 444-447.
30. Abraham, A. and L. Jain, Evolutionary multi-objective optimization. Evolutionary Multi-objective Optimization, 2005: p. 1-6.
31. Li, H., K. Deb, and Q. Zhang, Variable-length Pareto Optimization via Decomposition-based Evolutionary Multiobjective Algorithm. IEEE Transactions on Evolutionary Computation, 2019.
32. Sheikholeslami, F. and N.J. Navimipour, Service allocation in the cloud environments using multi-objective particle swarm optimization algorithm based on crowding distance. Swarm and Evolutionary Computation, 2017. 35: p. 53-64.
33. Clerc, M., Standard particle swarm optimisation. 2012.
34. Calheiros, R.N., et al., CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Software: Practice and Experience, 2011. 41(1): p. 23-50.
35. Beloglazov, A., J. Abawajy, and R. Buyya, Energy-aware resource allocation heuristics for efficient management of data centers for Cloud computing. Future Generation Computer Systems, 2012. 28(5): p. 755-768.
36. Mandal, R., Mondal, M.K., Banerjee, S. et al. An approach toward design and development of an energy-aware VM selection policy with improved SLA violation in the domain of green cloud computing. J Supercomput (2020). https://doi.org/10.1007/s11227-020-03165-6
[1] Cloud computing
[2] Available
[3] Scalability
[4] Flexible
[5] Performance
[6] Capacity
[7] Distributed computing
[8] Virtualization
[9] Storage
[10] Processing
[11] Memory
[12] Network bandwidth
[13] Virtual Machine(VM)
[14] Software as a Service(SaaS)
[15] Infrastructure as a Service(IaaS)
[16] Platform as a Service(PaaS)
[17] Virtualized resources
[18] Clonal immune
[19] makespan
[20] Particle Swarm Optimization (PSO)
[21] Evolutionary Multiobjective Optimization
[22] Reyes Sierra and Coello-Coello
[23] Multi-Objective Particle Swarm Optimization)MOPSO(
[24] gbest
[25] pbest
[26] Service Level Agreement Violation
[27] Minimum Utilization
[28] NPA
[29] DVFS
[30] ST
Using a multi-objective optimization algorithm to allocate tasks in cloud-based systems to reduce energy consumption
Due to the increasing demand for business in the web environment, the variety and number of services have increased. As a result, large-scale computing data centers have been created that increase costs and electrical power. Inadequate and inefficient cooling systems not only overheat the resources and reduce the devices' service life but also produce carbon, which plays an important role in weather conditions.
Therefore, it is necessary to reduce the total energy consumption of these systems with appropriate methods. In this research, an effective method of energy resource management in virtualized cloud data centers is presented. In addition to reducing energy consumption and operating costs, it has also increased the quality of services. This study presents a resource allocation strategy in cloud systems to reduce energy and implementation costs and examine its application in the cloud computing environment. The simulation results showed that the proposed method could reduce the average energy consumption up to 0.626 kWh compared to NPA, DVFS, ST, and MM methods. Also, the need for migration and SLA violations are decreased.
Keywords: Cloud Computing, Energy Consumption, Job Allocation, Multi-Objective Optimization Algorithm.