机坪感知场景下基于移动智能体的机会路由控制方法
2020-11-24陈维兴孟美含苏景芳
陈维兴, 孟美含, 苏景芳
(中国民航大学电子信息与自动化学院, 天津 300300)
近年来,智慧机场已成为中国民航业发展的重要切入点,机坪作为机场运输作业的核心区域,保障航空安全运行。其首要任务是对众多机坪资源的全面、实时感知。
由于机坪旅客流、货物流、资源流受航班流驱动,航班流随机性使得感知对象、感知节点及网络拓扑结构易发生改变,从而形成许多互不连通的子域。因此,机坪环境感知网络具有动态性和弱连接性。近年来,出现的机会网络(opportunity network, OppNet)理论[1-3]采用“存储-携带-转发”的模式,可利用移动节点所带来的相遇机会传输数据,解决网络的间歇性问题。但基于机会的消息传输存在诸多不确定性,在对机坪感知数据进行采集和传输时面临很大的挑战[4]。
针对上述问题,中外研究人员在机会网络移动模型与路由传输方面进行了相关研究。Talwar等[5]研究了Ad Hoc中节点流动模式对协议性能的影响。Hossen等[6]总结分析了OppNet中Epidemic、Prophet、MaxProp、SAW等经典算法的不同移动模型性能对比,但没有明确处理目标,环境适应性相对较弱。许炳昆等[7]在路由建立阶段,通过节点间的相互运动预测链路的生存时间,并且将路由稳定性与跳数之间进行均衡。李向丽等[8]考虑了消息转发时节点的自私性并采取一种激励策略促进节点间相互协作,但没有考虑消息转发时的外在环境因素。陈志刚等[9]引入节点用户对消息内容重要程度的设定,在提高了节点转发消息收益和缓存利用率的同时也增加了能耗,且忽略了移动模型所产生的影响。刘春蕊等[10]设计了一种带阈值的簇移动模型CMMT,增加了Ferry节点与簇节点的相遇机会,但没有在节点相遇后进行下一跳节点的选择。
针对机坪环境感知网络的特点,合理选择移动模型、转发时机及下一跳节点是研究机会路由的关键问题。为实现对机坪全连通网络监控,充分考虑机坪网络内在规律性及网络动态性等要素,通过引入M-Agent规划机坪移动节点的路线模型,实现数据传输负载均衡,结合群体智能思想[11],估计数据传输的下一跳节点,达到改善网络性能的目的。
1 机坪环境感知网络系统
机坪环境感知系统包括机坪地面资源、感知节点、机坪车辆、基站(sink)、终端服务器及相关网络设备等。在运行过程中,航班流驱动人员流、货物流、资源流的变化,感知环境也随之不同。如图1所示,当飞机进入停机位后,各种服务车辆和保障人员开始地面保障工作,形成其感知网络。由于机坪面积广阔,依赖传统无线传感器网络(wireless sensor network,WSN)很难实现机坪网络环境连通性,特别是远机位和航班密度较低时,会出现通信距离造成的非连通子域问题,形成数据中断、子网边缘存在盲区等问题。因此,以机坪特种车辆作为移动智能体(mobile agent,M-Agent),可利用其运动的相遇机会[12]来完成数据转发从而连接各非连通子域,实现机坪感知网络全连通。
2 机坪感知网络数据流模型设计
2.1 连续数据流模型
机坪感知过程中,助航灯柱、标志牌及高杆灯等环境感知节点上的传感器需要周期、连续地向汇聚节点(簇头)上传环境数据,M-Agent节点起到移动组织者的作用,在M-Agent的移动路径上,通过发布路由建立消息,设置约束条件,不断沿节点(多为簇头)转发,形成路由树,最后大量数据流沿路由树向反方向向移动节点汇集。连续型数据流模型如图2所示。
图2 连续型数据流模型Fig.2 Continuous data flow model
2.2 事件驱动数据流模型
当航班到达后,地面保障开始作业。若机坪场景下节点均采用连续型数据流模型,多点数据连续汇聚,造成局部网络资源不均衡,易导致热点、盲点问题。考虑机坪特种车辆工作和部分感知网络采集数据均受控于航班流,航班到达可视为非连续多路激励,为达到网络负载和性能优化,除部分连续数据采集节点,部分机坪感知节点及M-Agent采用事件驱动型网络模型。网络模型如图3所示。
图3 事件驱动型数据流模型Fig.3 Event-driven data flow model
航班流有一定随机特性(泊位位置、实际到达时间等),机坪感知网络数据流模型是共存的。
3 基于负载均衡的M-Agent网络路由算法
机会网络路由算法的设计和移动模型是相辅相成的,其核心思想是:基于数据流模型共存特性规划路由,优化M-Agent节点与分簇节点的数据交互及数据传输路径,结合群体智能方法,求解M-Agent下一跳节点,保证机坪感知网络的连通性和可靠性。
3.1 相关网络定义
定义1 机会网络模型。G=(M,V,A,E)记节点中待转发的消息集合为M={m1,m2,…,mu},发送消息m的簇内节点集合为V={v1,v2,…,vn},其中vi 定义2 M-Agent的迁移路径模型。若M-Agent节点ai从簇内节点vi出发,经过链路E={ev1,ev2,…,evm}从第1簇节点到达第2簇继而遍历n簇节点。M-Agent节点ai的迁移路径记为evm。 定义3 M-Agent负载定义。由剩余能量和消息转发量来表示负载,负载量计算公式为 (1) 式(1)中:L(vi)为分簇节点vi的负载;q(vi)为节点vi的空闲队列,即转发量长度;Q(vi)为节点总队列长度;e(vi)为节点vi的剩余能量 ;E(vi)为节点vi的总能量;δe和δq分别为能量和队列的权重。消息在队列中会产生排队延时,所以权重由实际应用对实时性的要求确定。 机坪具有地域广阔、机位分布、环境复杂、数据源分散及能源受限等特点,将机坪感知网络路由分为两部分:一是单连通子域的簇内静态网络,多存在于近机位;二是全连通域的簇间动态连接,多存在于远机位。 3.2.1 M-Agent节点与簇内节点数据交互问题 簇内节点vi向M-Agent发送数据前应先判定节点信息,机坪车辆行驶轨道和行驶速度相对固定,使车载移动节点ID、速度、迁移路径evm、方向以及邻居节点等状态信息更方便预知,进而确定簇内节点与M-Agent节点位置坐标P:{(x,y)ai,(x,y)vi}。 M-Agent移动过程中,随网络拓扑结构的变化,其节点从不连通簇内携带消息mu移动到另一簇进行数据传输。通常,节点传输跳数越小,传输时延和能量消耗越低。故选择距离M-Agent更近的节点作为非连通簇内的簇头节点(sink)与其进行信息交互。在数据交互过程中,设定约束条件。 约束条件1:传输距离。设置分簇节点vi与M-Agent节点ai间的距离为 (2) 则对于任意一个M-Agent节点ai,取距离di最小的节点vj作为簇内的sink节点继而与M-Agent进行交互,其最小交互距离为 (3) 式(3)中:N(i)表示节点vi的邻居节点。 约束条件2:负载量大小。由定义3可知节点的负载量化,选取低负载量簇内节点vj作为与M-Agent交互的sink节点与其进行交互,其最小负载量为 (4) 机会网络主要依靠相遇机会来传输消息,而节点相遇概率又可以根据约束条件等信息来估计,故设置距离和负载量作为约束条件作为下一跳与之交互的簇内节点vj。 3.2.2 M-Agent节点路由传输与数据汇集问题 M-Agent数据汇集问题可视为移动目标发现问题,可由群体智能的思想实现。在机坪的数据汇集中,将M-Agent视为移动食物源,数据汇集过程视为群体觅食行为,由式(5)表示为 (5) 约束条件daj 为简化计算,减少移动目标,采用线性加权,构造评价函数,将其简化为单目标数学规划问题。针对机坪运行特点,采用距离加权求和,m个M-Agent多目标问题为 minF(X)=min[f1(X),f2(X),…,fm(X)], X∈R (6) 式(6)中:X表示移动节点aj;约束条件可行点组成集合为 R={X|fai(X)≥0,(X)=0, ai=1,2,…,m;aj=1,2,…,n} (7) (8) 构造评价函数为 (9) 式(9)中:λi表示目标函数fi(X)的重要程度。 λd和λl分别表示与M-Agent节点距离的重要程度和节点负载均衡的重要程度,取值范围及关系为 λd>0,λl≥0,λd+λl=1 (10) 式(5)评价函数求解为 (11) 式(11)中:d0为最短距离;e0为最小负载;λd和λl与机坪环境相关,根据实际情况进行调整,节点移动快、实时性要求高时,增加距离权重λd大小,节点移动慢或者能量均衡性较高时,增加负载权重λl大小使其满足: (12) 下一跳节点被选定后,发送反馈确认消息:机场特种车辆ID、车辆当前速度向量、当前位置坐标、是否收过该消息标识符等。通过消息中携带节点位置、负载量大小等信息,可精确地确定消息传输方向和下一跳节点,降低消息丢包率和路由开销。 根据以上的分析,SI-MA思想可用如下伪代码描述。 Initial: M-Agent distance from the grouping node:dvi Packet load of grouped nodes:L(vi) location of each node: (x,y)ai,(x,y)vi SendDest (V,A,P,L) Calculate the distance between node V and A Begin to choose the cluster header Receive (dvj,Lvj) if (dvi vmin=dvj,Lvj} else {adddvj,Lvjintovmin} UpdatePosition and load (); SendMessage(M,V); DataCollection(A,V,M){ } λd,λe∈fi(X) Return Feedback confirmation message to the M-Agent node end for 在机会网络仿真平台(opportunistic network environment,ONE)[13-14]下进行仿真验证,该平台可视为一个担负着“存储-携带-转发”工作的路由器,能够模拟节点的运动、节点相遇、路由以及消息传输的真实情况。采用符合机坪移动特性ClusterMovement移动模型,对M-Agent节点采用MapRouteMovement移动模型(节点在预定义的路径上移动)连接簇间通信。由于Prophet算法利用历史接触时长、接触次数等概率参数及传递因子使消息传输至概率高的中继节点,故每次仿真结果不完全一致。因此,仿真运行5次后取平均值作为最终结果,将SI-MA算法与经典算法Epidemic[15]、prophet[16]进行比较,具体场景参数设置如表1所示。 表1 仿真环境参数设置Table 1 Simulation environment parameter settings 根据机坪实际工况特征,设定3个固定停机位且对应设置3簇非连通子域节点,每簇节点10~80个。考虑航班流随机性,需要移动节点构建机会网络,根据实际情况,设置M-Agent节点为6个,且行驶轨迹具有规律性。在仿真过程中,设置所有节点缓存为25 MB,簇内节点数量增加,但M-Agent节点不变。比较SI-MA、Prophet、Epidemic的消息投递成功率、网络开销比率、平均消息时延。 4.2.1 消息投递率 消息投递率表达为 (13) 式(13)中:delivered为成功到达目的包数目;created为仿真生成的不同的数据包总数。 不同节点数量下,消息投递成功率如图4所示。 SI-MA算法与两种经典算法消息投递率都随簇内节点的增加而减小,这是因为根据机坪实际网络传输特点而设置固定M-Agent节点,只增加簇内节点数量,随簇内节点数量增加,它们之间需要传输数据包增加,而携带这些数据包的M-Agent节点个数固定,故投递率整体下降的趋势是必然的。 由图4可知,SI-MA算法投递率最高,这是因为SI-MA算法在数据传输过程中增加传输距离和负载量的权重,使得数据包传输效率得到提高,在结点数为215个时消息投递率最低约为0.54,这在机坪网络传输过程中是可接受的。而Epidemic与Prophet在此节点数后投递率均低于0.5,这是因为Epidemic消息复制没有任何限制条件,消息副本传输给每个相遇节点,而Prophet算法单纯依靠历史相遇概率来选择下一跳节点,未对节点的属性权重做出考虑。过量消息副本必然导致缓存空间不足和能量过快消耗,因此在网络中死亡节点增加,投递成功率大幅下降。但SI-MA消息投递率仍比Prophet和Epidemic平均提高12.85%和20.6%。 图4 不同节点数下的消息投递率Fig.4 Message delivery rates for different numbers of nodes 4.2.2 网络开销 网络开销比率由包转发总数和包成功到达数二者决定,表达为 (14) 式(14)中:relayed为实际完成的总转发数;delivered为成功到达目的地的包数目。 不同节点数下的网络开销比率如图5所示,网络开销比率都随节点数量增加而上升,这是网内簇内节点增多造成的必然结果。相对而言,Epidemic算法中节点随机泛洪的转发数据会制造大量冗余副本,增加网络中分簇数据能耗,使路由开销率提高,而SI-MA算法通过采用数据流模型共存方式并选择最佳邻居节点转发数据,在节点数达到95个之后有效降低了网络开销。SI-MA网络开销比率分别比Prophet和Epidemic平均降低了20.31%和48.79%。 图5 不同节点数下的网络开销比率Fig.5 Network overhead ratio for different number of nodes 4.2.3 消息平均时延 消息平均时延是指数据包从发送端传输至接收端花费的时间。不同节点数下的消息投递成功率如图6所示,SI-MA算法与Prophet算法的消息平均时延都随簇内节点的增加而快速下降,节点总数在65个后,随节点数量的增加,SI-MA算法时延减小速度较快,这是因为随节点数量增加,分簇节点与M-Agent节点分别采用不同的移动模型,使传输路径趋于稳定,且选择与目的节点同方向的距离近且负载量低的中继节点,避免了消息副本无限制传输导致的通信时延。SI-MA的平均消息延时分别比Prophet和Epidemic,平均降低了7.48%和12.31%。 图6 不同节点数下的通信时延Fig.6 Communication delay with different number of nodes 由以上结果可知,节点数量一定程度上影响算法性能,在相同的网络环境下,簇内节点越多,M-Agent节点需要转发的消息量越多,但由于移动节点的数量不变、缓存固定,使得能量消耗大,故消息投递率降低,网络开销升高。在数据转发过程中,若M-Agent节点始终处于工作状态,则能量消耗过快,节点死亡较早。因此未采用数据流模型切换的Epidemic和Prophet算法性能低于SI-MA算法。该算法在节点数量较大时仍然具有较好的性能。 节点缓存空间大小的设置也是影响算法性能的一个重要参数。由于缓存空间的大小决定了节点存储转发消息量的大小。本节根据机坪的实际情况设置3簇节点内分别为50个,移动节点6个,总结点为155个。在不同缓存空间下,研究3种算法的消息投递成功率、网络开销比率、平均消息时延3个参数。 4.3.1 不同缓存空间下消息投递率 不同缓存空间下的消息投递成功率如图7所示。投递率随缓存空间增加呈上升趋势,但SI-MA算法优于其他算法,随缓存增大,其投递率可达0.95以上。同时可见,当缓存增长至20 MB后,投递率增长速度明显下降,说明当缓存增长至一定程度后对投递率的影响减弱,这可能是由于网络内数据分簇数量规模没有大幅变化,进一步增长缓存对网络性能影响不大。由图7可知,SI-MA的消息投递率分别比Prophet和Epidemic平均提高了8.07%、8.19%。 图7 不同缓存空间下的消息投递率Fig.7 Message delivery rate under different buffer spaces 4.3.2 不同缓存空间下网络开销比率 不同缓存空间下的网络开销比率如图8所示,网络开销比率随缓存增加而呈下降趋势,Epidemic和Prophet算法网络开销比率在缓存为20 MB后趋于平缓,而SI-MA算法仍然处于下降趋势,并且在缓存为40 MB时开销比率降至1 000左右,这在机坪的网络监控中是可以接受的比率。SI-MA的网络开销比率分别比Prophet和Epidemic平均降低了28.11%和21.66%。 图8 不同缓存空间下的网络开销比率Fig.8 Network overhead ratio under different cache spaces 4.3.3 不同缓存空间下平均消息延时 不同缓存空间下的平均消息时延如图9所示。Epidemic算法平均消息时延最大且处于增长趋势,这是由Epidemic泛洪传输方式使得缓存过大导致。根据信息论的原理,当投递率增大网络开销减小时,说明网络成功传输的数据量较大,因此SI-MA算法相对Prophet消息时延没有明显优势,但缓存增大至20 MB后,SI-MA法仍具有时延的下降,说明其具有相对优势。 图9 不同缓存空间下的平均消息时延Fig.9 Average message delay in different buffer spaces 由以上结果可知,节点缓存大小也对算法性能有影响,在相同的网络环境下,缓存空间越大,则节点可存储转发的消息量越大,因而消息投递率越高,网络开销越低。通过以上分析可知,节点缓存设置20~30 MB时使用该算法具有较好的性能。 通过分析机坪节点实际情况,建立网络移动节点模型,对不同类型的消息采用不同数据流模型,以M-Agent触发事件驱动模型为主,统筹其他节点,利用群体智能的思想限定约束条件,对节点的路由决策问题进行优化。实验结果表明:该算法能够高效地将机坪工况数据传输至上位机,降低路由开销与通信时延,满足机坪数据传输的实时性和负载均衡性。但由M-Agent驱动模型来考虑最优下一跳路由选择属于一种贪心策略,而机坪设备数量多且较分散,如何确保机坪网络的全局优化是未来研究方向,将对其作进一步研究。3.2 SI-MA(swarm intelligence-MA)算法思想
4 仿真环境与分析
4.1 仿真环境
4.2 不同节点数量对算法性能影响的分析
4.3 缓存空间对算法性能的影响
5 结论