0
CLIPSを使用してファミリーツリープログラムを作成しようとしています。Defrule CLIPSで類似の事実を無視する
私は非常にCLIPSに慣れていて、デフルールのいずれかでいくつかの操作で困難に直面しています。
私が実行しようとしている操作は、お互いの兄弟である子供のための事実を作成することです。だから、子供のペアごとに、私はこのプログラムが2つの新しい兄弟の事実を生成すると期待しています。プログラムは4を生成するようだが - それは、自身の兄弟としてそれぞれの子をリストもだ...
私は解決策をグーグルでみましたが、私は(場合に発生しないようにコンピュータを依頼する方法を見つけ出すことができませんでした?cn ==?sn)。
誰かが助けてくれますか?
(deftemplate siblings
(slot subject-name)
(slot sibling-name)
)
(defrule set-siblings
(child
(child-name ?cn)
(parent-name ?p))
(child
(child-name ?sn)
(parent-name ?p))
=>
(assert (siblings
(subject-name ?cn)
(sibling-name ?sn))
)
ありがとうございました!それは助けになった!^_^ この論理操作がどのように機能するのか教えていただけますか? –
パターン制約については、「Basic Programming Guide」のセクション5.4、http://clipsrules.sourceforge.net/documentation/v630/bpg.pdfで説明されています。 –
ありがとうございました!^_ ^ –