本发明属于任务卸载,具体涉及一种基于实时钢轨检测的协同卸载时延优化方法、系统、设备及介质。
背景技术:
1、钢轨是铁路运输系统的重要基础设施,其安全性对列车运行安全至关重要。定期检测钢轨的状态可以帮助及时发现潜在的缺陷和损坏。目前大部分钢轨表面检测工作仍然由铁路工人采用步行的方式在列车运行空窗期,手推检测装置沿着钢轨进行缺陷检测,这种方法效率极低。近年来,机器视觉检测逐步运用到钢轨检测中,然而因为高速列车实时检测钢轨的任务量较大,列车本地的计算资源无法满足任务需求,检测工作只能在普通列车非运行时间段开展,做不到实时检测。
2、列车本地终端、边缘端和云端构成了云边端协同网络构架,将检测任务拆分并卸载到列车本地终端、边缘端和云端构,能够显著提高计算资源。但由于高速列车行驶经过山区、隧道以及其他边远地区的网络状态不好,在此情况,网络带宽会承受很大压力,边缘端、云端处理检测任务可能因高延迟得不到响应,造成较大时延,甚至出现数据丢失。因此,需要将检测任务卸载至列车本地终端、边缘端和云端中网络状态好并且计算资源充足的地方进行处理,通过优化分配方案以达到最小化时延的目的。
技术实现思路
1、本发明的目的是针对现有技术存在的上述问题,提供一种通过优化分配方案以最小化时延的基于实时钢轨检测的协同卸载时延优化方法、系统、设备及介质。
2、为实现以上目的,本发明的技术方案如下:
3、第一方面,本发明提供了一种基于实时钢轨检测的协同卸载时延优化方法,所述协同卸载时延优化方法包括:
4、s1、获取多个检测任务,所述检测任务为高速摄像机拍摄到的一组铁路钢轨的图片;
5、s2、将每个检测任务按比例进行分割并分配至本地、边缘端、云端,所述本地、边缘端、云端为每个检测任务所分配到部分按比例分配计算资源,以此构建分配模型;基于分配模型构建本地处理模型、边缘端处理模型、云端处理模型;
6、s3、在分配模型、本地处理模型、边缘端处理模型、云端处理模型的基础上构建协同卸载时延优化模型;所述协同卸载时延优化模型的目标函数为:
7、min(max(t1,t2,t3));
8、上式中,t1、t2、t3分别表示本地、边缘端、云端处理完分配到的所有检测任务的总时延;max(t1,t2,t3)表示t1、t2、t3中的最大值;
9、s4、采用启发式算法求解协同卸载时延优化模型,获得全局最优解;所述全局最优解包括最优延迟、所有检测任务的分配比例以及本地、边缘端、云端对于所有检测任务的计算资源分配比例。
10、s3中,所述分配模型包括:
11、
12、上式中,x表示检测任务分配比例矩阵;x1i、x2i、x3i分别表示第i个检测任务被分配到本地、边缘端、云端的比例;分别表示所有检测任务在本地、边缘端和云端的分配比例向量;
13、
14、上式中,表示检测任务被分配后所需的计算资源矩阵;c1i、c2i、c3i分别表示第i个检测任务被分配到本地、边缘端、云端的部分所需计算资源;ci表示第i个检测任务所需的计算资源;
15、
16、上式中,y表示计算资源分配比例矩阵;y1i、y2i、y3i分别表示本地、边缘端、云端分配给第i个检测任务的计算资源比例;
17、
18、上式中,表示计算资源分配矩阵;f1、f2、f3分别表示本地、边缘端、云端的cpu频率;f1i、f2i、f3i分别表示本地、边缘端、云端分配给第i个检测任务的计算资源;
19、所述本地处理模型包括:
20、t1=max(t11,…,t1i,…,t1n);
21、
22、上式中,t11、t1i、t1n分别表示第1个、第i个、第n个检测任务中卸载至本地的部分,由本地进行处理的总时延;c1i表示第i个检测任务中分配至本地的部分,在本地所需的计算资源;n表示检测任务的总数量;
23、所述边缘端模型包括:
24、t2=max(t21,…,t2i,…,t2n);
25、
26、
27、上式中,t21、t2i、t2n分别表示第1个、第i个、第n个检测任务中卸载至边缘端的部分,由边缘端进行处理的总时延;c2i表示第i个检测任务中分配至边缘端的部分,在边缘端所需的计算资源;cet表示单个边缘端的计算资源阈值;分别表示从列车到边缘端的传输时延、边缘端的执行时延;k为任务数据量与所需计算资源的比例;rt2ed表示将任务从列车卸载至边缘端的数据传输速率;b2i表示第i个任务在边缘端所分配的数据量;
28、所述云端模型包括:
29、t3=max(t31,…,t3i,…,t3n);
30、
31、上式中,t31、t3i、t3n分别表示第1个、第i个、第n个检测任务中分配至云端的部分,由云端进行处理的总时延;c3i分别表示第i个检测任务中卸载至云端的部分,在云端所需的计算资源;f1i、f2i、f3i分别表示本地、边缘端、云端分配给第i个检测任务的计算资源;b3i表示第i个任务在云端所分配的数据量;k为任务数据量/所需计算资源的比值;分别表示从列车到云端的传输时延、云端的执行时延;rt2c表示从列车卸载云端的数据传输速率。
32、s3中,所述协同卸载时延优化模型的约束条件包括任务分配比例约束、计算资源分配约束、任务时延约束;所述任务分配比例约束包括:
33、
34、xji∈[0,1],j∈{1,2,3};
35、上式中,xji表示第i个检测任务被分配到第j个处理器的比例,处理器为本地、边缘端或云端;
36、所述计算资源分配约束包括:
37、
38、上式中,fji表示第j个处理器分配给第i个检测任务的计算资源;fj表示第j个处理器的cpu频率;
39、所述任务时延约束包括:
40、tji≤ti,j∈{1,2,3};
41、上式中,tji表示第i个检测任务中卸载至第j个处理器的部分,由第j个处理器进行处理的总时延;ti表示第i个检测任务的时延。
42、所述第i个检测任务所需的计算资源ci的计算公式为:
43、ci=mcp;
44、m=ft;
45、
46、上式中,cp为单张图片所需的计算资源;f为设置在列车上的高速摄像机拍照的频率;l为边缘端服务范围内所对应的铁路长度;υ为列车行驶的速度;m表示单个检测任务中的图片数量。
47、采用遗传算法求解协同卸载时延优化模型,具体求解步骤包括:
48、a1、初始化种群,种群中的个体对应一组决策变量,所述决策变量包括表示所有检测任务的分配比例以及本地、边缘端、云端对于所有检测任务的计算资源分配比例;
49、a2、对种群进行编码解码、交叉变异;其中,所述交叉变异为:先在种群中顺序指定个体作为父亲的染色体,在种群中随机选取个体作为母亲的染色体,然后随机产生交叉点,按交叉概率将父亲、母亲位于交叉点后的全部基因进行互换,生成子代染色体;然后在子代染色体上随机产生一个变异基因位置,并按变异概率将变异基因位置上的二进制编码反转,得到突变个体;
50、a3、计算种群中所有个体的适应度值,采用轮盘赌法选择适应度值较大的个体组成新种群,并选出适应度值最大的个体作为最优个体;
51、a4、返回a2迭代计算,直至达到迭代停止条件,输出全局最优解。
52、第二方面,本发明提供了一种基于实时钢轨检测的协同卸载时延优化系统,所述协同卸载时延优化系统包括检测任务获取模块、分配模型构建模块、本地处理模型构建模块、边缘端处理模型构建模块、云端处理模型构建模块、协同卸载时延优化模型构建模块、优化计算模块;
53、所述检测任务获取模块,用于获取多个检测任务,一个检测任务对应利用高速摄像机拍摄到的一组铁路钢轨图片;
54、所述分配模型构建模块,用于将每个检测任务按比例进行分割并分配至本地、边缘端、云端,所述本地、边缘端、云端为所分配到部分按比例分配计算资源,以此构建分配模型;
55、所述本地处理模型构建模块,用于基于分配模型构建本地处理模型;
56、所述边缘端处理模型构建模块,用于基于分配模型构建边缘端处理模型;
57、所述云端处理模型构建模块,用于基于分配模型构建云端处理模型;
58、所述协同卸载时延优化模型构建模块,用于在分配模型、本地处理模型、边缘端处理模型、云端处理模型的基础上构建协同卸载时延优化模型,所述协同卸载时延优化模型的目标函数为:
59、min(max(t1,t2,t3));
60、上式中,t1、t2、t3分别表示本地、边缘端、云端处理完分配到的所有检测任务的总时延;max(t1,t2,t3)表示t1、t2、t3中的最大值;
61、所述优化计算模块,用于采用启发式算法求解协同卸载时延优化模型,获得全局最优解,所述全局最优解包括最优延迟、所有检测任务的分配比例以及本地、边缘端、云端对于所有检测任务的计算资源分配比例。
62、构建的分配模型包括:
63、
64、上式中,x表示检测任务分配比例矩阵;x1i、x2i、x3i分别表示第i个检测任务被分配到本地、边缘端、云端的比例;分别表示所有检测任务在本地、边缘端和云端的分配比例向量;
65、
66、上式中,表示检测任务被分配后所需的计算资源矩阵;c1i、c2i、c3i分别表示第i个检测任务被分配到本地、边缘端、云端的部分所需计算资源;ci表示第i个检测任务所需的计算资源;
67、
68、上式中,y表示计算资源分配比例矩阵;y1i、y2i、y3i分别表示本地、边缘端、云端分配给第i个检测任务的计算资源比例;
69、
70、上式中,表示计算资源分配矩阵;f1、f2、f3分别表示本地、边缘端、云端的cpu频率;f1i、f2i、f3i分别表示本地、边缘端、云端分配给第i个检测任务的计算资源;
71、构建的本地处理模型包括:
72、t1=max(t11,…,t1i,…,t1n);
73、
74、上式中,t11、t1i、t1n分别表示第1个、第i个、第n个检测任务中卸载至本地的部分,由本地进行处理的总时延;c1i表示第i个检测任务中分配至本地的部分,在本地所需的计算资源;n表示检测任务的总数量;
75、构建的边缘端模型包括:
76、t2=max(t21,…,t2i,…,t2n);
77、
78、上式中,t21、t2i、t2n分别表示第1个、第i个、第n个检测任务中卸载至边缘端的部分,由边缘端进行处理的总时延;c2i表示第i个检测任务中分配至边缘端的部分,在边缘端所需的计算资源;cet表示单个边缘端的计算资源阈值;分别表示从列车到边缘端的传输时延、边缘端的执行时延;k为任务数据量与所需计算资源的比例;rt2ed表示将任务从列车卸载至边缘端的数据传输速率;b2i表示第i个任务在边缘端所分配的数据量;
79、构建的云端模型包括:
80、t3=max(t31,…,t3i,…,t3n);
81、
82、上式中,t31、t3i、t3n分别表示第1个、第i个、第n个检测任务中分配至云端的部分,由云端进行处理的总时延;c3i分别表示第i个检测任务中卸载至云端的部分,在云端所需的计算资源;f1i、f2i、f3i分别表示本地、边缘端、云端分配给第i个检测任务的计算资源;b3i表示第i个任务在云端所分配的数据量;k为任务数据量/所需计算资源的比值;分别表示从列车到云端的传输时延、云端的执行时延;rt2c表示从列车卸载云端的数据传输速率。
83、所述协同卸载时延优化模型的约束条件包括任务分配比例约束、计算资源分配约束、任务时延约束;所述任务分配比例约束包括:
84、
85、xji∈[0,1],j∈{1,2,3};
86、上式中,xji表示第i个检测任务被分配到第j个处理器的比例,处理器为本地、边缘端或云端;
87、所述计算资源分配约束包括:
88、
89、上式中,fji表示第j个处理器分配给第i个检测任务的计算资源;fj表示第j个处理器的cpu频率;
90、所述任务时延约束包括:
91、tji≤ti,i∈{1,2,3};
92、上式中,tji表示第i个检测任务中卸载至第j个处理器的部分,由第j个处理器进行处理的总时延;ti表示=第i个检测任务的时延。
93、所述第i个检测任务所需的计算资源ci的计算公式为:
94、ci=mcp;
95、m=ft;
96、
97、上式中,cp为单张图片所需的计算资源;f为设置在列车上的高速摄像机拍照的频率;l为边缘端服务范围内所对应的铁路长度;υ为列车行驶的速度;m表示单个检测任务中的图片数量。
98、所述优化计算模块采用遗传算法(ga算法)求解协同卸载时延优化模型,具体求解步骤包括:
99、a1、初始化种群,种群中的个体对应一组决策变量,所述决策变量包括表示所有检测任务的分配比例以及本地、边缘端、云端对于所有检测任务的计算资源分配比例;
100、a2、对种群进行编码解码、交叉变异;其中,所述交叉变异为:先在种群中顺序指定个体作为父亲的染色体,在种群中随机选取个体作为母亲的染色体,然后随机产生交叉点,按交叉概率将父亲、母亲位于交叉点后的全部基因进行互换,生成子代染色体;然后在子代染色体上随机产生一个变异基因位置,并按变异概率将变异基因位置上的二进制编码反转,得到突变个体;
101、a3、计算种群中所有个体的适应度值,采用轮盘赌法选择适应度值较大的个体组成新种群,并选出适应度值最大的个体作为最优个体;
102、a4、返回a2迭代计算,直至达到迭代停止条件,输出全局最优解。
103、第三方面,本发明提供一种基于实时钢轨检测的协同卸载时延优化设备,所述协同卸载时延优化设备包括存储器和处理器;
104、所述存储器,用于存储计算机程序代码,并将所述计算机程序代码传输给所述处理器;
105、所述处理器,用于根据所述计算机程序代码中的指令执行前述的方法。
106、第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述的方法。
107、与现有技术相比,本发明的有益效果为:
108、本发明一种基于实时钢轨检测的协同卸载时延优化方法,首先获取多个检测任务,检测任务为高速摄像机拍摄到的一组铁路钢轨的图片;然后对每个检测任务按比例进行分割并分配至本地、边缘端、云端,本地、边缘端、云端为所分配到部分按比例分配计算资源,以此构建分配模型;再基于分配模型构建本地处理模型、边缘端处理模型、云端处理模型;在分配模型、本地处理模型、边缘端处理模型、云端处理模型的基础上构建协同卸载时延优化模型;协同卸载时延优化模型的目标函数为最小化t1、t2、t3中的最大值,t1、t2、t3分别表示本地、边缘端、云端处理完分配到的所有检测任务的总时延;最后采用启发式算法求解协同卸载时延优化模型,获得全局最优解,输出最优延迟、所有检测任务的分配比例以及本地、边缘端、云端对于所有检测任务的计算资源分配比例;本设计充分考虑了各个端的卸载特点和优势,以最小化整体系统的任务时延为目标,提出了协同卸载时延优化模型,并且从钢轨检测任务的离散性以及各个端的计算资源特点出发,设置任务分配比例约束、计算资源分配约束以及任务时延约束,将任务卸载分配问题表述为最大最小化模型问题,最后采用遗传算法随机搜索与迭代来尝试找到全局最优解;实验结果表明,本设计能有效反映协同卸载任务处理的特点和减少整体时延。因此,本发明获得的钢轨检测任务分配方案能有效反映协同卸载任务处理的特点和减少整体时延。
1.一种基于实时钢轨检测的协同卸载时延优化方法,其特征在于:
2.根据权利要求1所述的一种基于实时钢轨检测的协同卸载时延优化方法,其特征在于:
3.根据权利要求2所述的一种基于实时钢轨检测的协同卸载时延优化方法,其特征在于:
4.根据权利要求3所述的一种基于实时钢轨检测的协同卸载时延优化方法,其特征在于:
5.根据权利要求1-4中任一项所述的一种基于实时钢轨检测的协同卸载时延优化方法,其特征在于:
6.一种基于实时钢轨检测的协同卸载时延优化系统,其特征在于:
7.根据权利要求6所述的一种基于实时钢轨检测的协同卸载时延优化系统,其特征在于:
8.根据权利要求7所述的一种基于实时钢轨检测的协同卸载时延优化系统,其特征在于:
9.根据权利要求8所述的一种基于实时钢轨检测的协同卸载时延优化系统,其特征在于:
10.根据权利要求6-9所述的一种基于实时钢轨检测的协同卸载时延优化系统,其特征在于:
