我的目标很简单:使用先前触发规则的相同事实再次触发规则。如何刷新事实以快速执行此操作?
您可以使用refresh命令将规则的激活放回议程上。
CLIPS (6.31 6/12/19)
CLIPS>
(defrule xy
(x ?x)
(y ?y)
=>)
CLIPS> (assert (x 1) (x 2) (y 1) (y 2))
<Fact-4>
CLIPS> (agenda)
0 xy: f-1,f-4
0 xy: f-2,f-4
0 xy: f-1,f-3
0 xy: f-2,f-3
For a total of 4 activations.
CLIPS> (run)
CLIPS> (agenda)
CLIPS> (refresh xy)
CLIPS> (agenda)
0 xy: f-2,f-3
0 xy: f-1,f-3
0 xy: f-2,f-4
0 xy: f-1,f-4
For a total of 4 activations.
CLIPS>