一种基于活动图路径的仿真参数数据自动生成方法技术

技术编号:19122362 阅读:40 留言:0更新日期:2018-10-10 05:20
本发明专利技术公开了一种基于活动图路径的仿真参数数据自动生成方法,通过对活动图路径的遍历自动生成仿真参数数据,并将生成的仿真数据导入Modelica模型中进行仿真。本发明专利技术在根据活动图路径生成仿真参数数据时涉及到的操作包括:(1)将活动图分为简单路径和并发路径进行遍历,并根据路径生成初始仿真参数数据;(2)根据活动图中节点关系定义参数变量的依赖关系和时间影响关系;(3)根据定义识别活动图中依赖关系和时间影响关系;(4)根据依赖关系和时间影响关系对初始仿真参数数据进行处理并生成最终仿真参数数据。

【技术实现步骤摘要】
一种基于活动图路径的仿真参数数据自动生成方法
本专利技术属于模型仿真领域,具体涉及仿真参数数据的自动生成。通过对SysML活动图路径的遍历生成所有的仿真参数数据,之后将数据导入活动图对应的Modelica模型中进行仿真。
技术介绍
在系统建模过程中,SysML、UML等系统建模语言虽然可以将系统模型进行可视化,但是模型的一致性难以保证,需要利用各种方法对模型进行验证。仿真验证是相对简便有效的方法,通过对系统模型进行仿真并分析仿真结果来验证系统性质。仿真验证需要对模型的参数进行配置,如何自动化生成参数数据并导入模型中进行仿真成为一个研究的热点。一般来说,当系统模型中参数变量的个数不多时,工程师会选择手动设置仿真参数。这种方法主要依靠系统工程师收集实际系统运行数据并进行配置,或者从公开发表的研究成果、论文中进行收集。但是,当仿真参数有很多时,这种人工方法的人力成本较高。因此,需要考虑自动生成仿真参数数据。
技术实现思路
本专利技术的目的是提供一种基于活动图路径的仿真参数数据自动生成方法,通过对活动图简单路径以及并发路径的遍历来生成仿真参数数据;首先确定单个决定节点上关键变量数据的生成以及简单路径和并发路径的覆盖方法,并结合这两者生成仿真参数数据;之后根据活动图识别参数变量之间的依赖关系以及时间影响关系并进一步对仿真参数数据进行处理,最后将仿真参数数据导入Modelica模型。实现本专利技术目的的具体技术方案是:一种基于活动图路径的仿真参数数据自动生成方法,该方法包括以下具体步骤:步骤1:将活动图分为简单路径和并发路径进行遍历,并根据路径生成初始仿真参数数据。具体为:(i)将活动图路径划分为简单路径和并发路径;简单路径指的是在不含有并发路径的活动图中,从起始点到终点的一条路径;对活动图简单路径通过深度优先遍历算法(Depth-First-Search,DFS)进行遍历;并发路径由多个简单路径分支组成,分支节点(ForkNode)标记分支的起点;每一个并发分支通过遍历简单路径的方式进行覆盖,最后将多个并发分支进行组合;(ii)单个决定节点上关键变量数据生成:关键变量数据生成指的是决定节点上条件表达式中关键变量数值的生成;条件表达式的一般形式为:E1opE2。其中E1为关键变量,E2为数值或布尔值,op为数学比较符号,op∈{<,≤,>,≥,==};仿真参数数据的生成根据决定节点上条件表达式以及所要覆盖的分支,可以分为以下几种情况:●op为<或<=,若要覆盖决定节点true分支,生成仿真数据时关键变量E1的数值小于E2;●op为<或<=,若要覆盖决定节点false分支,生成仿真数据时关键变量E1的数值大于E2;●op为>或>=,若要覆盖决定节点true分支,生成仿真数据时关键变量E1的数值大于E2;●op为>或>=,若要覆盖决定节点false分支,生成仿真数据时关键变量E1的数值小于E2;●op为==,若要覆盖决定节点true分支,生成仿真数据时关键变量E1的数值与E2相同;●op为==,若要覆盖决定节点false分支,E2为数值,生成仿真数据时关键变量E1的数值必须不等于E2;●op为==,若要覆盖决定节点false分支,E2为布尔值,生成仿真数据时关键变量E1的布尔值必须相反于E2;(iii)基于活动图路径的初始仿真参数数据生成:结合对活动图简单路径、并发路径的遍历以及单个决定节点上关键变量仿真数据的生成,确定基于活动图路径的所有参数数据的生成;首先找到活动图的初始节点、终止节点;如果活动图中不存在并发路径,那么直接按照简单路径生成参数数据;否则,找到并发路径的起点以及终点,每个并发分支按照简单路径进行参数数据生成并组合;并发路径之前以及之后的结构同样按照简单路径进行参数数据生成,最后将这三组数据进行组合并输出;简单路径参数数据生成的具体步骤如下:(1)首先从简单路径的初始节点开始,向下进行图的深度遍历;每遇到一个决定节点时优先选择监值为true的转移边继续向下遍历,同时记录下决定节点上条件表达式以及转移边上的监值;(2)当遇到简单路径的终点时,表示当前路径结束;根据记录下的条件表达式以及监值依次对单个决定节点上的关键变量生成数据;(3)回溯该路径,依次在每一个决定节点处选择另一个还未覆盖的false分支,继续向下深度遍历并记录决定节点上的条件表达式以及监值;(4)返回(2),直到遍历完所有的简单路径并生成参数数据时结束;步骤2:根据活动图中节点关系定义参数变量的依赖关系和时间影响关系,具体为:依赖关系:活动图中决定节点上关键变量的会依赖于等待时间动作节点或另一个决定节点上的变量,说明变量之间存在依赖关系;定义如下两种类型的依赖关系:(i)依赖关系(v,t),其中,v是决定节点D中提取的变量,t是等待时间动作节点提取的时间变量,该关系表示变量v依赖于时间变量t;表示为dependencyT(v,t);(ii)依赖关系(v1,v2),其中,v1是决定节点D1中提取的变量,v2是决定节点D2中提取的变量,该关系表示决定节点D1上的变量v1依赖于决定节点D2上的变量v2;表示为dependencyD(v1,v2);时间影响关系:活动图中上游接受事件动作中信号出现的时间,如果能影响到它下游决定节点处路径的选择,就说它们之间存在时间上的影响关系;定义时间影响关系如下:时间影响关系(t,acceptTime),其中,t是下游决定节点上关键变量依赖的延时时间,acceptTime是上游决定节点上关键变量接收到的时间;表示为timeAffection(t,acceptTime);步骤3:根据定义识别活动图中依赖关系和时间影响关系,具体为:依赖关系识别过程:(i)决定节点上关键变量的值直接由基本动作节点决定,寻找能影响该基本动作节点上变量取值的节点;如果为等待时间动作节点,则存在依赖关系(v,t);如果为另一个决定节点,则存在依赖关系(v1,v2);(ii)决定节点上关键变量的值由接受事件动作节点决定,寻找与该接受事件动作节点对应的发送信号动作节点并进一步找到影响发送信号动作节点的基本动作节点;之后的递推过程与(i)相同;时间影响关系识别过程:(i)对于每一个依赖关系(v,t),记包含变量v的决定节点为D;(ii)寻找D的上游决定节点D’;(iii)如果上游决定节点D’上的关键变量是由接受事件动作接收的,那么创建时间影响关系(t,acceptTime)。步骤4:根据依赖关系和时间影响关系对仿真参数数据进行处理,具体为:依赖关系处理:(i)依赖关系(v,t):将时间变量t替换变量v;(ii)依赖关系(v1,v2):在生成的参数数据中删除变量v2;时间影响关系处理:生成的参数数据中增加时间变量acceptTime并设置时间变量t和acceptTime的先后顺序。基于活动图路径的仿真参数数据自动生成方法可以生成覆盖全路径的数据,并能够将工程师从繁琐的手工配置参数数据工作中解脱出来,提供了一种简便高效的仿真参数数据生成方法。附图说明图1为本专利技术实施例备用伞预处理活动图。具体实施方式本专利技术的一种基于本文档来自技高网...
一种基于活动图路径的仿真参数数据自动生成方法

