2016-09-19 70 views
0

我有以下事實:循環在規則中CLIPS創建事實

(deffacts Cars 
    (color red) 
    (color green) 
    (color yellow) 
    (doors three) 
    (doors five) 
) 

是可以通過事實來創建defrule循環,以創建像(車衝三),(汽車紅五新的事實),(汽車綠色三),(...),所有可能的顏色和門的組合?

感謝

回答

3
CLIPS> 
(deffacts Cars 
    (color red) 
    (color green) 
    (color yellow) 
    (doors three) 
    (doors five)) 
CLIPS>  
(defrule combinations 
    (color ?color) 
    (doors ?doors) 
    => 
    (assert (car ?color ?doors))) 
CLIPS> (reset) 
CLIPS> (run) 
CLIPS> (facts) 
f-0  (initial-fact) 
f-1  (color red) 
f-2  (color green) 
f-3  (color yellow) 
f-4  (doors three) 
f-5  (doors five) 
f-6  (car red five) 
f-7  (car green five) 
f-8  (car yellow five) 
f-9  (car red three) 
f-10 (car green three) 
f-11 (car yellow three) 
For a total of 12 facts. 
CLIPS> 
+0

由於灰色,這是夢幻般的! – Selrac