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

CPS系统中可靠性驱动的分层任务卸载方法和装置

2022-10-26 17:35:36 来源:中国专利 TAG:

cps系统中可靠性驱动的分层任务卸载方法和装置
技术领域
1.本发明属于大规模信息物理融合系统(cyber-physical systems,cps)技术领域,尤其涉及一种cps系统中可靠性驱动的分层任务卸载方法和装置、存储介质。


背景技术:

2.大规模信息物理融合系统(cyber-physical systems,cps)广泛应用于智能电网、工业控制系统、智能交通、虚拟现实/增强现实等工业制造领域和人们的日常生活领域。与此同时,由于互联终端设备的激增,cps的空间和时间维度不断增加,为了提供高质量的服务,这些大规模cps应用具有严格的实时要求。分层任务卸载(hierarchical task offloading, hto)是一种结合了移动边缘计算(mobile edge computing, mec)和设备到设备通信技术(device-to-device, d2d)的计算模式,可以满足大规模cps应用的严格的实时性要求。在hto赋能的大型cps中,在满足能源供应有限和终端设备固有的开放性的前提下,最大程度地降低能源消耗以及优化可靠性,已经成为一个非常重要的研究课题。
3.在尝试降低cps的能耗以及增强可靠性方面,现有的任务卸载方案技术忽略了任务间的依赖性,因此它们只适用于最小化独立任务的能量消耗。从可靠性优化的角度出发,现有的任务卸载方案技术未能将hto方法和可靠性问题结合到大规模cps应用的能源优化中,此外,它们大多集中在一个调度水平上,只有一个终端设备可以作为请求者进行d2d级任务卸载的理想场景。然而,在实际的cps环境中,单个终端设备很可能同时扮演请求者和帮助者的角色,以提高资源利用率。因此迫切需要对分层任务卸载技术进行可靠性驱动的研究,在满足任务可靠性、定时性和可调度性要求的前提下,最小化终端设备的整体能耗。


技术实现要素:

4.本发明要解决的技术问题是,提供一种cps系统中可靠性驱动的分层任务卸载方法和装置,在满足任务可靠性、定时性和可调度性要求的前提下,通过为任务区分不同的能源需求,分析动态能源最优性,最小化终端设备的整体能耗。
5.为实现上述目的,本发明采用如下的技术方案:一种cps系统中可靠性驱动的分层任务卸载方法,包括以下步骤:步骤s1、获取由大规模信息物理融合系统中每个终端设备的应用任务参数和处理器参数;步骤s2、根据所述应用任务参数对任务队列里存储的任务进行分组,得到应用任务列表;步骤s3、根据所述处理器参数和应用任务参数对所述应用任务列表里计算密集型应用任务生成第一可行卸载方案;步骤s4、对所述应用任务列表里通讯密集型应用任务进行转换并生成第二可行卸载方案。
6.作为优选,步骤s2中的应用任务参数为任务队列的任务通讯运算率值ccr值,所述
ccr值为dag应用程序在指定硬件平台上执行期间的平均通信开销与平均计算开销之比。
7.作为优选,步骤s3中处理器参数为处理器功率指数,步骤s3中应用任务参数为任务功率因子。
8.作为优选,步骤s4包括以下步骤:根据任务适应度值导出所述通讯密集型应用任务的任务功率因子,其中,任务适应度值为任务的当前ccr值与预定义的ccr值阈值之差;根据所述通讯密集型应用任务的任务功率因子,生成第二可行卸载方案。
9.本发明还提供一种cps系统中可靠性驱动的分层任务卸载装置,包括:获取模块,用于获取由大规模信息物理融合系统中每个终端设备的应用任务参数和处理器参数;分组模块,用于根据所述应用任务参数对任务队列里存储的任务进行分组,得到应用任务列表;第一处理模块,用于根据所述处理器参数和应用任务参数对所述应用任务列表里计算密集型应用任务生成第一可行卸载方案;第二处理模块,用于对所述应用任务列表里通讯密集型应用任务进行转换并生成第二可行卸载方案。
10.作为优选,分组模块中的应用任务参数为任务队列的任务通讯运算率值ccr值,所述ccr值为dag应用程序在指定硬件平台上执行期间的平均通信开销与平均计算开销之比。
11.作为优选,第一处理模块中处理器参数为处理器功率指数,第一处理模块中应用任务参数为任务功率因子。
12.作为优选,所述第二处理模块包括:第一计算单元,用于根据任务适应度值导出所述通讯密集型应用任务的任务功率因子,其中,任务适应度值为任务的当前ccr值与预定义的ccr值阈值之差;第二计算单元,用于根据所述通讯密集型应用任务的任务功率因子,生成第二可行卸载方案。
13.本发明考虑到大规模信息物理融合系统应用中的实时需求以及分层任务卸载技术中可靠性的需求,通过分类转换并生成可行卸载方案的方式,为cps中每个人物选择合适的任务卸载方案,从而实现任务能耗最小化。本发明对于hto方案驱动的cps系统具有很高的应用价值。
附图说明
14.为了更清楚地说明本发明的技术方案,下面对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
15.图1为本发明实施例cps系统中可靠性驱动的分层任务卸载方法的流程图;图2为本发明实施例cps系统中可靠性驱动的分层任务卸载装置的结构示意图。
具体实施方式
16.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
17.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
18.实施例1:如图1所示,本发明提供一种cps系统中可靠性驱动的分层任务卸载方法,包括以下步骤:步骤s1、获取由大规模信息物理融合系统中每个终端设备的应用任务参数和处理器参数;步骤s2、根据所述应用任务参数对任务队列里存储的任务进行分组,得到应用任务列表;步骤s3、根据所述处理器参数和应用任务参数对所述应用任务列表里计算密集型应用任务生成第一可行卸载方案;步骤s4、对所述应用任务列表里通讯密集型应用任务进行转换并生成第二可行卸载方案。
19.作为本发明实施例的一种实施方式,所述步骤s2具体包括:步骤21、用集合表示所有dag应用包含任务,根据任务队列中的任务中通讯运算率值,随机生成个簇,其中均为簇中心,所述ccr值定义为dag应用程序在指定硬件平台上执行期间的平均通信开销与平均计算开销之比;步骤22、将任务分配给在和之间中具有最小差异的集群中,其中表示集群的中心点,重复此步骤直到所有任务分配完毕;步骤23、判断簇集群中元素总数是否低于预定下边界约束,即,如果是,将所有在中的元素附加到其最近的簇,并更新最近簇的簇中心;并将簇的总数,即,其中,为常量;步骤24、判断簇集群中元素总数是否高于预定上边界约束,即,如果是,将簇集群划分为两个较小的簇,并将簇的总数,即。其中,为常量;步骤25、判断任意两个簇之间的距离是否足够的近,即,如果是,首先将两个相似的簇集群合并成一个
新的簇集群,然后更新簇集群的总数量,其中,为k簇与j簇之间的距离,为常量;步骤26、计算单个簇集群中所有元素的方差进行判断是否超过所允许的阈值,即,如果是,将簇集群划分为两个较小的簇,并将簇的总数,即;其中,为常量;步骤27、返回更新此时的簇集群,所述簇集群为所述应用任务列表中的应用任务,所述应用任务为计算密集型应用任务或通讯密集型任务。
20.作为本发明实施例的一种实施方式,所述步骤s3具体包括:步骤31、获取计算密集型应用任务集ω,并在保持拓扑顺序的前提下,将任务集中所有的任务以任务功率因子按降序进行排列。
21.步骤32、对于处理器功率指数,由低到高的顺序对所有处理器进行排列,即;步骤33、设置pid控制器进行通信能量限制,即d2d或远程通信的每次耗能不能超过给定的阈值,阈值公式为:,阈值公式为:其中,分别表示pid控制器的比例系数、积分系数和导数系数,指的是期望可调度性与第代迭代时可调度性之间的差值,表示为累积积分误差的迭代次数,表示得到导数误差的迭代次数;步骤34、检查任务是否在容器满足所有的约束条件,使用checkconstraints测试函数;如果标志为真,将任务分配至容器,然后从任务集中删除任务,即;步骤35、如果任务被所有的容器拒绝,采用一种首次适应算法方式来确定用于任务执行的节能移动设备,函数为checkconstraints,其中为移动设备;步骤36、对给定的计算密集型dag集群输出更新当前迭代获得的第一可行卸载方案。
22.作为本发明实施例的一种实施方式,所述步骤4具体包括:步骤41、获取通讯密集型任务集,采用超立方体抽样产生初始可行粒子
,所述粒子为通讯密集型任务;步骤42、根据适应度值评估每个初始可行粒子,按照适应度值的降序对所有粒子进行排序,适应度值为粒子的当前ccr值与预定义的ccr值阈值之差;步骤43、对于每个粒子,采用psosr方法随机选择总共个二进制变量来放宽它们的值范围,例如,从0或1到[0,1]中的任意实值,在此步骤中,粒子被划分为和,分别存储连续变量和离散变量;步骤44、通过调用函数offspringcontinuous,为中连续变量构建后代,调用函数offspringcontinuous,为中离散变量构建后代,即和步骤45、结合和生成完整的后代,即,通过顺序舍入函数对中连续变量进行舍入,步骤46、判断对任务集应用分割解决方案时,任务集的当前ccr值是否低于预定义的ccr值阈值,如果是,,否则返回步骤48;步骤47、当成立时,通过利用比较函数比较后代与父代,如果后代优于父代更新粒子,用后代代替父代并调整粒子的进化参数以进行下一轮迭代。
[0023]
步骤48、检查所有粒子,使用选择函数选择具有最佳适应性的粒子,对于粒子,使用函数导出其任务功率因子;步骤49、由于通讯密集型应用任务现在已经变成了计算密集型应用任务,采用步骤s3的方法生成第二可行卸载方案;步骤50、判断迭代终止条件是否满足,如果满足,返回第二可行卸载方案,任务调度结束,否则返回步骤32。
[0024]
下面通过实验来验证本发明的有效性。实施过程中,处理器的工作频率和容器的工作频率分别设置为[1.0,3.5]ghz和[5,20]ghz。单个终端设备的d2d传输功率为[200,2000] ,任意两个终端设备之间的d2d整流带宽为20ghz到100ghz。d2d的最大距离设置为200m。在实验中,利用现实生活中的dag应用程序进行测试,包括openalpr、高斯消减、 montage、分子动力代码分析、 cybershake、ligo 灵感分析,单个dag中的任务数在[50,500]中随机生成,这样就构造了大量的具有不同ccr值的dag应用程序实例。
[0025]
表1表1展示了六种任务卸载算法的能耗,以及本发明所实现的节能效果。一方面,本发明方法显著降低了终端设备的能量消耗,特别是当更多终端设备参与任务卸载过程时。例如,当终端设备数量设置为700台时,本发明与基准算法elyo、edid、eldm和rmax相比,分别节约了57.01%、54.06%、49.14%和70.7%的能耗。另一方面,本发明要优于基准算法eilp,在能耗方面的性能差异高达18.13%。
[0026]
表2
表2列出了不同任务卸载算法的运行时间,以及本发明方法所获得的加速效果。该表的结果清楚地显示了本发明在缩短时间开销方面的有效性,从而得出一个可行的任务卸载解决方案。例如,当终端设备数设置为1000时,本发明与基准算法elyo edid、eldm、rmax和eilp相比,分别获得54.63、70.12、72.46、71.36和235.37倍的运行加速。此外,该表中的结果也反映出,随着终端设备数量的增加,本发明的运行时间增长缓慢,而不是急剧增长。这主要是因为在本发明中引入了isodata技术,允许并行搜索不同集群的任务卸载解决方案。
[0027]
表3在表3中任务卸载算法的可调度性是指成功处理的dag应用程序实例数与被测试的dag应用程序实例总数的比值,如表中所列,本发明和基准测试算法eilp总是保持100%的可调度性,无论终端设备的数量的多少。然而,本发明可以在算法运行时间和任务卸载解决方案的质量之间实现更好的权衡。
[0028]
通过上述的实验数据,能够很清楚的看出本发明在满足任务可靠性、定时性和可调度性要求的前提下,最小化终端设备的整体能耗。
[0029]
实施例2:本发明实施例提供一种cps系统中可靠性驱动的分层任务卸载装置,包括:获取模块,用于获取由大规模信息物理融合系统中每个终端设备的应用任务参数和处理器参数;分组模块,用于根据所述应用任务参数对任务队列里存储的任务进行分组,得到
应用任务列表;第一处理模块,用于根据所述处理器参数和应用任务参数对所述应用任务列表里计算密集型应用任务生成第一可行卸载方案;第二处理模块,用于对所述应用任务列表里通讯密集型应用任务进行转换并生成第二可行卸载方案。
[0030]
作为本发明实施例的一种实施方式,分组模块中的应用任务参数为任务队列的任务通讯运算率值ccr值,所述ccr值为dag应用程序在指定硬件平台上执行期间的平均通信开销与平均计算开销之比。
[0031]
作为本发明实施例的一种实施方式,第一处理模块中处理器参数为处理器功率指数,第一处理模块中应用任务参数为任务功率因子。
[0032]
作为本发明实施例的一种实施方式,所述第二处理模块包括:第一计算单元,用于根据任务适应度值导出所述通讯密集型应用任务的任务功率因子,其中,任务适应度值为任务的当前ccr值与预定义的ccr值阈值之差;第二计算单元,用于根据所述通讯密集型应用任务的任务功率因子,生成第二可行卸载方案。
[0033]
以上所述的实施例仅是对本发明优选方式进行的描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献