DEVS-离散事件系统规范
该库提供状态机作为数据。 有一个通用的“进化”功能,它接受状态机和输入,并产生一个新的状态机。
正式地,将状态机指定为以下元组:
S-状态字母
s-当前状态
A_i-输入字母
A_o-输出字母
F-从(s,A_i)-> n的转换函数,其中n是下一个状态
O-(C_n + 1,A_o)-> o的输出函数,其中o是A_o的符号
想到这一点的一种简单方法是,状态机接受输入中的任何符号,并根据当前状态和该输入符号“转换”到新状态。 当它“过渡”时,它从输出字母产生输出。
用实现术语来说,状态机在任何时候都是不可变的。 演化状态机意味着返回一个从旧实例派生的新实例。
这意味着当状态机移至新状态时,您实际上可以更改转换功能。 您也可以更改输入或输出字母。
描述状态机
这是来自“回声”服务器的示例:
(defn echo-server-state-machine
评论0
最新资源