- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于改进BPSO的Web服务组合选择算.doc
基金项目:湖南省教育厅科学研究项目基金资助项目(09C1257)
作者简介:黄海芳(1981-),女,讲师、硕士研究生,主研方向:Web服务,进化计算;孙建华,副教授、博士
收稿日期:2011-07-18 E-mail:hhfyu@
1 概述
随着Web服务的快速发展和应用越来越多的企业把应用程序作为Web服务共享在Internet上,然而单个Web服务只能提供一些比较单一的功能,无法满足复杂应用的需求,需要对单一服务所提供的各种功能进行组合以形成新的、功能更强大的服务满足用户的复杂需求。同时随着Web服务数量的增加,出现了许多服务提供者提供的服务具有相同或相似操作(功能),因此基于功能的Web服务选择已经不能满足用户的需求,需要用户通过一些非功能性的约束属性来选择。
近年来,人们开始用粒子群算法去求解基于QoS(Quality of Services)属性约束的Web服务组合选择问题。文献[1]提出一种基于粒子群算法求解Web服务组合中基于QoS的服务选择。文献[2]提出一种多目标粒子群优化算法来求解基于QoS的Web服务组合问题。粒子群算法具有计算简单、鲁棒性好等优点,具有较强的通用性,但存在早熟收敛,容易在后期陷入局部极值等缺点。本文针对粒子群算法的缺点,提出一种自适应变化惯性权重、变异操作改进的离散二进制粒子群(BPSO)算法来求解基于QoS的Web服务组合选择。
2 问题描述
Web组合服务的功能可以分成多个子功能(任务),每个子功能会有多个候选服务,因此会存在很多完成组合服务功能的组合方案,这些组合方案在任务数量、组合顺序上是不同的。本文将一个任务组合称为一条从起始任务到终止任务的路径。在服务组合过程中,每个任务会存在多个服务组件与其对应,这些服务组件具有对应任务要求的功能但具有不同的QoS属性,因此每条路径又存在多个具有不同QoS属性的组合方案。根据各子功能(任务)间的执行逻辑关系,大部分组合服务都可以串联、并联、选择和循环种基本模型组合而成,整个Web组合服务的QoS属性可通过这种基本模型的QoS计算公式来获取[3]。本文执行时间T(Time)、可靠性R(Reliability)信誉等级Rep(Reputation)和执行费用C(Cost)4种QoS属性对Web服务进行QoS建模。组合服务中单个Web服务(第个任务的第个侯选服务)的服务质量模型为。T和C属性是减量型的,即其值越低,质量越高R和Rep是增量型的,即其值越大,质量越高。
Web服务组合的选择问题全局优化问题可描述如下:目标函数 (1)
(2)约束条件 (=1,2,…,) (2)
其中=0或1如果服务被选中,则=1否则=0,为第个任务的第个侯选服务的效用函数为第个任务的第个侯选服务所需的资源为用户设置的该资源的上限。
3 粒子群算法
提出粒子群优化(Particle Swarm Optimizer, PSO)算法是在模拟鸟群觅食行为的基础上发展的一类基于群体智能的随机优化算法。假设在一个维的搜索空间中,有个粒子组成一个种群,其中第个粒子位置=(,,,),速度表示为=(,,,)。迄今为止第个粒子本身搜索到的最优位置记为=(,,,),迄今为止整个种群搜索到的最优位置记为=(,,,),第个粒子(=1,2,…,)个维子空间的速度和位置更新: (3)
(4)
其中,是粒子在第次迭代中第维的速度,通常要受到最大速度和最小速度的限制,其取值被限制在允许范围内、是加速系数、为在[01]范围内的随机数表示粒子飞行的速度惯性。为了解决实际工程中广泛存在的离散组合优化问题,1997年提出(Binary Particle Swarm Optimization, BPSO)算法。与连续PSO相比,在二进制编码中,该模型限制和只能取0或1而对速度不作这种限制。二进制粒子群算法中的速度向量不再是位置变化,而是作为粒子位置取1或0的概率,引入了模糊函数Sigmoid,迭代式(4)变为: (5)
其中是0~1之间的随机数。
PSO算法具有收敛快简单灵活的特点,但是粒子总是向着自身和群体最好的位置飞行,信息单向流动,容易陷入局部最优和早熟。
4 基于改进的BPSO的Web服务组合选择算法
4.1编码规则
针对问题模型,假设Web服务组合中有个任务,每个任务有个侯选服务采用矩阵(=1,2,…,=1,2,…,),其中,表示第个服务类中第个服务的状态用01表示,0表示服务未被选中1表示服务被选中因此粒子的位置编码为的0-1矩阵速度编码为的实数矩阵。4.2 初始化粒
文档评论(0)