APP下载

基于层次时间自动机的移动授权的建模与验证

2020-06-04汤旻安

科学技术与工程 2020年11期
关键词:自动机顶层障碍物

蔚 璠, 汤旻安

(兰州交通大学自动化与电气工程学院,兰州 730070)

经济发达国家城市的交通发展历史告诉我们,只有采用城市轨道交通系统[1],例如地铁和轻轨等,才是从根本上改善城市公共交通状况的有效途径。基于通信的列车运行控制(communication based train control,CBTC)系统是保障列车高效安全运行的关键,且在该系统中,移动授权扮演了重要的角色,也是列车安全行车的基础[2]。因此,对移动授权生成建模和验证,若模型中发生信息发送失败或控制逻辑错误时,会致使通信列车运行出现故障,甚至导致事故。验证可以高效查找出时间约束和系统设计的漏洞,进而使系统功能的可靠性得到很大的改善[3-4]。

关于城市轨道交通中既有的形式化验证研究中,邱敏[5]利用动态故障树的方法对车地通信系统实现安全分析与控制;李耀等[6]分析CBTC各子系统之间的信息交互,通过建立时间安全状态机网络模型验证越区切换功能;朱爱红等[7]采用统一建模语言(unified modeling language,UML)模型和有色Petri网模型,分析影响列车安全运行和行车效率的因素,即转换时长和转换成功率;刘金涛等[8]通过系统理论的过程分析建立PHAVer模型及故障监视器模型,利用可达集计算验证列控系统的安全性分析;李聪[9]采用状态机理论模拟列车间通信协作方式,实现对前面列车的识别并建立通信连接,完成两列车间追踪的分析与测试。

针对CBTC系统移动授权生成功能的安全和实时性等方面的不足,结合列车管理、安全位置、遍历障碍物和列车筛选模块的特点,利用时间自动机是扩展即层次时间自动机理论,对移动授权生成进行层次化分析、形式化建模,验证该模型是否正确和可靠,对功能的具体实现具有指导意义。

1 移动授权生成的逻辑及需求分析

移动授权又称行车许可,是指列车车尾位置到前方障碍物之间的这部分轨道线路,它主要包括列车信息、障碍物信息和过移动授权终点(end of authority,EOA)时的速度及有效时间等[10]。移动授权的生成发生在CBTC系统的地面设备区域控制器(zone controller,ZC),移动授权原理如图1所示。

图2 MA生成逻辑流程Fig.2 MA generation logical flow

图1 移动授权原理Fig.1 MA schematic diagram

1.1 移动授权生成的逻辑分析

为了便于建模和检验,抽取移动授权生成的主要流程并适当假设,具体的逻辑流程如图2所示。

移动授权生成的顶层模块主要收集各类信息,在规定时间内完成移动授权的发送。在此过程中可分别进入各子模块,完成各项功能任务。它的具体过程如下:ZC负责其辖区范围内的列车,通过对列车各运行状态的管理实现对列车的管辖。车载设备向其汇报列车位置、测距误差以及移动授权申请等信息,地面ZC根据这些信息计算出列车的安全位置。由具体的安全位置可以匹配列车占用的线路区段。联锁系统采集了限制列车运行的各种条件,即障碍物(道岔、屏蔽门、紧急停车按钮和计轴区段等),并向ZC发送障碍物信息和进路信息。此时,可以根据接收到的进路信息、障碍物信息和位置信息确定移动授权的计算范围。ZC以由近及远的顺序遍历障碍物,具体分为静态障碍物遍历和动态障碍物遍历,而动态障碍物遍历过程中又涉及列车筛选。最后根据遍历结果确定EOA,并发送回列车。

1.2 移动授权生成安全需求

移动授权在CBTC系统中为列车追踪、折返切换场景提供必要的安全信息,它的重要性不言而喻。在它的生成过程中需满足一些必要条件,避免出现因工作时间超时等其他原因造成的通信故障或行为异常,进而由ZC成功生成正确合理的移动授权信息。对于这种安全苛求系统而言,所有的行为需要满足故障-安全的原则。因此,系统的各类需求性质如下。

(1)实时性:保证消息和行为的时效性。

(2)可用性:按照约定逻辑向合法的用户对象提供各类服务。

(3)顽健性:面对不确定因素具有较强适应性。

(4)完整性:确保建立系统的逻辑信息与源信息完全一致,无遗漏。

(5)安全性:出现异常消息或行为时导向故障状态。

2 移动授权生成的形式化建模

检验移动授权生成功能不仅须满足复杂逻辑的正确性,还须满足时间的正确性。因此,选择时间自动机的扩展即层次时间自动机进行形式化分析,可以实现有效的检验[11]。

2.1 关于自动机的扩展

