我正在尝试建模决策表模板。
为什么我理解
之类的简单规则 (x>10 and y<10) print "red"
可以在决策表中使用两列用于条件和一列以进行操作。
+-----+-----+-------------+
| X | Y | Action |
+-----+-----+-------------+
| >10 | <10 | Print "red" |
+-----+-----+-------------+
状况如何
((x>10 and y<10) or x>1) or z<5 and y>5 print "red"
在决策表中表示。
我假设上述大条件在不同的迷你条件的组合是正确的许多行中表示。重复相同的动作部分。是否有任何方法可以将这种条件减少到决策表?
但是,在这种情况下,该动作被驱动多行。我们只有一个动作。是否有用于分组的列?
一种方法是给出动作数字,并从决策表中引用它们。如果在评估过程中开火,则忽略了随后的射击。
这是一个示例:
+-----+-----+-----+--------+
| X | Y | Z | Action |
+-----+-----+-----+--------+
| >10 | >10 | - | 1 |
+-----+-----+-----+--------+
| >10 | <10 | - | 2 |
+-----+-----+-----+--------+
| >50 | - | - | 2 |
+-----+-----+-----+--------+
| - | - | >5 | 2 |
+-----+-----+-----+--------+
操作编号对应于此表中的动作:
+-----+--------------+
| # | Action |
+-----+--------------+
| 1 | Print "red" |
+-----+--------------+
| 2 | Print "blue" |
+-----+--------------+
如果动作#2是因为x>10 AND y<10
而发射的,那么即使x>50
或z>5
。