一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种车联网环境下的边缘计算任务卸载方法与系统与流程

2022-02-21 03:42:41 来源:中国专利 TAG:
一种车联网环境下的边缘计算任务卸载方法与系统与流程

本发明涉及基于移动通信的车联网领域,尤其涉及移动边缘计算和计算任务卸载。

背景技术

基于移动边缘计算(Mobile Edge Computing,MEC)的车联网允许车辆将其计算密集型任务卸载到MEC服务器。与传统云计算相比,MEC车联网将具有充足计算资源的MEC服务器集成到路边单元(Roadside Units,RSUs)中,可以有效避免骨干网传输延迟,满足车载应用计算密集型的需求。在MEC车联网中,一个关键技术就是将计算任务部分地卸载至MEC服务器,以降低任务的完成时延。由于部分卸载时车辆用户设备(Vehicle User Equipment,VUE)需要将部分任务数据通过与RSU之间的无线链路传输至MEC服务器,这会引入额外的通信时延,因此部分卸载决策需要权衡任务卸载的计算收益和通信开销。一个复杂的任务通常包含多个子任务,其中一些子任务的输出是另一些子任务的输入,这些复杂的子任务依赖关系增加了最优卸载决策的问题的复杂度。虽然目前已经有一些研究提出了解决依赖性任务卸载问题的优化方法,但是车联网高度动态的环境给依赖性任务卸载提出了新的挑战:由于RSU的覆盖范围有限以及车辆的高速移动性,当车辆驶出RSU通信范围时,MEC服务器之间就会发生服务切换,以至于为任务卸载过程增加额外数百毫秒的服务切换时延。

然而车辆的高度移动性特点也为服务切换问题提供了解决思路:VUE在任务卸载过程中可能经过多个RSU,因此执行卸载任务的目标MEC服务器有多种选择。通过选择合适的卸载目标MEC服务器使得计算任务完成后,VUE处于该MEC服务器服务范围内,计算结果可以成功返回而不产生服务切换。因此基于车辆移动性感知的卸载方案可以有效避免服务切换。通过预测车辆未来的移动信息,可以提前将任务卸载到合适的MEC服务器,并在到达MEC服务器的通信范围时将计算结果准确地返回给VUE。

目前针对车辆移动性感知的卸载方案的研究仅是针对整个任务进行完全卸载与否的决策,而忽略了依赖性任务的数据依赖特性,没有进行细粒度的部分卸载决策,而降低任务执行时延的关键就在通过优化部分卸载决策来权衡数据传输与计算时延。尤其是在车联网高度动态的网络环境下,依赖性任务中子任务的计算时延和子任务之间的数据传输时延随着VUE所处位置的计算和通信环境的改变而改变,因此需要联合优化卸载目标MEC服务器的选择和任务划分策略,这使得任务卸载问题更加复杂。因此,在车联网高度动态的网络环境下,基于车辆移动性感知的依赖性任务卸载是需要解决的问题。

在MEC车联网中,如何通过计算任务的卸载来降低任务完成时延是一个关键问题。现有技术中有使用任务图来建模子任务之间的依赖关系,其使用顺序图来建模子任务之间的顺序依赖关系,并且提出在卸载过程中,将任务只分割成两部分并分别在用户与MEC服务器端执行的方案是最优的。顺序图是指图中有X个子任务:t1,t2,...tX,其中tx有且仅有一个依赖的子任务tx-1,x=2,3,...X,且t1没有依赖的子任务。但是,实际计算任务对应的任务图并不是顺序图,而是更一般的图。因此针对一般任务图,有研究进一步地提出任务图通常具有层次性,而且都具有单一的输入节点和输出节点,并针对这样的性质将任务卸载问题建模成一个线性规划问题。这些研究的重点在于优化任务图划分策略,以得到最优的子任务部分卸载决策。但是以上研究都假设在任务卸载过程中通信和计算环境是不变的。

在车联网这种高度动态场景中,需要结合车辆移动性选择合适的MEC服务器来执行卸载任务,现有技术中有提出通过预测车辆未来的移动信息,可以提前将任务整体地卸载到合适的MEC服务器,并在到达MEC服务器的通信范围时将计算结果准确地返回给VUE。因此这些研究的重点在于优化目标MEC服务器选择策略,以得到最优的任务整体卸载决策。然而,这些研究对于依赖性任务不再适用,由于子任务依赖性与计算与通信环境是强耦合的,需要联合优化卸载目标MEC服务器的选择和任务划分策略,这使得任务卸载问题更加复杂。



技术实现要素:

本发明针对上述问题,根据本发明的第一方面,提出一种用于车联网的边缘计算任务卸载方法,其中,所述车联网包括一个或多个mBS,以及在每个mBS覆盖范围内的多个RSU,RSU之间依次有线回程连接,所述方法包括:

步骤1:VUE通过RSU向mBS上传计算任务卸载请求,所述请求包含与该计算任务相关的说明信息,至少包括:计算任务图、任务本地计算时需要的计算资源和能耗的要求;

步骤2:mBS收到任务卸载请求后,获取VUE未来位置信息,以及根据VUE可能经过的小区内的通信环境、计算环境以及与该计算任务相关的所述说明信息,为VUE确定本地计算时需要占用的计算资源fl和上传任务时的传输功率Pt、确定VUE所有子任务中的本地计算子任务集合和远程执行子任务集合的划分策略、选择执行卸载任务的目标MEC服务器,以使得VUE经过目标MEC服务器所在小区时,被卸载的任务在目标MEC服务器上执行完成;

步骤3:VUE根据mBS反馈的本地资源分配和任务划分结果,完成需要本地计算的子任务,并将计算中间数据上传至所述目标MEC服务器;

步骤4:目标MEC服务器收到VUE上传的中间数据后,执行剩余的子任务,以使得计算完成后,VUE位于目标MEC服务器所在的小区内,以及VUE通过当前小区内的RSU获取计算结果。

在本发明的一个实施例中,还包括:

各RSU周期性地向mBS报告所在小区内通信和计算环境信息,所述小区内通信和计算环境信息至少包括:小区内RSU的固定功率、RSU与VUE通信链路的信道增益及MEC的CPU频率。

在本发明的一个实施例中,其中步骤2包括:

步骤21:mBS根据VUE所处小区内的通信、计算环境,以及用户上传的任务说明信息,求解LRA得到VUE的资源分配策略{fl,Pt},其中LRA是通过松弛JO-MSTO子任务依赖约束得到的,所述JO-MSTO是通过对基于车辆移动性感知的卸载机制进行建模得到的最小时延的MEC服务器选择与任务划分联合优化问题;

步骤22:基于{fl,Pt},结合VUE移动性预测结果,对VUE将来可能经过的所有小区,由近至远,循环执行步骤23和步骤24,直到满足卸载位置约束;

步骤23:基于小区Uk内RSU上报的通信、计算环境,VUE上报的计算任务图G0(V,E,D)以及资源分配方案{fl,Pt},计算小区Uk内对应的计算任务时延图Gk=(V,E,W);

步骤24:对Gk=(V,E,W),执行MLTP算法,得到小区Uk内对应的最优TLG划分决策Xk,其中所述MLTP算法是以低时间复杂度的条件求得图Gk(V,E,W)的最优划分Ecut;

步骤25:循环终止后,得到卸载目标MEC服务器选择策略A,同时由{fl,Pt,A}输出相应的最优任务划分策略

在本发明的一个实施例中,其中步骤21包括:

通过线性规划和凸优化之间的交替极小化来获得{fl,Pt}。

在本发明的一个实施例中,其中步骤23包括:

步骤231:Gk=(V,E,W)各顶点与顶点之间的连接关系与计算任务图G0(V,E,D)相同,令Gk(V,E)=G0(V,E);

步骤232:计算Gk=(V,E,W)中各个点的权重;

步骤233:计算Gk=(V,E,W)中各个边的权重。

在本发明的一个实施例中,其中,步骤24包括:

在第j次迭代中,将计算出Gk(V,E,W)在本次迭代中的TLG Gk,j(V,E,W)的最小时延划分,然后选择两个节点合并,生成用于下次迭代的TLG Gk,j 1,通过比较迭代过程中生成的所有划分结果的时延,得到最小时延划分方案,j为正整数。

在本发明的一个实施例中,其中计算任务图G0(V,E,D)用于描述子任务的计算数据量以及各子任务之间的输入输出数据量,V、E、D分别为点的集合、边的集合与权重的集合,图中点表示子任务,两个点之间有边表示这两个子任务之间有依赖关系,点的权重为子任务的计算数据量,边的权重为数据传输量。

在本发明的一个实施例中,其中计算任务时延图TLG描述各子任务以及子任务之间的关系,V、E、W分别为点的集合、边的集合与权重的集合,两个点之间有边表示这两个子任务之间有依赖关系,点的权重为子任务的计算时延,边的权重为数据传输的时延。

根据本发明的第二方面,提供一种车联网系统,包括一个或者多个mBS,以及在每个mBS覆盖范围内的多个RSU,RSU之间依次有线回程连接,其中:

所述RSU用于接收VUE上传的计算任务卸载请求并将其提供给mBS,所述请求包含与该计算任务相关的说明信息,至少包括:计算任务图、任务本地计算时需要的计算资源和能耗的要求;

所述mBS用于在收到任务卸载请求后,获取VUE未来位置信息,以及根据VUE可能经过的小区内的通信环境、计算环境以及与该计算任务相关的所述说明信息,为VUE确定本地计算时需要占用的计算资源fl和上传任务时的传输功率Pt、确定VUE所有子任务中的本地计算子任务集合和远程执行子任务集合的划分策略、选择执行卸载任务的目标MEC服务器,以使得VUE经过目标MEC服务器所在小区时,被卸载的任务在目标MEC服务器上执行完成;

所述VUE用于根据mBS反馈的本地资源分配和任务划分结果,完成需要本地计算的子任务,并将计算中间数据上传至所述目标MEC服务器;以及

所述目标MEC服务器收到VUE上传的中间数据后,执行剩余的子任务,以使得计算完成后,VUE位于目标MEC服务器所在的小区内,以及VUE通过当前小区内的RSU获取计算结果。

根据本发明的第三方面,提供一种计算机可读存储介质,其中存储有一个或者多个计算机程序,所述计算机程序在被执行时用于实现本发明的车联网的边缘计算任务卸载方法。

根据本发明的第四方面,提供一种计算系统,包括:存储装置、以及一个或者多个处理器;其中,所述存储装置用于存储一个或者多个计算机程序,所述计算机程序在被所述处理器执行时用于实现本发明的车联网的边缘计算任务卸载方法。

与现有技术相比,本发明的优点在于可以有效避免任务卸载过程中的业务切换,同时,与现有的卸载方案相比,任务完成时延降低了40%以上。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1(a)示出了本发明实施例的车联网架构;

图1(b)示出了本发明的计算任务图示例;

图1(c)示出了本发明的计算任务时延图示例;

图2示出了本发明实施例的流程图;

图3示出了RA-MLTP的实施流程图;

图4示出了LRA最优解示意图;

图5示出了最小时延TLG划分算法实例;

图6示出了不同任务卸载方案下的任务完成时延对比;

图7示出了不同预测准确度下的任务完成时延对比。

具体实施方式

图1(a)示出了本发明提出的双层异构MEC车联网架构。宏基站(macro Base Station,mBS)与MEC服务器MEC-Server0共址部署,在宏基站覆盖范围内,包含多个路边单元(Roadside Units,RSUs),表示为K为RSU数量,如图所示沿单向行驶车道等间隔布置,在RSUk覆盖范围内形成小区Uk,各个RSU与宏基站之间通过有线回程连接,RSU之间依次也有有线回程连接,具有充足计算资源的MEC服务器与各个RSU共址部署,与RSUk共址部署的MEC服务器为MEC-Serverk,MEC-Serverk的计算资源表示为fk,fk为MEC-Serverk的CPU频率。mBS负责处理整个区域内车辆用户的任务卸载请求,实时获取各MEC资源状态、各小区内的通信环境以及车辆位置信息,并预测未来车辆位置。车辆用户采用部分卸载的方式,在每个RSU覆盖范围内,车辆通过无线链路向RSU上的MEC服务器上传计算任务或获取计算结果,而计算任务数据可以在RSU之间通过回程链路传输。由于各RSU覆盖范围较小,车辆在任务卸载过程中可能会经过多个小区。

为了减小任务卸载时延,本发明的卸载方案考虑了以下两个要求:首先,应该通过预先卸载的方法,将任务卸载至用户将要移动到的位置所在小区的MEC服务器,以避免服务切换时延。其次,需要结合车辆移动性预测结果实施最优的任务卸载决策以确定卸载目标MEC服务器和任务划分策略。

本发明假设计算任务包含多个子任务,且子任务之间有依赖关系,子任务被划分为两部分,分别在车辆和卸载目标MEC服务器上执行。卸载决定按照以下流程进行:假设车辆未来的位置信息由mBS提前预测,从而选择合适的MEC服务器来卸载子任务,如图1所示,车辆在U1处产生任务卸载请求,并将请求上传至mBS,mBS为了最小化任务完成延迟,利用通信和计算状态信息,获得最优的资源分配和任务卸载策略。基于任务完成时延最小和车辆未来位置信息,判断卸载目标MEC服务器为MEC-Servern,并且将子任务划分成两部分,一部分子任务由车辆本地执行,本地计算完成后,将中间结果传输到MEC-Servern,由MEC-Servern完成剩余的子任务,使得MEC-Servern计算完成后,车辆正好处于MEC-Servern的通信范围Uk内,以向车辆返回计算结果。

本发明采用计算任务图G0(V,E,D)(简写为G0)描述子任务的计算数据量以及各子任务之间的输入输出数据量,V、E、D分别为点的集合、边的集合与权重的集合,图中点表示子任务,两个点之间有边表示这两个子任务之间有依赖关系,当子任务A需要子任务B的计算结果时,子任务A依赖于子任务B,子任务B的计算结果将被传输给子任务A,边的方向为由子任务B指向子任务A,点的权重为子任务的计算数据量,边的权重为数据传输量。图1(b)为计算任务图示例,图中点a、b、c、d、e、f为子任务,子任务b依赖于子任务a。

