基于集群的车载任务卸载的方法、装置及存储介质

文档序号:33713392发布日期:2023-04-01 01:52阅读:54来源:国知局
基于集群的车载任务卸载的方法、装置及存储介质

1.本技术涉及车载边缘计算技术领域,具体地涉及一种基于集群的车载任务卸载的方法、装置及存储介质。


背景技术:

2.近年来,自动驾驶(self-driving)和自动导航(auto navigation)等计算密集和时延敏感的新型车载应用不断涌现,这些应用通常需要大量的计算资源和实时的响应,这给计算能力受限的车辆提出了严峻的挑战。为了应对这一挑战,车载边缘计算(vehicular edge computing,vec)通过将计算密集或时延敏感型车载任务卸载至具有空闲计算资源的周边车辆执行,以满足大量新型车载应用对时延、计算能力等需求,从而降低了车辆对任务的执行时延。然而,在车辆移动速度快、分布不均匀以及网络拓扑不断变化的车联网场景中实现任务卸载是一项具有挑战性的工作。针对上述问题,集群被认为是一个有效的解决方案。
3.当前,国内外相关研究人员对车辆集群方面和基于集群的车载任务卸载方面都做了大量研究。针对车辆集群方面的研究,现有的集群生成标准有多种。例如一种基于车辆集群的邻居跟踪策略,其集群是根据车辆间的距离形成的。考虑到车辆的动态变化,现有技术中还提出了一种车辆兼容性的车辆集群方案,该方案将速度相似的车辆划分为一个集群,以此来保持集群内车辆较长时间的连接。然而,仅仅基于距离或者速度的集群形成可能会导致集群成员频繁的变化。现有技术中,通过基站利用车辆的相对速度和链路寿命来建立集群,提出了一种多跳移动区域方案,但实际中由于传输阻塞和非视线等限制,基站可能无法与大多数车辆进行通信。此外,现有技术中还提出一个基于集群的车载任务卸载方案,该方案考虑了多车辆行驶过程中的任务卸载问题,其中,有服务需求的车辆可以将产生的任务卸载至附近集群内的服务车辆。该方案旨在满足时延约束的条件下通过最小化系统的能耗来选择最佳的计算任务卸载策略。然而该方案是基于已经形成的集群进行任务卸载,集群的生成方式不考虑任务卸载的效果。
4.综上,现有技术中的车辆集群的任务卸载方案存在任务卸载性能较差且无法适应车辆的动态变化的问题。


技术实现要素:

