Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/153.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 有限状态机与ID3决策树_C++_Machine Learning_Arduino_Decision Tree_Fsm - Fatal编程技术网

C++ 有限状态机与ID3决策树

C++ 有限状态机与ID3决策树,c++,machine-learning,arduino,decision-tree,fsm,C++,Machine Learning,Arduino,Decision Tree,Fsm,我有一个项目,它运行在一个类似Arduino的微控制器上,目前它是一个混合的IF-ELSE语句的汤,很难遵循,因为所有不同的“规则”都被应用并在各州移动。我基本上有(6)种模式/状态,它们被包装到函数中,这些函数通过主循环中的Case语句进行管理,转换所需的更改被隐藏在这些函数的顶部,以允许几乎任何状态转换到另一个状态。通过一些研究,我找到了有限状态机(FSM),但我也看到很多人指向ID3和类似的决策树。确定状态的输入是明确定义/已知的。如果我的系统没有试图解决“已知未知问题”,那么决策树和FS

我有一个项目,它运行在一个类似Arduino的微控制器上,目前它是一个混合的IF-ELSE语句的汤,很难遵循,因为所有不同的“规则”都被应用并在各州移动。我基本上有(6)种模式/状态,它们被包装到函数中,这些函数通过主循环中的Case语句进行管理,转换所需的更改被隐藏在这些函数的顶部,以允许几乎任何状态转换到另一个状态。通过一些研究,我找到了有限状态机(FSM),但我也看到很多人指向ID3和类似的决策树。确定状态的输入是明确定义/已知的。如果我的系统没有试图解决“已知未知问题”,那么决策树和FSM的努力是否值得呢?

如果您使用ID3,它将对每个新的“输入”执行相同的过程,以生成输出/状态,在FSM中,您可以在一个步骤中从一个状态移动到另一个状态


因此,在您的案例中,使用ID3似乎真的增加了不必要的强制性。我会选择FSM

金融稳定机制被严重低估,无论如何都要努力。早在90年代,UML就非常流行(我和几个人一起工作,他们用SDL实现了一个带有软件的调制解调器),但后来UML作为一个过度工程的东西出现了,并扼杀了SDL,所以。当然,在执行完整的实现时,其复杂性与直接编写代码大致相同,但仅仅绘制(总体)状态图(在纸上或可能使用graphviz)是非常有价值的。