1.一种在多个边缘计算服务器场景下基于模拟退火的移动区块链优化算力分配方法,其特征在于,所述方法包括以下步骤:(1)在多个边缘计算服务器的场景下总共有n个移动终端,移动终端的集合用I={1,
2,...,n}表示,边缘计算服务器有m个,用K={1,2,...,m}表示。移动终端从边缘计算服务器获得算力,其中边缘计算服务器能提供的算力上限为Ck,tot,k∈K;
在保证不超过边缘计算服务器提供的算力上限的条件下,最大化系统总收益的优化问题描述为如下所示的优化TRO问题:下面将问题中的各个变量做一个说明,如下:移动终端自身的算力;
边缘服务器提供的算力;
R:系统提供的固定奖励;
r:可变奖励系数;
ti:区块的大小;
λ:泊松分布的中间到达率;
k
p:边缘服务器k提供单位算力的价格;
(2)引入辅助变量vi表示移动设备i从所有边缘计算服务器获得的计算力,如下:假定{vi}i∈I是给定的,优化TRO问题等价为TRO-Sub问题,如下:表示TRO-Sub问题中的最优值,在解决了TRO-Sub问题后获得 后,进而解决TRO-Top问题,如下:TRO-Top:
Variables:
其中,Qmax=∑k∈KCk,tot表示所有边缘计算服务器可以提供的总算力。
求解TRO-Sub问题的思路是:给定了{vi}i∈I之后,TRO-Sub是一个严格的凸优化问题,因此引入对偶变量λk来松弛constraint(1-1),得到相应的拉格朗日表达式,如下:其中,参数M表示如下:
式(2-3)可以被分解为独立的移动设备i,如下:每个移动设备i的相关拉格朗日表达式,如下:基于式(2-6),每个移动设备i的局部优化问题,如下:TRO-Sub-MT i:
s.t.:constrain(2-1)Variables:
为进一步确定{λk}k∈K的值,我们使用子梯度方法,如下:其中,ε为步长,通过枚举比较的方式获得最优的{λk}k∈K值。从而解决了提出的TRO-Sub和TRO-Top问题;
(3)算法MultiSub-Algorithm解决TRO-Sub问题确定 过程如下:步骤3.1:初始化迭代参数l=1,每个边缘计算服务器k初始化为λk(l);
步骤3.2:给定移动用户i从所有边缘服务器获得的算力vi;
步骤3.3:判定maxk∈K|λk(l)-λk(l-1)|>γ是否成立,若成立,执行步骤3.4,若不成立,执行步骤3.8,其中参数γ给定,趋近于0;
步骤3.4:边缘计算服务器k广播λk(l)给所有的移动用户;
步骤3.5:移动用户i由给定的λk(l)求解问题TRO-Sub-MTi并获取 报告给边缘计算服务器k;
步骤3 .6:收到所有的移动用 户的 后 ,边缘计算服务器k更新其中 参数a和b给定;
步骤3.7:设定l=l+1,执行步骤3.3;
步骤3.8:移动用户i计算 并报告给边缘计算服务器1,服务器算出
步骤3.9:输出
至此,算法MultiSub-Algorithm接了问题TRO-Sub并得到 (4)算法MultiTop-Algorithm解决问题TRO-Top,并得到优化的{vi}i∈I,用 表示,过程如下:步骤4.1:初始化温度值T1,下降温度d,最低温度值Tfinal,退火次数t=1,循环计数变量Ncount=0;
步骤4.2:设定当前最优值 当前最优解步骤4.3:随机产生一组{vi}i∈I,设定CS={vi}i∈I;
步骤4.4:设定
步骤4.5:判断Tf>Tfinal是否成立,若成立,执行步骤4.6,否则执行步骤4.*;
步骤4.6:设定t=t+1;
步骤4.7:以{vi}i∈I为中心随机生成{vi′}i∈I;
步骤4.8:以{v′i}i∈I为输入,通过MultiSub-Algorithm算法,计算得到步骤4.9:判断 是否成立,若成立,执行步骤4.10,否则执行步骤4.11;
步骤4.10:设定 CS={v′i}i∈I,Ncount=0。
步骤4.11:根据均匀分布在[0,1]之间生成随机数μ,判定 是否成立,若成立,执行步骤4.12,否则执行步骤4.13;
步骤4.12:设定 CS={v′i}i∈I,Ncount=0。
步骤4.13:Ncount=Ncount+1;
步骤4.14:判断Ncount≥30是否成立,若成立,则停止循环,否则执行步骤4.15;
步骤4.15:更新Tt=Tt-1*d,执行步骤4.5;
步骤4.16:结束循环,输出最优解最后,算法MultiTop-Algorithm输出的 代表TRO问题所求的系统最大收益。