本发明采用计算任务时延图(task latency graph,TLG)G(V,E,W)描述各子任务以及子任务之间的关系,V、E、W分别为点的集合、边的集合与权重的集合。图中边的方向与计算任务图中边的方向的意义相同,点的权重为子任务的计算时延,边的权重为数据传输的时延。进一步的,子任务的计算时延包括两种时延:在VUE本地计算的时延与在MEC服务器上计算的时延,当然,当任务卸载策略确定后,一个子任务要么在车辆本地计算,要么在MEC服务器上计算。边的权重包括上传与下载时延,当输出数据的子任务在MEC服务器上计算,而接收数据的子任务在VUE上计算时,数据从MEC服务器传到VUE上,为这条边的下载时延;当输出数据的子任务在VUE上计算,而接收数据的子任务在MEC服务器上计算时,数据从VUE传到MEC服务器上,为这条边的上传时延。图1(c)为一个计算任务时延图示例,图中点a、b、c、d、e、f为子任务,子任务b依赖于子任务a,点上有两个权重,第一个权重为本地计算的时延,第二个权重为在MEC服务器上计算的时延,例如子任务b的本地计算时延为3,MEC服务器计算时延为1。边也有两个权重,第一个权重为数据上传的时延,第二个权重为数据下载的时延,例如由子任务b到子任务c,上传时延为8,下载时延为6。显然在不同的MEC服务器上计算时计算与数据传输时延不同,因此每个MEC-Server的计算任务时延图是不同的,MEC-Serverk的计算任务图为Gk(V,E,W),简写为Gk。

为便于mBS作出决策,各RSU周期性地向mBS报告所在小区内通信和计算环境信息,所述小区内通信和计算环境信息包括:小区Uk内RSU的固定功率PF、RSU与VUE通信链路的信道增益hk及MEC-Serverk的CPU频率fk。基于此,如图2所示,本发明提出的针对依赖性任务的车辆移动性感知卸载机制详细流程如下:

步骤1:假设VUE在小区U1处产生计算任务卸载需求,通过RSU1向mBS上传计算任务卸载请求,该请求包含与该计算任务相关的说明信息,所述计算任务相关的说明信息包括:计算任务图G0(V,E,D)、所有子任务全部本地计算时需要的计算资源flmax和能耗的要求Emax;

步骤2:当mBS收到任务卸载请求后,通过移动性预测等方法获取VUE未来位置信息,根据VUE可能经过的小区Uk内的通信环境、计算环境以及计算任务信息,完成如下决策:为VUE确定本地计算时需要占用的计算资源fl和上传任务时的传输功率Pt、确定VUE所有子任务V中的本地计算子任务集合Vl和远程执行子任务集合Vs的划分策略{Vl,Vs}、选择执行卸载任务的目标MEC服务器MEC-Servern,其中所选目标MEC服务器MEC-Servern使得VUE经过MEC-Servern所在小区时,被卸载的任务恰好在MEC-Servern上执行完成;

步骤3:VUE根据mBS反馈的本地资源分配和任务划分结果,完成需要本地计算的子任务Vl,并将计算中间数据上传至目标MEC服务器;

步骤4:目标MEC服务器收到VUE上传的中间数据后,根据mBS的指令执行剩余的子任务Vs,计算完成后,VUE恰好位于目标MEC服务器MEC-Servern所在的小区内,此时VUE通过当前小区内的RSU获取计算结果。

步骤2中mBS执行的决策过程实际上是解决一个目标MEC服务器选择与任务划分联合优化问题(Joint Optimization of Target MEC ServerSelection and Task Partition,JO-MSTP),以下描述该优化问题的形成过程:

定义所有子任务V的计算任务时延任务图的划分为{Vl,Vs},其中Vl代表本地执行的子任务集合,Vs代表卸载到MEC服务器的子任务集合,且Vl∪Vs=V,计算任务时延图中有N个点和M条边。同时定义是{Vl,Vs}的一个分割。定义一组二进制变量集合X={X(v),X(e)}来指示任务图划分策略,即任务划分结果,其中若vi∈Vl,则否则同样,若则否则定义中间数据传输指示变量Im∈{0,1},m=1,2,...M,其中Im=1和Im=0分别代表是上传和下载链路。

权重集合W={W(e),W(v)}表示子任务传输和计算时延,其中传输时延记为其中分别代表上下行传输时延,计算时延记为分别表示vi本地计算和卸载至远程MEC服务器的计算时延。

下面计算任务卸载时延,包括以下两部分:

(1)本地计算:设为车辆用户分配的本地计算CPU频率为fl(fl<flmax),因此由W(v)可得本地计算时延为

其中表示具有数据量的子任务vi本地计算所需的计算时延,α表示计算强度的参数,由计算任务的特性(如计算复杂度)决定。

(2)任务卸载:首先目标MEC服务器计算时延为:

其中表示子任务vi在MEC服务器上计算所需的计算时延。

假设上下行信道带宽分别为WU和WD的加性高斯白噪声信道,hk表示车与RSUk传输时的信道增益,高斯白噪声功率谱密度为N0。假设Pt表示为车辆用户分配的上行传输功率,PF表示RSU的固定功率,因此小区Uk上下行传输速率为

