基于分解策略的网格资源分配方法

文档序号:7647011阅读:128来源:国知局
专利名称:基于分解策略的网格资源分配方法
技术领域
本发明属于一种网格资源分配方法,特别是一种基于分解策略的网格资源分配方法。

背景技术
在信息技术的发展过程中,随着人们对复杂计算、资源共享等方面的要求越来越高,技术的发展经历了如下几个大的阶段首先是大型机,在大的公司和大学实验室里,工程师和教授利用这些庞大的机器进行着各方面的科学研究。随后才出现了桌面机,微型计算机,从而使得使用计算机的人群大大提高。然后出现了客户机一服务器模型以及互联网技术和协议,从而将所有这些机器都挂钩在一起,允许它们相互通信。紧接着出现了因特网,它使我们能够与地球上的任何连网机器进行通信并共享文件和数据。因特网的广泛使用正在改变着人们的生活方式越来越多的网上交易代替了人们面对面的交流;视频多媒体也在向人们传统的交流、娱乐方式发起冲击。
网格计算是近年来得到快速发展的广域网络计算技术,研究人员试图将很大范围上地理分布的异构计算机系统集合在一起形成一个大规模的计算平台,我们称之为网格(Grid)。它是由最初的元计算发展而来,我们可以这样认为网格就是在缺少中央控制、没有强的信任关系的情况下能够协同使用地理分布的各种资源。网格计算具有很大的潜力来更改我们的生产、生活方式。网格计算是将地理分布的计算资源、存储资源、科学仪器设备等各种资源连接起来,实现全球范围内的跨组织的资源共享和协作工作,以解决一系列挑战性的科学计算问题,是因特网技术的下一步发展方向。也可以说网格是用户可以访问并且适应用户需求的虚拟计算机。这个虚拟计算机将由各种计算资源组成。但是这些单个的资源对于用户将是不可见的,就像用电户使用电力却不知道他们的电是怎样产生的一样。
网格被认为是高性能计算的未来,虽然计算机学科在分布式计算领域已经有了大量的研究成果,然而由于网格中的各种资源的分布性和异 构性,要实现一个真正实用高效的网格仍然需要做很多的工作。特别是网格环境中的资源调度和分配问题,仍然需要开展深入的研究。使用网格资源代理来发现资源、调度资源以及监控在资源上的工作情况是目前研究工作的重点。网格并不是早期的分布式系统的升级,网格的异构性、动态性决定了网格中的资源管理要比般的分布式系统中所采用的方法要复杂得多。
Ian Foster,Carl Kesselman和Steven Tuecke指出,网格计算是在动态变化的、拥有多个部门或团体的复杂虚拟组织中,进行安全灵活的协同资源共享与问题求解,目前的众多网格系统,例如Globus,Legion在底层通信、异构资源整合、在线控制等方面已经进行了大量的研究,并开发了各种相应的平台和组件。但是这些系统对于资源管理这个关键问题的投入略显不足。网格环境中的资源管理和调度是个复杂的问题。在网格中,大量地理上分布的资源为不同的组织拥有,这些组织具有不同的使用规则、不同的计费模型、不一样的负荷能力和不同的使用模型,这些都是问题所在;此外生产者(资源拥有者)和消费者(资源便用者)各自具有不同的目标、目的、策略和需求,这也会对网格中的资源共享产生影响。由于网格的这些既有特点,一些传统的资源管理和调度方式在网格中不适用。
计算网格资源的供需状况始终处于不断的变化之中,随时有计算资源加入或退出,随时有计算资源能力的变化,通过经济学途径,利用价格浮动反映计算资源的供需状况,计算网格中各个参与者可通过价格自我调节,从而使整个计算网格协作运行。此外,价格还解决了资源的异构问题资源的不同类型和不同能力都可通过价格反映出来。网格资源的提供者和使用者往往分属不同的组织,借助经济的力量可以自动均衡对资源的需求。每个参与者可以根据自身偏好自主决策,实现分散的以用户为中心的网格资源分配模式。市场中每个参与者追求个体利益最大化的行为会使得整个网格资源匹配趋于最优,这是传统的资源分配方式所追求但却难以实现的。


发明内容
本发明的目的是采用双层市场模型解决网格系统资源的最优调度,即网格用户agent与网格服务agent相互协作的服务市场,以及网格服务agent与网格资源agent所组成的资源市场,为了降低计算复杂性,该方法进一步将分配优化问题分解为两个子问题,分别在资源市场和服务市场中解决,在双层市场中两个子问题所获得的优化值即为主问题的优化值,而提供一种基于分解策略的网格资源分配方法。
为了实现上述目的,本发明所采用的具体方法是 第一步骤网格用户提交服务请求给网格用户代理; 第二步骤网格用户代理接收网格用户的服务价格,计算新的服务需求; 第三步骤网格用户代理得到新的服务价格; 第四步骤网格用户代理把新的服务价格传递给网格服务代理; 第五步骤网格服务代理计算新的服务价格; 第六步骤网格服务代理计算新的资源需求; 第七步骤重复2~6的步骤,直到网格服务代理与网格用户代理根据各自的价格要求协商一致; 第八步骤网格服务代理根据新的服务价格,把新的资源需求传递到网格资源代理; 第九步骤网格资源代理得到新的资源需求,计算新的资源价格; 第十步骤网格资源代理把新的资源价格传递到所有的网格服务代理; 第十一步骤重复8~10的步骤,直到网格服务代理与网格资源代理根据各自的价格要求协商一致。
本发明运用效用函数,提出一种分布式分解方法解决计算网格资源分配优化。提出多种agent代表用户,服务提供者,资源提供者相互协作解决网格资源分配优化问题。采用双层市场模型解决网格系统资源的最优调度,即网格用户agent与网格服务agent相互协作的服务市场,以及网格服务agent与网格资源agent所组成的资源市场。为了降低计算复杂性,该方法进一步将分配优化问题分解为两个子问题,分别在资源市场和服务市场中解决。在双层市场中两个子问题所获得的优化值即为主问题的优化值。



图1为本发明的流程图。

具体实施例方式 下面结合附图对本发明作进一步的详细描述。
本发明提出基于分布式效用的双层市场机制的网格资源调度优化策略。所谓双层市场即为网格用户agent与网格服务agent相互协作的服务市场,以及网格服务agent与网格资源agent所组成的资源市场。在服务市场中,网格服务Agent提供服务给用户使用,并收取一定的费用,计算网格的用户需要支付使用服务的费用。网格用户Agent的目标为计算出最优的支付费用,网格用户Agent希望能在一定的时限下完成任务,并能使其效用值最大。网格服务Agent的优化目标为计算出最优的服务分配给用户agent。在资源市场中网格资源Agent提供资源给网格服务agent并收取一定的费用,网格服务Agent需要支付费用给资源agent购买组成服务所需的各种资源。网格服务Agent在一定的预算下向资源agent购买资源来合成服务,并提供给所需的网格用户。网格资源Agent的优化目标为计算出最优的服务分配给用户agent。网格资源分配比例由资源agent的分配策略和网格服务Agent协商过程共同决定。
基本定义 cl网格资源Agent1的计算能力 xlj资源Agent1分配给服务Agentj的网格资源 yij服务Agentj分配给用户Agenti的网格服务 sj网格服务Agentj的服务 tin用户Agenti完成任务n时所花的时间 Ti用户Agenti完成所有任务时所花的时间 uij用户Agenti支付给网格服务Agentj的费用 vlj服务Agentj支付给网格资源Agent1的费用 λj网格服务Agentj的单位资源价格 βl网格资源Agent1的单位资源价格 qin用户Agenti所要完成的任务n的计算量 Ei第i个任务Agent的资金U(xlj,yij)用户Agenti的效用函数

