叶欣茹,伍益明,徐 明,郑 宁
(杭州电子科技大学网络空间安全学院,浙江杭州 310018)
随着社会经济快速发展和城市化进程不断深入,机动车数量呈爆炸式增长,从而使交通堵塞、交通事故频发等问题日益显著.智能交通系统(intelligent transportation systems,ITSs)作为提高交通效率和道路安全性的一种有效途径,近年来受到国内外学术界的广泛关注[1-3].智能交通系统是一种围绕道路交通广泛多样的信息技术,旨在使交通系统更加安全、高效、可靠和环保,却无需改变现有基础设施的物理位置[4].智能交通系统本质上是一种分布式网络系统,各通信设备间的交互通信促成整体系统的平稳运行,因此保证各通信设施之间的数据安全稳定交互显得至关重要.但在实际道路环境中通信设施之间的交互双方是非确定性的,如在具体的场景中,系统内通信个体与其周围通信设施进行交互的时机会因地理位置、路况、速度等诸多因素而发生改变.智能交通系统中的通信主要有两种模式,即车辆到车辆(vehicle to vehicle,V2V)和车辆到基础设施(vehicle to infrastructure,V2I)通信[5].上述两种通信模式均依赖于无线通信,而无线通信因其开放式环境的特点却易于遭受各种类型的网络攻击.例如图1中所示,攻击者通过黑客技术,入侵了图中某条两辆车辆之间的无线通信链路,从而可以恶意篡改发送车辆的信息,使得接收信息的车辆存在极大的安全风险.因此在各种网络攻击下的智能交通系统通信网络脆弱性研究具有重要意义.
图1 智能交通系统通信网络遭遇网络攻击示意图Fig.1 Schematic diagram of a cyber-attack on an ITS communication network
另一方面,多智能体系统(multi-agent systems,MASs)协同控制作为分布式网络系统领域中的一个研究热点,是当前网络化控制和群体智能领域最有活力的研究方向之一,目前已广泛应用于机器人协同控制[6]、无人机编队飞行[7]、智能电网等工程领域.多智能体系统是指一群具备一定感知、通信、计算和执行能力的智能体通过通信等方式关联而成的一个网络系统[8-9].在多智能体系统中,连通的网络通信图是节点间实现协同控制的必要条件,然而由于多智能体系统通常部署在开放环境中运行,通信链路不可避免的会遭到环境的影响甚至恶意攻击.此外,使用单一连通性这一图属性难以正确地评估整个网络局部信息流动的冗余程度,如以协同控制中的一致性控制为例,即使给予良好的连通性网络,系统中仅部分节点的故障却可能导致整个系统无法达到要求的一致性状态.网络鲁棒性[10]或称(r,s)-鲁棒性是一种评价分布式网络中节点信息流动性的通信图属性,其形式化地定义了网络中非空、不相交的节点子集之间信息交换的冗余程度,从而可以有效评估一个网络控制系统在遭受节点(或链路)故障甚至网络攻击情况下的恢复能力.然而现有的文献表明,评估多智能体网络(r,s)-鲁棒性是一个NP难问题[11],一个由n个节点构成的多智能体系统使用穷举算法评估其鲁棒性的时间复杂度可达到O(n23n)程度.由此可见,随着节点数的增加,传统方法对整个系统的鲁棒性评估时间呈指数增长,而这在评估现实环境中通信拓扑快速动态切换的智能交通系统通信网络中,显然无法适用.
近年来,深度学习在复杂网络领域的研究热度居高不下,卷积神经网络(convolutional neural network,CNN)[12-14]作为一种深度学习模型,因其采用的局部连接和权值共享方式在特征处理领域具有很大的优势而被广泛研究.相应地,在多智能体网络研究领域,Remy等[15]使用卷积神经网络预测当多机器人系统中各机器人之间以一定的概率进行交互时,系统在网络攻击下能够安全执行任务的概率.Wang等[16]率先尝试采用卷积神经网络判定多智能体系统的网络鲁棒性,其研究结果表明使用机器学习方法对具有大量节点的多智能体系统的鲁棒性进行判定是可行的.上述学者的研究结果表明,深度学习方法为解决传统方法求解面临的NP难问题提供一种有效的解决途径.
目前,单纯从网络控制系统的角度研究智能交通系统的未见有文献报道,但多智能体系统概念中的网络模型和协作机制可以较为贴切和有效地用于描述智能交通网络中的车辆通信和协同问题.因此,本文基于多智能体系统理论,从网络拓扑和模型的角度评估智能交通系统通信网的结构脆弱性.通过采用基于残差网络(residual network)[17]的卷积神经网络方法对通信图的鲁棒性进行检测.所提方法能有效解决当浅层网络逐渐叠加层数时出现的退化问题.所谓退化问题是指整个学习网络的评估准确率将呈现先上升达到饱和后下降的现象.在实验验证环节,通过使用残差网络训练得到的深度学习模型,以智能交通系统中危险货物运输车辆为实例验证对象,对其通信网络脆弱性进行检测评估.
与传统的网络通信图脆弱性检测方法相比,基于深度学习的方法可以从海量数据中发现和学习规律,具备自主寻找脆弱性的特点,减少了人工参与度,提高了检测的自动化程度.此外,前期模型训练一旦完成,系统可以用毫秒级的响应速度实时输出系统通信网络的脆弱性检测值,克服传统方法所面临的NP难问题.本文的主要贡献概述如下:
1) 基于多智能体网络理论对智能交通系统通信图进行数学建模,将智能交通系统通信图的脆弱性检测问题转化为多智能体网络的拓扑鲁棒值求解问题;
2) 采用深度学习技术,搭建网络模型,构造交通通信图样本数据集并进行训练,通过图分类的方法求解网络鲁棒性数值r;
3) 通过所提检测方法获得系统网络脆弱性数值后,给出了系统实现一致性控制的最大恶意邻居数目的上界,为智能交通系统网络控制安全提供有效保障.
通常用符号G(V,E)表示一个由n个节点组成的有向图,其中:V{v1,v2,...,vn}为节点集,E ⊆V ×V为边集.AG[ai,j]Rn×n表示图G的非负邻接矩阵,若节点j为节点i的邻居,则ai,j1,否则ai,j0.集合Ni:(i,j)表示所有与节点i相连的邻居节点集.考虑图中存在正常节点和恶意节点两类节点,分别用Vn表示正常节点的集合,Va表示恶意节点的集合,满足Vn ∪VaV,Vn ∩Va∅.
基于上述图论的基本概念,接下来引入一些涉及通信图属性的定义.以下定义采用自文献[10,18],并对其进行了适当修改,具体如下.
定义1(r-可达集) 对于一个有n个节点的非空非平凡的有向图G,令S为有向图G中的一个非空节点子集,如果S中至少存在一个节点vi,满足|NiS|≥Z≥0,则称集合S为r-可达集.
定义2(r-鲁棒图) 对于一个有n个节点的非空非平凡有向图G,若从V中划分的任意一对非空不相交子集,记作S1,S2,至少存在一个节点vi Sk,k1,2,满足|NiSk|≥r,Z≥0,则称图G为r-鲁棒图.
在对控制网络进行安全性分析研究工作时,如果不对网络中恶意节点的数据进行规定,当网络中大部分节点都为恶意节点时,系统很难实现目标要求.同时,在实际环境中恶意节点的攻击能力和攻击范围会受到一定因素的约束,因此对网络中恶意节点的数目设定一个合理的上界是有必要的.在研究多智能体一致性问题的文献中,f-total和f-local是两种常见的攻击假设模型,具体的定义如下.
定义3(f-total攻击模型[19]) 如果图G中恶意节点的数量不大于f,即|Va|≤f,Z≥0,则称其为f-total攻击模型.
定义4(f-local攻击模型[19]) 如果图G中任意节点i的邻居节点中恶意节点的数量不大于f,即|Ni∩Va≤f|,Z≥0,则称其为f-local攻击模型.
2015年,He等[17]提出了残差网络的概念,具体通过在卷积神经网络的卷积层加入残差块,从而有效解决了当网络层数不断加深时出现的退化问题.基于该方法,作者在后续的研究中采用高达上千层的网络层数,而依旧能获取较高的分类准确率[20].残差块一般由两部分组成,分别为直接映射部分和残差映射部分.图2为一个残差块结构示例,图中左侧箭头连线为直接映射部分,右侧箭头连线则为残差映射部分,该部分一般由2个或3个卷积操作构成.图2示例中的残差映射部分包括3个卷积操作,顶部1×1的卷积层先对输入数据进行降维,底部1×1的卷积层则对维度又进行了恢复,这种先降低维度最后再恢复维度的操作有效减少了在计算中间层3×3卷积操作时的计算消耗.每一个卷积操作后都含有一个批标准化(batch normalization,BN)结构,该结构用来对各层的输出做归一化处理,以保证梯度的大小在反向传播过程中仍能维持稳定,不至于出现过大或过小的情况.除最后一个卷积层外,残差映射部分的其余卷积操作在BN层后都使用ReLU激活函数进行非线性激活,最后一个非线性激活函数则是在直接映射部分和残差映射部分进行逐元素相加后使用.残差网络是由一系列的残差块组成的网络,通过残差块来实现直接映射,同时目标网络拟合的函数由某段网络的输出转为了学习输出与输入差值,之后的学习目标就不再是学习一个完整的输出,而是残差值,从而极大程度减少了网络的学习量.残差块的具体定义如下:
其中:x和y分别代表该层的输入和输出,函数F(x,{Wi})代表需要学习的残差映射.结合图2中具有3层的例子,可以给出FW3σ{W2σ{W1x}},其中σ表示ReLU激活函数,W1,W2,W3分别代表每一层所使用的权重,式中为了简化符号省略了偏置.
图2 残差块主要结构Fig.2 Main structure of residual block
为便于研究工作的开展,直接面向庞大复杂的整体交通网络建模显然不符合实际.为此在对系统网络建模过程中,本文前期仅针对智能交通系统最为重要领域之一的危险货物运输车辆网络进行研究.在交通运输中危险货物运输是最复杂的领域之一,需要最严格的安全措施.因为相较于一般交通事故,危险货物运输事故一旦发生,则可能对环境、生命健康和物质财产产生不可估量的负面影响[21].
Ma等[22]使用神经网络和遗传算法对危险货物运输路线进行最优选择,以保障危险货物的运输安全.Jungyeol等[23]通过使用关联规则挖掘(association rules mining,ARM)算法分析高速公路上危险货物运输事故发生的原因并对其进行预防,从而降低事故发生的概率.Wei等[24]考虑危险货物运输风险是时变的情况下,使用优化算法优化仓库选址问题使得运输风险和现场风险最小化.Huang等[25]使用元胞自动机分析危险货物运输道路网络在不同恶意节点攻击策略和不同流量负载分配策略下的脆弱性.目前对危险货物运输的研究大多着眼于以下方向:危险货物运输的风险分析、风险控制、最优路线选择等.
相较于现有的研究方法,本文尝试结合智能交通系统和多智能体系统理论相关知识,对危险货物运输系统通信网络进行建模并将其脆弱性检测问题转化为对多智能体系统网络鲁棒性求解问题.
危险货物运输车辆网络具体建模过程如下.
3.1.1 数据集描述
基于危险货物运输网络时空变化特征,本文搭建了基于多智能体系统的危险货物运输网络模型.在危险货物运输网络模型中,将运输危险货物的车辆抽象为多智能体系统中的通信节点.考虑车辆之间采用无线通信的方式,接收来自其他车辆关于周围环境、车辆运行情况、通信范围内车辆数量的变化等信息.因无线通信受到通信双方距离的限制,本文考虑使用具有车辆速度信息以及车辆地理位置信息的两个数据集构建一定范围内具有时间和空间特征的危险货物运输网络通信拓扑图.数据集的具体内容如下.
1) Road-Speed:该数据集包含了六天内道路上不同时间段内车辆速度随时间的变化.数据集中每一行代表一条道路,每一列表示不同时段道路上的车速,速度信息采集时间间隔为5分钟.
2) Car-Loc[26]:该数据集包括六天内一万多辆车在不同时间段的地理位置变化情况,地理位置使用经纬度表示.因数据记录时间存在一定的差异,使用该数据集时首先对数据进行预处理,剔除记录时间总和不足六天的车辆,最终选取10辆车并汇总记录每辆车每隔5分钟的地理位置信息.
3.1.2 网络模型建立
建立危险货物运输网络通信拓扑具体步骤如下.
1) 获得当前时刻网络中通信链接的数量.首先根据Road-Speed数据集中包含的道路上不同时段车辆速度变化信息,获得危险货物运输网络在当前时刻通信链接的数量L[t],具体如下式所示:
考虑网络模型遵循有向图的特性,即通信双方在一方发送相关消息后,另一方可以选择仅接收消息不进行回复或回复自身相关信息的情况下,当前时刻网络中能够存在的通信链接的最大值D.通过下式计算得到
其中n为网络中通信节点的数量.式(2)中p[t]为[0,1]范围内随时间变化的概率值,此处将该概率值定义为当前时刻网络中能够获得的通信链路的概率.通过下式计算得到
其中:c[t],cmin[t]和cmax[t]分别为当前道路上当前时刻的车辆速度,当前道路上六天内车辆速度的最小值和当前道路上六天内车辆速度的最大值.根据式(4)可知,当前时刻的车辆速度c[t]越大则p[t]越大,原因是网络中车速越快,建立无线通信链接并进行消息传递的难度越大,则相应的当前网络中有效的通信链接数量越少.
通过Road-Speed数据集限定了当前时刻网络中能够拥有的通信链路数量,但对具体能够进行互通的通信实体即通信车辆未限定.
科学技术的持续发展使得某些现象发生了改变,公司的财务管理先进性和公司的业务水平因为网络的迅速发展而出现了所谓“拖后腿”的现象。在“互联网+”时代,公司的发展情况一般是呈正比例型的,换句话说,公司每一份业绩都会带来公司发展的实际的并且较为均匀的增长。而在“互联网+”的背景下,却出现了一个从未有过的阈值,企业的发展需要在突破阈值后才能进入一个快速发展的模式,在这之前业务能力会出现明显的“拖后腿”现象。
2) 获得当前时刻网络中的通信车辆.当网络中的车辆想要与周围车辆进行交互时,不能超过基本的通信范围,从现实角度出发在构建危险货物运输网络模型时融入了车辆的地理位置信息.通过Car-Loc数据集中记录的车辆地理位置信息,计算车辆之间的距离并对其进行升序排序,因在步骤1中限定了当前时刻网络中能够拥有的通信链路数量,则当且仅当排在前L[t]的车辆能够建立通信链路.此时使用网络中已限定的能够进行交互的通信车辆以及通信链路的数量,构建包括了时间和空间信息的危险货物运输网络拓扑.其中图3(a)是在t时刻车辆与基础设施之间进行通信的网络通信拓扑示意图,车辆不仅有选择地与一定范围内的车辆进行通信,还会与基础设施进行信息交互.图3(b)时在t+1时刻车辆与基础设施之间进行通信的网络通信拓扑示意图.从图的前后变化可以看出,当车辆之间的距离超出一定的通信范围后通信链路会失效,同样当有新的车辆进入可通信的范围内时会与其他车辆或基础设施建立新的通信链路.
图3 危险货物运输车辆网络通信变化示意图Fig.3 Schematic diagram of changes in the communication network of dangerous goods transport vehicles
出于对评估准确率、模型运行时间考虑,本文采用101层的残差网络进行训练,整体网络架构如图4所示.整体网络中池化层不作为单独一层计入,输入为有向图的邻接矩阵,输出为鲁棒值r可取得的概率值.概率取值要求如下:
图4 残差网络整体架构Fig.4 The architecture of the residual network
其中:δin为节点入度;n为网络中节点个数.中间部分的网络架构为首先对输入矩阵边缘进行零值填充,此操作可以对矩阵的边缘进行滤波充分学习矩阵边缘的信息.借鉴文献[17]提出的残差网络结构层次进行具体设置,在最大池化和平均池化之间的卷积操作都使用了网络描述中所描述的残差块结构.以10个节点的有向图数据作为示例,残差网络的具体网络结构及参数设置如表1所示(表中*表示无需设置).
表1 残差网络具体网络结构Table 1 Specific network structure of residual network
首先对Road-Speed数据集中的速度数据进行可视化操作.某一天内道路上交通速度归一化后的变化曲线如图5所示.从图中可以看到,在早上8:00后因早高峰道路上交通速度明显下降,在中午12:00左右的道路上交通速度开始呈上升趋势,同时16:00左右因晚高峰交通速度呈下降趋势,在20:00左右道路上的交通速度又呈现上升的趋势.总体上道路上的流速随时间变化趋势较为明显.
图5 一天内道路上交通速度变化示意图Fig.5 Schematic diagram of traffic speed change on the road in one day
在实验中,使用残差网络对5-10个节点的有向图进行训练,不同节点对应的数据量以及不同样本具有的平均有向边数如表2所示.输入数据为有向图的邻接矩阵,输出为判定鲁棒值r的一个概率矩阵.此外本实验中,使用80%的数据用作训练集,剩余20%用作测试集.
表2 5-10节点数据集Table 2 5-10 node dataset_s
本文残差网络训练所使用的超参数设置如表3所示.数据样本中的数据中每一行表示一张带有标签的有向图,为便于后续训练对数据标签进行处理使用独热编码表示.网络的搭建采用Keras框架,该框架的优点是提供了简洁的API接口,易于进行扩展,一定程度减少了设置过程中的工作量.在训练结束后对模型进行保存,为后续直接调用训练好的模型对新输入的系统通信图数据进行快速检测.通过实验发现,训练好的深度学习模型可以在毫秒内得出对应通信图鲁棒性数值的检测结果,这在智能交通系统网络安全领域是一个可接受的响应速度.
表3 超参数设置Table 3 Hyperparameter settings
图6是节点数目分别为5-10个节点在本文所提方法训练下所得到的各自相应评估准确率结果,从图6中的统计数据可以看到随着节点个数的增加,评估准确率呈下降趋势但依旧保持较高水平,这说明使用残差结构的有效性.评估准确率下降的原因可能是因为随着节点个数增加,该数量级节点的样本空间相应增大,但实验所使用的样本数量不足,这也是未来要解决的问题之一.
图6 训练结果Fig.6 Training results
使用残差网络模型对5-10个节点的数据集进行鲁棒性评估,并在进行多次实验的基础上选择评估准确率较高的模型对具有时间和空间信息的危险货物运输网络通信拓扑进行鲁棒性评估.其中:图7(a)-(f)分别是总节点数为5-10个网络的鲁棒值r的评估结果.
图7 5-10节点鲁棒值r的评估结果Fig.7 Robustness value r of 5-10 nodes
根据实验结果,可以看出随着系统总节点数的增加,可达到的鲁棒值r的最大值越大.同时在早上8:00点早高峰后的一段时间内及下午16:00左右的晚高峰阶段,r值较高,其余时间的r值相较而言低于该时间段.显然,当车辆速度较慢、车距较近时网络中含有的通信链路越多所构成的通信拓扑越稳定,这与之前可视化交通速度时所得的规律相符.
本节尝试将上述提出的网络脆弱性检测方法应用于网络攻击下多车辆状态信息一致性控制场景,以验证所提方法的实用性.
近年来,研究者们在假定通信网络满足特定鲁棒值的前提下,提出了一系列具备抵御网络攻击的一致性控制方法.比较经典的如LeBlanc等[10]提出的所谓的加权均值子序列缩减(weighted mean-subsequencereduce,W-MSR)算法.网络中的正常节点依据上述算法进行状态值更新,可以在仅获得局部邻居信息下实现状态值一致而不被网络中恶意节点所干扰.考虑由n个节点组成的多车辆网络场景,每个节点代表一辆小车.网络中包含两类节点,分别为正常节点和恶意节点.正常节点始终严格按照控制协议对自身的状态进行更新,而恶意节点不受控制协议的约束,可向周围邻居节点发送恶意信息,以干扰正常节点的一致性更新进程.考虑将t时刻正常节点的动态更新方程表示为
其中:xi[t]表示节点i在时刻t的状态值,wij[t]是节点i在时刻t分配给邻居节点j的值的权重.
W-MSR算法的基本思想是在节点每次迭代更新自身状态值时,为消除恶意节点的影响,主动删除部分与自身状态值相差大的邻居节点,仅使用部分剩下的邻居信息值进行更新.令Ri[t]表示在W-MSR算法执行中t时刻被正常节点i去除的节点集.随后节点i根据下述方程进行更新:
文献[27]研究了网络在f-local攻击模型下的一致性控制问题,给出了系统在W-MSR算法下实现最终状态一致的通信网络鲁棒性的充分条件,即网络鲁棒性值r与网络中恶意节点数目f的临界关系为
假设根据本文所提方法已获得系统通信拓扑的鲁棒性值r,再根据上式可推出在该网络中任一节点的邻居中恶意节点数目上限值f.显然,若恶意节点个数超过了f个,则该网络此时无法对正常节点实施一致性控制.
基于上述理论,设计如下数值仿真实验.考虑一个由8辆小车组成的多车辆网络,其通信拓扑如图8所示.由本文脆弱性检测算法得到该通信网络为一个3-鲁棒图.
图8 由8个节点组成的3-鲁棒图Fig.8 A 3-robust graph with 8 nodes
根据关系式(8)可知,一个3-鲁棒网络中任意节点的邻居中可容忍的恶意节点数目上限是1个.图中每个节点的初始状态在区间(0,20)内随机赋值,随后正常节点采用W-MSR算法进行状态值更新.首先考虑存在1个恶意节点的情况,假定节点6为恶意节点,其值至始至终保持固定不变.算法执行过程中各节点的状态轨迹如图9所示.从图中可以看出系统经10次迭代左右,所有正常节点的状态值趋于一致.符合文献[27]中的所得结论.
图9 存在1个恶意节点时的网络表现Fig.9 The case of one malicious node in network
接下去考虑系统中含有2个恶意节点的情况.不妨假设节点6与7为恶意节点,系统采用W-MSR算法下各节点的状态轨迹如图10所示.图中所有节点的最终状态曲线未能达成一致,其原因是系统中有部分节点邻居中的恶意节点数超过理论上界
图10 存在2个恶意节点时的网络表现Fig.10 The case of two malicious nodes in network
本文针对智能交通系统协同控制网络安全问题,提出了一种基于深度学习的通信网络拓扑脆弱性检测方法.结合智能交通系统和多智能体网络的共性特点对网络脆弱性评估检测问题进行了数学建模.在构建网络通信拓扑时综合考虑了时间和空间因素,设计了融入残差网络的深度学习模型,并通过图分类的方式将不同网络r-鲁棒值进行求解.与现有算法相比,本文采用基于深度学习的检测方法,前期模型训练一旦完成,所提算法可以以毫秒级的速度检测当前时刻系统通信网络的r-鲁棒值,适合大规模动态复杂交通通信网络的脆弱性检测.进一步,考虑了在获知网络r-鲁棒值并且网络中正常节点采用W-MSR更新算法的情况,给出了所评估网络实现节点状态一致性所能容忍的最大恶意邻居节点数目上限.