我必须实施问卷调查引擎,每个问题的答案最终会产生完全不同的结果。
所以,如果我们有10个问题,每个问题有10个答案,那么我们就有10个可能的10个问题。
这应该像脚本式AI我猜...
那么,我会用什么样的规则引擎或实现方法来处理这样的问题?
我猜这种算法有点过于简单了?
if (x==1)
if (y==1)
{
if (z==1 || z==2)
// do sth
if (z==3)
// do sth different
}
感谢您提出任何建议。
答案 0 :(得分:4)
有些库可用于实现这种形式的“规则引擎”。
例如,Windows Workflow Foundation允许通过FlowDecision activities和其他相关类确定基本规则。
其他替代方案是规则引擎,例如Drools.Net。
话虽如此,对于像上面这样的简单例程,我建议尝试重构算法以避免许多标准。通过将其推入多种方法,您可以创建一系列更简单的干净条件。