发明名称 一种面向云计算环境下的动态多资源公平分配方法
摘要 本发明公开了一种面向云计算环境下的动态多资源公平分配方法,本发明方法基于用户资源需求和用户共享资源量,通过构建线性规划模型保证资源分配的公平性,并应用快速的多项式时间复杂度算法,即二分法寻找一个用户τ对应的v<sub>τ</sub>,求解最优分配方案<img file="DDA0000873055100000011.GIF" wi="199" he="61" />来改进求解最优分配方案的算法运行效率问题;本发明能够准确而真实地反映云计算共享平台中资源分配的实际情况,解决了动态情形下多用户多资源分配的公平性和效率问题,改进了现有资源分配算法运行时间过长的问题。
申请公布号 CN105302650A 申请公布日期 2016.02.03
申请号 CN201510907254.6 申请日期 2015.12.10
申请人 云南大学 发明人 张潇璐;董亮;刘曦;郭少杰;刘俊卿
分类号 G06F9/50(2006.01)I;G06F9/455(2006.01)I 主分类号 G06F9/50(2006.01)I
代理机构 昆明大百科专利事务所 53106 代理人 苏芸芸
主权项 一种面向云计算环境下的动态多资源公平分配方法,其特征在于包括如下步骤:(1)基于动态情形下用户资源需求和共享资源量,构建动态多资源公平分配线性优化模型,该线性规划模型为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mi>M</mi><mi>a</mi><mi>x</mi><mi>i</mi><mi>m</mi><mi>i</mi><mi>z</mi><mi>e</mi><mi> </mi><msup><mi>M</mi><mi>k</mi></msup></mtd></mtr><mtr><mtd><mrow><msubsup><mi>x</mi><mi>i</mi><mi>k</mi></msubsup><mo>&GreaterEqual;</mo><msup><mi>M</mi><mi>k</mi></msup><mo>&CenterDot;</mo><msub><mi>w</mi><mi>i</mi></msub><mo>,</mo><mo>&ForAll;</mo><mi>i</mi><mo>&le;</mo><mi>k</mi></mrow></mtd></mtr><mtr><mtd><msubsup><mi>x</mi><mi>i</mi><mi>k</mi></msubsup><mo>&GreaterEqual;</mo><msubsup><mi>x</mi><mi>i</mi><mrow><mi>k</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>,</mo><mo>&ForAll;</mo><mi>i</mi><mo>&le;</mo><mi>k</mi><mo>-</mo><mn>1</mn></mtd></mtr><mtr><mtd><mstyle><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover></mstyle><msubsup><mi>x</mi><mi>i</mi><mi>k</mi></msubsup><mo>&CenterDot;</mo><msub><mi>d</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>&le;</mo><mstyle><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><mrow><msub><mi>w</mi><mi>i</mi></msub><mo>,</mo><mo>&ForAll;</mo><mi>j</mi></mrow></mstyle></mtd></mtr></mtable></mfenced><mo>,</mo></mrow>]]></math><img file="FDA0000873055070000011.GIF" wi="462" he="411" /></maths>该线性规划模型中k为系统中用户数,<img file="FDA0000873055070000012.GIF" wi="52" he="70" />表示用户i分配得到的优势资源份额数,w<sub>i</sub>表示用户i对资源池中每种资源的共享资源量,d<sub>ij</sub>表示用户i任务对资源j的需求量;该线性规划模型确定当系统中存在k个用户时,最大化M<sup>k</sup>值,从而确定每个用户分配得到的优势资源份额数<img file="FDA0000873055070000013.GIF" wi="230" he="71" />(2)基于上述线性规划模型,通过下述步骤求解最优分配方案<img file="FDA0000873055070000014.GIF" wi="198" he="69" />步骤1:当系统中有k个用户时,对k‑1个<img file="FDA0000873055070000015.GIF" wi="72" he="69" />值进行非递增排序(i<k‑1),即v<sub>1</sub>≥…≥v<sub>k‑1</sub>,<img file="FDA0000873055070000016.GIF" wi="630" he="79" />并输入用户i对各个资源j需求向量d<sub>i</sub>=(d<sub>i1</sub>,…,d<sub>ij</sub>,…,d<sub>im</sub>);步骤2:计算用户i在每种资源上需求d<sub>ij</sub>与第一个优势资源份额数乘积所得总资源分配量,即<img file="FDA0000873055070000017.GIF" wi="198" he="126" />步骤3:判断总资源分配量是否超过系统中用户共享资源量,即对每种资源j,如果<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><msub><mi>v</mi><mn>1</mn></msub><mo>&CenterDot;</mo><msub><mi>d</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>&le;</mo><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><msub><mi>w</mi><mi>i</mi></msub></mrow>]]></math><img file="FDA0000873055070000018.GIF" wi="302" he="126" /></maths>成立,转到步骤6;步骤4:如果<img file="FDA0000873055070000019.GIF" wi="287" he="119" />不成立,在排序后的优势资源份额数区间,即对任意i,i∈U,在区间[v<sub>1</sub>,∞),[v<sub>2</sub>,v<sub>1</sub>],...,(0,v<sub>k‑1</sub>],利用二分法查找v<sub>τ</sub>所在的区间[LB,UB];步骤5:判断UB‑LB>1,如果成立,跳转到步骤4,否则结束循环;步骤6:根据下述公式确定M<sup>k</sup>取值,<img file="FDA00008730550700000110.GIF" wi="646" he="254" />步骤7:通过<img file="FDA00008730550700000111.GIF" wi="470" he="71" />计算每个用户i分配到的优势资源份额数<img file="FDA00008730550700000112.GIF" wi="78" he="68" />步骤8:计算<img file="FDA00008730550700000113.GIF" wi="238" he="71" />输出用户i在资源j上的分配方案<img file="FDA00008730550700000114.GIF" wi="87" he="73" />
地址 650091 云南省昆明市翠湖北路2号