一种基于统计模型检测的cps属性验证方法

文档序号:6535795阅读:170来源:国知局
一种基于统计模型检测的cps属性验证方法
【专利摘要】一种基于统计模型检测的CPS属性验证方法,包括以下步骤:S1、设置通信端口将混成自动机扩展为扩展混成自动机,并获取CPS模型通过所述扩展混成自动机运行的轨迹。S2、构造用于产生所述CPS模型运行的轨迹样本的监视器,并将所述监视器生成的轨迹样本作为SMC统计验证阶段的输入。S3、使用统计评估技术收集所述CPS模型满足特定属性的证据,并使用预设的第二算法判断CPS模型是否满足所述特定属性。
【专利说明】一种基于统计模型检测的CPS属性验证方法
【技术领域】
[0001]本发明属于物联网及CPS领域,具体涉及模型检测技术和统计评估技术,尤其是一种基于统计模型检测的CPS属性验证方法。
【背景技术】
[0002]随着嵌入式技术、计算机技术和网络技术的不断发展,以及硬件产品性能和数据处理能力的不断提升,计算机系统逐渐趋于信息化、智能化。在这种需求之下,信息物理融合系统(Cyber-Physical Systems, CPS)作为一种新型智能系统应运而生,并且引起了各国政府、学术界和工业界的高度重视。
[0003]CPS是融合了计算和物理进程的复杂嵌入式网络系统,它通过嵌入式系统和网络对物理设备进行监测和控制,并通过反馈机制相互影响。在未来,CPS将广泛应用于重要的基础设施的监测与控制、国防武器系统、医疗保健和智能交通等诸多领域,因此,保证CPS的安全可靠非常重要。由于物理环境的不确定性以及物理设备本身可能出故障,所以保证整个CPS的健壮性和安全性是一个重要的挑战。
[0004]目前有一些对CPS系统进行验证的方法,比如软件测试等。软件测试虽然能在一定程度上保证系统的可靠性,但是只能发现其中比较明显的错误,且只能在软件开发的后期才能进行,具有一定的局限性。
[0005]实际上,采用形式化的方法对系统进行验证能在系统的设计阶段就能发现设计中的错误,从而有效保证后期的工作顺利进行,大大降低了软件开发的成本。模型检测技术是一种比较常用的形式化方法,它具有高度自动化的特点,它通过遍历系统的状态空间来验证模型是否满足特定的属性规约。模型检测通常需要三步,即建模、规约和验证:系统建模(Modeling)是通过对系统进行抽象,建立系统的形式化模型,通常建模为状态迁移系统,M=〈L,T,S>。需求规约(Specification)是将系统必须满足的需求用时序逻辑公式形式化表示成Φ。模型验证(Verification)是对给定的系统模型Μ,系统属性规约Φ,通过某种验证算法来判断模型M是否满足属性Φ,即M ‘ Φ。
[0006]目前,通常的模型检测技术是通过遍历系统的状态空间来验证系统是否满足特定的属性,因而受到系统状态空间的大小的限制,即面临状态空间爆炸问题。而实际中CPS的系统状态空间通常较大,再加上物理环境的不确定性和设备本身可能出故障,因而传统的模型检测技术对CPS进行验证就显得苍白无力。
[0007]统计模型检测(Statistical Model Checking, SMC)是最近提出的一种验证大型复杂系统新技术。SMC的核心思想是构造系统执行的仿真,然后通过统计评估技术的方法判定系统是否以某一置信度满足特定的属性。
[0008]尽管CPS已经引起了国内外的广泛关注,但是因为相关的研究刚刚起步,目前所取得的研究成果相当有限,目前存在以下一些CPS属性验证方法。
[0009]美国加州大学Edward A.Lee教授领导的Ptolemy工程,研究并发、实时、嵌入式系统的建模、仿真和设计。其主要的关注点是并发组件的组合,根本原理是:将多种计算模型进行层次化组合,以解决异构计算模型混合使用的问题。但是这些工作主要集中于CPS的建模与仿真,对CPS的属性的验证涉及较少。此外,李力行等以时间自动机为工具,分别将要监测和控制的物理实体以及不同种类的服务独立建模,并对时间属性进行了验证。由于CPS软件与硬件紧密耦合的特点,时间自动机的表达能力的限制,因此需要表达能力更强的模型。
[0010]SMC最初是由Younes提出并利用验收抽样对离散事件系统的属性进行验证,并开发了统计模型检测模型检测器,讨论了统计模型检测中的误差控制,研究了关于无界until运算符属性的统计验证问题。在这些工作中,所采用的模型是CTMC、DTMC和MDP,由于CPS本身的特点,采用这些模型对CPS建模十分困难。
[0011]Paolo Zuliani等将贝叶斯统计学运用于随机系统的统计模型检测中,利用耦合理论(Coupling)和重要性抽样技术研究了统计模型检测由于稀有事件引起的计算时间爆炸问题。Clarke等研究者将重要性抽样和互熵技术应用于解决统计模型检测计算时间爆炸问题,对SMC进行了扩展使其支持不确定的情景,并将偏序约简应用于包含伪不确定性的模型。
[0012]在上述各种CPS属性验证方面的研究当中,均取得了很大的进步,但是还存在一些不足:首先,有部分工作主要关注CPS的建模与仿真,而对CPS属性的正确性验证研究较少;其次,在目前的统计模型检测算法中,采用的模型大多是CTMC、DTMC和MDP,由于CPS本身的特点,这些模型不能很好的进行表达。
[0013]鉴于上述原因,本发明提供一种基于统计模型检测的CPS属性验证方法,主要采用扩展的混成自动机网络对CPS进行建模,再构造模型检测需要的样本,并设计一种混成自动机网络的统计模型检测算法,用以验证CPS属性的正确性。

