任务迁移与网络传输联合优化的方法、设备及存储介质与流程

文档序号:25868329发布日期:2021-07-13 16:29阅读:76来源:国知局
任务迁移与网络传输联合优化的方法、设备及存储介质与流程

本发明涉及计算机通信领域,具体的是任务迁移与网络传输联合优化的方法、设备及存储介质。



背景技术:

随着智能手机、平台电脑等移动设备的普及,近年来移动应用程序(即运行在移动设备上的应用程序)也出现了爆发式增长。但是,由于移动设备计算能力有限,网络传输延迟高,部分复杂移动应用程序(如人脸识别、增强现实、交互式游戏等)难以在移动设备上获得令人满意的使用体验。

为此,人们提出了边缘计算模式。该模式允许移动设备将复杂计算任务迁移到边缘云执行,以提升复杂计算任务的执行速度。但是计算任务迁移必然会带来任务输入数据的网络传输,从而导致计算任务的完成时间增加。

现有技术方案主要考虑的是通信网络物理层资源的分配,通过使用数值优化方法求解优化问题来获取最优计算任务迁移策略与通信网络物理层资源分配方案,以达到最小化计算任务完成时间的目的。现有技术(energy-efficientdynamicoffloadingandresourceschedulinginmobilecloudcomputing.inieeeinfocom2016-the35thannualieeeinternationalconferenceoncomputercommunications)中提出了一种基于拉格朗日乘子法的计算任务迁移与物理层资源分配联合决策方法。该方法包括以下几个步骤:第一,初始化拉格朗日乘子;第二,求解计算任务迁移决策子问题;第三,求解移动设备cpu主频控制子问题,第四,求解移动设备传输功率分配子问题;第五,更新拉格朗日乘子;第六步,如果达到最大迭代次数,则结束算法运行,否则转向第二步。但是,现有技术存在以下缺点:

1、现有技术方案需要多次迭代才能收敛到最优解,算法运行时间长,难以迅速做出最优决策;

2、现有技术方案给出的通信网络物理层资源分配方案的实施难度大,需要通信网络运营商的支持,不能由移动设备独立完成。

因此,如何利用有限的网络资源最小化计算任务完成时间成为一个亟需解决的问题。



技术实现要素:

为解决上述背景技术中提到的不足,本发明的目的在于提供一种任务迁移与网络传输联合优化的方法、设备及存储介质,解决了算法运行时间长、分配方案的实施难度大的问题。

本发明的目的可以通过以下技术方案实现:

一种任务迁移与网络传输联合优化的方法,包括以下步骤:

步骤1:判断该方法的被调用次数是否为0,如果该方法的被调用次数t为0,转向步骤2,否则转向步骤3;

步骤2:执行初始化操作:使用大小在0到1之间的随机数初始化一个基本的seq2seq模型,该模型的输入序列长度为6m,m为场景中移动设备的数量,隐藏层长度为k,输出序列长度为m;

其中,k的取值范围为任意正整数,输出序列中的每个元素的取值范围为任意整数,m取值为移动设备的数量;

步骤3:推理出计算任务迁移与tcp初始拥塞窗口设置方案;

步骤4:更新经验重放缓冲区;

步骤5:判断是否需要更新seq2seq模型参数:计算该方法的被调用次数t除以d的余数,d的取值范围为任意正整数,如果该余数为0,则转向步骤6,否则该方法结束;

步骤6:更新seq2seq模型参数。

进一步地,所述步骤1中被调用次数t的初始值为0,每当该方法被调用一次,t的值将会增加1,即t+1。

进一步地,所述k的取值范围优选取64到512之间的正整数

进一步地,所述步骤3中方案的具体操作如下:

(1)将所有移动设备的状态向量合并为系统状态向量s,即

s=[s1,s2,…,si,…,sm],

其中m为移动设备的数量,si为第i个移动设备的状态向量;si包含6个移动设备状态,即

si=[iati,idti,idsi,leti,rtti,tpi],

其中iati为第i个移动设备上前两次计算任务迁移请求到达的时间间隔,idti为第i个移动设备上前两次计算任务完成的时间间隔,idsi为第i个移动设备请求迁移的计算任务输入数据大小,leti为第i个移动设备请求迁移的计算任务的本地运行时长,rtti为第i个移动设备与边缘服务器之间的往返延迟,tpi为第i个移动设备的吞吐量;

