如何使用 DFA 表示咖啡机?

How to represent a coffee machine using DFA?

我想知道如何使用确定性有限自动机来表示咖啡机?

我为完成这项工作做了很多尝试。 通过与自然数一一对应,我将每个过程表示为一个集合。 但我仍然不知道如何使用 DFA 表示它。

首先,试着想象一下您的自动机可能处于的状态。例如:

Off, Ready, Working

然后想象一下您必须执行哪些按钮或输入才能在这些状态之间切换。不要忘记定义每个状态的每个输入。如果省略几个转换,则自动机不是确定性的,因此是 NFA。转换可以是:

0 for power off/on
1 for start/stop working

Off -0-> Ready
Ready -1-> Working
Ready -0-> Off
Working -1-> Ready  (4 for the actual working process)

Off -1-> Off
Working -0-> Working (nothing happens in this cases)

只需将状态与给定的转换连接起来,瞧!