掌桥专利:专业的专利平台
掌桥专利
首页

任务卸载方法、装置、电子设备、及计算机程序产品

文献发布时间:2023-06-19 19:28:50


任务卸载方法、装置、电子设备、及计算机程序产品

技术领域

本申请涉及移动边缘计算技术领域,具体涉及一种任务卸载方法、装置、电子设备、及计算机程序产品。

背景技术

随着网络和互联网技术的发展,许多应用程序涌现而出,其中,这些应用程序中的大部分都是计算密集型的应用程序,比如需要进行人脸识别或语音处理的应用程序、以及移动游戏等。但是,目前在资源受限的移动用户设备中运行计算密集型的应用程序会占用设备大量的资源和电量。

现有技术中,为了解决该问题,可以通过将移动用户设备中的计算密集型应用程序的计算任务卸载到移动边缘计算的云服务器中,当移动边缘计算的云服务器成功完成任务后,再向移动用户设备返回程序执行结果,这样,不需要在移动用户设备中运行计算密集型应用程序,从而可以减少移动用户设备的资源消耗。目前,在卸载大量的计算任务时,为了提高任务卸载效率,通常会同时卸载多个计算任务,这样容易出现服务器拥塞问题,导致产生延迟和高能耗的问题。

发明内容

本申请实施例提供一种任务卸载方法,用以解决同时卸载多个计算任务时容易出现服务器拥塞,从而导致产生延迟和高能耗的技术问题。

第一方面,本申请实施例提供一种任务卸载方法,包括:

从终端的历史移动轨迹中选取终端的疑似停留点;

根据预设判别方式在所述终端的疑似停留点中筛选出终端的真实停留点,并得到终端的历史停留区域;

根据所述终端的历史停留区域预测终端的未来停留区域;

根据所述终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系,得出最优卸载决策,并根据所述最优卸载决策从终端中卸载待执行任务。

在一个实施例中,所述从终端的历史移动轨迹中选取终端的疑似停留点,包括:

计算所述终端的历史移动轨迹中相邻轨迹点的真实移动距离和真实移动时间;

选取所述真实移动距离小于移动距离阈值且所述真实移动时间大于移动时间阈值的相邻轨迹点作为所述终端的疑似停留点。

在一个实施例中,所述根据预设判别方式在所述终端的疑似停留点中筛选出终端的真实停留点,并得到终端的历史停留区域,包括:

在所述终端的疑似停留点中确定相邻疑似停留点之间的相关性值;

当所述相邻疑似停留点之间的相关性值大于预设阈值时,判断该对相邻的疑似停留点为所述终端的真实停留点;

对所述终端的真实停留点进行聚类分析,得到所述终端的历史停留区域。

在一个实施例中,所述根据所述终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系,得出最优卸载决策,并根据所述最优卸载决策从终端中卸载待执行任务,包括:

判断所述终端的未来停留区域是否处于在距离未来停留区域预设范围内的基站的覆盖重叠区;

若所述终端的未来停留区域未处于所述在距离未来停留区域预设范围内的基站的覆盖重叠区,则通过第一最优能耗模型基于所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息获得第一最优卸载决策,并根据所述第一最优卸载决策从所述终端中卸载待执行任务;

若所述终端的未来停留区域处于所述在距离未来停留区域预设范围内的基站的覆盖重叠区,则通过第二最优能耗模型基于所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素获得第二最优卸载决策,并根据所述第二最优卸载决策从所述终端中卸载待执行任务。

在一个实施例中,所述通过第一最优能耗模型基于所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息获得第一最优卸载决策,并根据所述第一最优卸载决策从所述终端中卸载待执行任务,包括:

将所述终端的未来停留区域与所述在距离未来停留区域预设范围的基站之间的距离信息输入至所述第一最优能耗模型;

通过所述第一最优能耗模型利用变异萤火虫算法得到所述第一最优卸载决策;

根据所述第一最优卸载决策从所述终端中将待执行任务卸载到对应的基站。

