面向智慧路灯系统的线性边缘计算算法
2019-09-26姜玉稀何孝亮
姜玉稀,何孝亮,李 闪
(上海三思电子工程有限公司,上海 201199)
引言
智慧路灯系统面向“智慧城市”建设,能够充分运用信息和通信技术手段感测、分析、整合城市运作核心系统的各项关键信息,并做出智能的响应,为人类创造出更美好的城市生活[1,2]。然而,随着智慧路灯系统建设规模的不断扩大,其面临联接海量与异构、业务实时性、安全等技术需求,而且日益强烈。本文基于边缘计算理念[3,4],将边缘计算引入智慧路灯系统的线性网络结构,设计通过网络云端服务器发布边缘计算的任务,由网络终端设备(以下简称网络设备)进行边缘计算,以提升智慧路灯系统运行的实时性和安全性。同时,本文进行边缘计算算法仿真,验证算法是否满足智慧路灯系统的需求。
1 智慧路灯系统应用边缘计算的难点
智慧路灯系统主要采用线性网络结构,即其以灯杆照明系统为单体,组建适应于自然物感功能的有限面积“点”状的自组内网;以若干个灯杆照明单体自组内网节点为基础,形成适应于物理流量“线(道路)”状的网络结构;基于智慧路灯系统的线性网络结构,采用边缘计算调度算法,有助于智慧城市大数据分析挖掘等的联合运作技术突破创造了扎实的基础条件。对于将边缘计算应用于智慧路灯系统的线性网络结构,需要平衡网络设备计算工作量与网络传输计算工作。因此,在边缘计算具体实施时,将面临以下几个技术难点。
1)边缘计算的体系结构。目前应用的边缘计算体系结构主要是从计算、存储、网络、软件等资源调度的角度出发,侧重于设施优化配置解决方案,面向算法改进、计算能力优化、数据重新布局。这是因为边缘计算对应的网络设备有众多应用场景和应用模式。在本文中,边缘计算主要应用于智慧路灯系统线性网络结构,即网络结构由多个灯杆照明单体自组内网节点串联组成,除需要研究通用边缘计算体系结构,以应对各种复杂的应用场景和应用模式外,还需要考虑智慧路灯系统的线性网络结构,进行面向智慧路灯系统的算法设计。
2)网络设备实施边缘计算的处理器能力。单个智慧路灯系统节点下的网络设备的处理器能力、功耗不同。如果网络设备实施边缘计算是以控制为目的,则处理器运算能力相对较弱;而如果网络设备实施边缘计算用于处理数据,以减少数据网络传输、降低网络延迟和实时信息处理为目的(高清视频监控等),数据需要就近处理,网络设备处理器的运算能力相对较高[5-7]。因此,根据网络设备实施边缘计算的处理器能力,协调边缘计算任务的下发。
3)网络设备实施边缘计算算法任务的协同处理。边缘计算的理念决定了网络设备需要做一定量的计算和数据处理[8],但是,网络设备计算越多,计算工作量越大。对于实施边缘计算的线性网络,同一时间网络设备承担的计算任务是不同的,会存在部分网络设备计算繁忙、部分网络设备相对空闲的问题,这使得网络处理信息效率低下,网络延迟增加。如何通过网络设备之间协同处理,将繁忙网络设备的计算任务分配给其他相对空闲的网络设备,从而提高网络的整体效率,这是边缘计算面向应用的一个主要难点。
2 基于智慧路灯系统的线性边缘计算算法
2.1 智慧路灯系统模型与连接结构建立
本文设计以路灯作为边缘计算的物理载体,在路灯收集到各种数据后,直接在本地(物理位置上本路灯)通过边缘计算得到处理后的信息,例如:摄像头拍摄道路路况,通过本地识别出车祸信息,将车祸信息利用显示器告知后方来车,提醒减速慢行,并上传信息给云端服务器发布道路交通突发新闻。这样可利用边缘计算处理道路场景,将所采集数据直接本地处理与消化,提高信息时效性,并且减少对传输速率、通信链路带宽的需求与消耗。
基于智慧路灯系统应用场景,为实现网络设备边缘计算算法设计,建立网络设备与智慧控制平台模型,如表1所示。服务器端主要包括数据存储器和智慧控制平台,智慧控制平台用于下发边缘计算任务并收集计算结果,数据存储器则保存边缘计算结果。网络设备主要有智能网关设备与外接设备端两个部分,智能网关设备执行边缘技术任务与外接设备交换数据,并传输计算给智慧控制平台;外接设备主要包括具有感知功能的传感器设备与只执行的智慧照明设备,传感器设备负责采集接收各种数据,智慧照明设备负责照明、显示等智能网关设备下发的任务。
表1 边缘计算模型建立及功能说明表
基于表1,搭建智能网关设备与智慧控制平台的连接结构,如图1所示,其中传感器设备采集最原始数据,并传输给智能网关设备;智能网关设备计算数据得到相关信息,并发布工作给智慧灯具设备执行端,同时传输信息给智慧控制平台;智慧控制平台还可以发布边缘计算任务给智能网关设备,网关端将任务分解成不同工作给相应的外接设备执行。
基于图1所示的智慧路灯系统连接结构,通过边缘计算算法设计,完善系统任务的均衡分配和调度能力,联合多个智能网关设备组成一个灵活分配边缘计算任务并具有故障自愈性的智慧路灯系统。
图1 智慧路灯系统连接结构
2.2 网络设备边缘计算算法设计
边缘计算算法面向联合多个智能网关设备所组成的智慧路灯系统线性网络,是智慧路灯系统实现大规模应用的核心需求与保障。本文设定智慧控制平台与智能网关设备之间的性能参数主要包括网络流量、延迟、响应速度,在执行边缘计算任务过程中,可以用传输总时延表征智能网关设备的工作负载和工作状态。
假设智能网关设备Si与智慧控制平台传输速率为ui,智慧控制平台传输任务的数据量为Di,智慧控制平台的发布任务传输时延为
(1)
设智能网关设备Si接收任务后处理任务速率为pi,则处理分配任务的时间为
(2)
智能网关设备Si连接的第j个外接设备处理数据量为Dij,传输速率为nij,智能网关设备计算外接设备上传的数据时间为
(3)
所以,智能网关设备Si连接完成一次智慧控制平台发下的数据量为Di的边缘计算任务的总时延为
(4)
总时延Tdelay可以表征智能网关设备计算任务负载。基于Tdelay,通过式(5)来判断智能网关设备所处的工作状态,并进行相应的调整。
(5)
其中,Tnormal为最大正常工作时延,Toverwork为最大繁忙工作时延。
相应的状态转移图如图2所示。根据此状态转移图,可进行智能网关设备执行任务均衡分配和调度的边缘计算算法设计。
图2 智能网关设备工作状态转移图
1)智能网关设备在正常工作状态下所执行边缘计算。单个智能网关设备在正常工作状态下执行边缘计算任务,设计为采用图3所示的工作模型。
图3 单个智能网关设备与智慧控制平台工作模型
智能网关设备需将智慧控制平台发送的任务转换成智慧灯具设备的控制信号;智能网关设备收集来自摄像头、传感器等不同传感器设备传输的数据,并进行数据计算处理,通过网络链路发回服务器端完成信息收集功能。在进行边缘计算任务的同时,智能网关设备计算自身此时的总时延,来调整工作状态。
2)智能网关设备在繁忙工作状态下执行边缘计算。当总时延超过最大正常工作时延Tnormal时,表明智能网关设备负载过大,边缘计算效率降低,此时单个智能网关设备无法满足智慧控制平台下发的边缘计算任务。因此在繁忙工作状态下,需要联合多个智能网关设备来进行边缘计算任务的均衡分配和调度,具体如图4所示。
图4 繁忙工作状态任务均衡分配与调度
当一个智能网关设备出现繁忙状态,会选择与其距离接近的处于正常工作的智能网关设备,与其进行交流通信;通过通信协议,进行边缘计算任务的均衡分配与调度。具体流程如下:
a. 智能网关设备A计算总时延,进入了繁忙工作状态;
b. 智能网关设备A寻找临近正常工作智能网关设备B;
c. 智能网关设备A将与自身相关性低的边缘计算任务卸载并分配给智能网关设备B;
d. 重新计算智能网关设备A的总时延,调整工作状态,如果仍然为繁忙状态,则重新进行a~c步骤。
这里,边缘计算任务与智能网关设备的相关性计算公式如式(6)所示[9],其用来计算边缘计算任务在智能网关设备执行的必要性。若相关性低,则表明大部分边缘任务可以由其他智能网关设备承接;反之,则表明此部分边缘计算任务更需要由网关执行。
(6)
其中G为智能网关设备所连接传感器等外接设备的使用情况,M表示边缘计算任务的数据变量。σG、σM为G和M的方差。
3)智能网关设备在故障工作状态下所执行边缘计算。基于智能网关设备正常工作状态与繁忙工作状态的算法设计,已经构建了一个灵活调度分配计算任务的边缘计算工作模式。但在实际智慧路灯系统应用场景中,会出现断网、设施损坏等突发情况,考虑到这一故障情形,我们设计对应的能实现智能自愈的边缘计算算法来处理。
首先对故障的判断设定两种途径:①智慧控制平台发现下发给智能网关设备的边缘计算任务超过最大工作时延Toverwork;②临近智能网关设备与故障网关通信中断。
为了保证边缘计算层的稳定性,当故障发生时,采用自愈调度方案,智慧控制平台不直接进行干预,调度流程如下:
a. 临近智能网关设备在正常工作模式下,互相通信传输自身连接的外接设备地址表;
b. 临近空闲智能网关设备确定故障网关发生故障并确定其物理地址;
c. 临近空闲智能网关设备根据故障网关连接的外接设备地址表获取设备的控制权限;
d. 临近智能网关设备执行故障网关设备的边缘计算任务,并将故障情况传输给智慧控制平台;
e. 故障智能网关设备恢复后,临近智能网关设备执行计算任务并释放外接设备,故障智能网关设备重新接受外接设备,并将恢复信息传输给智慧控制平台。
对于不同的工作状态采用相应的边缘计算算法可以使智能网关设备工作更具有灵活性、稳定性。
3 边缘计算算法验证
为验证本文所提出线性边缘计算算法,根据建立的智慧路灯系统模型与连接结构,搭建仿真验证环境,以进行仿真实验。其中,单个智能网关设备连接的外接设备有传感器设备、智慧灯具设备等,如图5所示。
图5 单智能网关设备连接的外接设备
仿真实验中,在同样边缘计算任务量的情况下,记录不同带宽所对应单个智能网关设备网络的总时延、控制平台与智能网关设备的传输时延,以及智能网关设备与外接设备的传输时延,如图6所示。
图6 智能网关设备与智慧控制平台传输带宽对应的传输时延图
由于智能网关设备与外接设备进行高速串口通信,因此,智能网关设备与外接设备的传输时延较小,而智能网关设备与智慧控制平台的传输带宽将影响整个智慧路灯系统的总时延。
从图6中可以得出,随着传输带宽的增加,智慧控制平台与智能网关设备之间的传输时延逐步减小,并且智慧路灯系统的边缘计算传输时延小于2.5 μs。
在不同边缘计算任务量的情况下,单个智能网关设备总时延的变化情况如图7所示。边缘计算的任务下发的个数逐渐增加时,总时延也将增大,因此有必要采用网络设备边缘计算调度算法来降低边缘计算的时延,从而保证智慧路灯系统执行任务的效率。
图7 单个智能网关设备边缘计算任务量对于网络总时延变化图
假设智慧路灯系统中有3个智能网关设备,采用网络设备边缘计算调度算法后,3个智能网关设备的总时延随时间变化如图8所示,这里设定正常工作时延Tnormal为3 ms,当单个智能网关设备时延超过Tnormal时,进行智能网关设备之间任务均衡分配。例如t7时刻,智能网关设备3进入繁忙工作状态,智能网关设备2承接一部分智能网关设备3的边缘计算任务,经过t8、t9时刻,智能网关设备3的时延低于Tnormal,转为正常工作状态。
图8 繁忙工作时,多智能网关设备网络总时延变化图
在智慧路灯系统中,当智能网关设备出现故障后,实现自愈调度控制,图9对这一过程进行了推演。在时雨图中,智能网关设备4颜色变为黑色,代表智能网关设备4出现故障,此时自愈调度算法控制相邻智能网关设备3、智能网关设备5承接故障智能网关设备4的工作;智能网关设备3、智能网关设备5承接后,颜色变为红色,表示进入繁忙工作状态,因此对繁忙智能网关设备3与智能网关设备5进行任务均衡分配,分配完成后,智能网关设备4不再执行边缘计算任务,同时整个边缘计算层的平均时延降低。
图9 智能网关设备故障时,智慧路灯系统工作状态时雨变化图
4 总结
本文从物联网发展的前景出发,对于智慧路灯系统实时性与安全性的技术需求,设计规划将边缘计算技术应用于智慧路灯系统的线性网络结构中。通过建立网络设备与智慧控制平台的模型,对网络设备边缘计算算法进行了设计。我们将边缘计算融入智能网关设备,并采用任务均衡分配和调度的边缘计算算法,使得单个智能网络设备的计算任务量得到有效控制与降低,进而有效提升智慧路灯系统的实时性。面对智能网络设备故障状态,我们引入具有自愈调度功能的边缘计算技术,并将其融入智能网络设备的设计中,使面向智慧路灯系统的线性边缘计算算法的安全性大大地提升。