人工智能专家系统.ppt_第1页
人工智能专家系统.ppt_第2页
人工智能专家系统.ppt_第3页
人工智能专家系统.ppt_第4页
人工智能专家系统.ppt_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2020 3 24 1 第五章专家系统 1专家系统概述2LISP语言3知识库与推理机 2020 3 24 2 专家系统概述 1 定义专家系统 ES ExpertSystem 是一种模拟人类专家解决领域问题的计算机程序系统 2020 3 24 3 专家系统概述 2 专家系统的类型1 解释型6 预测型2 诊断型7 规划型3 调试型8 设计型4 维修型9 监测型5 教育型10 控制型 2020 3 24 4 专家系统概述 3 专家系统的一般特点 1 知识的汇集 2 启发性推理 3 推理和解释的透明性 how why 4 知识的更新 2020 3 24 5 专家系统概述 4 专家系统的结构 人机接口 解释器 知识库 推理机 全局数据库 2020 3 24 6 4 建造专家系统的步骤 1 认识阶段 2 概念化阶段 3 形式化阶段 4 实现阶段 5 测试阶段 专家系统概述 2020 3 24 7 认识 测试 概念化 形式化 实现 专家系统开发过程的瀑布模型 专家系统概述 2020 3 24 8 人工智能语言 由于人工智能研究的问题的特点和解决问题的方法的特殊性 为了能方便而有效地建立人工智能系统 需要发展专门的人工智能语言 2020 3 24 9 人工智能语言 一般来说 人工智能语言应具备如下特点 要有符号处理能力 即非数值处理能力 适合于结构化程序设计 编程容易 要有递归功能和回溯功能 要有人机交互能力 适合于推理 要有把过程与说明式数据结构混合起来的能力 又要有辨别数据 确定控制的模式匹配机制 2020 3 24 10 人工智能语言 在人工智能手册中介绍了七种人工智能语言 LISP PLANNER CINNIVER QLISP POP2 SAIL FUZZY 近百种人工智能语言中 只有LISP和后起之秀Prolog是人工智能研究和应用中占重要地位的两种人工智能程序设计语言 虽然国内外对这两种AI语言曾有争议 褒贬不一 但LISP和PROLOG的重要性是都不可否认的 2020 3 24 11 人工智能语言 函数型语言LISP和逻辑型语言PROLOG都适合作符号处理 都适合于结构化程序设计 LISP提供了函数定义 prolog提供了谓词定义 都具有递归功能 prolog还具有自动回溯功能 都具有人机交互能力 prolog还特别适合于推理 也都具有把过程与说明式数据结构混合起来的能力以及辨别数据 确定控制的模式匹配机制 LISP将程序与数据均表示为表 因此可以把程序作为数据处理 也可将数据当作程序来执行 Prolog用一致的数据结构 项 term 来构造数据和程序 事实 规则和询问的表现形式都为Horn子句 执行时作统一的操作匹配 LISP的匹配函数 prolog的合一运算自动匹配 自动搜索都具有很强的模式匹配机制 因此可以说LISP和prolog是两种较为典型的人工智能语言 2020 3 24 12 人工智能语言 谈到LISP和PROLOG两种AI语言的重要性 我们还可以从美国AI界的权威学者 麻省理工学院教授P H Winston 温斯顿 所说的一段话来体会 2020 3 24 13 人工智能语言 概括地说 计算机语言的发展正是一个从HOW型低级语言向WHAT型高级语言进化的过程 在HOW型语言中 程序编制者必须详细说明运算是怎样 HOW 一步一步进行的 而在WHAT型语言中 程序编制者只需简单说明要做的事情是什么 WHAT 现代的LISP语言是这些语言的佼佼者 因为采用CommonLisp格式的Lisp具有非凡的表现力 但是如何做某件事情仍然是有待于Lisp程序编制者来表达的东西 相反 Prolog是一种明显地冲破了HOW型语言陈规的语言 它鼓励程序编制者去描述情况和问题 而不是那些用来解决问题的详细步骤 2020 3 24 14 LISP语言 1 BackGround1959年 麦卡锡基于阿隆索 邱奇 AlonzoChurch 的 演算和西蒙 纽厄尔首创的 表结构 开发了著名的LISP语言 LIStProcessinglanguageorLIStProcessor 成为人工智能界第一个最广泛流行的语言 2020 3 24 15 LISP语言 2 LISP语言的特点a 计算用的是符号表达式而不是数 b 具有表处理能力 即用链表形式表示所有的数据 c 控制结构基于函数的复合 以形成更复杂的函数 d 用递归作为描述问题和过程的方法 e 用LISP语言书写的EVAL函数既可作为LISP语言的解释程序 又可以作为语言本身的形式定义 f 程序本身也同所有其他数据一样用表结构形式表示 2020 3 24 16 LISP语言 2 LISP的符号表达式 符号 以字母开头不含规定的特殊字符的字符串 相当于其他语言中的变量 原子 LISP中不可再分割的对象 如数 符号 空表 表 若干个数或符号用括号括起来就构成一个表 表中的元素用空格分开 没有元素的表称为空表 用 或者nil表示 符号表达式 原子和表的统称 2020 3 24 17 LISP语言 LISP的符号表达式采用前缀表示形式 即表中第一个元素是函数符号名 其余的元素是这个函数要求的运算或处理的元素 例如 setqy 234 2020 3 24 18 LISP语言 3 LISP语言的基本函数 1 数值运算函数 2 求值与赋值函数 3 表处理函数 4 逻辑函数 5 条件函数 6 自定义函数与无名函数 2020 3 24 19 LISP语言 1 数值运算函数a 算术运算函数 1 1 等 setqa10 a22 b 超越函数 expexptlogsqrtabssignumc 数的逻辑运算函数 logiorlogxorlogandlognot 2020 3 24 20 LISP语言 2020 3 24 21 LISP语言 2 求值与赋值函数a 禁止求值函数quote quote abc setqx abc setqx abc b 赋值函数setqc 求值函数 values 23 45 2020 3 24 22 LISP语言 2020 3 24 23 LISP语言 3 表处理函数 LISP的基本数据结构是表 LISP语言最擅长的也是表 a 取表部分内容的函数 car函数 取表的第一个元素 car abc a cdr函数 取表中去除第一个元素的余下表 cdr abc bc car和cdr的连续作用 car cdr cdr cdr abcdef 可表示为 cadddr abcdef Max 4 2020 3 24 24 LISP语言 2020 3 24 25 LISP语言 b 构造表的函数 2020 3 24 26 LISP语言 c 其他表函数 2020 3 24 27 LISP语言 4 逻辑函数 只能返回真t或假nil 数据类型判断函数 2020 3 24 28 LISP语言 数的比较函数 等值函数equal equal nil t equal abc abd nil 逻辑运算函数andornot 2020 3 24 29 LISP语言 5 条件函数 if函数 iftestthen else 返回 else ornil when函数 whentest form unless函数 unlesstest form 2020 3 24 30 LISP语言 condition函数 2020 3 24 31 LISP语言 6 自定义函数与无名函数 自定义函数 2020 3 24 32 LISP语言 6 自定义函数与无名函数 无名函数 2020 3 24 33 LISP语言 7 迭代与递归 2020 3 24 34 LISP语言 do函数 2020 3 24 35 LISP语言 do函数 2020 3 24 36 LISP语言 2 非结构化迭代 2020 3 24 37 LISP语言 2020 3 24 38 专家系统实例 动物识别系统这是一个用以识别虎 金钱豹等七种动物的小型专家系统 系统结构1 主控模块2 创建知识库模块3 建立数据库模块4 推理机5 解释机构 2020 3 24 39 创建知识库模块用于知识获取 建立知识库 并且把各条知识用链连接起来 形成 知识库规则链表 此外 它还对包含最终结论的规则进行检测 做上标志 建立数据库模块用于把用户提供的已知事实以及推理中推出的新事实放入数据库中 并分别形成 已知事实链表 和 结论事实链表 专家系统实例 2020 3 24 40 专家系统实例 推理机 用于实现推理 推理中凡是被选中参加推理的规则形成 已使用规则链表 解释机构 用于回答用户的问题 它将根据 已使用规则链表 进行解释 推理过程 采用正向推理和反向推理 2020 3 24 41 知识库与推理机 领域专家解决领域问题的能力主要体现在两个方面 1 专家拥有大量的知识 2 专家具有选择知识来解决问题的能力 知识库是专家系统中必不可少的组成部分 是基于知识的推理的基础和核心 2020 3 24 42 知识库与推理机 1 产生式规则与规则库的存储 产生式规则的存储结构一条产生式规则的前件或后件可能是有限个事实或结论的合取式的析取 例如 规则R为 F1 F2 F3 F4 F5 H1 H2 2020 3 24 43 知识库与推理机 规则R等价变换为 R11 F1 F2 F3 H1R12 F4 F5 H1R21 F1 F2 F3 H2R22 F4 F5 H2a 允许有前件不同但后件相同的规则 b 后件相同时 它们的前件没有包含关系 2020 3 24 44 知识库与推理机 可以用一个与 或图表示产生式的规则的事实和结论之间的与或关系 F1 F5 F4 F2 F3 H2 H1 2020 3 24 45 知识库与推理机 LISP中产生式规则的存储形式 表 规则名 if 条件1 条件2 条件n then 结论1 结论2 结论m 2020 3 24 46 知识库与推理机 2 规则库的存储结构 分层结构的表若规则库有N条规则 则规则库表就有N个顶层元素 每个顶层元素是一个规则子表 每个规则子表有3个元素 分别是规则名 规则前件和规则后件 2020 3 24 47 知识库与推理机 规则库的例子 2020 3 24 48 知识库与推理机 2020 3 24 49 知识库与推理机 动物识别专家系统规则库与 或图 2020 3 24 50 知识库与推理机 3 推理机及其实现a 正向推理b 反向推理 自学 2020 3 24 51 知识库与推理机 正向推理过程 根据在综合数据库中给出的已知事实 正向使用规则 即把规则的前件同当前数据库的内容进行匹配来选取可用规则 若多条规则可用 则按冲突消解策略从中选择一条规则执行 将执行规则的结论添加到综合数据库中 直至问题求解或没有可用规则 2020 3 24 52 知识库与推理机 2020 3 24 53 知识库与推理机 反向推理过程 根据在综合数据库中给出的假设 反向使用规则 即把规则的后件同当前数据库的内容进行匹配来选取可用规则 若有多条规则可用 则按冲突消解策略从中选择一条规则 将该规则的前件添加到综合数据库中 直至问题求解或没有可用规则 2020 3 24 54 知识库与推理机 2020 3 24 55 知识库与推理机 正向推理机用LISP语言编制的产生式系统中的综合数据库的存储结构也是一个表 我们用facts作为综合数据库表的名称 我们首先给出正向推理机需要调用的几个函数的定义 最后给出实现的正向推理机 2020 3 24 56 知识库与推理机 2020 3 24 57 知识库与推理机 2020 3 24 58 知识库与推理机 2020 3 24 59 知识库与推理机 2020 3 24 60 知识库与推理机 2020 3 24 61 知识库与推理机 2020 3 24 62 知识库与推理机 2020 3 24 63 知识库与推理机 2020 3 24 64 解释机制与解释器 How解释 2020 3 24 65 解释机制与解释器 Why解释 2020 3 24 66 专家系统工具 1 概述80年代以来 专家系统工具不断涌现 EMYCIN PUFF SACON CLOT HEAMED DART BLUEBOX OPS R1 2020 3 24 67 专家系统工具 2 专家系统工具分类专家系统工具按其功能主要分为两类 一类是用于生成专家系统的工具 称为生成工具 另一类用于改善专家系统性能的工具 称为辅助工具 1 系统生成工具系统生成工具主要帮助知识工程师构造专家系统中的推理机和知识库结构 2020 3 24 68 专家系统工具 程序设计语言LISPPROLOGCPASCAL 骨架系统EMYCINMYCIN 知识工程语言OPS OfficialProductionSystemKEE KnowledgeEn

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论