5.本技术实施例的目的是提供一种基于集群的车载任务卸载的方法、装置及存储介质,用以解决现有技术中的车辆集群的任务卸载方案存在任务卸载性能较差且无法适应车辆的动态变化的问题。
6.为了实现上述目的,本技术第一方面提供一种基于集群的车载任务卸载的方法,包括:
7.构建系统模型,系统模型包括任务产生和卸载模型以及集群产生模型;
8.获取预设范围内的所有车辆的运行数据;
9.根据运行数据将预设范围内的所有车辆划分为多台任务车和多台集群头;
10.根据运行数据和集群产生模型分别确定每台任务车对应的集群头;
11.分别根据每台任务车和与每台任务车对应的集群头的运行数据,通过任务产生和卸载模型确定每台任务车的执行成本;
12.根据每台任务车的执行成本确定系统执行成本;
13.根据系统执行成本确定最优卸载策略;
14.其中,最优卸载策略为在系统执行成本最小的情况下的目标集群选择决策、目标卸载比例决策和目标传输功率决策。
15.在本技术实施例中,运行数据包括车辆的速度数据和位置数据,根据运行数据和集群产生模型分别确定每台任务车对应的集群头包括:
16.根据任务车的位置数据和多台集群头的位置数据确定任务车分别与多台集群头之间的距离;
17.根据任务车的速度数据和多台集群头的速度据确定任务车分别与多台集群头的速度差;
18.将与任务车之间的距离满足预设距离条件,且速度差满足预设速度条件的集群头作为任务车对应的集群头。
19.在本技术实施例中,通过任务产生和卸载模型确定每台任务车的执行成本包括:
20.根据任务产生和卸载模型确定任务车在本地执行车载任务产生的本地时延和本地能耗;
21.根据任务产生和卸载模型确定任务车在边缘端执行车载任务产生的卸载时延和卸载能耗;
22.根据本地时延、本地能耗、卸载时延和卸载能耗确定任务车的执行成本。
23.在本技术实施例中,系统执行成本满足公式(1):
[0024][0025]
其中,u为系统执行成本,η1为执行时延的权重因子,η2为执行能耗的权重因子,为本地时延,为本地能耗,为卸载时延,为卸载能耗,x
n,m
为集群选择决策,yn为卸载比例决策,m为集群头的数量,n为集群成员候选车的数量。
[0026]
在本技术实施例中,根据系统执行成本确定最优卸载策略包括:
[0027]
根据系统执行成本确定系统的集群选择子问题、卸载比例子问题和传输功率子问题;
[0028]
根据集群选择子问题确定目标集群选择决策;
[0029]
根据卸载比例子问题确定目标卸载比例决策;
[0030]
根据传输功率子问题确定目标传输功率决策。
[0031]
在本技术实施例中,根据集群选择子问题确定目标集群选择包括:
[0032]
在给定卸载比例决策和传输功率决策的情况下,对集群选择子问题进行迭代,以得到目标集群选择决策。
[0033]
在本技术实施例中,根据卸载比例子问题确定目标卸载比例包括:
[0034]
在给定集群选择决策和传输功率决策的情况下,对卸载比例子问题进行迭代,以
得到目标卸载比例决策。
[0035]
在本技术实施例中,根据传输功率子问题确定目标传输功率包括:
[0036]
在给定卸载比例决策和集群选择决策的情况下,对传输功率子问题进行迭代,以得到目标传输功率决策。
[0037]
本技术第二方面提供一种基于集群的车载任务卸载的装置,包括:
[0038]
存储器,被配置成存储指令;以及
[0039]
处理器,被配置成从存储器调用指令以及在执行指令时能够实现上述的基于集群的车载任务卸载的方法。
[0040]
本技术第三方面提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行上述的基于集群的车载任务卸载的方法。
[0041]
通过上述技术方案,先构建系统模型,获取预设范围内所有车辆的运行数据,根据系统模型将预设范围内的所有车辆划分为多台任务车和多台集群头,再根据运行数据通过系统模型确定每台任务车分别对应的集群头以及每台任务车的执行成本,进而确定预设范围内的整个系统的执行成本,以确定系统的最优卸载策略,其中,最优卸载策略即在系统执行成本最小的情况下的目标集群选择决策、目标卸载比例决策和目标传输功率决策。本技术通过以预设范围内所有车辆构成的系统中的任务车的任务卸载性能为导向构建集群,同时确定系统的最优卸载策略,因此系统的任务卸载性能较强,并且根据车辆运行数据划分集群有利于增强集群的稳定性,保证车辆间的稳定通信。
[0042]
本技术实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
[0043]
附图是用来提供对本技术实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本技术实施例,但并不构成对本技术实施例的限制。在附图中:
[0044]
图1为本技术实施例提供的一种基于集群的车载任务卸载的方法的流程示意图;
[0045]
图2为本技术一具体实施例提供的vec网络下的系统模型的结构示意图;
[0046]
图3为本技术一具体实施例提供的在不同数量的集群头下的基于集群的车载任务卸载的算法的收敛性的示意图;
[0047]
图4为本技术实施例提供的一种基于集群的车载任务卸载的装置的结构框图。
具体实施方式
[0048]
为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解的是,此处所描述的具体实施方式仅用于说明和解释本技术实施例,并不用于限制本技术实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0049]
需要说明,若本技术实施例中有涉及方向性指示(诸如上、下、左、右、前、后
……
),则该方向性指示仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
[0050]
另外,若本技术实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本技术要求的保护范围之内。
[0051]
图1为本技术实施例提供的一种基于集群的车载任务卸载的方法的流程示意图。如图1所示,本技术实施例提供一种基于集群的车载任务卸载的方法,该方法可以包括下列步骤。
[0052]
步骤101、构建系统模型,系统模型包括任务产生和卸载模型以及集群产生模型。
[0053]
在本技术实施例中,构建系统模型即构建vec系统划分集群并计算系统内的所有车辆执行车载任务的最优策略。图2为本技术一具体实施例提供的vec网络下的系统模型的结构示意图。如图2所示,系统模型包含任务产生和卸载模型以及集群产生模型,即划分集群的同时,实现集群内部的车载任务的本地执行以及任务卸载。为了解决车辆计算能力不足的问题,本技术实施例提出了任务产生和卸载模型,在该模型中,计算能力受限的车辆可以将产生的任务卸载至计算能力强的车辆。其次为了使得车辆间的通信质量保持稳定,确保车辆间可以进行稳定的计算任务卸载,基于任务产生和卸载模型,本技术实施例提出了集群产生模型,每个集群由一辆计算能力强的车辆和多辆计算能力受限的车辆组成,其中计算能力受限的车辆可以将任务卸载至该计算能力强的车辆。
[0054]
步骤102、获取预设范围内的所有车辆的运行数据。
[0055]
在本技术实施例中,预设范围指现实中一具体路段,路段的选择由实际需求而定。在一个示例中,获取预设范围内的所有车辆的运行数据,即获取在设定时间内在该路段运行的所有车辆的运行数据。其中,由于本技术实施例以建模任务车在某一期间内的任务产生为目的,将该期间划分为多个相等的时隙,因此,设定时间还可以理解为一设定时隙,即在一设定时隙内采集车辆的运行数据,进而对一个时隙内该路段中的车辆的车载任务的执行选择最优策略。由于车辆行驶速度快,因此一个周期的时长可以设置较小,例如1秒等。在本技术实施例中,车辆的运行数据可以包括但不限于车辆的速度数据、车辆的位置数据、车辆的任务传输速率、车辆的cpu频率、车辆的最大传输功率、车辆的最小传输需求等。
[0056]
步骤103、根据运行数据将预设范围内的所有车辆划分为多台任务车和多台集群头;
[0057]
在本技术实施例中,可以通过预设范围内的车辆的运行数据将预设范围内的车辆划分为集群头和任务车辆。其中,集群头即预设范围内所有车辆所形成的系统中的计算能力强,车载任务可本地执行而不需要卸载执行的车辆;任务车辆即自身任务处理能力较差,本地处理需要较高的时延和能耗,因此需要将车载任务卸载至其它任务处理能力强的车辆去执行的车辆。在一个具体实施例中,在如图2所示的vec系统中,定义了m辆计算能力强的车辆作为集群头(cluster headers,chs),n辆计算能力受限的车辆作为集群成员候选车(cluster member candidates,cmcs),每辆cmc可以将产生的任务卸载至一辆ch。在本技术实施例中,可以用代表chs标号的集合,代表chs标号的集合,代表cmcs标号的集合,一旦某辆cmc加入到一个集群,它就会变成该集群的集群成员(cluster member,cm)。可以
理解的是,上述的集群成员候选车以及集群成员即本技术实施例中的任务车,任务车即由于自身计算能力不足而需将产生车载任务的全部或部分卸载至计算能力强的车辆执行的车辆。
[0058]
步骤104、根据运行数据和集群产生模型分别确定每台任务车对应的集群头;
[0059]
在本技术实施例中,考虑到实际车联网场景的影响因素,如车辆间的相对速度、车辆的通信距离、车辆的传输速率、路径损耗等。本技术实施例可以通过集群产生模型确定每台任务车对应的集群头,其中集群产生模型中限定了任务车与集群头之间建立联系应该满足的限定条件。在一个示例中,该限定条件可以包括任务车与集群头之间的相对速度、距离以及任务卸载会产生的时延和能耗等。也就是说,可以采用以车辆间的速度、距离、任务卸载的时延和能耗等多项指标确定任务车对应的集群头,进而建立稳定集群。
[0060]
步骤105、分别根据每台任务车和与每台任务车对应的集群头的运行数据,通过任务产生和卸载模型确定每台任务车的执行成本。
[0061]
在本技术实施例中,每台任务车的任务执行成本即每台车任务车的车载任务在本地执行所产生的时延和能耗以及在边缘端执行所产生的时延和能耗的加权和。在一个示例中,为了建模任务车在某一期间内的任务产生,本技术实施例将其划分为多个相等的时隙。值得注意的是,每个时隙的间隔是非常短的,所以可以认为每个时隙内车辆的位置几乎是不变的。在每个时隙初,每辆任务车最多产生一个任务,然后制定一个合适的方案进行任务卸载。因此,可以通过任务产生和卸载模型确定任务每台任务车的执行成本,以确定最优卸载策略。在一个示例中,任务产生和卸载模型可以包括集群的选择决策x,卸载比例决策y和传输功率决策p
tr
,它们可分别用公式表示为:
[0062][0063]
其中,x
n,m
∈{0,1}代表n-th cmc是否卸载任务至m-th ch,x
n,m
=1表示n-th cmc卸载任务至m-th ch,x
n,m
=0,表示n-th cmc未卸载任务至m-th ch,n-th cmc表示一辆任务车,m-th ch表示一辆集群头,yn∈[0,1]代表任务车决定卸载的任务比例,代表任务车的传输功率。如果一辆任务车选择本地执行自身产生的全部任务,那它的任务卸载比例为0;否则,每辆任务车仅可以卸载它的任务至对应的集群头。因此,x
n,m
和yn的关系满足公式(1)和公式(2):
[0064][0065][0066]
此外,每辆任务车的传输功率通常是有限的,满足公式(3):
[0067][0068]
其中,为任务车的最大传输功率。
[0069]
在本技术实施例中,任务车即需要卸载任务的车辆,因此,任务车的选择决策x值为1,通过任务产生和卸载模可以根据任务车产生的车载任务以及任务车及任务车对应的集群头的运行数据确定任务车的执行成本。
[0070]
步骤106、根据每台任务车的执行成本确定系统执行成本。
[0071]
在本技术实施例中,在确了系统中所有任务车的时延和能耗的基础上,通过对所有任务车的执行成本进行累加,可以确定vec系统的系统执行成本,即所有任务车的执行时延和能耗的加权和。以任务车的车载任务执行的时延和能耗为导向确定各任务车的执行成本,进一步根据所有任务车的执行成本确定系统的执行成本,有利于以最小化系统执行任务的时延和能耗为导向确定卸载策略以及构建集群,从而提高系统任务卸载的性能。
[0072]
步骤107、根据系统执行成本确定最优卸载策略;其中,最优卸载策略为在系统执行成本最小的情况下的目标集群选择决策、目标卸载比例决策和目标传输功率决策。
[0073]
在本技术实施例中,最优卸载策略是指在预设范围内的所有车辆构成的系统中,使得整个系统得时延和能耗最小化的所有任务车的目标集群选择决策、目标卸载比例决策和目标传输功率决策。其中,目标集群选择决策即使整个系统的时延和能耗最小化的包含所有任务车的集群选择的数据集,目标卸载比例决策即使整个系统的时延和能耗最小化的包含所有任务车的卸载比例的数据集,目标传输功率决策即使整个系统的时延和能耗最小化的包含所有任务车的传输功率的数据集。在本技术实施例中,由于每辆任务车都可以通过优化它的集群选择,任务卸载比例和传输功率来最小化vec系统的任务执行时延和能耗。因此,在确了系统中所有任务车的时延和能耗的基础上,可以通过对所有任务车的执行成本进行累加,以确定vec系统的系统执行成本,即所有任务车的执行时延和能耗的加权和。以任务车的车载任务执行的时延和能耗为导向确定各任务车的执行成本,进一步根据所有任务车的执行成本确定系统的执行成本,有利于以最小化系统执行任务的时延和能耗为导向确定卸载策略以及构建集群,从而提高系统任务卸载的性能。
[0074]
通过上述技术方案,先构建系统模型,获取预设范围内所有车辆的运行数据,根据系统模型将预设范围内的所有车辆划分为多台任务车和多台集群头,再根据运行数据通过系统模型确定每台任务车分别对应的集群头以及每台任务车的执行成本,进而确定预设范围内的整个系统的执行成本,以确定系统的最优卸载策略,其中,最优卸载策略即在系统执行成本最小的情况下的目标集群选择决策、目标卸载比例决策和目标传输功率决策。本技术通过以预设范围内所有车辆构成的系统中的任务车的任务卸载性能为导向构建集群,同时确定系统的最优卸载策略,因此系统的任务卸载性能较强,并且根据车辆运行数据划分集群有利于增强集群的稳定性,保证车辆间的稳定通信。
[0075]
在本技术实施例中,运行数据包括车辆的速度数据和位置数据,根据运行数据和集群产生模型分别确定每台任务车对应的集群头包括:
[0076]
根据任务车的位置数据和多台集群头的位置数据确定任务车分别与多台集群头之间的距离;
[0077]
根据任务车的速度数据和多台集群头的速度数据确定任务车分别与多台集群头的速度差;
[0078]
将与任务车之间的距离满足预设距离条件,且速度差满足预设速度条件的集群头作为任务车对应的集群头。
[0079]
在本技术实施例中,可以根据任务车和所有集群头的运行数据中的位置数据和速度数据确定一台任务车的对应的集群头,从而确定整个系统中的任务车分别对应的集群头,从而划分集群。在一个实例中,集群的产生应该满足以下条件:
[0080]
第一、由于集群产生方案是以任务卸载为导向的,所以所产生的集群应该可以实
现最小的vec系统的执行时延和能耗加权和。
[0081]
第二、由于集群头和任务车间的距离越短意味着集群头和任务车间有更大的传输速率和更好的通信质量,所以集群的生成基于集群头和任务车间的距离。因此,则任务车与该任务车对应的集群头间的距离需要满足公式(4):
[0082][0083]
其中,l
n,m
代表任务车与该任务车对应的集群头间的传输距离,l
max
代表任务车与该任务车对应的集群头间的最大通信距离。
[0084]
第三、由于任务车与集群头间的速度差可以影响网络连接的稳定性,因此,同一个集群的任务车应该有相似的速度,即任务车与该任务车对应的集群头的速度应该满足公式(5):
[0085][0086]
其中,代表任务车的速度,代表该任务车对应的集群头ch的速度,v
max
代表任务车与对应的集群头间的最大速度差。
[0087]
本技术实施例考虑了很多实际车联网场景的影响因素,如车辆间的相对速度、车辆的通信距离、车辆的传输速率、路径损耗等,通过利采用以车辆间的速度、距离、任务卸载的时延和能耗多项指标建立稳定集群,有利于保证车辆间的稳定通信,从而提高系统任务卸载的性能。
[0088]
在本技术实施例中,通过任务产生和卸载模型确定每台任务车的执行成本包括:
[0089]
根据任务产生和卸载模型确定任务车在本地执行车载任务产生的本地时延和本地能耗;
[0090]
根据任务产生和卸载模型确定任务车在边缘端执行车载任务产生的卸载时延和卸载能耗;
[0091]
根据本地时延、本地能耗、卸载时延和卸载能耗确定任务车的执行成本。
[0092]
在本技术实施例中,每台任务车的任务执行成本即每台车任务车的车载任务在本地执行所产生的时延和能耗以及在边缘端执行所产生的时延和能耗的加权和。本地时延即任务车的车载任务在本地执行所产生的时延,本地能耗即车载任务在本地执行所参数的能耗,其中,本地执行即任务车产生的车载任务由本车系统执行。卸载时延即任务车的车载任务在边缘端执行所产生的时延,卸载能耗即任务车的车载任务在边缘端执行所产生的能耗,其中,车载任务在边缘端执行即任务车的车载任务卸载至边缘端的集群头,由集群头处理所产生的时延和能耗。
[0093]
在一个示例中,如果任务车本地执行所产生的任务,则执行该任务的所产生的本地时延满足公式(6):
[0094][0095]
其中,为本地时延,cn为本地执行任务所需的计算量,为任务车的cpu频率。
[0096]
基于执行时延,本地执行该任务车的车载任务所产生的本地能耗满足公式(7):
[0097]
[0098]
其中,为本地能耗,是任务车的计算功率,ρ为一种能耗转化系数,其取值与芯片架构有关。
[0099]
在另一个示例中,如果任务车产生的任务被卸载到对应的集群头执行,则该任务的执行时延包括:1)该任务从任务车上传至对应的集群头的上行链路传输时延;2)对应的集群头的任务处理时延;3)任务结果从对应的集群头回传至任务车的下行链路传输时延。本专利考虑到任务结果的数据量通常很小,因此任务结果回传到任务车的时延可以被忽略,所以任务卸载的卸载时延可以满足公式(8):
[0100][0101]
其中,为卸载时延,sn为上传任务的数据量,为任务车的cpu频率,是上行链路的传输速率,上行链路的传输速率满足公式(9):
[0102][0103]
其中,w
n,m
是任务车与对应的集群头间的无线信道带宽,h
n,m
是小尺度衰减增益(服从瑞利分布),n0是噪声功率,α
n,m
是服从遵循3gpp路径损耗模型的大尺度衰减增益,α
n,m
可以满足公式(10):
[0104]
α
n,m
=128.1+37.6log
10
(l
n,m
);
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(10)
[0105]
值得注意的是,由于r
n,m
影响任务车和集群头间的通信质量,因此,每辆任务车的传输速率应该满足公式(11):
[0106][0107]
其中,代表任务车的最小的传输速率需求。
[0108]
基于任务卸载时延,任务卸载的卸载能耗可以满足公式(12):
[0109][0110]
其中,为卸载能耗,是集群头的计算功率。
[0111]
在得到任务车在本地执行车载任务以及在边缘端执行车载任务分别产生的时延和能耗之后,根据本地时延、本地能耗、卸载时延和卸载能耗进行加权求和,以得到任务车的执行成本。以任务车的车载任务执行的时延和能耗为导向确定任务车的执行成本,为进一步确定系统的执行成本打下基础,有利于以最小化系统执行任务的时延和能耗为导向确定卸载策略以及构建集群。
[0112]
在本技术实施例中,系统执行成本满足公式(13):
[0113][0114]
其中,u为系统执行成本,η1为执行时延的权重因子,η2为执行能耗的权重因子,为本地时延,为本地能耗,为卸载时延,为卸载能耗,x
n,m
为集群选择决策,yn为卸载比例决策,m为集群头的数量,n为集群成员候选车的数量。
[0115]
在本技术实施例中,在确了系统中所有任务车的时延和能耗的基础上,通过对所
有任务车的执行成本进行累加,可以确定vec系统的系统执行成本,即所有任务车的执行时延和能耗的加权和。如公式(13),其中,η1和η2分别为执行时延和能耗的权重因子,η1+η2=1,根据不同的任务需求,可以设置不同的权重因子,来调整时延和能耗对执行成本的影响。例如,当任务为时延敏感型任务时,可以设置大的η1,当任务为能耗敏感型任务时,可以设置大的η2。以任务车的车载任务执行的时延和能耗为导向确定各任务车的执行成本,进一步根据所有任务车的执行成本确定系统的执行成本,有利于以最小化系统执行任务的时延和能耗为导向确定卸载策略以及构建集群,从而提高系统任务卸载的性能。
[0116]
在本技术实施例中,根据系统执行成本确定最优卸载策略包括:
[0117]
根据系统执行成本确定系统的集群选择子问题、卸载比例子问题和传输功率子问题;
[0118]
根据集群选择子问题确定目标集群选择决策;
[0119]
根据卸载比例子问题确定目标卸载比例决策;
[0120]
根据传输功率子问题确定目标传输功率决策。
[0121]
在本技术实施例中,每辆任务车都可以通过优化它的集群选择,任务卸载比例和传输功率来最小化vec系统的任务执行时延和能耗,使vec系统的任务执行的时延和能耗最小化的系统中所有任务车各自的集群选择、任务卸载比例和传输功率称之为优化问题。需要注意的是,由于采集车辆运行数据的每个时隙的间隔是有限的,所以每辆集群头可以执行的卸载任务的数据量是有限的,因此一个时隙内每辆集群头所能处理的数据量应该满足公式(14):
[0122][0123]
其中,代表在一个时隙内集群头所能处理的最大数据量。因此,优化问题可以满足公式(15):
[0124][0125]
可以理解的是,公式(15)的含义为在满足公式(2)至(6)以及公式(11)和公式(13)的限定条件下,确定系统的时延和能耗最小化时系统内所有任务车的目标集群选择、目标任务卸载比例和目标传输功率,即最优卸载策略。
[0126]
在本技术实施例中,由于优化问题(15)中的未知变量x,y和p
tr
各自具有不同的特点(如当yn和为连续变量时,x
n,m
是一个二元变量),并且每个变量都不能被其它两个变量所表示,所以很难通过求解问题(15)获得最优的x,y,p
tr
。因此,在本技术实施例中,可以通过将优化问题(15)分解为集群选择子问题、卸载比例子问题和传输功率子问题三个独立的子问题,并通过一种交替迭代算法来共同优化x,y和p
tr
三个变量,以得到优化问题(15)的最优解。通过联合优化集群选择、卸载比例和传输功率三个变量来最小化vec系统的任务执行时延和能耗,以确定优化问题,并将优化问题分解为三个独立的子问题,采用交替迭代算法通过迭代求解获得原问题的最优解,有利于使得原始复杂的问题易于解决,从而提高系统处理效率。
[0127]
在本技术实施例中,根据集群选择子问题确定目标集群选择包括:
[0128]
在给定卸载比例决策和传输功率决策的情况下,对集群选择子问题进行迭代,以
得到目标集群选择决策。
[0129]
在本技术实施例中,由于优化问题(15)中的未知变量x,y和p
tr
各自具有不同的特点(如当yn和为连续变量时,x
n,m
是一个二元变量),并且每个变量都不能被其它两个变量所表示,所以很难通过求解问题(15)获得最优的x,y,p
tr
。因此,在将优化问题(15)分解为集群选择子问题、卸载比例子问题和传输功率子问题三个独立的子问题之后,可以通过一种交替迭代算法来共同优化x,y和p
tr
三个变量,以得到优化问题(15)的最优解。
[0130]
在一个示例中,可以给定卸载比例决策y和传输功率决策p
tr
,以确定集群选择决策x,此时,集群选择子问题满足公式(16):
[0131][0132]
由于x
n,m
为二元变量,所以该问题是个标准的0-1线性规划问题,可以利用matlab优化工具箱(intlinprog函数)来解决。
[0133]
可以理解的是,公式(16)的含义为在满足公式(2)至(6)以及公式(11)和公式(13)的限定条件下,给定系统中各任务车的卸载比例决策y和传输功率决策p
tr
,确定使系统的执行成本最小化的系统中各任务车的集群选择决策x。采用交替迭代算法通过迭代求解获得原问题的最优解,有利于使得原始复杂的问题易于解决,从而提高系统处理效率。
[0134]
在本技术实施例中,根据卸载比例子问题确定目标卸载比例包括:
[0135]
在给定集群选择决策和传输功率决策的情况下,对卸载比例子问题进行迭代,以得到目标卸载比例决策。
[0136]
在本技术实施例中,由于优化问题(15)中的未知变量x,y和p
tr
各自具有不同的特点(如当yn和为连续变量时,x
n,m
是一个二元变量),并且每个变量都不能被其它两个变量所表示,所以很难通过求解问题(15)获得最优的x,y,p
tr
。因此,在将优化问题(15)分解为集群选择子问题、卸载比例子问题和传输功率子问题三个独立的子问题之后,可以通过一种交替迭代算法来共同优化x,y和p
tr
三个变量,以得到优化问题(15)的最优解。
[0137]
在一个示例中,可以给定集群选择决策x和传输功率决策p
tr
,以确定卸载比例决策y,此时,卸载比例子问题满足公式(17):
[0138][0139]
该问题是个标准的线性规划问题,因此,可以利用matlab优化工具箱(linprog函数)来解决。
[0140]
可以理解的是,公式(16)的含义为在满足公式(2)、公式(3)和公式(13)的限定条件下,给定系统中各任务车的集群选择决策x和传输功率决策p
tr
,确定使系统的执行成本最小化的系统中各任务车的卸载比例决策y。采用交替迭代算法通过迭代求解获得原问题的最优解,有利于使得原始复杂的问题易于解决,从而提高系统处理效率。
[0141]
在本技术实施例中,根据传输功率子问题确定目标传输功率包括:
[0142]
在给定卸载比例决策和集群选择决策的情况下,对传输功率子问题进行迭代,以得到目标传输功率决策。
[0143]
在本技术实施例中,由于优化问题(15)中的未知变量x,y和p
tr
各自具有不同的特点(如当yn和为连续变量时,x
n,m
是一个二元变量),并且每个变量都不能被其它两个变量
所表示,所以很难通过求解问题(15)获得最优的x,y,p
tr
。因此,在将优化问题(15)分解为集群选择子问题、卸载比例子问题和传输功率子问题三个独立的子问题之后,可以通过一种交替迭代算法来共同优化x,y和p
tr
三个变量,以得到优化问题(15)的最优解。
[0144]
在一个示例中,可以给定集群选择决策x和卸载比例决策y,以确定传输功率决策p
tr
,此时,传输功率子问题满足公式(18):
[0145][0146]
可以理解的是,公式(18)的含义为在满足公式(4)和公式(11)的限定条件下,给定系统中各任务车的集群选择决策x和卸载比例决策y,确定使系统的执行成本最小化的系统中各任务车的传输功率决策p
tr

[0147]
在本技术一个具体实施例中,经实验证明分析,传输功率子问题(18)的目标函数和约束条件都是凸函数,即目标函数和约束条件的二阶导数大于等于0,所以该问题是个关于p
tr
的凸优化问题。具体证明如下:
[0148][0149][0150][0151]
通过凸优化方法能够有效解决该问题。首先写出问题(18)的对偶问题,因为对偶问题的解是与问题(18)的解相同的,而对偶问题的解可以通过kkt条件容易得到。具体步骤如下:
[0152]
步骤一、通过拉格朗日函数获得对偶问题。
[0153]
公式(18)的拉格朗日函数如公式(22):
[0154][0155]
其中λ=[λ1,

,λn],β=[β1,

,βn]分别代表约束条件(4)和(11)的拉格朗日乘子。根据公式(22),优化问题(18)的对偶问题的可以表示为:
[0156][0157]
步骤二、引入最优解(p
tr*

*

*
)的kkt条件。
[0158]
λ
*

*
≥0;
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(24)
[0159][0160][0161][0162]
其中表示关于p
tr
的次梯度集。
[0163]
步骤三、基于公式(25)-(27),可以通过以下步骤获得优化问题的最优解(p
tr*

*

*
)。
[0164]
步骤1:令t=0,初始化λ
(t)