(2)将系统状态变量s输入到seq2seq模型,获取推理结果t,即计算任务迁移与tcp初始拥塞窗口设置方案;t为一个包含m个元素的向量,即

t=[t1,t2,…,ti,…,tm]

其中每个元素的含义如下:如果ti等于0,表示不允许第i个移动设备将其计算任务迁移到边缘服务器;如果ti大于0,表示允许第i个移动设备将其计算任务迁移到边缘服务器,同时将用于传输任务输入数据的tcp连接的初始拥塞窗口设置为ti。

进一步地,所述步骤4的具体操作方案如下:

(1)判断经验重放缓冲区是否存在空闲空间,如果没有空闲空间,则找到最先加入经验重放缓冲区的经验条目,并将其从经验缓冲区中删除;

(2)将当次调用中使用的系统状态s,推理结果t和当前时刻作为一个经验条目加入到经验重放缓冲区。

进一步地,所述经验重放缓冲区用于存储多个经验条目,最大长度为l且l的取值范围为任意正整数,每个经验条目可表示为一个三元组<s,t,e>,其中s为系统状态,t为推理结果,e为该经验条目加入到经验缓冲区的时刻。

进一步地,所述步骤6的具体操作方案如下:

(1)判断经验重放缓冲区中的经验条目是否大于或等于n,n的取值范围为任意小于等于经验重放缓冲区最大长度l的正整数,如果是则转向第(2)步,否则该方法结束;

(2)从经验重放缓冲区中随机选择出n个经验条目;

(3)将这n个经验条目中的系统状态和推理结果都提取出来,形成n个二元组<s,t>,其中s为系统状态,t为推理结果;

(4)将这n个二元组作为训练数据集,训练seq2seq模型,以更新seq2seq模型参数。

一种计算机可读的存储介质,存储有指令,所述指令被执行时实现上述任务迁移与网络传输联合优化的方法。

一种任务迁移与网络传输联合优化设备,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任务迁移与网络传输联合优化的方法进行优化。

本发明的有益效果:

1、与使用数值方法求解优化问题相比,本发明使用深度强化学习技术推理计算任务迁移与tcp初始拥塞窗口设置方案的速度更快,能够满足快速决策需要;

2、与通信网络物理层资源分配方案相比,本发明给出的tcp初始拥塞窗口设置方案的实施难度低,可由移动设备独立完成。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图;

图1是本发明seq2seq模型结构示意图。

具体实施方式

下面对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明提供一种任务迁移与网络传输联合优化的方法,包括以下步骤:

步骤1:判断该方法的被调用次数是否为0,如果该方法的被调用次数t为0,转向步骤2,否则转向步骤3;

需要说明的是,被调用次数t的初始值为0,每当该方法被调用一次,t的值将会增加1(即变成t+1)。

步骤2:执行初始化操作。即使用大小在0到1之间的随机数初始化一个基本的seq2seq模型(模型结构如图1所示),该模型的输入序列长度为6m,m为场景中移动设备的数量,隐藏层长度为k,输出序列长度为m;

k的取值范围为任意正整数,优选取64到512之间的正整数;输出序列中的每个元素的取值范围为任意整数;m取值为移动设备的数量。

seq2seq是一种循环神经网络模型,可将一个输入序列转换为一个输出序列,常用于机器翻译、对话系统、自动文摘等场合。在本发明中seq2seq模型用于建立系统状态向量和计算任务迁移与tcp初始拥塞窗口设置方案之间的最优映射关系,即将系统状态向量看作输入序列,将计算任务迁移与tcp初始拥塞窗口设置方案看作输出序列。

步骤3:获取所有移动设备的状态向量;

对于每个移动设备,执行以下操作:

(1)计算前两次计算任务迁移请求到达的时间间隔(记为iat),如果当前计算任务迁移请求次数小于3,令iat;

(2)计算前两次计算任务完成的时间间隔(记为idt),如果当前计算任务迁移请求次数小于3,令idt;

(3)获取请求迁移的计算任务的输入数据大小(记为ids);

(4)计算请求迁移的计算任务的本地运行时长(记为let),计算公式如下

其中α为请求迁移的计算任务需要的cpu周期数,φ为移动设备的cpu频率;

(5)测量移动设备与边缘服务器之间的往返延迟(记为rtt)和吞吐量(记为tp);

(6)合并以上移动设备状态,形成移动设备的状态向量,即移动设备的状态向量可表示为一个5元组<iat,idt,ids,let,rtt,tp>。

