基于HybridUML和定理证明的CPS自适应性验证方法

文档序号:6436967阅读:168来源:国知局
专利名称:基于HybridUML和定理证明的CPS自适应性验证方法
技术领域
本发明是一种基于HybridUML和定理证明的CPS自适应性验证方法,主要用于基于UML的CPS标准系统开发过程中自适应属性的验证。
背景技术
信息物理融合系统(Cyber Physical Systems,CPS)CPS主要应用在一些对性能要求很高的领域,尤其是安全性关键的领域,因此保障系统的正确性极为重要。仿真和测试技术是目前广泛应用的确保系统正确运行的方法。但是这两种方法均有明显的缺陷仿真技术在寻找细微错误方面能力不足;而测试往往不完整。形式化验证技术弥补了以上不足。 在形式化验证中,会构造一个系统形式化模型,用以描述系统行为,同时会利用逻辑公式描述系统应该具备的行为即属性,然后证明系统的行为是否满足属性。形式化方法使用严格的数学证明方法作为支撑,验证的结果准确性很强。CPS涉及离散过程和连续过程的交互,而这符合混成系统的定义,因此CPS验证可以借鉴混成系统验证理论。Edmund Μ. Clarke和Ε. Allen Emerson在20世纪80年代提出了一种形式化验证方法-模型检验。CPS的并发性和时间属性使得CPS状态空间规模极大,而且实际CPS的状态可达性不可判定,这使得模型检验技术难以适用,很多研究人员对混合自动机进行抽象或近似以解决可达性问题,但计算复杂度太高,而且由于混成系统没有等价的有限状态抽象以及数值方法解决可达性问题的普遍限制,近似方法实用性不大。现有的大部分基于定理证明的混成系统验证方法局限性很大,很难应用于CPS验证。卡耐基梅隆大学的Andr6Platzer提出基于量化微分动态逻辑(Quantified Differential Dynamic Logic, QdL)的分布式混成系统验证方法,该方法可以应用于CPS属性验证,而且不依赖于状态空间遍历,避免了状态空间爆炸的问题。Andr6利用量化微分不变量避免了对微分方程的求解,解决了可达性问题。在验证CPS属性时,Andr6使用QHP对系统建模,然后结合QHP 以QdL公式的形式对属性进行规约,最后利用QdL演算规则对属性公式进行证明,为了实现了属性推理验证过程的自动化,Platzer设计并实现了定理证明器-KeYmaera。因此本发明选用该定理证明器作为底层的形式化验证工具。不过,形式化验证技术理论性过强,很难应用到工业实践中。如果形式化方法可以应用于标准系统开发过程,那么使用形式化方法就会非常容易。对象管理组织提出的建模语言UML已经成为工业实践中默认标准建模语言,但它缺乏精确的语义,因此直接对UML进行形式化验证非常困难。本发明基于如下思想首先利用HybridUML对CPS进行建模,然后将HybridUML规约转换为定理证明器KeYmaera的输入-QHP,然后利用KeYmaera进行自动验证。转换时首先消除顶层Mode具有的层次性,转换后得到的模型称为FlatMode,然后根据FlatMode和QHP之间宏观语义以及元语义的一致性确定转换规则,然后利用ATL (ATLAS Transformation Language)语言描述转换规则,实现FlatMode模型到QHP媒介模型的转换,最后利用基于模板的转换方法实现QHP媒介模型到QHP代码的转换。CPS的网络结构尤其是由移动物理设备组成的自组织网络的结构是动态变化的。控制CPS网络结构动态变化对CPS关键属性如实时性、安全性等的影响对于CPS来说至关重要。因此CPS需要根据网络结构和状态维数的变化动态的调整系统的行为,以确保系统关键属性的保持,这种特性称为自适应性。