在一个实施例中,所述通过第二最优能耗模型基于所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素获得第二最优卸载决策,并根据所述第二最优卸载决策从所述终端中卸载待执行任务,包括:

将所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素输入至所述第二最优能耗模型;

通过所述第二最优能耗模型利用优化模拟退火智能算法得到所述第二最优卸载决策;

根据所述第二最优卸载决策从所述终端中将待执行任务卸载到对应的基站。

在一个实施例中,所述通过所述第二最优能耗模型利用优化模拟退火智能算法得到所述第二最优卸载决策,包括:

基于所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素,按照预设条件分层次产生待定卸载决策;

利用结合贪心和随机化的策略在所述待定卸载决策中得到初始卸载决策;

并发运行得到若干所述初始卸载决策,在若干所述初始卸载决策中选取所述第二最优卸载决策。

第二方面,本申请实施例提供一种任务卸载装置,包括:

疑似停留点选取模块,用于从终端的历史移动轨迹中选取终端的疑似停留点;

历史停留区域确定模块,用于根据预设判别方式在所述终端的疑似停留点中筛选出终端的真实停留点,并得到终端的历史停留区域;

未来停留区域预测模块,用于根据所述终端的历史停留区域预测终端的未来停留区域;

最优卸载决策确定模块,用于根据所述终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系得出最优卸载决策,并根据所述最优卸载决策从终端中卸载待执行任务。

第三方面,本申请实施例提供一种电子设备,包括处理器和存储有计算机程序的存储器,所述处理器执行所述程序时实现第一方面所述的任务卸载方法的步骤。

第四方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现第一方面所述的任务卸载方法的步骤。

本申请实施例提供的任务卸载方法、装置、电子设备、及计算机程序产品,先从终端的历史移动轨迹中选取终端的疑似停留点,再筛选出终端的真实停留点,并得到终端的历史停留区域,能够保证得到的终端的历史停留区域的准确性以及后续预测终端的未来停留区域的可靠性;然后根据终端的历史停留区域预测终端的未来停留区域,再根据终端的未来停留区域与未来停留区域周围的基站的关系分情况得出最优卸载决策,继而根据最优卸载决策从终端中卸载待执行任务,能够精准控制从终端中卸载待执行任务,避免同时卸载多个计算任务时容易出现服务器拥塞的情况,从而导致产生延迟和高能耗的问题。

附图说明

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

图1是本申请实施例提供的任务卸载方法的流程示意图;

图2示出基站之间可能存在覆盖重叠区域的情况;

图3是本申请实施例提供的任务卸载装置的模块示意图;

图4是本申请实施例提供的电子设备的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为本申请实施例提供的任务卸载方法的流程示意图。

参照图1,本申请实施例提供一种任务卸载方法,可以包括步骤:

S1:从终端的历史移动轨迹中选取终端的疑似停留点。

S2:根据预设判别方式在终端的疑似停留点中筛选出终端的真实停留点,并得到终端的历史停留区域。

S3:根据终端的历史停留区域预测终端的未来停留区域。

S4:根据终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系得出最优卸载决策,并根据所述最优卸载决策从终端中卸载待执行任务。

需要说明的是,本发明提供的任务卸载方法的执行主体可以是终端侧设备,例如用户设备。

在终端侧设备执行步骤S1-S4之前,终端侧设备会先执行S01:

获取终端的历史移动轨迹。

具体地,获取终端的历史移动轨迹可以从后台数据中心获得,终端的历史移动轨迹所包含的信息可能包括终端在过去的移动过程中所停留的地点信息、在各地点停留的时间信息、在各地点停留的次数信息等。

在步骤S1中,终端侧设备会从终端的历史移动轨迹中选取终端的疑似停留点。

例如,终端的疑似停留点可以根据终端的历史移动轨迹所包含的信息以及与各信息对应的预设的疑似阈值进行比较,从而综合评价得到。

在步骤S2中,终端侧设备会根据预设判别方式在终端的疑似停留点中筛选出终端的真实停留点,并得到终端的历史停留区域。

具体地,通过预设判别方式在终端的疑似停留点中筛选出终端的真实停留点后,可以通过对终端的真实停留点进行聚类分析,以得到终端的历史停留区域。

