人工智能与专家系统第五章专家系统

上传人:鲁** 文档编号:568607952 上传时间:2024-07-25 格式:PPT 页数:23 大小:294.52KB
返回 下载 相关 举报
人工智能与专家系统第五章专家系统_第1页
第1页 / 共23页
人工智能与专家系统第五章专家系统_第2页
第2页 / 共23页
人工智能与专家系统第五章专家系统_第3页
第3页 / 共23页
人工智能与专家系统第五章专家系统_第4页
第4页 / 共23页
人工智能与专家系统第五章专家系统_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《人工智能与专家系统第五章专家系统》由会员分享,可在线阅读,更多相关《人工智能与专家系统第五章专家系统(23页珍藏版)》请在金锄头文库上搜索。

1、第五章第五章 用用PROLOG语言建造专家系统语言建造专家系统第一节第一节 专家系统概论专家系统概论第二节第二节 专家系统入门专家系统入门第三节第三节 用用PROLOG语言建造语言建造正向推理专家系统正向推理专家系统第四节第四节 用用PROLOG语言建造语言建造反向推理专家系统反向推理专家系统第一节第一节 专家系统概论专家系统概论一、专家系统的基本概念一、专家系统的基本概念1、专家系统的概念、专家系统的概念具有相当于专家的知识和经验水平,以及解决专门问题能力的计算机具有相当于专家的知识和经验水平,以及解决专门问题能力的计算机系统系统通常指计算机软件系统通常指计算机软件系统2、专家系统的特点、专

2、家系统的特点1)与传统的计算机程序相比,)与传统的计算机程序相比,ES的特点的特点知识信息处理系统知识信息处理系统知识利用系统知识利用系统具有知识推理能力具有知识推理能力咨询解释能力咨询解释能力第一节第一节 专家系统概论专家系统概论2)与人类专家相比,)与人类专家相比,ES的特点的特点ES的知识具有永久性的知识具有永久性ES的知识和它本身都很容易被复制和传播的知识和它本身都很容易被复制和传播ES的知识具有高度的一致性和可靠性的知识具有高度的一致性和可靠性ES的费用较人类专家低得多的费用较人类专家低得多第一节第一节 专家系统概论专家系统概论二、专家系统的结构二、专家系统的结构知识库知识库推理机推

3、理机知识获取知识获取对话对话解释解释/帮助帮助自然语言界面人类专家使用者第一节第一节 专家系统概论专家系统概论三、专家系统的用途和类型三、专家系统的用途和类型1、专家系统的用途、专家系统的用途知识利用、保存和传播的现代化工具知识利用、保存和传播的现代化工具人工智能和知识工程技术的开发环境人工智能和知识工程技术的开发环境2、专家系统的类型、专家系统的类型解释型解释型诊断型诊断型设计型设计型教学型教学型咨询型咨询型工具型工具型第二节第二节 专家系统入门专家系统入门一、一个简单的专家系统一、一个简单的专家系统该系统没有知识的获取、解释和帮助功能该系统没有知识的获取、解释和帮助功能其知识库没有采用外部

4、文件的形式,而是程序的一部分其知识库没有采用外部文件的形式,而是程序的一部分其知识直接采用其知识直接采用PROLOG规则形式表达规则形式表达推理机直接应用推理机直接应用PROLOG的推理机制的推理机制第二节第二节 专家系统入门专家系统入门二、系统设计二、系统设计1、诊断的表示、诊断的表示三个诊断结果分别用三个三个诊断结果分别用三个diagnose规则表示规则表示如:如果如:如果 脸色通红脸色通红 and 皮肤发烫皮肤发烫 and 体温升高体温升高 那么那么 中暑中暑用用PROLOG规则表示:规则表示:diagnose(“中暑中暑”) if symptom(“脸色通红脸色通红”) and sym