【发明内容】

`[0014]本发明提供一种基于统计模型检测的CPS属性验证方法,包括以下步骤:
[0015]S1、设置通信端口将混成自动机扩展为扩展混成自动机,并获取CPS模型通过所述扩展混成自动机运行的轨迹;
[0016]S2、构造用于产生所述CPS模型运行的轨迹样本的监视器,并将所述监视器生成的轨迹样本作为SMC统计验证阶段的输入;
[0017]S3、使用统计评估技术收集所述CPS模型满足特定属性的证据,并使用预设的第二算法判断CPS模型是否满足所述特定属性。
[0018]优选的,在步骤SI中,所述通信端口为元组Port=〈pid, value, dom, options〉,其中,pid为端口的唯一标识符,value为端口的数据,dom为消息通信的数据类型,options为端口所允许进行的操作的集合。
[0019]优选的,在步骤SI中,所述扩展混成自动机表示为EHA=〈HA,P〉,其中,HA为混成自动机且所述HA=<Loc, Var, Lab, E, Act, Inv>, P=Ip1, p2,…,pj为所有与HA关联的端口的集

口 ο
[0020]优选的,在步骤S2中,所述监视器根据自身设置的第一算法生成轨迹样本,且所述监视器对CPS系统中所有的离散事件进行监视。
[0021]优选的,步骤S3所述的CPS模型需满足的特定属性,采用概率线性时序逻辑进行描述。
[0022]优选的,所述步骤S3采用贝叶斯统计模型检测方法进行CPS属性验证。
[0023]优选的,在步骤S3中,若CPS模型为Μ, σ为M的任一执行轨迹,Φ是待验证的CPS属性公式,Θ e (O, I)为概率阈值,P表示M的执行轨迹满足公式Φ的概率,则当满足M ‘Ρ>0(Φ),即P≤Θ时,完成属性验证。
[0024]根据本发明提供的基于统计模型检测的CPS属性验证方法,通过设置通信端口将混成自动机扩展为扩展混成自动机后,获取CPS模型通过扩展混成自动机运行的轨迹,对CPS作出了更加准确的描述。同时,构造监视器以产生CPS模型运行的轨迹样本,以此作为SMC统计验证阶段的输入,并使用统计评估技术收集CPS模型满足特定属性的证据,以判断CPS模型是否满足特定属性。如此,有效避免了传统模型检测技术的瓶颈,及其带来的系统状态空间爆炸问题。
【专利附图】

【附图说明】
[0025]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0026]图1是本发明较佳实施例提供的基于统计模型检测的CPS属性验证方法流程图;
[0027]图2是本发明较佳实施例提供的恒温器的混成自动机模型示意图;
[0028]图3是本发明较佳实施例提供的CPS软件属性验证框架示意图。
【具体实施方式】
[0029]下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0030]图1是本发明较佳实施例提供的基于统计模型检测的CPS属性验证方法流程图。如图1所示,本发明较佳实施例提供的基于统计模型检测的CPS属性验证方法包括步骤SI ~S3。
[0031]步骤S1:设置通信端口将混成自动机扩展为扩展混成自动机,并获取CPS模型通过所述扩展混成自动机运行的轨迹。
[0032]具体而言,混成自动机是一种由Alur提出的能同时描述离散和连续动态系统的形式化模型。混成自动机在有限自动机的基础上加入了一组变量的扩展,它的位置(location)表示系统的连续性的演化,它的转换(transition)表示系统状态的离散变迁。图2是本发明较佳实施例提供的恒温器的混成自动机模型示意图。如图2所示,通常用有向图来表示混成自动机,用顶点表示位置,用边表示离散迁移。
[0033]通常,混成自动机HA是一个六元组HA=〈Loc, Var, Lab, E, Act, Inv>,其中:Loc为顶点的集合,叫做位置(location) ;Var为实值变量的集合,变量x的赋值为函数V(X):Var — R,将变量映射到实数值,用V表示所有赋值的集合,混成自动机的状态为<l,v>,其中I e Loc, V e V,用Σ表示所有状态的集合;Lab为同步标签的集合;E为边的集合,边e=〈l, a, μ,I’ >包含源位置I e Loc和目标位置I’ e Loc,同步标签a e Lab,转换关系μ e VXV ;标记函数Act为每个位置I e Loc标记一系列活动(activity)函数Act(I):R&0-V,将时间t映射到V的函数;标记函数Inv给每个位置I e Loc标记一个不变式 Inv(I) e V2。
[0034]在CPS中,各组件并非完全孤立,它们是相互联系的统一整体。因此,要能更准确的描述CPS,需要对经典的混成自动机加以扩展。本实施例设置了通信端口的概念将CPS不同部分联系起来,具体描述如下。
[0035]所述通信端口为元组Port=〈pid, value, dom, options〉,其中,pid为端口的唯一标识符,value为端口的数据,dom为消息通信的数据类型,options为端口所允许进行的操作的集合。
[0036]所述通信端口只允许进行两种操作Read和Write。举例而言,传感器通信端口与传感器相连的那一端可以进行Read和Write操作,而与计算单元相连的这一端则只能进行Read操作。其操作形式例如表1所示:
[0037]
【权利要求】
1.一种基于统计模型检测的CPS属性验证方法,其特征在于,包括以下步骤: 51、设置通信端口将混成自动机扩展为扩展混成自动机,并获取CPS模型通过所述扩展混成自动机运行的轨迹; 52、构造用于产生所述CPS模型运行的轨迹样本的监视器,并将所述监视器生成的轨迹样本作为SMC统计验证阶段的输入; 53、使用统计评估技术收集所述CPS模型满足特定属性的证据,并使用预设的第二算法判断CPS模型是否满足所述特定属性。
2.根据权利要求1所述的方法,其特征在于,在步骤SI中,所述通信端口为元组Port=< pid, value, dom, options >,其中,pid为端口的唯一标识符,value为端口的数据,dom为消息通信的数据类型,options为端口所允许进行的操作的集合。
3.根据权利要求1所述的方法,其特征在于,在步骤SI中,所述扩展混成自动机表示为EHA = < HA, P >,其中,HA 为混成自动机且所述 HA = < Loc, Var, Lab, E, Act, Inv >, P =Ip1, P2,…,Pj为所有与HA关联的端口的集合。
4.根据权利要求1所述的方法,其特征在于,在步骤S2中,所述监视器根据自身设置的第一算法生成轨迹样本,且所述监视器对CPS系统中所有的离散事件进行监视。
5.根据权利要求1所述的方法,其特征在于,步骤S3所述的CPS模型需满足的特定属性,采用概率线性时序逻辑进行描述。`
6.根据权利要求1所述的方法,其特征在于,所述步骤S3采用贝叶斯统计模型检测方法进行CPS属性验证。
7.根据权利要求1所述的方法,其特征在于,在步骤S3中,若CPS模型为Μ,σ为M的任一执行轨迹,Φ是待验证的CPS属性公式,Θ e (O, I)为概率阈值,P表不M的执行轨迹满足公式Φ的概率,则当满足ΜΡ>0 (Φ),即P > Θ时,完成属性验证。
【文档编号】G06F17/50GK103699762SQ201410017878
【公开日】2014年4月2日 申请日期:2014年1月15日 优先权日:2014年1月15日
【发明者】张广泉, 陈名才, 戎玫, 邵玉珍, 封飞, 李烨静 申请人:苏州大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1