云计算环境下基于粒子群算法的多目标优化
2020-06-12
来源:爱go旅游网
2013年7月 计算机工程与设计 July 2013 第34卷第7期 COMPUTER ENGINEERING AND DESIGN Vo1.34 No.7 云计算环境下基于粒子群算法的多目标优化 郭力争 ,耿永军 ,姜长源。,王军豪 ,张娜。,赵曙光 (1.河南城建学院计算机科学与工程系,河南平顶山467036; 2.东华大学信息学院,上海201620) 摘要:为了优化资源的部署调度,需要考虑处理费用、传输费用,并提高云计算的性能。对云计算环境下特点进行了研 究,把云计算环境下的数据部署和任务调度问题映射为处理交互图,对处理交互图进行分析、提出了多目标优化模型,并 通过粒子群算法对多目标模型进行优化。仿真结果表明,该多目标优化模型和算法不但能优化处理时间、传输时间,也能 优化处理费用和传输费用。 关键词:云计算;粒子群算法;数据部署;任务调度;多目标优化 中图法分类号:TP393 文献标识号:A 文章编号:1000—7024(2013)07—2358—05 Multi—obj ective optimization based on particle swarm optimization algorithm in cloud computing GUO Li—zheng ,GENG Yong-jun ,JIANG Chang-yuan。, WANG J un—hao ,ZHANG Na。,ZHAO Shu-guang (1.Department of Computer Science and Engineering,Henan University of Urban Constructioin,Pingdingshan 467036,China:2.College of Information Science and Technology,Donghua University,Shanghai 201620,China) Abstract:In cloud computing,resource scheduling is a hot issue in rescent research,in order tO optimize the resource schedulign,need to consider the processign,the transfering cost and tO improve the performance.The characteristics of cloud computing is studide,then, the data placement and task scheduling rae mapped tO pr ̄esmrs interaction grape A multi-objective optimizing model is formulatde t ̄ough analyzign the pmcesmrs interaction graph.Based on the proposed model,a particle swarm optimzation algorith is used to opti— miez the data deployment nad task scheduling.The simulation results show that the multi-objective model is not only optiimze the time of processing and transferign,but alos optimiez the the cost of processign and transfering. Key words:cloud computing;particle swarm optimization;data deployment;task scheduling;multi-objective optimization 0引 言 问题;文献[3]针对云计算服务集群资源调度和负载平衡 优化问题,将动态多群体协作和变异粒子逆向飞行思想引 云计算通过大规模的数据中心,向用户提供强大的计 入到粒子群优化算法中;文献r4-]实现应用层服务质量到 算能力、海量数据存储能力,并且比一般的数据中心更加 资源设备层服务质量的映射,利用效用函数的管理策略实 经济和节能。文献[1]说明云计算有很多优点,但也有许 现资源的优化调度;文献[5]针对传统遗传算法易陷入早 多急需解决的问题;文献Eel引入学习机制等方法对非支 熟收敛等问题,提出一种改进的元胞自动机遗传算法并应 配排序遗传算法进行改进,将其应用于云计算的节能调度 用于云环境下的资源调度。以上文献主要优化的任务的执 收稿日期:2012—10—22;修订日期:2012—12—28 基金项目:国家自然科学基金项目(70971020);河南省科技计划重点科技攻关基金项目(122102210412);河南省教育厅科学技术研究重 点基金项目(12A520006) 作者简介:郭力争(1975一),男,河南开封人,博士研究生,讲师,研究方向为云计算、数据部署、任务调度、绿色计算;耿永军(1971一), 男,河南平顶山人,博士,副教授,研究方向为网络安全;姜长元(1975一),男,安徽安庆人,博士研究生,讲师,研究方向为智能计 算;张娜(1980一),女,河南周口人,博士研究生,讲师,研究方向为智能计算、网络;王军豪(1980一),男,河南平顶山人,博士研究 生,讲师,研究方向为智能计算、网络;赵曙光(1965一),男,陕西西安人,博士,教授,研究方向为进化计算等。 E-mail:kftjh@yahoo.corn.cn 第34卷第7期 郭力争,耿永军,姜长源,等:云计算环境下基于粒子群算法的多目标优化 ・2359・ 行时间,没有考虑任务的执行费用和数据的传输时间、传 输费用;文献E6]提出了在数据密集型应用环境下的一个 非线性规划模型,其目的是最小化数据检索,没有考虑费 用的优化问题;文献E7]探讨了云代理和多个云虚拟机管 理的体系结构,其体系结构里面描述了数据在多个云中部 之间需要进行通信,带宽为e,g一10M。T15表示任务T1产 生一个数据要任务 处理,数据大小为350M。 署及优化的问题,在多个云之间部署数据改善了性能、降 低了费用,但仅仅优化了处理费用;文献[8]提出了数据 密集型的应用环境下减少数据移动次数的K-means聚类算 法,该算法侧重如何减少数据的移动次数,而没有考虑数 据的移动时间和传输时间;文献E9—11]对网格和云计算 环境下的数据部署策略进行了研究,但仅仅优化处理和传 输的时间。考虑到云计算中数据中心之间带宽的有限性, 使用和传输数据的费用在不同的数据中心间会有差异,因 此我们提出多目标优化部署策略。我们不但考虑传输和处 理的时间,而且考虑传输和处理的费用。数据的部署问题 已经被认为是NP-hard(non-deterministic polynomia1)问 题,处理这些问题一般运用启发式算法,例如遗传算法 (genetic algorithm,GA)文献[12—13]。文献[14]证实在 分布式环境下基于生物群体智能的粒子群优化算法(particle swDa-rn optimization,PSO)的质量和收敛速度均优于GA,所 以本文采用PSO算法对数据部署问题进行优化。 1多目标优化建模 1.1云计算环境下数据部署问题描述 在云计算中,一方面数据中心有很多的物理机,这些 物理机多达数万到数十万;另一方几个虚拟机部署到同一 个物理机上,不同的数据中心之间的带宽往往有限,不同 的数据中心之间要处理和传输大量的数据。获取高性能, 低费用的数据部署就成为一个挑战性的问题。可以把这一 问题描述为把数据部署到各个数据中心,使得处理和传输 的时间、费用最小。云计算环境下数据部署问题可以作为 一个映射来处理,把任务的数据和对数据的处理映射为处 理交互图(processors interaction graph,PIG)。在处理交 互图中,点的集合 一{ .v2,…踟}为M个数据中心, 边的集合E代表数据中心之间的交互。每一个点 表示一 个数据中心,数据中心有一个权重w,代表数据中心的处 理能力,每一个点分配一个或多个数据和任务。如果两个 数据中心之间有通信,数据中心之间有一个边e,每个边有 个权重 ,表示数据中心之间的带宽。为了更好的理解处 理交互图,通过一个例子来说明,如图1所示,在图1中 有5个任务被分配到3个数据中心,数据中心DC1的权重 W1—500,表示数据中心1每秒能处理500万条指令。任 务n,有一个数据D1,数据量为500万条指令,如果任 务T1分配到数据中心DCI,只需1秒钟就可以处理完毕。 任务T3,有数据D3,数据量为850万条指令。任务n, T3分配到数据中心DC1。DC1和Dc3之间有边表示他们 图1处理交互 整个 的处理时间 为:—50 0+ 850 + 1000 十 。750 ≈5.67秒,传输时间为 …一 ’ 1O 一35秒。如果数据中心T1,T2,T3的处理费用分别为每秒 0.320¥,0.360¥,0.368¥,不同的数据中心之间的传递 数据的收费标准为:1¥per GB,则处理费用为: *O.32+1—00+35—而0+广500+一350*0.368+ 8o__9o*07.5036≈1.73¥,传输费用为: *1=o.35¥。 1.2建模 云计算中数据中心的处理费用根据处理能力、提供商、 地点等不同而收费标准也不同。传输费用由传输的数据量 的大小决定,处理费用一般是按处理时间来收费的。 为了更清晰的建立数据分配和任务调度的数学模型, 对一些概念做一说明:在处理交互图中任务 :i={1, 2,…, )为 个任务,每个任务的数据量映射为百万条 指令,用来衡量一个任务的复杂程度。DP 表示任务t 需 要处理的数据量,DG:尼一{1,2,…,m)为M的数据中 心,每个数据中心的性能以每秒能处理多少百万条指令来衡 量。晚:kl={1,2,…, )为两个数据中心之间的带宽, m为总的数据中心数。D 是任务ti和 之间交换的数据 量,这个数据是任务ti产生的,任务£,需要的,并需要从任 务 分配的数据中心传输到任务 分配的数据中心。 处理时间定义为:任务的数据量除以数据中心的处理 能力,如式(1): 定义为所有的数据分配到相应的数据 中心的整个的处理时间。∑∑z 其中 表示 +4 ̄g-, m表示m个数据中心,如果任务 分配到数据中心是, 32 =1,否则z =o,∑∑32 表示把 个任务分配到m 个数据中心。 表示任务ti分配到数据中心DC 的处 理时间 一 ×兹 ㈩ ・2360・ 计算机工程与设计 2013正 传输时间定义为:需要传输的数据量除以数据中心之 间的带宽,如式(2): 表示不同的任务分配到相应的数 取值范围为l或0,为1时表示某个任务分配到某个数中 心,否则为0 z 一1,V i—I,2,…, =据中心后,任务之间由于需要其他任务的数据,这些数据 (7) 需要从其他的数据中心传过来的时间。∑∑∑∑ × i l j=1女 1£≠^ 1 z 表示任务t 分配到数据中心DC ,z 一1,任务tj分配 ∑∑∑∑z ×Xj 一1, 一1 1 一1 Z≠ Vi, 一1,2,…,,2,V忌,£一1,2,…,m (8) 到数据中心DC ,Xj 一1,z≠ 表示任务t 和任务t 分配到 不同的数据中心,在这种情况下,如果任务 需要任务t rYr 产生的数据,则需要的传递时间为 ;如果一个任务 Dk/ t , 分配到同一个数据中心,那么他们之间就不需要进行 数据的传输。式(3)表示总的处理时间T等于处理时间 T 和传输时间T 之和 一∑∑∑∑z × × i=1 j一1 一1 Z≠ 一 (2) T=L+ (3) 亚马孙提供了3种类型的收费方式[1 ,本文中采用按 需的收费方式(on-demand instances)如表1所示,按小时 购买计算能力。数据的传输费用为不同的数据中心之间传 输数据¥0。01 per GB,操作系统采用Linux/UNIX。根据 处理数据的费用按时间计算和传输数据费用按传输量计算 的收费方式,我们来建立计算费用的公式。式(4)表示处 理费用C ,处理费用为处理时间 乘以单位数据的处理 费用 。定义 为从数据中心DC 传出的数据的收费标 准, 为数据传人到DC 的收费标准。式(5)表示的是 传输费用G为传人的收费标准P 乘以传人的数据量DT 加传出的收费标准P 乘以传出的数据量DT 之和。式 (6)为总的费用C等于传输费用G加处理费用C 之和 C = ×Pk (4) G一∑∑∑∑ × ×(DT × +DT × ) (5) C— +C, (6) 表1按需使用的收费方式 式(7)~式(9)为约束性条件,约束条件(7)表示 一个任务必定分配到一个数据中心,约束条件(8)表示如 果两个任务分配到不同的数据中心,并且他们之间有数据 通信的需求,∑∑∑∑z ×xjt一1 i=1 k=1 z≠ l=1,否则 ∑∑∑∑z × 一0,约束条件(9)表示X ,YJ 的 z ,∞£∈{0,1},Vi, 一1,2,…, ,Vk,Z一1,2,…,m (9) 2粒子群算法 粒子群优化算法于1995年被Kennedy和EberhartE“ 提 出的智能进化算法。这种算法的思想是模拟动物群体的觅 食活动,通过群体之间协调配合,进而取得最优的结果。 该算法的优点是实现容易、收敛速度快、求解精度高。 PSO随机初始化为一群随机粒子(候选解),然后通过适应 值函数计算出每个粒子的值,作为自己的最优值pbest,从 所有粒子的最优值中再算出最优的极值作为全局极值 gbest。计算出个体极值pbest和全局极值gbest后,通过式 (1O)迭代更新每个粒子速度,通过式(11)迭代更新每个 粒子的位置,通过一次一次的迭代更新,使每个粒子都向 最优的位置靠近,从而找到最优解。在每一次迭代后都要 更新个体极值和全局极值,在更新pbest,gbest时,通过适 应性函数计算出最新适应值和个体极值、全局极值进行比 较,如果优于极值更新,否则不变 一c田 +Clrandl×(pbestf— )+ C2rand2×(gbest一 ) (10) 一 + (11) 2.1粒子群的初始化 粒子群的初始化位置和速度都是随机产生的矢量,我 们根据文献[17]的方法来初始化位置和速度。初始化根 据式(12)和式(13)来进行,其中z一= =4.o, =‰—一o.4来设定。由于位置为连续的变量,任务 分配为离散的组合,因此我们应当把连续的变量转变为离 散的变量来处理。根据文献[18],运用small position val— ue(SPV)规则来把连续的变量转变为离散的变量,具体实 现通过式(14)来实现 —Xr ̄if +( 一 丽 )×rand (12) =7Jali +(‰ 一'Urm )×rand (13) = modm+1 (14) 2.2算法的实现 在粒子群算法中,每个粒子都是一个候选解,每个粒 子有N维,这N维依赖于特定的研究问题。在我们的研究 问题中N就是要分配的任务,把N个任务分配到M个数 据中心,使得处理时间、传输时间、处理费用、传输费用 最小。每一个粒子迭代更新直到获得理想的结果或者达到 第34卷第7期 郭力争,耿永军,姜长源,等:云计算环境下基于粒子群算法的多目标优化 ・2361・ 迭代设定值,详细的算法如图2所示。 PSO算法 (1)根据式(12)和式(13)初始化位置和速度矢量,矢量的 维数为任务的个数N。 (2)首先根据SPV规则把连续的矢量(z i,z ,…,z ]) 转换为离散的矢量(S;一[s ,5 ,…,s ]),然后根据式(14) 把离散的矢量转换为处理矢量(P 一[pi,P;,…, ])。 (3)根据式(6)计算每个粒子的适应性函数值,把每个粒子的 适应性函数值作为pbest,所有粒子中适应值最小的作为gbest。 (4)所有的粒子根据式(12)和式(13)分别更新粒子的位置 和速度矢量。 (5)根据SPV规则把连续的矢量(-z =Exi, ,…,z:])转换 为离散的矢量(s;一[sl,s ,…,s ]),然后根据式(14)把离 散的矢量转换为处理矢量(P 一Epi,P;,…, ])。 (6)根据式(6)计算每个粒子的适应性函数值,如果粒子的适 应性函数值小于pbest,则用当前的适应值更新pbest,否则 pbest不变;从所有的粒子的适应值中选取最小的,如果其值小 于gbest,则用其最小的适应值更新gbest,否则gbest不变。 (7)如果迭代达到了设定的值算法结束,否则到第(4)步继续 执行算法。 图2 PSO算法 3仿真环境的建立与仿真结果分析 3.1仿真环境的建立 我们建立了仿真环境。测试硬件为:AMD Phenom Etm]ⅡX4 B95 3.0 GHz,2G RAM软件为:Microsoft Windows XP,仿真结果基于MATLAB R2009b实现的。 为了更加合理的测试我们的算法,我们所运用的测试数据 是随机产生的。任务的量限制在1000到100000百万条指 令,每个数据中心的计算性能分别设定为{500,1000, 2000,4000},数据中心之间的带宽设定为1O0~1000MB, 任务间传输数据的大小设为1000 10000MB,任务间数据 传输的密度为d通过式(15)来表示,其中n为总的任务 数,l E l表示所有的任务之问需要通信的次数,在本测试 中通信密度设定为:0.5。PSO的参数设定为:根据参考文 献D7]把加速系数c2,f1设定为1.49445,惯性权重 设定为0.729,这样设置有利于算法的收敛,种群取2O~ 4O就可以达到很好的求解效果,设定种群为3O,随机数 rand1,rand2均有分布于Eo-1]之间 一 (15) 3.2仿真结果与分析 由于PS0算法是随机的,同样的问题可能产生不同的 结果。为了更好的评测算法,对每个测试实例都运行1O次 求平均值。我们测试了一系列的数据,这些数据依据亚马 孙按需使用收费方式对3个数据中心进行模拟,仿真结果 见表2,从表2中可以看到,我们的算法不但优化了时间, 而且优化了费用。由于把时间和费用的和设定为适应性函 数,图5为任务分别为35和1O时,分配到3个数据中心 时的费用和时间的收敛图,从图5可以看到算法的收敛速 度比较快,且能稳定的收敛。而图3费用的收敛为任务为 1O,数据中心为3时的费用收敛图,从图3中可以看到, 虽然费用也逐渐收敛,但是有些波动和不稳定,其原因为 我们把时间和费用的和设定为使用性函数,因为PSO优化 算法中的每个粒子都趋向于最优的适应值函数,来逐步更 新每一代的速度和位置的,所以费用和时间(图4时间的 收敛)有些波动。 表2按需使用方式的仿真结果 仵备数据童 垡 堕亘 堕 垡 萱重量旦±堕 垡 堕 … 中心 前 后 前 后 前 后 lO 3 922 871.8 766.7 423.5 1588.6 1240.2 15 3 1758.9 1688.6 628.8 527.1 2330.7 216O.5 2O 3 3571.1 3457.1 2234.5 138o.4 5484.6 4565.2 25 3 6155.1 6028.7 2630.5 1719.3 8411.5 7394.3 30 3 8524.5 8419.3 3214.5 2568.5 112o6 110692 35 3 10748 10629 4368.7 3630.7 14807 13843 任务=1o与数据中心=3 算法迭代次数 图3费用的收敛过程 任务=1o与数据中心=3 厘 营 图4时间的收敛过程 4结束语 本文探讨了云计算环境下数据部署和任务调度问题, 把云计算环境下数据部署和任务调度问题映射为处理交换 ・ 2362 ・ 任务=IO与数据中心=3 计算机工程与设计 xl&任务=35与数据中心=3 2013拄 [2012—09一o31.http://ieeexplore.ieee.org/xpl/mostRecentIs— sue.jsp?punumber=5473893. [7]Tordssona J,Monterob R S,Moreno-Vozmedianob R,et a1. Cloud brokering mechanisms for optimize data placement of vir— tualmachinesacross multiple providers[J].Future Generation omputer SystCems,2012,28(2):358—367. [8] Yuan D,Yang Y,Liu X A data placement strategy in scien 算法迭代次数 算法迭代次数 图5费用时间和收敛过程 图。通过处理交换图建立了多目标优化的数学模型,运用 tific cloud workflows[J].Future Generation Computer Sys terns,2010,26(8):1200—1214. [9]zhang L,Chen Y H,Sun R Y,et aL A task scehdulig anlgo— PSO算法对多目标优化模型进行了优化,并通过仿真对算 法进行了验证。仿真结果显示算法不但优化了处理时间和 传输时间,而且优化了处理费用和传输费用。本文提出的 多目标优化模型能有效的减少用户使用云计算的费用,提 高任务的执行性能;但是对于云计算的服务商来说提高数 据中心的性能,满足用户的服务质量要求,降低数据中心 的能耗,达到绿色计算,对服务商来说是至关重要的,这 是我们下一步要研究的内容。 参考文献: [1]ArmbrustM Abovethe clouds:Aberkeleyviewof cloud computing [R].Technical Report.http:// eecs.berkeley.edu/Pubs/ TechRpts/2009/EECS-2009-28.pdf,2011. [2]xu Xiaoyong,PAN Yu,LING Chem Power-aware resource scheduling under cloud computing environment[J].Journal of Computer Applications,2012,32(7):1913—1515(in Chi— nese).[徐骁勇,潘郁,凌晨.云计算环境下资源的节能调度 [J].计算机应用,2012,32(7):1913—1915.] [33 LIU Waniun,ZHANG Menghua,GUO Wenyue.Cloud COITI— puting resource schedule strategy based on MPSO algorithm [J].Computer Engineering,2011,37(11):43—44(in Chi— nese).[刘万军,张孟华,郭文越.基于MPSO算法的云计算 资源调度策略[J].计算机工程,2011,37(11):43—44.] [4]QIAN Qiongfen,LI Chunlin,ZHANG Xiaoqing.Research on cloud economic resource management model with QoS constrains [J].Computer Science,2011,29(s1):195—197(in Chi— nese).[钱琼芬,李春林,张小庆.QoS约束的云经济资源管 理模型研究LJ].计算机科学,2011,29(s1):195—197.] [5]ZHANG Shuiping,wu Haiyam Cloud resource schedule based on cellular automata genetic algorithm[J].Computer Engineering,2012,38(11):11—13(in Chinese).[张水平, 邬海艳.基于元胞自动机遗传算法的云资源调度[J].计算机 工程,2012,38(11):l1—13.j [6]Pandey S,Barker A,Gupta K K,et a1.Minimizing execution costs when using globally distribute dcloud services[DB/OL]. rithm based on PSO fro grid computing[J].Intenrational Jouranal of Computational Intelligence Research,2008,4(1):37—43. [1O]Yin P Y,YUS S,Wang P P,et a1.A hybrid particle swarm optimization algorithm for optimal task assignment in distribu— ted systems[J].Computer Standards 8L Interfaces,2006, 28(4):441-450. [11]Guo L Z,Zhao S G,Shen S G,et a1.Task scheduling opti— mization in cloud computing based on heuristic algorithm LJ]. Journal of Networks,2012,7(3):547—553. [12]Chang C K,Jiang H,Di Y,et a1.Time-line based model for software project scheduling with genetic algorithms[J].In— formation and Software Technology,2008,50(11): 1142—1154. r13]Gharooni-fard G,Moein-darbari F,Deldafi H,et a1.Procedia computer sdence,scheduling of csientific work ̄ows using a chaos- genetic ̄goifthrn[DB/OL].[2012~05—10].http:|f N .scie- ncedirect.com/sdence/article/pii/S1877O50910O01614. [14]Salman八Particle swamr optimization for task assignment problem[J].Microprocessors and Microsystems,2002,26 (8):363—371. [15]Amazon EC2 Pricing[EB/OL].[2012—09—03].http:// aws.amazon.corn/ec2/pricing/. [16]Kennedy J,Eberhart RC.Particle swarm optimization[DB/ OL].[2012—05—10].http://ieeexplore.ieee.org/xpl/log— in.jsp?tp一 ̄arnumber:488968 ̄url—http ̄/00 3AZ 2F 2Fieeexplore.ieee.org 2Fxpls ̄2Fabs—al1.jsp%3Farnumber %3D488968. [17]Shi Y,Eberhart R C Empirical study of particle swarln optimiza— tion[DB/OL].[2012—05—10].http://ieeexplor ̄ieee ̄org/ xpl/logirLjsp?tp= ̄arnumber=785511 ̄ur1=http ̄3AZ2F 2Fieeexplom ieee.org 2Fxpls%2Fabsal1.jsp%0 3Famumber %313785511. [18]Tasgetiren M F,Liang Y C,Sevkli M,et a1.Particle swarm optimization and differential evolution for single machine total weighted tardiness problem口].International Journal of Pro— duction Research,2006。44(22):4737—4754.