定义1有限自动机,又称有限状态机。它定义为一个五元组(Q,∑,E,q0,qn)。其中,Q是有穷的状态位置集,∑是自动机接受语言的有穷集合,E是转换函数的集合,q0∈Q是起始位置集合,qn∈Q是终止位置集合。

在移动授权生成功能实现的过程中,存在许多与时间相关的逻辑信息,对有限自动机引入时间约束,形成时间自动机。

定义2时间自动机。它定义为一个六元组(C,Q, q0,A,I,E)。其中,C是时钟变量的集合,Q是有穷的状态位置集合,q0∈Q是起始位置集合,A是有穷的动作事件集合,I是映射位置的集合,它给Q中每个位置q指定一个时钟约束,E是状态转移函数的集合。

根据移动授权生成功能的逻辑分层设计,考虑以分层的方式对时间自动机进行扩展,形成层次时间自动机模型,从而,对移动授权生成进行形式化建模。

定义3层次时间自动机。它定义为一个八元组(Q,q0,δ,V,C,Ch,I,E)。其中,Q是有穷的状态位置集,q0∈Q是起始位置集合,δ是一个从q到qx的所有可能的子状态映射函数集合,V是变量的集合,C是时钟的集合,Ch是通道的集合,I是映射位置集合,它给Q中每个位置q一个时钟不变量,E是状态转移函数的集合。

2.2 形式化建模

利用层次时间自动机对移动授权生成功能进行形式化建模,可将其表示为5个模块自动机的积,即MAGenerate=TOP ‖(TM‖SL‖(EO‖TS))。其中,TOP表示顶层模块,底层模块包括TM列车管理模块、SL安全位模块、EO障碍物遍历模块、TS列车筛选模块。模型中变量、主要状态位置、同步通道的具体含义如表1~表3所示。

表1 变量含义

根据层次时间自动机理论,先建立顶层模块模型,如图3所示,可形式化表示为TOP=(QT,q0T,δT,VT,CT,ChT,IT,ET),其中,各元在模型中以不同颜色表明,它们的含义如下。

QT={Start,EnterZCArea,TrainManagement,CheckState,EnterSL,CountSafetyLoc,MatchOccSection,EnterEO,GetObstacle,GenerateMA,SendMA,SendSuc,SendFalse}

q0T={Start}

δT为一个映射函数,将状态位置映射为卫式,具体对应到顶层模型TOP中。

CT={T}

VT={ComFalse}

ChT={StartTM!,FinishTM?,StartSL!,FinishSL?,StartEO!,FinishEO?}

IT={T>5,T<=5}

ET={(Start,Ø,Ø,Ø,EnterZCArea),(EnterZCArea,Ø,StartTM!,Ø,TrainManagement),(TrainManagement,Ø,FinishTM?,Ø,CheckState),(Check State,Ø,Ø,ComFalse=0,EnterSL),(CheckState,Ø,Ø,ComFalse=1,Start),…(GenerateMA,Ø,Ø,T:=0,SendMA),(SendMA,T>5,Ø,Ø,SendFalse),(SendMA,T<=5,Ø,Ø,SendSuc),(SendSuc,Ø,Ø,Ø,Start),(SendFalse,Ø,Ø,Ø, Start)

表2 主要状态位置含义

表3 同步通道含义

移动授权生成功能从Start开启,首先列车进入ZC的管辖范围内,通过通道StartTM调用列车管理子模块,结束后确定列车的状态,若此时出现ComFalse=1通信异常则返回初始,否则携带列车管理信息返回顶层模块;进入安全位置模块,计算列车安全位置后,通过通道FinishSL带安全包络信息返回顶层模块;进入障碍物遍历模块,确定最终的障碍物后,带障碍物信息返回顶层模块,从而生成移动授权,此时要将授权信息发送给列车,时间约束为5个单位时间,在约束时间内完成则发送成功,否则回到初始状态进行下一轮移动授权生成。

为了使结构更加清晰,对各子模块进行单独建模,这里简要对障碍物遍历模块进行介绍,其他模块模型如图4~图7所示,形式化描述依据TOP模块模型,结合图例可以得出,限于篇幅不再详述。对于障碍物遍历模块,通过通道StartEO开始遍历,搜集线路障碍物信息并排序,然后开始处理,当Ergodic==0时,对静态障碍物进行遍历,当!LimitRun,即不限制列车正常运行时,确定线路最大值为静态障碍物,否则设置最近的障碍物为静态输出结果;紧接着Ergodic==1时,对动态障碍物进行遍历,经过列车筛选,判断是否为通信车,若ComFalse==1,则列车占用轨道始端为动态输出结果,否则判断占用轨道类型,若!StationTrack即不是站台轨道,则前车车尾为动态输出结果,否则站台始端动态输出结果;静、动态结果对比,距离最近的为最终的遍历结果,并由通道FinishEO返回顶层模型。

图3 顶层模块模型(TOP)Fig.3 Top-level modular model(TOP)

图4 列车管理模块模型(TM)Fig.4 Train manage modular model(TM)

图5 安全位置模块模型(SL)Fig.5 Safety location modular model(SL)

图6 障碍物遍历模块模型(EO)Fig.6 Ergodic obstacle modular model(EO)

图7 列车筛选模块模型(TS)Fig.7 Train screen modular model(TS)

3 移动授权生成的形式化验证

对建立好的移动授权生成功能的层次时间自动机模型进行检验,使用专用的自动化验证工具UPPAAL检验,能有效发现模型的错误,并检验各条性质是否满足。

3.1 验证工具介绍

UPPAAL是目前对基于时间自动机的最有代表的软件工具,它是由瑞典Uppsala和Aalborg大学联合发布的验证工具[12-13]。它可以提供描述及验证系统属性的形式化验证器,支持了时间自动机的功能属性的建模与验证。软件界面的编辑器、模拟器和验证器可以对实时系统进行建模、仿真与验证,且最终在验证器窗口中给出直观的结果。对系统功能属性的描述采用专用语法,即BNF语法[14-15]。

3.2 验证结果分析

在编辑器中建立移动授权生成的功能模型,在模拟器中可以模拟出各层次的交互情况,以时序图的形式展现了各层次对象间的信息交互和状态转换。但由于它的择路条件随机,不一定遍历所有状态,因此,须用验证器验证实时性、顽健性、可用性等特性。利用BNF语言对其形式化描述,利用验证器得到结果,如图8所示,绿色表示满足性质。

图8 验证结果截图Fig.8 verification result screenshot

(1)验证实时性。

A[](TOP.SendSuc)imply(TOP.T<=5)

A[](TrainManage.EnterControlState)imply(TrainManage.T1>Troute)

A[](TrainScreen.HScreenClear)imply(TrainScreen.Ts>Taxiscount)

A<>(TrainScreen.End)imply(TrainScreen.Ts<=Taxiscount)

模型在MA发送、CI排进路和车头、车尾筛选处设置了时间约束,可以保证消息和行为的时效性。

(2)验证可用性。

在顶层模型中,列车管理、计算安全位置和获得障碍物状态可达,即子功能可实现;顶层到底层模块的入口和出口状态可达,可保证实现相应的子功能服务。验证性质如下:

E<>TOP.TrainManagement

E<>TOP.CountSafetyLocation

E<>TOP.GetObstacle

E<>(TOP.EnterZCArea)imply(TrainManage.Initial State)

E<>(SafetyLocation.GetSafetyloc)imply(TOP.MatchOccSection)

E<>(ErgodicObstacle.TrainScreening)imply(TrainScreen.ScreenProcess)

(3)验证顽健性。

A[]not deadlock

模型不存在死锁,面对任何情况都有可执行的路径。

(4)验证完整性。

在建立模型中列车可处于各种状态,各管理状态皆可达。筛选距离、限制列车运行和站台轨道作为判断条件可让模型实现择路条件随机,遍历完整模型状态。验证性质如下:

E<>(TrainManage.InitialState)or(TrainManage.EnterControlState)or(TrainManage.FalseState)or(TrainManage.NormalState)or(TrainManage.CancelState)

E<>(TrainScreen.CountTSDis and S

E<>(ErgodicObstacle.FindNearestStatic and !Limit Run)imply(ErgodicObstacle.NearestObstacle)

E<>(ErgodicObstacle.OrbitType and !StationTrack) imply(ErgodicObstacle.FrontTail)

(5)验证安全性。

考虑通信异常因素对功能系统造成的影响,会导致列车转为故障状态,无法正常生成移动授权。

E[](TOP.CheckState and ComFalse==1)imply(TOP. Start)

E[](TrainManage.NormalState and ComFalse==1)imp ly(TrainManage.FalseState)

UPPAAL验证器对上述5个性质的语句全部逐条验证,各性质的具体结果如表4所示。

表4 验证结果

4 结论

分析了移动授权生成功能的逻辑原理,根据其功能特点,以分层的形式对时间自动机模型进行扩展,建立了顶层和4个底层的形式化模型,并通过验证得到以下结论。

(1)层次时间自动机理论有效解决了建模时的复杂流程与逻辑,应用于城市轨道交通控制系统的开发与验证。

(2)利用验证工具UPPAAL提供的模型验证器检验了功能的实时性、顽健性、可用性、完整性、安全性5项特性,证明了移动授权生成功能满足了预期的需求特性。

猜你喜欢

自动机顶层障碍物
从顶层设计到落地实施
基于自动机理论的密码匹配方法
高低翻越
SelTrac®CBTC系统中非通信障碍物的设计和处理
滨海顶层公寓
汽车顶层上的乘客
格值交替树自动机∗
赶飞机
一种基于模糊细胞自动机的新型疏散模型
一种基于模糊细胞自动机的新型疏散模型