【技术保护点】
1.一种基于活动图路径的仿真参数数据自动生成方法,其特征在于,该方法包括以下具体步骤:步骤1:将活动图分为简单路径和并发路径进行遍历,并根据路径生成初始仿真参数数据;步骤2:根据活动图中节点关系定义参数变量的依赖关系和时间影响关系;步骤3:根据定义识别活动图中依赖关系和时间影响关系;步骤4:根据依赖关系和时间影响关系对仿真参数数据进行处理并生成最终仿真参数数据。

【技术特征摘要】
1.一种基于活动图路径的仿真参数数据自动生成方法,其特征在于,该方法包括以下具体步骤:步骤1:将活动图分为简单路径和并发路径进行遍历,并根据路径生成初始仿真参数数据;步骤2:根据活动图中节点关系定义参数变量的依赖关系和时间影响关系;步骤3:根据定义识别活动图中依赖关系和时间影响关系;步骤4:根据依赖关系和时间影响关系对仿真参数数据进行处理并生成最终仿真参数数据。2.根据权利要求1所述的方法,其特征在于,步骤1中,将活动图分为简单路径和并发路径进行遍历,并根据路径生成初始仿真参数数据,具体过程如下:(i)将活动图路径划分为简单路径和并发路径简单路径指的是在不含有并发路径的活动图中,从起始点到终点的一条路径;对活动图简单路径通过深度优先遍历算法进行遍历;并发路径由多个简单路径分支组成,分支节点标记分支的起点;每一个并发分支通过遍历简单路径的方式进行覆盖,最后将多个并发分支进行组合;(ii)单个决定节点上关键变量数据生成关键变量数据生成指的是决定节点上条件表达式中关键变量数值的生成;条件表达式的一般形式为:E1opE2;其中E1为关键变量,E2为数值或布尔值,op为数学比较符号,op∈{<,≤,>,≥,==};关键变量数据的生成过程根据决定节点上条件表达式以及所要覆盖的分支,分为以下几种情况:●op为<或<=,若要覆盖决定节点true分支,生成仿真数据时关键变量E1的数值小于E2;●op为<或<=,若要覆盖决定节点false分支,生成仿真数据时关键变量E1的数值大于E2;●op为>或>=,若要覆盖决定节点true分支,生成仿真数据时关键变量E1的数值大于E2;●op为>或>=,若要覆盖决定节点false分支,生成仿真数据时关键变量E1的数值小于E2;●op为==,若要覆盖决定节点true分支,生成仿真数据时关键变量E1的数值与E2相同;●op为==,若要覆盖决定节点false分支,E2为数值,生成仿真数据时关键变量E1的数值必须不等于E2;●op为==,若要覆盖决定节点false分支,E2为布尔值,生成仿真数据时关键变量E1的布尔值必须相反于E2;(iii)基于活动图路径的初始仿真参数数据生成:结合对活动图简单路径、并发路径的遍历以及单个决定节点上关键变量仿真数据的生成,确定基于活动图路径的所有参数数据的生成,一条路径对应生成一组仿真参数数据;首先找到活动图的初始节点、终止节点;如果活动图中不存在并发路径,那么直接按照简单路径生成参数数据;否则,找到并发路径的起点以及终点,每个并发分支按照简单路径进行参数数据生成并组合;并发路径之前以及之后的结构同样按照简单路径进行参数数据生成,最后将这三组数据进行组合并输出;其中简单路径参数数据生成的具体步骤如下:(1)首...

【专利技术属性】
技术研发人员:钟雯陈小红
申请(专利权)人:华东师范大学
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1