- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
6-人工智能(廉师友)
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 上海大学计算机学院 张博锋 * 6.2.4程序实现 规则语言形式与推理机 规则的解释程序与规则的语言形式必须是相符的 两种情况: 是先确定规则的语言表示形式, 再根据规则形式设计规则解释程序(推理机); 是对已有的解释程序(推理机), 设计规则表示形式(当然只能采用推理机所约定的规则形式)。 例如 在PROLOG程序中要表示产生式规则, 至少有两种形式: (1) 用PROLOG的规则表示产生式规则 不必编写显式的推理机程序, PROLOG语言的翻译程序就是它的推理机 (2) 用PROLOG的事实表示产生式规则 必须用PROLOG语言编写显式的推理机程序 上海大学计算机学院 张博锋 * 6.2.4程序实现 例6.3 把6.2节例6.1中给出的产生式规则用PROLOG的规则可表示如下: animal_is(″老虎″):- it_is(″食肉动物″), fact(″黄褐色″), fact(″有黑色条纹″). it_is(″食肉动物″):- it_is1(″哺乳动物″), fact(″有爪″), fact(″有犬齿″), fact(″目盯前方″). it_is(″食肉动物″):- it_is1(″哺乳动物″), fact(″吃肉″). it_is1(″哺乳动物″):- fact(″有奶″). it_is1(″哺乳动物″):- fact(″有毛发″). 上海大学计算机学院 张博锋 * 6.2.4程序实现 对于这种规则表示形式 可以不用再编写推理机程序 可直接利用PROLOG自身的推理机,进行推理。 例如,当再给出如下的事实: fact(″黄褐色″). fact(″有黑色条纹″). fact(″吃肉″). fact(″有奶″). 和目标: animal_is(Y). 则程序运行后的结果就是: Y=老虎 上海大学计算机学院 张博锋 * 6.2.4程序实现 如果把上面的规则表示成如下的形式: rule([″食肉动物″, ″黄褐色″, ″有黑色条纹″], ″老虎″). rule([″哺乳动物″, ″有爪″, ″有犬齿″, ″目盯前方″], ″食肉动物″). rule([″哺乳动物″, ″吃肉″], ″食肉动物″). rule([″有奶″], ″哺乳动物″). rule([″有毛发″], ″哺乳动物″). 则就需要用PROLOG语言编写一个推理机程序。 否则, 无法实施基于上述规则的推理。 上海大学计算机学院 张博锋 * 6.2.4程序实现 并非用PROLOG规则表示的产生式规则, 都可直接使用PROLOG的推理机。 例如, rule(X, Y):-Y=X+1. 这是一个含变量的规则, 其中X为前提, Y是结论。 也就是说, 在推理时是把rule(X,Y)作为规则使用的。 显然, 对于这种形式的规则, 仍然需要重新编写推理机。 上海大学计算机学院 张博锋 * 6.2.4程序实现 2. 规则库的程序实现 分为内存和外存 在内存中规则库可用链表实现 在外存则就是以规则为基本单位的数据文件 PROLOG PROLOG规则表示的产生式规则,规则库就是程序的一部分; PROLOG事实表示的规则,规则库在内存就是动态数据库,在外存就是数据库文件。 对于规则库实际上还需配一个管理程序, 即知识库管理系统, 专门负责规则及规则库的各项管理工作。 上海大学计算机学院 张博锋 * 6.2.4程序实现 3. 动态数据库的程序实现 动态数据库包括 推理时所需的初始事实数据 推理的中间结果 最后结果 其他控制或辅助信息
文档评论(0)