在步骤S3中,终端侧设备会根据终端的历史停留区域预测终端的未来停留区域。

例如,可以根据终端的历史停留区域中各真实停留点的分布规律,来预测得到终端的未来停留区域。

在步骤S4中,终端侧设备会根据终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系得出最优卸载决策,并根据所述最优卸载决策从终端中卸载待执行任务。

具体地,在距离未来停留区域预设范围内的基站的个数可以是一个也可以是两个以上,当在距离未来停留区域预设范围内的基站的个数为一个的时候,得出的最优卸载决策可能包括从终端中卸载待执行任务至基站的时间点信息,利于基站有序处理待执行任务,避免拥堵。

当在距离未来停留区域预设范围内的基站的个数为两个以上的时候,这些基站的覆盖区域有可能出现覆盖重叠区域和非覆盖重叠区域,终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系有可能是终端的未来停留区域在覆盖重叠区域或在非覆盖重叠区域,终端侧设备会根据终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系得出相应的最优卸载决策,以通过最优卸载决策来决定将终端的待执行任务卸载至哪个基站为最优方案。

本申请实施例提供的任务卸载方法,先从终端的历史移动轨迹中选取终端的疑似停留点,再筛选出终端的真实停留点,并得到终端的历史停留区域,能够保证得到的终端的历史停留区域的准确性以及后续预测终端的未来停留区域的可靠性;然后根据终端的历史停留区域预测终端的未来停留区域,再根据终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系分情况得出最优卸载决策,继而根据最优卸载决策从终端中卸载待执行任务,能够精准控制从终端中卸载待执行任务,避免同时卸载多个计算任务时容易出现服务器拥塞的情况,从而导致产生延迟和高能耗的问题。

在一个实施例中,步骤S1可以包括:

预设终端的历史移动轨迹中相邻轨迹点之间的移动距离阈值和移动时间阈值;

计算终端的历史移动轨迹中相邻轨迹点的真实移动距离和真实移动时间;

选取真实移动距离小于移动距离阈值且真实移动时间大于移动时间阈值的每对相邻轨迹点作为终端的疑似停留点。

根据历史移动轨迹中相邻轨迹点的真实移动距离和真实移动时间与移动距离阈值和移动时间阈值的比对,以统一的判定标准来得到终端的疑似停留点,使得得到的终端的疑似停留点更加精确,为后续步骤提供可靠数据。

在一个实施例中,步骤S2可以包括:

在终端的疑似停留点中计算相邻疑似停留点之间的相关性值;

当相邻疑似停留点之间的相关性大于预设阈值时,判断该相邻的疑似停留点为终端的真实停留点;

对终端的真实停留点进行聚类分析,得到终端的历史停留区域。

基于终端的疑似停留点中相邻疑似停留点之间的相关性来得到终端的真实停留点,继而通过对真实停留点的聚类分析,能够有效得到精确的终端的历史停留区域,使得后续预测的终端的未来停留区域更加精细化。

在一个实施例中,在终端的疑似停留点中确定相邻疑似停留点之间的相关性值,可以通过式(1)和式(2)来计算:

其中,SP

另外,除了通过式(1)和式(2)计算单个疑似停留点的移动量化信息来得到相邻疑似停留点之间的相关性之外,还可以计算所有疑似停留点的平均移动量化信息,避免仅计算单个疑似停留轨迹点的移动量化信息时可能出现的孤点问题,从而提高后续筛选真实停留点的准确性。

在一个实施例中,对终端的真实停留点进行聚类分析,得到终端的历史停留区域,可以利用基于密度的聚类算法对所有终端的真实停留点进行聚类,得到历史停留区域,并将原始轨迹数据集中的轨迹点序列转换为停留区域序列,该步骤可参考现有的相关技术。