分别为网格用户agent向网格服务agent所支付费用和网格服务agent向网格资源agent所支付费用。K为费用/完成时间的组合权重。
λj为网格服务Agentj的单位资源价格,βl为网格资源Agent1的单位资源价格。
tin为用户Agenti完成的第n个任务时所花的时间,tin为xlj,yij和qin的函数。现将式(1)转化为式(2)。
在式(3)中优化的约束为所分配的资源不能超出资源agent1的总容量cl,所分配的服务不能超出服务agentj的总服务数sj,网格用户Agenti要在一定的时限下完成任务。
使用拉格朗日变形的方法来解决资源分配优化问题。
λj,βj,γj为网格任务agent i的拉格朗日乘数。当{λj,βj,γj}存在,{xlj,yij}即为主优化问题式(3)的解。为了降低计算复杂性,该文进一步将分配优化问题分解为两个子问题。λj为在服务市场中网格服务Agent j的单位资源价格,βi为在资源市场中网格资源Agent 1的单位资源价格。公式(5)和式(6)分别描述了网格用户agent和网格服务agent在双层市场中作为购物者的行为,公式(7)描述了网格资源agent和网格服务agent在资源市场及服务市场中作为商品提供者的行为。我们采用优化分解的方法将式(3)分解成为两个子问题网格资源市场优化以及网格服务市场的优化。网格资源市场中包含了网格服务agent和网格资源agent的优化问题。网格服务市场中包含了网格服务agent和网格用户agent的优化问题。
网格资源调度问题被分解为两个子问题网格资源市场优化以及网格服务市场的优化。两个子问题可通过迭代算法来计算服务的价格和服务分配量。
1、网格任务Agent的优化问题 网格用户Agent的目标为计算出最优的支付费用,网格用户Agent希望能在一定的时限下完成任务,并能使其效用值最大。网格服务agent的优化目标为计算出最优的服务分配给用户agent。
λj是服务j的单位价格,uij/λj为用户所获得的服务量,为用户i的完成时间。
用户Agenti效用函数的拉格朗日变形为L(u,v) δ为拉格朗日常数,当L(u)/u=0且δ>0可获得最优解。
uij*为网格任务Agenti向服务Agentj所支付费用的最优值。
2、网格服务agent作为服务提供者的优化问题 网格服务agent作为服务提供者的优化目标为使网格服务agent获得的收益最大。
yij为服务agentj向用户agent所提供的服务,∑uijlogyij为网格服务agent获得的收益。网格服务agentj效用函数的拉格朗日变形为 υ为拉格朗日常数,当L(y)/y=0且υ>0令L(y)/y=0可得到 yij*为网络服务agentj分配给网格用户Agenti的服务的最优值。
3、网格服务Agent的优化问题 网格服务Agent在一定的预算下向资源agent购买资源来合成服务,并提供给所需的网格用户,网格服务Agent的优化目标是使其效用值最大。优化的约束为服务Agent的预算Mlj-m, 为服务agent从用户所获得的收益,m为一个常数,因此,服务Agent向资源agent所付出的费用不能超出其预算Mij-m。
D为时间延迟常数.网格服务Agent效用函数的拉格朗日变形为L(v) ε为拉格朗日常数,当L(v)/v=0且ε>0可获得最优解。
vl*j为网格服务Agentj向资源Agent1所支付费用的最优值。
4、网格资源agent作为资源提供者的优化问题 网格资源agent作为资源提供者的优化目标为使网格资源agent获得的收益最大。
xlj为资源agent1向服务agent所提供的资源,∑vljlog(xlj+1)为网格服务agent获得的收益。网格资源agent1效用函数的拉格朗日变形为 σ为拉格朗日常数,当L(x)/x=0且σ>0令L(x)/x=0可得到xlj=vlj-σ/σ,xl*j为网格资源agent1给网格服务agentj的资源分配的最优值。
网格系统资源的分配调度问题可以分解成双层市场模型来解决在网格服务市场中,可以分为网格用户agent和网格服务agent;而在网格资源市场中,分为网格服务agent和网格资源agent。这种基于分解的策略就是通过迭代的方法分别在网格服务市场层次上解决网格任务agent和网格服务agent作为服务提供者的优化问题;以及在资源市场层次上解决网格服务agent和网格资源agent作为资源提供者的优化问题。网格用户为了完成它所有的任务,必须为服务付费,如果它对网格服务的要求有所变化,就必须通知网格服务agent的这种变化。网格服务agent知道了对网格服务要求的变化后,就更新它的服务价格并且以更新后的价格与网格用户agent进行交互。在网格用户agent与网格服务agent协商结束后。网格服务agent就与网格资源agent开始协商。网格服务agent提出的价格如果达不到网格资源agent的要求后,就得不到合适的资源所提供的服务。因此就必须在预算的约束下重新调整对网格资源的需求。网格资源agent根据对资源的需求调整它的价格,然后把新的价格通知给网格服务agent,这种过程直到找到合适的资源时重复进行。其具体方法是 1.网格用户提交服务请求给网格用户代理。
2.网格用户代理接收网格用户的服务价格,根据公式计算新的服务需求。
3.网格用户代理得到新的服务价格yj(k+1)。
4.网格用户代理把新的服务价格yj(k+1)传递给网格服务代理。
5.网格服务代理根据公式计算新的服务价格。
6.网格服务代理根据公式计算新的资源需求。
7.重复2~6的步骤,直到网格服务代理与网格用户代理根据各自的价格要求协商一致。
8.网格服务代理根据新的服务价格,把新的资源需求xl(k+1)传递到网格资源代理。
9.网格资源代理得到新的资源需求,根据公式 计算新的资源价格。
10.网格资源代理把新的资源价格βl(k+1)传递到所有的网格服务代理。
11.重复8~10的步骤,直到网格服务代理与网格资源代理根据各自的价格要求协商一致。
本说明书中未作详细描述的内容所与本领域专业技术人员公知的现有技术。
权利要求
1.一种基于分解策略的网格资源分配方法,所采用的具体方法是
第一步骤网格用户提交服务请求给网格用户代理;
第二步骤网格用户代理接收网格用户的服务价格,计算新的服务需求;
第三步骤网格用户代理得到新的服务价格;
第四步骤网格用户代理把新的服务价格传递给网格服务代理;
第五步骤网格服务代理计算新的服务价格;
第六步骤网格服务代理计算新的资源需求;
第七步骤重复2~6的步骤,直到网格服务代理与网格用户代理根据各自的价格要求协商一致;
第八步骤网格服务代理根据新的服务价格,把新的资源需求传递到网格资源代理;
第九步骤网格资源代理得到新的资源需求,计算新的资源价格;
第十步骤网格资源代理把新的资源价格传递到所有的网格服务代理;
第十一步骤重复8~10的步骤,直到网格服务代理与网格资源代理根据各自的价格要求协商一致。
全文摘要
本发明涉及一种基于分解策略的网格资源分配方法,所采用的具体方法是网格用户提交服务请求给网格用户代理;网格用户代理接收网格用户的服务价格,计算新的服务需求;网格用户代理得到新的服务价格;网格用户代理把新的服务价格传递给网格服务代理;网格服务代理计算新的服务价格;计算新的资源需求;重复2~6的步骤,直到网格服务代理与网格用户代理根据各自的价格要求协商一致;网格服务代理根据新的服务价格,把新的资源需求传递到网格资源代理;网格资源代理得到新的资源需求,计算新的资源价格;网格资源代理把新的资源价格传递到所有的网格服务代理;重复8~10的步骤,直到网格服务代理与网格资源代理根据各自的价格要求协商一致。
文档编号H04L12/24GK101170434SQ200710053350
公开日2008年4月30日 申请日期2007年9月20日 优先权日2007年9月20日
发明者李春林, 冯美来, 李腊元 申请人:武汉理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1