RU,k=WUlog2(1 Pthk/N0) (3)

RD,k=WDlog2(1 PFhk/N0) (4)

由此可以得到子任务之间传输数据量为的上下行传输时延,也就是TLG中边的权重:

当所有子任务被分为本地执行的子任务集合Vl,和卸载到MEC服务器的子任务集合Vs后,所有属于Vl的子任务之间无需进行链路上的数据传输,因为都在本地计算,因此它们之间的数据传输时延为0,同样地,所有属于Vs的子任务之间也无需进行链路上的数据传输,因为它们都在同一MEC服务器上计算,因此只有当两个子任务分别属于Vl和Vs时,它们之间才可能有进行链路上的数据传输的需要,即计算传输时延仅计算属于Ecut的边,以图1(b)为例,如果a、b、c在本地计算,d、e、f在MEC上计算,计算传输时延仅计算bd之间的边和ce之间的边的传输时延。因此任务卸载过程中上行总时延tU,n包括从VUE上传到RSU1和从RSUn依次传输到目标MEC的RSUn的时延,下行传输时,车辆已到达目标MEC所在小区,下行总时延tD,n仅包括从RSUn到VUE的传输时延,tU,n和tD,n分别为:

其中是上行传输总数据量,Bi表示RSUi与RSUi 1之间回程链路传输速率,因此需要在计算上下行时延时分别需乘上额外开销因子β1和β2,由于上传和下载时的信道编码、数据加密等造成了额外开销,因此该任务卸载时延包括MEC服务器计算和由U1到Un的数据传输时延,即

其中tU,k、tD,k、ts,k分别代表用户在小区Uk内的上行传输、下行传输和服务器计算时延,变量指示目标MEC服务器选择策略,其中ak=1代表任务需要卸载至MEC-Serverk执行,且由于卸载目标MEC为MEC-Servern,an=1。任务卸载过程中,车辆的能耗来自于本地计算和子任务传输,已知CPU计算功率为P=κf3,其中κ是由芯片结构决定的常系数。因此本地计算产生的能耗为:

同时,子任务数据传输产生的能耗为:

Ec=(P0 ktPt)tU,1 PrtD,n (9)

其中P0,kt和Pr分别表示车辆的静态传输功率、功率放大器的有效系数以及接收功率,tU,1为在小区U1内上传任务的传输时延,

根据以上分析,车辆在任务卸载过程中的任务完成时延和能耗可以表示为fl,Pt,X和A的函数,即

T(fl,Pt,X,A)=tl to (10)

E(fl,Pt,X,A)=El Ec (11)

由此,最终得到最小时延的任务卸载决策问题:由于车辆用户对应用程序的能耗有着比较严格的约束,且对时延更加敏感。因此,最小时延的任务卸载决策问题通过优化资源分配和任务卸载,在保证车辆能量消耗需求的同时,使任务完成时延最小:

s.t.C1:E(fl,Pt,X,A)≤Emax

C8:Im∈{0,1},m∈M

C9:ak∈{0,1},k∈K

其中C1-C3为资源和能源消耗约束,C4为卸载位置约束,C5为子任务依赖约束,其中C4的约束条件

记为卸载过程中车辆行驶距离,Sk是小区Uk的覆盖范围,车辆在Uk处完成计算任务。

综上,通过对基于车辆移动性感知的卸载机制进行建模,得到了最小时延的MEC服务器选择与任务划分联合优化问题JO-MSTP,由该问题的目标函数可以看到,通过求解该问题,可以得到车辆用户最优的资源分配策略{fl,Pt}、目标MEC服务器选择策略A以及任务图划分策略X,在本发明中提出了一种基于问题分解的两阶段算法:资源分配-最小时延TLG划分算法(Resource Allocation-minimum latency TLG partitioning,RA-MLTP)解决该问题。

RA-MLTP在第一阶段,通过松弛子任务依赖约束,将JO-MSTP转化为本地资源分配问题(Local Resource Allocation,LRA),通过解决LRA问题,可以得到车辆用户最优的资源分配策略{fl,Pt}。在第二阶段,在每个小区Uk内,给定{fl,Pt}和小区内通信、计算环境,即可计算出该小区内的任务时延图Gk=(V,E,W),随后运行提出的基于图论的最小时延TLG划分算法(minimum latency TLG partitioning,MLTP),可得小区Uk内对应的最优TLG划分决策Xk。随后,结合车辆移动性信息,在车辆可能经过的小区集合{Uk}中,循环执行MLTP算法,直到满足卸载位置约束C4即可得到卸载目标MEC服务器选择策略A,同时由{fl,Pt,A}输出相应的最优任务划分策略T(fl,Pt,X,A)。RA-MLTP的算法流程如图3所示,具体过程如下:

步骤21:mBS根据VUE所处小区内的通信、计算环境,以及用户上传的任务说明信息,求解本地资源分配问题(Local Resource Allocation,LRA),LRA是通过松弛JO-MSTO子任务依赖约束得到的,在mBS上运行LRA求解算法,可以得到VUE的资源分配策略{fl,Pt};