比如,利用DBSCAN算法对终端的真实停留点进行聚类,首先任选一个真实停留点,找到与这个真实停留点的距离小于等于半径r的所有的真实停留点;然后,若距离小于半径r的真实停留点的个数大于最小点数目,则这个真实停留点被标记为核心点,并被分配一个新的簇标签;然后访问该真实停留点的半径r以内的所有邻居点,若它们还没有被分配一个簇,那么就将刚刚创建的新的簇标签分配给它们,如果它们是核心点,那么就依次访问其邻居,以此类推,使簇逐渐增大,直到在簇的半径r的距离内没有核心点为止;然后选取另一个尚未被访问过的真实停留点,并重复相同的过程,直到所有终端的真实停留点都被标记,从而将真实停留点划分为簇,得到与该真实停留点对应的历史停留区域。

在一个实施例中,步骤S3可以结合终端的历史停留区域的信息和终端的历史定位数据来确定终端的位置转移概率,然后比较各个转移概率的大小,从而根据转移概率最大对应的历史定位数据,预测终端的未来停留区域。

其中,历史定位数据可以包括历史GPS定位数据、历史基站定位数据、历史WIFI定位数据、历史惯性导航定位数据、历史视觉定位数据中的任意一种或多种。如果获取的历史定位数据有多种类型,可以直接将不同类型的历史定位数据根据聚类算法得到聚类计算结果,然后计算不同类型的历史定位数据对应的聚类计算结果,然后得到不同的活动区域,根据不同类型的历史定位数据对应的活动区域预测得到位置数据后,对位置数据进行均值计算,得到更优的位置数据。本实施例中,求均值后,能够增加数据的多样性和差异性,避免数据过拟合,从而使得预测终端的未来停留区域的信息更加准确。

其中,计算转移概率和预测未来停留区域的详细实施过程可参照现有相关技术实现。

在一个实施例中,步骤S4可以包括:

判断终端的未来停留区域是否处于在距离未来停留区域预设范围内的基站的覆盖重叠区;

若终端的未来停留区域未处于在距离未来停留区域预设范围内的基站的覆盖重叠区,则通过第一最优能耗模型基于终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离信息获得第一最优卸载决策,并根据所述第一最优卸载决策从终端中卸载待执行任务;

若终端的未来停留区域处于在距离未来停留区域预设范围内的基站的覆盖重叠区,则通过第二最优能耗模型基于终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素获得第二最优卸载决策,并根据所述第二最优卸载决策从终端中卸载待执行任务。

根据终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系分情况得出最优卸载决策,继而根据最优卸载决策从终端中卸载待执行任务,能够精准控制从终端中卸载待执行任务,避免同时卸载多个计算任务时容易出现服务器拥塞的情况,从而导致产生延迟和高能耗的问题。

在一个实施例中,在判断移动用户设备的未来停留区域是否处于未来停留区域周围的基站的覆盖重叠区时,可以采用如下方法:

在未来停留区域周围的基站中,选取移动用户设备的未来停留区域与未来停留区域周围的基站之间的距离小于预设阈值的所有基站,然后分别以每个基站为中心,划分各基站的泰森多边形(泰森多边形可以表示基站的覆盖面积),判断泰森多边形是否有重合区域,若有,则判断该移动用户设备的未来停留区域处于未来停留区域周围的基站的覆盖重叠区;若否,则判断该移动用户设备的未来停留区域没有处于未来停留区域周围的基站的覆盖重叠区。

其中,划分各基站的泰森多边形时,可以先构建三角形网,然后遍历每个顶点,计算与之相邻的外接圆圆心;最后,连接所有外接圆的圆心,得到各基站的泰森多边形。

在实际应用中,由于基站所用的天线往往是全向天线或者三向天线,基站的覆盖从平面上看是圆形,并非理想状态下的蜂窝形状,容易造成基站的覆盖有重叠的部分(如图2所示),在该情况下,若预测停留区恰好处于多个基站的覆盖重叠区(比如A、B、C、D和E区域)时,则当前数据传输速率除了受移动用户设备的未来停留区域与基站之间的距离的影响外,还会受基站接收信号强度、基站处理的任务数据量、基站的最大允许时延等因素影响。本发明先判断移动用户设备的未来停留区域是否处于未来停留区域周围的基站的覆盖重叠区,继而因不同的情况得出不同的最优任务卸载策略,能够因地制宜、有效地得到更加精准的任务卸载策略,从而提高任务卸载效率。

