GENI的核心 -- 推理机(4)求证过程分析
1、GENI知识库结构
专家系统推理机的设计运行,与其知识库结构紧密相关。
GENI知识库结构是一棵逻辑推理树。根节点是animal,即求证的目标。
Animal有2个子节点,即求证的子目标。节点或子目标,用rule表示。例如:
rule(8,"animal","mammal",[12,13],"")
rule(9,"animal","bird",[9,14],"")
注意,rule的第2参数是求证的目标,第3参数是其子目标。这2个参数的关系,构成推理树。
规则8和9,是逻辑或or的关系。有一条规则证明为真,目标animal为真。
规则8,子目标是mammal,哺乳动物,证明为真的条件是[12,13]。
规则9,子目标是bird,鸟类,证明为真的条件是[9,14]。
证明条件[12,13]是逻辑与,and的关系。[9,14]也是。也就是说,2个条件都为真,子目标才为真。
证明条件在知识库中表示为cond。例如以上4个条件:
cond(12,"it has hair","animals\\animals.htm")
cond(13,"it does give milk","animals\\animals.htm")
条件12、13是说,哺乳动物要有毛发、分泌乳汁。
cond(9,"it has feathers","animals\\bird3.htm")
cond(14,"it lays eggs","<img src=\"animals/egg.jpg\">")
条件9、14是说,鸟类要有羽毛、会下蛋。
注意,cond的第3参数,是显示网页用的,与求证推理无关。
目标mammal和bird下面,还有子目标。以mammal为例:
rule(10,"mammal","carnivore",[15],""