(t)
》0;
[0165]
步骤2:根据(25)获得最优的p
tr(t)

[0166]
步骤3:令t=t+1,根据梯度下降法计算λ
(t)

(t)

[0167]
步骤4:如果满足kkt条件中的(26)和(27),就输出(p
tr(t)

(t)

(t)
)作为最优解,否则返回至步骤2;
[0168]
为了进一步说明本技术一具体实施例使用梯度下降法根据公式(26)和(27)获得λ
(t)

(t)
,公式(26)和(27)可以进一步写作:
[0169][0170][0171]
优化问题(28)和(29)可以分别通过下列梯度下降法求解:
[0172][0173][0174]
其中t为迭代次数,η1,η2》0为步长。
[0175]
在本技术又一具体实施例中,提供一种基于集群的车载任务卸载的算法,该算法的伪代码可以表示为:
[0176]
输入:chs的cpu频率cmcs的cpu频率chs的标号的集合,cmcs的标号的集合,cmcs的最大传输功率cmcs的最小的传输速率需求最大的迭代次数k
max
,容忍度ε,能耗转化系数ρ。
[0177]
输出:集群选择决策x,卸载比例决策y,发射功率决策p
tr

[0178]
1、设k=0,初始化可行解x
(k)
,y
(k)
,p
tr(k)