一方面,当终端的未来停留区域未处于在距离未来停留区域预设范围内的基站的覆盖重叠区时,可以先计算终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离以及各基站的数据传输速率,然后通过第一最优能耗模型得出第一最优卸载决策。

在一种实施例中,通过第一最优能耗模型基于终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离信息获得第一最优卸载决策,并根据第一最优卸载决策从终端中卸载待执行任务,可以包括步骤:

将终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离信息输入至第一最优能耗模型;

通过第一最优能耗模型利用变异萤火虫算法得到第一最优卸载决策;

根据第一最优卸载决策从终端中将待执行任务卸载到对应的基站。

具体地,终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离信息可以包括终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的真实距离以及各基站的数据传输速率。

在一个实施例中,可以通过式(3)计算终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的真实距离:

其中,d

在计算得到终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离之后,可以通过式(4)进一步计算数据传输速率。

/>

其中,w为系统带宽,σ为噪声功率,p为终端发射功率,g

通过上述方式能够计算得到准确的终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的真实距离值和各基站的数据传输速率。

其中,第一最优能耗模型所包含的信息可以为:

其中,n为终端数量,t

在一个实施例中,关于通过第一最优能耗模型利用变异萤火虫算法来求解能耗最小化以得到第一卸载决策,具体是将萤火虫的位置对应于优化问题的一个解向量,即第一最优卸载决策,此向量的各个分量为1或0,为1则代表将终端的任务卸载到云服务器执行,为0则代表不将终端的任务卸载到云服务器执行;其中,位置向量的维度数对应任务数,目标函数值对应于能耗值,能耗值较低的萤火虫吸引能耗值高的萤火虫向其移动。

在应用变异萤火虫算法求解第一卸载决策时,为了使第一卸载决策可行化,迭代过程中若某个分量对应的任务的本地执行时间大于延时约束,即在终端上执行此任务不满足延时约束,则此分量优先级值设置为最大值1,优先卸载;然后采取贪心策略,以优先级由高至低的顺序考察当前任务所需总计算能力是否满足云服务器计算能力约束,若满足则此任务可以在该基站卸载,不满足则顺序考察下一个任务能否在该基站卸载,直至结束。

最后,可以在对应基站卸载任务的对应分量值为1,反之为0,综合得出第一最优卸载决策。

另一方面,当终端的未来停留区域处于在距离未来停留区域预设范围内的基站的覆盖重叠区,则终端侧设备会通过第二最优能耗模型基于终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素获得第二最优卸载决策,并根据所述第二最优卸载决策从终端中卸载待执行任务。

具体地,基站影响因素可以包括基站的接收信号强度、基站处理的任务数据量、和基站的最大允许时延中的一个或多个。

在一个实施例中,通过第二最优能耗模型基于终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素获得第二最优卸载决策,并根据所述第二最优卸载决策从终端中卸载待执行任务,可以包括步骤:

将终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素输入至第二最优能耗模型;

通过第二最优能耗模型利用优化模拟退火智能算法得到第二最优卸载决策;

根据第二最优卸载决策从终端中将待执行任务卸载到对应的基站。

其中,第二最优能耗模型所包含的信息可以是:

......

x

其中,m表示终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离小于预设阈值的基站数量,s

在一个实施例中,通过第二最优能耗模型利用优化模拟退火智能算法(SA:Simulated Annealing)得到第二最优卸载决策,可以包括步骤:

基于终端的未来停留区域与在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素,按照预设条件分层次产生待定卸载决策;

利用结合贪心和随机化的策略在待定卸载决策中得到初始卸载决策;

并发运行得到若干初始卸载决策,在若干初始卸载决策中选取第二最优卸载决策;

根据第二最优卸载决策从终端中将待执行任务卸载到对应的基站。

示例性地,以下描述利用优化模拟退火智能算法得到第二最优卸载决策的过程:

步骤A,配置初始化参数:

初始温度T(充分大):例如100000;

算法结束的温度下界Tmin:例如1e-8;

同一温度下的扰动状态次数K:例如100;

温度下降率delta(小于1但是接近于1):例如0.99;

终端周围距离小于预设阈值的基站的数量:m;

基站X的服务性能指标消耗:C;

基站X的效用估分s

步骤B,最优化求解:

B-1:利用参数X、C和Limit,初始化K组符合Limit约束的初始解(初始卸载决策)a[K][m]:这里初始解的产生并不完全随机化;为了提高搜寻全局最优解的效率,本实施例采用小部分贪心结合大部分随机化的策略产生初始解;结合实际基站场景,比如贪心策略产生3组初始解;剩余的K-3组初始解,随机化方式产生;

其中,贪心的策略分为两种:第一种、按照基站X的效用估分s从大到小排列,并依次选取符合Limit约束的子模块形成的一组初始解;第二种、按照基站X的效用估分密度ρ(ρ=效用估分s/对应服务性能指标的消耗C),从大到小排列,并依次选取符合Limit约束的子模块形成的L组初始解(这里L=基站影响因素数目,本实施例中可以包括3个:基站的接收信号强度、基站处理的任务数据量、和基站的最大允许时延。注意:如果消耗C为0,那么ρ=效用估分s/[一个接近0的数,这里可以取0.01])。