发明内容
技术问题本发明的目的是提供一种基于HybridUML和定理证明的CPS自适应性验证方法,主要用于将形式化验证方法应用于以UML作为规约语言的标准系统开发过程。 该发明可以使得开发者在系统开发的早期阶段发现错误,从而极大地降低系统开发的风险。技术方案本发明的方法的思想是将HybridUML规约转换为定理证明器KeYmaera 的输入-QHP,然后利用KeYmaera进行自动验证。转换时,首先消除顶层Mode具有的层次性,转换后得到的模型称为FlatMode,然后根据FlatMode和QHP之间宏观语义以及元语义的一致性确定转换规则,然后利用ATL (ATLAS Transformation Language)语言描述转换规则,实现FlatMode模型到QHP媒介模型的转换,最后利用基于模板的转换方法实现QHP媒介模型到QHP代码的转换。本发明提出的基于HybridUML和定理证明的CPS自适应性验证方法具体步骤如下一种基于HybridUML和定理证明的CPS自适应性验证方法,包括如下步骤步骤1)根据所选CPS属性的特点,导出应该描述的CPS特征,并选择能够充分描述系统特征的Hybrid UML建模视图对系统进行建模;对HybridUML进行了语法和语义扩展,使其表现量化特性;步骤2)给出所选Hybrid UML建模视图和QHP的元模型形式化描述;元模型是对建模语言准确和显式的描述,定义了模型语言的语法和语义;步骤3)转换时首先消除顶层Mode具有的层次性,转换后得到的模型称为 FlatMode,然后根据FlatMode和QHP之间宏观语义以及元语义的一致性确定转换规则,然后利用ATL (ATLAS Transformation Language)语言描述转换规则,实现FlatMode模型到 QHP媒介模型的转换;为了弥补Mode模型与QHP代码之间的抽象鸿沟,在转换时产生一个媒介模型,它包含了生成QHP代码的所有信息;步骤4)使用自定义模板语言描述QHP媒介模型到QHP代码的转换;主模板规则调用模板规则IBS2QHPCode、DTS2QHPCode和CTS2QHPCode分别实现QHP媒介模型初始化块、 离散变迁集合、连续变迁集合的格式化输出,并调用模板规则CycldMar输出QHP代码是否可以循环执行标志符、步骤幻根据步骤3和步骤4,将HybridUML模型转换为QHP代码。步骤6)然后结合生成的QHP代码以QdL公式的形式规约属性,并利用KeYmaera 进行自动验证,得出验证结果,并结合验证结果对验证方法进行有效性评估;QdL属性公式的推理验证过程采用相继式演算kquent Calculus作为基本证明系统,验证过程将属性公式作为结论,并将其置于整个演算过程的最底层,自下而上根据QdL演算规则进行演算,如果属性满足,则推理过程以*结束,否则给出属性公式满足时应该满足的前置条件。
步骤幻和步骤4)定义的HybridUML状态机模型到QHP代码的转换是本发明的核心内容,并且本发明在步骤4)中提出了一种基于模板的代码生成方法,并给出了其语法和语义解释。有益效果经过大量实例分析,本发明提出的基于HybridUML和定理证明的自适应性验证方法可以很好的应用于基于UML的标准系统开发过程,验证系统的自适应属性, 该发明极大地降低了系统开发者进行系统验证的难度,从而很大程度上降低了系统开发的风险。


