产生式系统
- 规则库
规则库是用于描述相应领域内知识的产生式集合。它是产生式系统求解问题的基础,其中对领域知识表达的完整性、准确性、有效性,将直接影响到系统的性能和效率。因此必须要合理设计和组织规则库中的知识,检测并排除冗余或矛盾的知识。 - 事实库。
事实库用于存放问题的初始事实、当前已知的信息、推理过程中形成的中间结论以及最终结论。显然,事实库的内容是动态的,是不断变化的。 - 推理机。
推理机由一组程序组成。它控制并协调着整个生产式系统的运行,从而实现对问题的推理求解。通常分 3 步完成:匹配、冲突解决和操作。
问题定义
动物识别专家系统是流行的专家系统实验模型,它用产生式规则来表示知识,共15条规则、可以识别七种动物,这些规则既少又简单,可以改造他们,也可以加进新的规则,还可以用来识别其他东西的新规则来取代这些规则。
系统实现
规则、事实和产生式的表示
识别七种动物共需要30个特征和事实,用0~29给它们编号。
String[] features = {
"有毛", "产奶", "有羽毛", "会飞", "会下蛋", "吃肉", "有犬齿", "有爪", "眼睛盯前方", "有蹄",
"反刍", "黄褐色", "有斑点", "有黑色条纹", "长脖", "长腿", "不会飞", "会游泳", "黑白两色", "善飞",
"哺乳类", "鸟类", "肉食类", "蹄类", "企鹅", "海燕", "鸵鸟", "斑马", "长颈鹿", "虎", "金钱豹"};
产生式规则就用三维数组表示:
int[