每一组解形如[x

B-2:在初始温度T未达到温度下界Tmin的情况下,重复下列B-3至B-6。

B-3:当前T状态下,循环K次,每次以当前a[i](i=1,2,3,……,K)为可行解,产生待定新解b

高层次范围:t>2/3*T;邻域随机反转a[i]数组的其中3个元素;

中层次范围:1/3*T

低层次范围:t<=1/3*T;邻域随机反转a[i]数组的其中1个元素。

这里,为了保证只在当前解附近较小邻域产生变化,反转的最大个数控制在基站总数的10%左右;随机反转的含义是:反转a[i]数组的其中一个元素,那么待定新解b

其中s

B-4:判断新解b

B-5:计算新解b

B-6:判断新解b

df=E(x

其中,t为当前温度,exp为自然指数,df为当前温度t下,第i次内循环的新解b

B-7:按照t=温度下降率delta*T更新当前T状态.

B-8:判断t是否达到SA算法结束的温度下界Tmin;若否,执行B-3,否则执行B-9。

B-9:遍历最后的a[i](i=1,2,3,……,K),选出其中预估的最大推荐效用a[i]向量(a[i]中为1的元素)。

由于SA在理论上是依概率为1收敛到目标函数的全局最优解(即统计意义上的收敛,而不是确定收敛),所以本实施例并发运行上述求解过程,在并发次数N下得到的N个最优解(最优的初始卸载决策)中,选择最终的最优解,即第二最优卸载决策,然后根据第二最优卸载决策从终端中将待执行任务卸载到对应的基站。

下面对本申请实施例提供的任务卸载装置进行描述,下文描述的任务卸载装置与上文描述的任务卸载方法可相互对应参照。

如图3所示,本申请实施例提供一种任务卸载装置,包括:

疑似停留点选取模块310,用于从从终端的历史移动轨迹中选取终端的疑似停留点;

历史停留区域确定模块320,用于根据预设判别方式在所述终端的疑似停留点中筛选出终端的真实停留点,并得到终端的历史停留区域;

未来停留区域预测模块330,用于根据所述终端的历史停留区域预测终端的未来停留区域;

最优卸载决策确定模块340,用于根据所述终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系,得出最优卸载决策,并根据所述最优卸载决策从终端中卸载待执行任务。

进一步地,所述疑似停留点选取模块310具体用于:

计算所述终端的历史移动轨迹中相邻轨迹点的真实移动距离和真实移动时间,选取所述真实移动距离小于移动距离阈值且所述真实移动时间大于移动时间阈值的相邻轨迹点作为所述终端的疑似停留点。

进一步地,所述历史停留区域确定模块320包括:

相关性计算子模块,用于在所述终端的疑似停留点中确定相邻疑似停留点之间的相关性值;

真实停留点判断子模块,用于当所述相邻疑似停留点之间的相关性值大于预设阈值时,判断该对相邻的疑似停留点为所述终端的真实停留点;

真实停留点聚类子模块,用于对所述终端的真实停留点进行聚类分析,得到所述终端的历史停留区域。

进一步地,所述最优卸载决策确定模块340包括:

终端与基站的关系判断子模块,用于判断所述终端的未来停留区域是否处于在距离未来停留区域预设范围内的基站的覆盖重叠区;

第一任务卸载子模块,用于若所述终端的未来停留区域未处于所述在距离未来停留区域预设范围内的基站的覆盖重叠区,则通过第一最优能耗模型基于所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息获得第一最优卸载决策,并根据所述第一最优卸载决策从所述终端中卸载待执行任务;

第二任务卸载子模块,用于若所述终端的未来停留区域处于所述在距离未来停留区域预设范围内的基站的覆盖重叠区,则通过第二最优能耗模型基于所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素获得第二最优卸载决策,并根据所述第二最优卸载决策从所述终端中卸载待执行任务。

进一步地,所述第一任务卸载子模块包括:

距离信息输入子模块,用于将所述终端的未来停留区域与所述在距离未来停留区域预设范围的基站之间的距离信息输入至所述第一最优能耗模型;

变异萤火虫算法计算子模块,用于通过所述第一最优能耗模型利用变异萤火虫算法得到所述第一最优卸载决策;

第一卸载子模块,用于根据所述第一最优卸载决策从所述终端中将待执行任务卸载到对应的基站。

进一步地,所述第二任务卸载子模块包括:

距离信息以及基站影响因素输入子模块,用于将所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素输入至所述第二最优能耗模型;

优化模拟退火智能算法计算子模块,用于通过所述第二最优能耗模型利用优化模拟退火智能算法得到所述第二最优卸载决策;

第二卸载子模块,用于根据所述第二最优卸载决策从所述终端中将待执行任务卸载到对应的基站。

进一步地,所述优化模拟退火智能算法计算子模块包括:

待定卸载决策得到子模块,用于基于所述终端的未来停留区域与所述在距离未来停留区域预设范围内的基站之间的距离信息以及基站影响因素,按照预设条件分层次产生待定卸载决策;

初始卸载决策得到子模块,用于利用结合贪心和随机化的策略在所述待定卸载决策中得到初始卸载决策;

第二最优决策得到子模块,用于并发运行得到若干所述初始卸载决策,在若干所述初始卸载决策中选取所述第二最优卸载决策。

图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)810、通信接口(Communication Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的计算机程序,以执行任务卸载方法的步骤,例如包括:

从终端的历史移动轨迹中选取终端的疑似停留点;

根据预设判别方式在终端的疑似停留点中筛选出终端的真实停留点,并得到终端的历史停留区域;

根据终端的历史停留区域预测终端的未来停留区域;

根据终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系得出最优卸载决策,并根据所述最优卸载决策从终端中卸载待执行任务。

此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各实施例所提供的任务卸载方法的步骤,例如包括:

从终端的历史移动轨迹中选取终端的疑似停留点;

根据预设判别方式在终端的疑似停留点中筛选出终端的真实停留点,并得到终端的历史停留区域;

根据终端的历史停留区域预测终端的未来停留区域;

根据终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系得出最优卸载决策,并根据所述最优卸载决策从终端中卸载待执行任务。

另一方面,本申请实施例还提供一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使处理器执行上述各实施例提供的方法的步骤,例如包括:

从终端的历史移动轨迹中选取终端的疑似停留点;

根据预设判别方式在终端的疑似停留点中筛选出终端的真实停留点,并得到终端的历史停留区域;

根据终端的历史停留区域预测终端的未来停留区域;

根据终端的未来停留区域与在距离未来停留区域预设范围内的基站的关系得出最优卸载决策,并根据所述最优卸载决策从终端中卸载待执行任务。

所述处理器可读存储介质可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

技术分类

06120115925626