步骤22:基于{fl,Pt},结合VUE移动性预测结果,对VUE将经过的所有小区,按先后顺序,循环执行步骤23和步骤24,直到满足卸载位置约束:

找出满足约束的第一个小区后,就不改考虑其它小区了,因为考虑到回程链路传输时延随着传输小区数而线性增加,因此满足条件的第一个小区一定是时延最小的。

步骤23:在给定资源分配方案{fl,Pt}的情况下,对于小区Uk,利用小区内的通信、计算环境信息,计算任务时延图Gk(V,E,W);

步骤24:对Gk(V,E,W),执行基于图论的最小时延TLG划分(Minimum Latency TLG Partition,MLTP)算法,可得小区Uk内对应的最优TLG划分决策Xk。

步骤25:循环终止后,得到卸载目标MEC服务器选择策略A,同时由{fl,Pt,A}输出相应的最优任务划分策略

其中,步骤23包括:以小区Uk内RSU上报的通信、计算环境,VUE上报的计算任务图G0(V,E,D)以及资源分配方案{fl,Pt}为输入,输出小区Uk内对应的TLG:

步骤231:Gk(V,E,W)各点与点之间的连接关系与计算任务图G0相同,令Gk(V,E)=G0(V,E)。

步骤232:对于Gk(V,E,W)中各个点,令为本地计算所需的计算时延,令为MEC-Serverk上计算所需的计算时延,其中为G0(V,E,D)中点的权重。

步骤233:假设Pt表示为车辆用户分配的上行传输功率,PF表示RSU的固定功率,计算小区Uk上下行传输速率:

RU,k=WUlog2(1 Pthk/N0), (14)

RD,k=WDlog2(1 PFhk/N0). (15)

由此可以得到TLG中边的权重:其中为G0(V,E,D)中边的权重。

下面给出RA-MLTP的本地资源分配(Local Resource Allocation,LRA)算法和MLTP(Minimum Latency TLG Partition,MLTP)算法的具体流程。(1)本地资源分配(LRA)算法

本地资源分配目的是确定最优传输功率Pt和本地CPU频率fl,假设在Pt和fl下,任务卸载比例为λ(λ表示本地计算的比例,1-λ表示卸载到MEC计算的比例),任务总数据量为Ω,因此将任务执行时间、任务执行能耗表达式变化为:

其中,表示K个MEC服务器中CPU频率的最小值,此时式(16)为在K个MEC服务器中选一个作为目标服务器的最大时延,因此最小化式(16)可以保证LRA求得的Pt和fl满足能耗约束。

将最小化任务执行时间作为目标,考虑总能耗、最大功率及最大CPU频率占用的约束,可以将式(12)改写为:

(16)式为表示单用户任务卸载及资源分配联合优化问题,针对该问题的研究已经有很多,本文将利用文献[1]“Y.Wang,M.Sheng,X.Wang,L.Wang,and J.Li,″Mobile-Edge Computing:Partial Computation Offioading Using Dynamic Voltage Scaling,″in IEEE Transactions on Communications,vol.64,no.10,pp.4268-4282,Oct.2016.”中的时延最优的部分计算卸载算法(Latency-Optimal Partial Computation Offloading,LPCO)解决该问题。由于(16)式仍是非凸的优化问题,文献[1]介绍了一种寻找次优解的算法,通过构造一组非递增的决策变量序列,可以找到该问题的局部最优解。首先引入变量t(t≤T(fl,Pt,λ)),并令将原本不光滑的问题转化为如下的光滑的问题:

同样,将式(17)改写为:

观察(19)可以发现,当固定fl和r时,(19)就变成了关于λ和t的线性优化规划问题;而当固定λ和t时,(19)就变成了关于fl和r的一个凸优化问题。因此文献[1]通过线性规划和凸优化之间的交替极小化来求解(19):首先给定(19)的一个可行解在固定的前提下,通过解决线性规划问题得到(λ1,t1);然后再固定(λ1,t1)解决凸问题得到持续这个过程,直到两个连续迭代的目标值之间的相对差小于一个预定的阈值ε之后停止。

为了得到一个非递增的序列,原来的最小化时延问题改写为以下形式:

目标函数表达式中的第一项与约束条件C10有关,而C10第一项的表达式是关于r的函数,因此可以将其表示为r的函数x1(r)。最优解r的取值情况如图4(b)所示,显然x2(r)是随着r单调递增的,因此为了得到最优的r值,本发明需要讨论x1(r)的单调性。观察公式(20)的最后一项的表达式可以发现,g(r)是r的严格凸函数,并且有全局最优解。因此(19)的最优解可以由数值方法得到,下面分两种情况讨论:

(1)g(r)在[rmin, ∞)上单调递增。当g(r)增大时,受约束条件C10影响,fl需要相应地减小,因此x1(r)在此范围内是单调递增的。如图4(a)所示,x1(r)和x2(r)在[rmin, ∞)都是单调递增的,因此优化问题(19)的最优r值为rmin。

(2)g(r)在上单调递减,在)上单调递增。如图4(b)所示,当)时的情况与(17)相同,因此最优r值为。但是此时并没有找到问题的最优解,最优的r值在区间内,本发明将最优解的搜索范围缩小在区间内,通过限定搜索步长,可以在有限步内得到最优解

根据以上分析,算法1给出了解决本地资源分配问题的具体步骤。

(2)最小时延TLG划分(MLTP)算法

当车辆用户执行完本地资源分配算法后,会将资源分配结果fl,Pt通过RSU上传至宏基站,宏基站根据各小区内的通信、计算环境计算出TLG,然后执行MLTP算法确定各小区内的最优任务划分策略X。由于TLG中子任务的传输时延与通信环境有关,因此在本节中本申请介绍单蜂窝内最小化时延的TLG划分算法,该算法以TLG Gk(V,E,W)作为输入,输出结果为Gk(V,E,W)的划分结果Xk及对应任务执行总时延。

将TLG划分策略X描述为点集划分问题{Vl,Vs},从而将其转化为寻找合适的划分边集Ecut的问题,如果要用穷举法比较所有划分方案的话,算法的复杂度随着|Ecut|指数增长。因此本发明提出了TLG划分算法希望在低时间复杂度的条件下求得图Gk(V,E,W)最优划分Ecut。该算法的基本思想为:在第j次迭代中,将计算出Gk(V,E,W)在本次迭代中的TLG Gk,j(V,E,W)的最小时延划分,然后选择两个节点合并,生成用于下次迭代的TLG Gk,j 1,j为正整数。最后通过比较迭代过程中生成的所有划分结果的时延,得到最小时延划分方案。因此,每次迭代的关键在于如何保证通过一次比较获得该阶段下Gk,j的最优划分方案并生成Gk,j 1。下面介绍算法中两个核心操作:

(1)合并G=Merge(G,va,vb)

假设有两个需要合并的节点va,vb∈V(va≠vb)按照以下步骤合并:

a)va,vb用新节点va,b代替,所有与va,vb连接的边连接至va,b。

b)如果出现平行边,则将平行边的权重相加,变为一条边;点va,b的权重为va,vb权重之和。

(2)最小划分[cut(Q-vb,vb),va,vb]=Mincut(G)

最小划分算法的关键是要保证在每次执行该算法后返回当前图G的一个最小时延划分,算法按照以下步骤执行:

a)从G中的不可卸载节点q开始,令Q={q}

b)逐步有序地将与集合Q关联的点添加到Q中

c)最后两个添加到Q中的点分别记为va,vb

d)第n次迭代的G划分结果为(Vn\\{vb},{vb})

算法过程详见2,算法执行结束后,合并va,vb节点就可以生成下次迭代所需要的Gk,j 1。按照这个步骤,本发明可以保证划分方案(Vn\\{vb},{vb})为该阶段的最优划分方案,首先定义cut(Q-vb,vb)的划分时延:

其中,是所有节点的总本地计算时延,代表卸载节点vb带来的时延的减少量,而表示卸载带来的额外通信时延。

其次定义Q的最邻近点为:添加到Q中后使Δ(vi)最大的点vi,其中

由初始状态Q={q}开始,逐步将最邻近点添加到Q中。这样生成的集合Q中的点组成的图为一个顺序图。

定理1:记cut(H)表示在顺序图G中任意一个s-t分割,其中s,t是图中最后的两个节点,s-t分割将s,t两个节点分到了不同的两部分。则cut(Q-t,t)为时延最小的s-t分割,即Tcut(Q-t,t)≤Tcut(H)

证明:记Qv为在v之前添加到集合Q中的节点集合,u为v前一个节点,Hv为一个任意的u-v分割,下面用数学归纳法证明,对于任意的u,v,均有

1)设u0,v0为顺序图G中的开始两个节点时,假设成立。

2)设对于任意的u,有

3)对于u的后继节点v,有

因此,对于任意的u,v,均有由于u,v的任意性,可得Tcut(Q-t,t)≤Tcut(H)成立。

因此,由算法2,可以一次性获得第j次迭代时的最小时延划分。随着不断地合并图的最后两个节点,可以遍历所有的可能,通过比较这些划分方案的划分时延,就可以得到时延最小的划分策略。算法3描述了MLTP算法详细过程,该算法从合并本地计算节点开始,在迭代过程的每一个阶段中输出基于该阶段任务时延图Gk,j的最小时延划分方案,每次迭代完成后记录当前计算出的最小时延划分策略,最终通过多次迭代即可获得最优划分策略。

(3)MLTP算法实例

设有一计算任务的TLG如图5(a)所示,节点a和f代表的子任务只能在本地执行。现要对图5(a)执行时延最小TLG划分算法求最优划分。首先合并只能本地执行的节点a和f,得到图5(b)。