[0179]
2、计算目标函数的值2、计算目标函数的值
[0180]
3、给定y
(k)
和p
tr(k)
,通过求解子问题(15)获得x
(k+1)

[0181]
4、给定x
(k+1)
和p
tr(k)
,通过求解子问题(16)获得y
(k+1)

[0182]
5、给定x
(k+1)
和y
(k+1)
,通过求解子问题(17)获得p
tr(k+1)

[0183]
6、计算u
(k+1)

[0184]
7、if|u
(k+1)-u
(k)
|《εor k》k
max then
[0185]
8、输出x
(k+1)
,y
(k+1)
,p
tr(k+1)
作为最优解。
[0186]
9、else
[0187]
10、设k=k+1,返回至步骤3。
[0188]
为验证基于集群的车载任务卸载的算法的有效性,分别采用本技术实施例提供的方法进行了matlab编程仿真,仿真参数设置如下:
[0189]
仿真中考虑了m辆集群头chs和n辆集群成员候选车cmcs行驶在2千米的双向道路上。假设不同任务的数据量sn和所需要的计算量cn是不同的,但计算强度是不同的,但计算强度保持不变,η1=0.5/s,η2=0.5/j。其它参数设置如表1,表1为仿真参数设置表,其中,n-th cmc表示任务车,m-th ch表示集群头。
[0190]
表1
[0191][0192][0193]
以表1所示的参数配置进行迭代确定最优解,以验证上述基于集群的车载任务卸载的算法的收敛性。图3为本技术一具体实施例提供的在不同数量的集群头下的基于集群的车载任务卸载的算法的收敛性的示意图。如图3所示,图3中呈现了不同数量的集群头下基于集群的车载任务卸载的算法的收敛情况,从图3中可知,尽管基于集群的车载任务卸载的算法的收敛速度随着m的增加而下降,但该算法都能在10次内快速收敛,证明基于集群的车载任务卸载的算法的具有快速收敛性。因此,交替迭代算法通过迭代求解获得原问题的最优解,有利于使得原始复杂的问题易于解决,从而提高系统处理效率。
[0194]
图4为本技术实施例提供的一种基于集群的车载任务卸载的装置的结构框图。如图4所示,本技术实施例提供一种基于集群的车载任务卸载的装置,可以包括:
[0195]
存储器410,被配置成存储指令;以及
[0196]
处理器420,被配置成从存储器410调用指令以及在执行指令时能够实现上述的基于集群的车载任务卸载的方法。
[0197]
具体地,在本技术实施例中,处理器420可以被配置成:
[0198]
构建系统模型,系统模型包括任务产生和卸载模型以及集群产生模型;
[0199]
获取预设范围内的所有车辆的运行数据;
[0200]
根据运行数据将预设范围内的所有车辆划分为多台任务车和多台集群头;
[0201]
根据运行数据和集群产生模型分别确定每台任务车对应的集群头;
[0202]
分别根据每台任务车和与每台任务车对应的集群头的运行数据,通过任务产生和卸载模型确定每台任务车的执行成本;
[0203]
根据每台任务车的执行成本确定系统执行成本;
[0204]
根据系统执行成本确定最优卸载策略;
[0205]
其中,最优卸载策略为在系统执行成本最小的情况下的目标集群选择决策、目标卸载比例决策和目标传输功率决策。
[0206]
进一步地,处理器420还可以被配置成:
[0207]
运行数据包括车辆的速度数据和位置数据,根据运行数据和集群产生模型分别确定每台任务车对应的集群头包括:
[0208]
根据任务车的位置数据和多台集群头的位置数据确定任务车分别与多台集群头之间的距离;
[0209]
根据任务车的速度数据和多台集群头的速度据确定任务车分别与多台集群头的速度差;
[0210]
将与任务车之间的距离满足预设距离条件,且速度差满足预设速度条件的集群头作为任务车对应的集群头。
[0211]
进一步地,处理器420还可以被配置成:
[0212]
通过任务产生和卸载模型确定每台任务车的执行成本包括:
[0213]
根据任务产生和卸载模型确定任务车在本地执行车载任务产生的本地时延和本地能耗;
[0214]
根据任务产生和卸载模型确定任务车在边缘端执行车载任务产生的卸载时延和卸载能耗;
[0215]
根据本地时延、本地能耗、卸载时延和卸载能耗确定任务车的执行成本。
[0216]
在本技术实施例中,系统执行成本满足公式(13):
[0217][0218]
其中,u为系统执行成本,η1为执行时延的权重因子,η2为执行能耗的权重因子,为本地时延,为本地能耗,为卸载时延,为卸载能耗,x
n,m
为集群选择决策,yn为卸载比例决策,m为集群头的数量,n为集群成员候选车的数量。
[0219]
进一步地,处理器420还可以被配置成:
[0220]
根据系统执行成本确定最优卸载策略包括:
[0221]
根据系统执行成本确定系统的集群选择子问题、卸载比例子问题和传输功率子问题;
[0222]
根据集群选择子问题确定目标集群选择决策;
[0223]
根据卸载比例子问题确定目标卸载比例决策;
[0224]
根据传输功率子问题确定目标传输功率决策。
[0225]
进一步地,处理器420还可以被配置成:
[0226]
根据集群选择子问题确定目标集群选择包括:
[0227]
在给定卸载比例决策和传输功率决策的情况下,对集群选择子问题进行迭代,以得到目标集群选择决策。
[0228]
进一步地,处理器420还可以被配置成:
[0229]
根据卸载比例子问题确定目标卸载比例包括:
[0230]
在给定集群选择决策和传输功率决策的情况下,对卸载比例子问题进行迭代,以得到目标卸载比例决策。
[0231]
进一步地,处理器420还可以被配置成:
[0232]
根据传输功率子问题确定目标传输功率包括:
[0233]
在给定卸载比例决策和集群选择决策的情况下,对传输功率子问题进行迭代,以得到目标传输功率决策。
[0234]
通过上述技术方案,先构建系统模型,获取预设范围内所有车辆的运行数据,根据系统模型将预设范围内的所有车辆划分为多台任务车和多台集群头,再根据运行数据通过系统模型确定每台任务车分别对应的集群头以及每台任务车的执行成本,进而确定预设范围内的整个系统的执行成本,以确定系统的最优卸载策略,其中,最优卸载策略即在系统执行成本最小的情况下的目标集群选择决策、目标卸载比例决策和目标传输功率决策。本技术通过以预设范围内所有车辆构成的系统中的任务车的任务卸载性能为导向构建集群,同时确定系统的最优卸载策略,因此系统的任务卸载性能较强,并且根据车辆运行数据划分集群有利于增强集群的稳定性,保证车辆间的稳定通信。
[0235]
本技术实施例还提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行上述的基于集群的车载任务卸载的方法。
[0236]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0237]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0238]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0239]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0240]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0241]
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
[0242]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0243]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0244]
以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1