5、ptom(“皮肤发烫皮肤发烫”) and symptom(“体温升高体温升高”)diagnose(“病因不明病因不明”)第二节第二节 专家系统入门专家系统入门2、症状的表示、症状的表示用用symptom 谓词表示谓词表示每个症状需定义一条规则,如每个症状需定义一条规则,如symptom(“恶心恶心”) if ask(“病人是否恶心病人是否恶心”, “恶心恶心”)在在database段,定义两个数据库谓词:段,定义两个数据库谓词:yes(symptom)no(symptom)ask(Text, Keyword) if write(Text), readchar(Answer), write(An

6、swer), nl, Answer=y, asserta(yes(Keyword).ask(_,Keyword) if asserta(no(Keyword), fail.第二节第二节 专家系统入门专家系统入门3、措施的表示、措施的表示一般性措施,用一般性措施,用“或或”关系与三种诊断结果相对应关系与三种诊断结果相对应特殊措施,用于不同的诊断结果特殊措施,用于不同的诊断结果用用measure谓词表示谓词表示数据库谓词数据库谓词recognized用于存储诊断结果用于存储诊断结果第二节第二节 专家系统入门专家系统入门三、程序的执行过程三、程序的执行过程调用调用diagnose(D)规则,证明诊断

7、规则,证明诊断将诊断结果存入数据库将诊断结果存入数据库调用调用measure(M)规则,给出应采取的措施规则,给出应采取的措施第二节第二节 专家系统入门专家系统入门四、规则库的构造四、规则库的构造轻度中暑轻度中暑中暑中暑日射病日射病andandand冷冷汗汗脉脉频频体体温温正正常常苍苍白白脸脸色色发发红红皮皮肤肤发发烫烫体体温温过过高高恶恶心心呕呕吐吐皮皮肤肤凉凉R1R2R3第二节第二节 专家系统入门专家系统入门五、程序运行五、程序运行医疗诊断系统医疗诊断系统请用请用y或或n回答下列问题回答下列问题病人脸色是否苍白?病人脸色是否苍白?n病人脸色是否发红?病人脸色是否发红?y病人皮肤是否发烫?病

8、人皮肤是否发烫?y病人体温是否过高?病人体温是否过高?y诊断结果:中暑诊断结果:中暑请采取以下措施:请采取以下措施:病人是否已昏迷?病人是否已昏迷?n将病人抬到阴凉处将病人抬到阴凉处用湿毛巾擦身降温用湿毛巾擦身降温呼救呼救第二节第二节 专家系统入门专家系统入门医疗诊断系统医疗诊断系统请用请用y或或n回答下列问题回答下列问题病人脸色是否苍白?病人脸色是否苍白?n病人脸色是否发红?病人脸色是否发红?y病人皮肤是否发烫?病人皮肤是否发烫?y病人体温是否过高?病人体温是否过高?n病人皮肤是否发凉?病人皮肤是否发凉?y病人是否恶心?病人是否恶心?y病人是否呕吐?病人是否呕吐?y诊断结果:日射病诊断结果:

9、日射病请采取以下措施:请采取以下措施:病人是否已昏迷?病人是否已昏迷?y病人呼吸是否正常?病人呼吸是否正常?y平躺平躺将病人抬到阴凉处将病人抬到阴凉处将病人抬到阴凉处将病人抬到阴凉处呼救呼救第三节第三节 正向推理专家系统正向推理专家系统一、系统规划一、系统规划1、系统的基本功能、系统的基本功能通过对话输入新的知识库并加以储存通过对话输入新的知识库并加以储存调入一个已储存的知识库调入一个已储存的知识库通过对话输入已知事实通过对话输入已知事实结论推理并输出结果结论推理并输出结果程序不用重新启动也能重复运行程序不用重新启动也能重复运行第三节第三节 正向推理专家系统正向推理专家系统2、系统的扩展功能、

10、系统的扩展功能用菜单的形式控制用菜单的形式控制用菜单的形式选择事实输入用菜单的形式选择事实输入对知识库进行编辑对知识库进行编辑第三节第三节 正向推理专家系统正向推理专家系统3、知识的表达、知识的表达rule(编号,编号,条件条件1,条件,条件2,结论,结论)如:如:rule(3,“哺乳动物哺乳动物”,“个头大个头大”,“有长鼻子有长鼻子”,“大象大象”)rule(4,“生活在水中生活在水中”,“用鳃呼吸用鳃呼吸”,“鱼鱼”)第三节第三节 正向推理专家系统正向推理专家系统二、推理机设计二、推理机设计start检查下一条规则检查下一条规则不再有其他规则不再有其他规则stop结论存在数据库中结论存在

11、数据库中所有条件都满足所有条件都满足对使用者提供解释对使用者提供解释YNNYYN结论存入数据库中结论存入数据库中inference if rule(Rn,Cond,Cons),not(fact(Cons),meeted(Cond),explain(Rn,Cons),assertz(fact(Cons),fail.meeted().meeted(Cond|Rest) if fact(Cond), meeted(Rest).第三节第三节 正向推理专家系统正向推理专家系统三、规则库的产生三、规则库的产生提供两种操作:构造新的知识库提供两种操作:构造新的知识库(a)或将已存在的知识库调入内存或将已存在

12、的知识库调入内存(b)process(a) if acquisition.process(b) if write(“请输入知识库名:请输入知识库名:”),readln(Name),consult(Name),writef(“知识库知识库%已装入已装入”,Name).若输入的知识库名字不存在若输入的知识库名字不存在process(b) if write(“指定的知识库不存在!指定的知识库不存在!”),beep,wait(15000), start.wait(0).wait(N) if N1=N-1, wait(N1).第三节第三节 正向推理专家系统正向推理专家系统当使用者即不选择当使用者即不选择

13、a,也不选择,也不选择bprocess(_) if write(“选择错误,注意只能选择选择错误,注意只能选择a或或b”), beep,wait(15000), start.新建知识库新建知识库acquisitionrule_read(Nr) if conditions_read(,List),conclusion_read(Conclusion),assertz(rule(Nr,List,Conclusion),Nr1=Nr+1,continue(Nr1).第三节第三节 正向推理专家系统正向推理专家系统读入条件读入条件conditions_read(L1,L2) if write(“请输入条

14、件请输入条件”),),readln(B),B”*”attach(L1,B,Lnew),conditions_read(Lnew,L2).conditions_read(L,L).attach(,L,L).attach(X|L1,L2,X|L3) if attach(L1,L2,L3).第三节第三节 正向推理专家系统正向推理专家系统四、事实的收集四、事实的收集dialog if makewindow(3,7,7,”事实搜集事实搜集”,2,2,20,75),write(“请输入已知事实,打入星号退出:请输入已知事实,打入星号退出:”),nl,facts_readin.facts_readin if

15、 write(“事实事实”),),readln(F),F”*”,assertz(fact(F),facts_readin.facts_readin.第三节第三节 正向推理专家系统正向推理专家系统五、动物识别五、动物识别1、知识库、知识库rule(1,“有毛皮有毛皮”, “是哺乳动物是哺乳动物”)rule(2,“产乳产乳”, “是哺乳动物是哺乳动物”)rule(3,“有羽毛有羽毛”, “是鸟是鸟”)rule(4,“下蛋下蛋”, “是鸟是鸟”)rule(5,“能飞能飞”, “是鸟是鸟”)rule(6,“能游水飞能游水飞”, “生活在水中生活在水中”, “是鱼是鱼”)rule(7,“有长鼻有长鼻”,

16、 “是哺乳动物是哺乳动物”, “是大象是大象”)rule(8,“有鬃毛有鬃毛”, “是哺乳动物是哺乳动物”, “是狮子是狮子”)rule(9,“有驼峰有驼峰”, “是哺乳动物是哺乳动物”, “是骆驼是骆驼”)rule(10,“尖耳朵尖耳朵”, “是鸟是鸟”, “是猫头鹰是猫头鹰”)rule(11,“钩钩”, “是鸟是鸟”, “是鹰是鹰”)rule(12,“红色红色”, “是鱼是鱼”, “是金鱼是金鱼”)rule(13,“很大很大”, “是鱼是鱼”, “是鲨鱼是鲨鱼”)第三节第三节 正向推理专家系统正向推理专家系统2、示例、示例输入事实:能游水、生活在水中,很大输入事实:能游水、生活在水中,很大推理结论推理结论已知下列事实:已知下列事实:能游水能游水生活在水中生活在水中很大很大根据规则根据规则6得出结论:是鱼得出结论:是鱼已知下列事实:已知下列事实:能游水能游水生活在水中生活在水中很大很大是鱼是鱼根据规则根据规则13得出结论:是鲨鱼得出结论:是鲨鱼继续还是退出(继续还是退出(y/n)?)?

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号