随后迭代执行算法Mincut(G),由于图5(b)有5个节点,因此需要执行5-1=4次。第1次执行过程如图5(c)所示,各个点添加到集合Q中的顺序为:{af},b,c,e,d,因此第1次的划分结果为{{af},b,c,e},{d},合并的点为{d,e}={de},计算可得划分时延为Tcut(Q-d,d)=(3 3 9 6 12)-(12-1) 3 2=27。

第2次执行过程如图5(d)所示,各个点添加到集合Q中的顺序为:{a,f},b,c,{e,d},因此第2次的划分结果为{{af},b,c},{de},合并的点为{c,{de}}={cde},计算可得划分时延为Tcut(Q-de,de)=33-(18-5) 3 2 7=32

第3次执行过程如图5(e)所示,各个点添加到集合Q中的顺序为:{af},b,{cde},因此第3次的划分结果为{{af},b},{cde},合并的点为{b,{cde}}={bcde},计算可得划分时延为Tcut(Q-cde,cde)=33-(27-8) 11 3 7=35

第4次执行过程如图5(f)所示,各个点添加到集合Q中的顺序为:{af},{bcde},因此第3次的划分结果为{{af}},{bcde},合并的点为{{af},{bcde}}={abcdef},计算可得划分时延为Tcut(Q-bcde,bcde)=33-(30-9) 7 7=26

对比四次Mincut(G)结果,最小的划分时延为Tcut(Q-bcde,bcde)=26,因此得到最优划分策略为:子任务{a,f}在本地计算,子任务{b,c,d,e}卸载至MEC服务器进行远程计算。

以下为对本发明的仿真的说明。

表1 仿真参数设置

具体的仿真参数设置如表1所示,考虑一个单向执行道路,沿路边等间隔部署多个RSU,每个小区内的上下行链路带宽WU,WD均服从[5,15]MHz的均匀分布,每个MEC服务器的计算资源fk服从[7×108,9×108]cycles/s的均匀分布。选择以下三种卸载策略作为对比策略:

(1)完全卸载:在满足能耗约束的前提下,将所有子任务都以最大传输功率卸载到MEC服务器执行。

(2)不卸载:所有子任务都在本地执行,并在满足能耗约束的前提下为车辆分配最多的计算资源。

(3)部分卸载:Min-Cost offloading Partitioning(MCOP)算法可以获得给定资源分配策略下任意任务的最小延迟分区策略,然而,MCOP忽略了车辆的移动性问题,因此需要在车辆在小区间移动时进行服务切换。对于以上卸载策略,假设每次服务切换时延τ服从[0.25,2]s的均匀分布。

图6显示了不同任务数据量Ω下各卸载策略的任务完成时延。随着Ω增加,与RA-MLTP相比,其他三种策略的任务完成延迟均显著增加。由于不卸载的策略不涉及服务切换,因此其时延线性增加。当Ω<40M时,由于服务切换较少,RA-MLTP算法略优于其他三种策略。但RA-MLTP在Ω较大时具有明显的优势,因为任务无法在单个小区完成,而其他三种策略的服务切换会增加额外的延迟。特别地,Ω=110M时,与MCOP算法相比,RA-MLTP算法降低了45.23%的延迟。

由于所提出的移动感知卸载方案中使用了车辆未来移动信息,因此车辆位置预测的准确性非常重要。如果预测的车辆位置与实际车辆位置存在较大差距,则计算完成后车辆可能无法到达预测位置。因此,图7比较了不同预测精度下所提算法的性能。当Ω逐渐增加时,无移动性预测的策略的任务完成时延显著增加。另一方面,不同预测精度的RA-MLTP算法的性能差距很小。例如当Ω=110M,最差的预测结果r=80%仅比较好的预测结果r=97%多12.91%的任务完成时延。这是因为即使车辆位置预测存在偏差,也可以根据预测提前卸载到离车辆更近的位置,以减少服务切换时延。结果也表明了移动感知卸载的重要性。

需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。

本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。

计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。

为使本领域任何普通技术人员能够实现或者使用本公开内容,上面围绕本公开内容进行了描述。对于本领域普通技术人员来说,对本公开内容进行各种修改是显而易见的,并且,本文定义的通用原理也可以在不脱离本公开内容的精神或保护范围的基础上适用于其它变型。此外,除非另外说明,否则任何方面和/或实施例的所有部分或一部分可以与任何其它方面和/或实施例的所有部分或一部分一起使用。因此,本公开内容并不限于本文所描述的例子和设计方案,而是与本文公开的原理和新颖性特征的最广范围相一致。

[1]Y.Wang,M.Sheng,X.Wang,L.Wang,and J.Li,″Mobile-Edge Computing:Partial Computation Offloading Using Dynamic Voltage Scaling,″in IEEE Transactions on Communications,vol.64,no.10,pp.4268-4282,Oct.2016.

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献