Uppaal时钟如何演变?我有两个位置1和2,且没有变化。什么是时钟值?

时间:2019-05-07 22:29:33

标签: uppaal

Uppaal时钟如何演变?我有两个位置1和2不变,在转换到位置1时时钟重置为零(0)。在位置1和2之间的边缘,我如何知道此时的时钟值? (即,在位置2之前的两个位置之间的时钟值)。 时钟会继续从位置1演变为位置2以及之后的位置,还是在新位置的入口处自动重置?

1 个答案:

答案 0 :(得分:0)

TLDR;答案。 如果自动机以x==0开头并在不带固定位置的位置移动,则自动机可能会延迟,例如5个时间单位,然后以x==5移到另一个位置,然后再延迟,例如{ {1}}个时间单位,将3.141移动到值x,依此类推。请注意,时钟8.141可以通过延迟和转换来达到任意的 real 值(因此可以选择任意值),这意味着需要分析所有这些可能性。 Uppaal会以约束形式捕获所有这些可能的值(或者在没有不变性或保护的情况下,在这种情况下会缺少这些可能的值,因为所有时钟都是同步的,模拟器可能只显示x)。

某些上下文。 Uppaal使用时钟变量实现定时自动机,时钟变量的值以x==y的速率(时间导数)连续变化。 因此,如果将时钟重置为1,并且自动机到达的位置没有不变性(也不紧急,也没有提交),那么时钟可以自由发展,因此可以具有从0到{{ 1}}。 Uppaal使用打包在差异绑定矩阵(DBM)中的约束(间隔)来象征性地表示此类估值。如果自动机进行过渡,则Uppaal将立即分析满足约束条件的所有可能过渡。例如,如果某个位置具有不变的0,并且边缘具有保护infinity,则当x<=5x>=2x之间的任何位置时,过渡可用,因此,Uppaal将采用具有约束2的符号转换,可同时捕获所有这些可能的转换。这样就可以分析有限数据结构和有限时间中的无限多个过渡。

一些常见的情况可能会使新手感到困惑。 如果系统中有多个自动机,那么将对时间流逝进行全局分析,即一个自动机中的不变性将影响其他自动机中的其他时钟,因为所有时钟均通过全局时间进行同步。

定时自动机在守卫和不变式中只允许使用整数,原则上可以缩放以适应具有有理数的模型。 Uppaal还通过紧急的,已提交的位置,选择语句,广播同步,整数变量,函数调用等扩展了定时自动机,在相同的定时自动机理论下仍可对其进行分析,但使建模更具表现力和简洁性

您可以在http://uppaal.org的文档部分下的Uppaal教程中阅读更多内容: http://www.it.uu.se/research/group/darts/uppaal/documentation.shtml#tutorials