有限状态自动机(FSM)和扩展有限状态自动机(EFSM)

  有限状态自动机比较简单,这里就不说了,简单贴张图吧:
有限状态自动机(FSM)和扩展有限状态自动机(EFSM)_第1张图片
      扩展有限状态机模型是对有限机状态模型的一个扩展,它在FSM模型的基础上增加了变量、操作以及状态迁移的前置条件,可以更加精确的刻画软件系统的动态行为。
EFSM是一个六元组:M=(S, s0, V, I, O, T )
其中,S 是一个有限状态集合
V 是内部变量的有限集合
I 是输入集合
O 是输出集合
T 是状态迁移的有限集合
T 的每个迁移 t 是一个六元组 T=(si, sj, at, ot, Pt, At)
si是迁移 t 的起始状态
sj是迁移 t 的终止状态
at∈I 是输入符
ot∈O 是输出符
Pt 是对当前变量值的谓词判定条件
At 是输出或赋值等一系列操作语句.
Pt 和At在部分文献中也分别被称作守卫(guard) 和行为(action)
如图所示:
有限状态自动机(FSM)和扩展有限状态自动机(EFSM)_第2张图片
      若扩展有限状态机位于状态 si, 对应当前状态变量值为 xi, 当接受输入at或输入事件, 并且xi对于Pt是有效的, 也就是说 Pt(xi) = true, 则 M 触发迁移 t 并且状态转换为 sj。
      在迁移发生过程中, At操作可能改变或输出状态 si的变量值, 也可能产生输出事件,路径中触发某些迁移的谓词条件可能为永真而有些谓词条件则较为复杂难以满足。
      当一条路径中 2 个迁移上的行为和守卫之间存在矛盾, 不能找到满足谓词条件的输入时, 该路径被认为是不可行的。

你可能感兴趣的:(有限状态自动机(FSM)和扩展有限状态自动机(EFSM))