步骤4:推理出计算任务迁移与tcp初始拥塞窗口设置方案;

具体操作方案如下:

(1)将所有移动设备的状态向量合并为系统状态向量s,即

s=[s1,s2,…,si,…,sm],

其中m为移动设备的数量,si为第i个移动设备的状态向量;si包含6个移动设备状态,即

si=[iati,idti,idsi,leti,rtti,tpi],

其中iati为第i个移动设备上前两次计算任务迁移请求到达的时间间隔,idti为第i个移动设备上前两次计算任务完成的时间间隔,idsi为第i个移动设备请求迁移的计算任务的输入数据大小,leti为第i个移动设备请求迁移的计算任务的本地运行时长,rtti为第i个移动设备与边缘服务器之间的往返延迟,tpi为第i个移动设备的吞吐量。

(2)将系统状态变量s输入到seq2seq模型,获取推理结果t(即计算任务迁移与tcp初始拥塞窗口设置方案);t为一个包含m个元素的向量,即

t=[t1,t2,…,ti,…,tm]

其中每个元素的含义如下:如果ti等于0,表示不允许第i个移动设备将其计算任务迁移到边缘服务器;如果ti大于0,表示允许第i个移动设备将其计算任务迁移到边缘服务器,同时将用于传输任务输入数据的tcp连接的初始拥塞窗口设置为ti。

步骤5:更新经验重放缓冲区;

具体操作方案如下:

(1)判断经验重放缓冲区是否存在空闲空间,如果没有空闲空间,则找到最先加入经验重放缓冲区的经验条目,并将其从经验缓冲区中删除;

(2)将当次调用中使用的系统状态s,推理结果t和当前时刻作为一个经验条目加入到经验重放缓冲区。

经验重放缓冲区用于存储多个经验条目。每个经验条目可表示为一个三元组<s,t,e>,其中s为系统状态,t为推理结果,e为该经验条目加入到经验缓冲区的时刻。此处s和t的定义等同于步骤4中已给出的定义。

经验重放缓冲区最大长度为l。l的取值范围为任意正整数,优选1000到5000之间的正整数。

步骤6:判断是否需要更新seq2seq模型参数。计算该方法的被调用次数t除以d的余数(d的取值范围为任意正整数),如果该余数为0,则转向步骤6,否则该方法结束;

步骤7:更新seq2seq模型参数:

具体操作方案如下:

(1)判断经验重放缓冲区中的经验条目是否大于或等于n,如果是则转向第(2)步,否则该方法结束;

n的取值范围为任意小于等于经验重放缓冲区最大长度l的正整数,优选64到256之间的正整数。

(2)从经验重放缓冲区中随机选择出n个经验条目;

(3)将这n个经验条目中的系统状态和推理结果都提取出来,形成n个二元组<s,t>,其中s为系统状态,t为推理结果;此处s和t的定义等同于步骤4中已给出的定义。

(4)将这n个二元组作为训练数据集,使用随机梯度下降算法、adam算法或者其他深度神经网络训练算法训练seq2seq模型,以更新seq2seq模型参数。

训练过程采用如下损失函数:

其中n为训练数据集大小,tn,i为第n个推理结果的第i个分量,为条件概率运算符;cn为上下文向量,是所有时刻隐状态的平均值,表示为

其中hn,i为时刻i的隐状态,hn,i进一步可表示为

hn,i=f(sn,i,hn,i-1)

其中f为循环神经网络单元(可从简单rnn、lstm、gru等循环神经网络单元任选一种),sn,i为第n个系统状态向量的第i个分量,hn,0为时刻0的隐状态(在训练开始后会使用大小在0到1之间的随机数初始化所有隐状态)。

需要说明的是,步骤1和步骤3在第一计算单元中执行,步骤2、4、5、6在第二计算单元中执行。

本发明提出的一种任务迁移与网络传输联合优化的方法,可给出tcp初始拥塞窗口设置方案。与通信网络物理层资源分配方案相比,该方案的实施难度低,可由移动设备独立完成。其次,该方法使用深度强化学习技术推理计算任务迁移与tcp初始拥塞窗口设置方案,可用于快速做出计算任务完成时间最小化决策。

一种计算机可读的存储介质,存储有指令,所述指令被执行时实现上述任务迁移与网络传输联合优化的方法。

一种任务迁移与网络传输联合优化设备,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任务迁移与网络传输联合优化的方法进行优化。

以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1