图 1 是扩展 Classes Kernel Constraint图 2 是扩展 Classes Kernel Expression图 3 是扩展 CommonBehaviors Comunications Event图 4 是扩展 CommonBehaviors Comunications ChangeEvent图 5 是继承 ModeUpdateActivity图6是HybridUML层次混合状态机Mode元模型类7是FlatMode元模型类8是QHP媒介模型元模型类9是智能交通系统Mode建模图10是智能交通系统QHP表示图11是模型转换框架图12是CPS自适应性验证框架附表1基于ATL的Mode模型到QHP媒介模型的转换涉及的相关规则附表2基于自定义模板语言的QHP媒介模型到QHP代码的相关模板规则附表3FlatM0de与QHP媒介模型之间元模型的语义对应关系
主规则调用的helper及规则helper或规则的作用EntrySteps获取 FlatMode 的 EntryStep 集合InternalSteps获取 FlatMode 的 InternalStep 集合ContinuousSteps获取 FlatMode 的 ContinuousStep 集合
CycleSymbol获得Internalstep是否可循环执行标识ES2QHPI将 Entryftep 转换为 QHP 初始化单元 QHPInitializationIS2QHPDT将 InternalStep 转换为 QHP 离散变迁 QHPDTransitonCS2QHPCT将 ContinuousStep 转换为 QHP 连续变迁 QHPCTransitonIModeHCode将QHP媒介模型转换为QHP代码
附表2基于自定义模板语言的QHP媒介模型到QHP代码的相关模板规则主规则调用的模板规则模板规则作用IBS2QHPCode将QHP媒介模型初始化块以指定代码格式输出
DTS2QHPCode将QHP媒介模型离散变迁集合以指定代码格式输出CTS2QHPCode将QHP媒介模型连续变迁集合以指定代码格式输出Cycle2Star输出程序是否可多次执行标识 表3FlatM0de与QHP媒介模型之间元模型的语义对应关系
权利要求
1.一种基于HybridUML和定理证明的CPS自适应性验证方法,其特征在于包括如下步骤步骤1)根据所选CPS属性的特点,导出应该描述的CPS特征,并选择能够充分描述系统特征的Hybrid UML建模视图对系统进行建模;对HybridUML进行了语法和语义扩展,使其表现量化特性;步骤2、给出所选Hybrid UML建模视图和QHP的元模型形式化描述;元模型是对建模语言准确和显式的描述,定义了模型语言的语法和语义;步骤幻转换时首先消除顶层Mode具有的层次性,转换后得到的模型称为FlatMode, 然后根据FlatMode和QHP之间宏观语义以及元语义的一致性确定转换规则,然后利用ATL 语言描述转换规则,实现FlatMode模型到QHP媒介模型的转换;为了弥补Mode模型与QHP代码之间的抽象鸿沟,在转换时产生一个媒介模型,它包含了生成QHP代码的所有信息;步骤4)使用自定义模板语言描述QHP媒介模型到QHP代码的转换;主模板规则调用模板规则IBS2QHPCode、DTS2QHPCode和CTS2QHPCode分别实现QHP媒介模型初始化块、离散变迁集合、连续变迁集合的格式化输出,并调用模板规则CycldMar输出QHP代码是否可以循环执行标志符、步骤幻根据步骤3和步骤4,将HybridUML模型转换为QHP代码。步骤6)然后结合生成的QHP代码以QdL公式的形式规约属性,并利用KeYmaera进行自动验证,得出验证结果,并结合验证结果对验证方法进行有效性评估;QdL属性公式的推理验证过程采用相继式演算kquent Calculus作为基本证明系统,验证过程将属性公式作为结论,并将其置于整个演算过程的最底层,自下而上根据QdL演算规则进行演算,如果属性满足,则推理过程以*结束,否则给出属性公式满足时应该满足的前置条件。
2.根据权利要求1所述的基于HybridUML和定理证明的CPS自适应性验证方法,其特征是步骤1)中,对HybridUML进行了语法和语义扩展如下a、对Constraint进行了量化扩展,用于表达CPS网络结点数的动态变化特性,量化约束QuantifiedConstraint包括量化微分约束和量化不变量约束;b、对表达式进行了量化扩展,量化表达式类别包括量化微分表达式 QDifferentialExpression> 量化代数表达式 QAlgebraicExpression> 量化布尔表达式 QBooleanExpression 及量化 New 表达式 NewOb jectExpression ;New 表达式用于表现 CPS 网络中出现新结点事件,New表达式内部有一个表达该事件的NewObjectExpression,扩展如图2所示。C、扩展NewObjectEvent用于表现CPS网络中新结点的出现事件,内部有一个表达该事件的NewOb jectExpression,如η : = New C,η为新CPS结点的标识符,New为结点生成操作符,C为结点类别,扩展如图3所示。d、对ChangeEvent进行量化扩展,扩展后的元类QChangeEvent内部有一个 QBooleanExpression,来表示事件触发的条件,扩展如图4所示。e、QUpdateActivity用于对所有活动CPS结点的离散变量进行更新,内部有一个 QAlgebraicExpression,用于表达具体的赋值行为。
3.根据权利要求1所述的基于HybridUML和定理证明的CPS自适应性验证方法,其特征是所述步骤幻中,HybridUML状态机图Mode的抽象元模型以类图形式表示;Mode表示层次混合状态机,也代表状态,Mode内部包含的约束用于刻画连续变迁; ModeTransition^^^f^^a^S^^Mode ! TriggerEvent^Mode !Constraint以及动作ModeActivty组成,其中,ModePseudostate代表伪状态控制点,Mode ! iTriggerEvent表示触发变迁的事件,Mode ! Constraint代表各种约束, ModeActivity代表离散变迁发生时伴随发生的动作,Mode ! Expression代表各种表达式,表达式的类别包括New表达式、量化微分表达式、 量化代数表达式以及量化布尔表达式;Ijfi^Mode ! TriggerEvent 表示角虫发变迁的事件包括 Mode ! NewObjectEvent 禾口 Mode 丨 QuantifiedChangeEverit0
全文摘要
本发明提出一种基于HybridUML和定理证明的CPS自适应性验证方法,主要用于解决形式化验证方法理论性过强所带来的难以普遍应用的难题。本发明步骤包括首先利用HybridUML视图对CPS建模;然后将HybridUML规约转换为定理证明器KeYmaera的输入-量化混合程序QHP;结合生成的QHP,以量化微分动态逻辑QdL公式的形式对待验证的属性进行规约,然后利用KeYmaera进行自动验证;进行模型转换之前,需要定义HybridUML和QHP的元模型,转换时首先消除顶层Mode具有的层次性,转换后得到的模型称为FlatMode,然后根据FlatMode和QHP之间宏观语义以及元语义的一致性确定转换规则,然后利用ATL语言描述转换规则,实现FlatMode模型到QHP媒介模型的转换,然后利用自定义模板语言实现QHP媒介模型到QHP代码的转换。
文档编号G06F9/44GK102426521SQ201110338039
公开日2012年4月25日 申请日期2011年10月28日 优先权日2011年10月28日
发明者刘翠翠, 吉顺慧, 吴晓娜, 朱敏, 李加凯, 李必信, 齐珊珊 申请人:东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1