第8章专家系统的设计与开发
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1)知识工程师 领域专家通过与知识工程师反复接触、交谈,把自己
拥有的知识提供给知识工程师,由知识工程师和领域专家 一起将这些专家知识归纳整理成ES的知识库。
第6章 ES设计
Expert Systems Design
6
8.2 ES的一般设计方法
(2)智能编辑程序 熟悉计算机的领域专家可以通过智能编辑程序把自己
Expert Systems Design
4
8.2 专家系统的一般设计方法
目前,还没有统一的ES设计规范。 ES的基本设计思想 是使计算机的工作过程竭尽全力地描述领域专家解决实际 问题的工作过程。 8.2.1 ES设计的关键问题 1)设计ES的两个关键问题
(1)建造知识库 涉及知识库建造的两项主要技术是:知识获取和知识
1
8.1 专家系统的基本设计思想
1. 专家系统是一种计算机程序,但专家系统程序区别于 一般应用程序。 一般应用程序——把问题求解的知识隐含地编写在程序 中,即把知识组织成两级:数据级和程序级; 专家系统程序——将应用领域问题求解的知识单独组成 一个知识库实体,知识库的处理是通过独立于知识库的 控制策略来进行的。即把知识组织成三级:数据级、知 识库级和控制级。
4)基于知识规则的推理 基于知识规则的推理是指针对用户的特定问题,选
择并运用知识库中的知识,以实现求解问题的控制过程。 推理涉及的两个基本问题是: 推理方向的选择 冲突消解策略
第6章 ES设计
Expert Systems Design
10
8.2 ES的一般设计方法
(1)正向推理(前向推理) 对于一个具体的ES问题,可以从问题的已有信息出
第8章 专家系统的设计与开发
由于专家系统 对人类、科学做出的贡献。使得专家系 统越来越受到重视和接受。可以设计一个专家系统来解决 各种特定问题,可以在医疗诊断中做出令人信服的推论, 可以解释油井的波形,其应用遍及化学、医学、地质学、 气象学、教育、军事领域。但是,如何设计、开发专家系 统尚无统一的标准模式和方法。 8.1 专家系统的基本设计思想
推理解释系统实现的方法有:预制文本法、追踪 解释法、策略解释法、自动程序员解释法等。
第6章 ES设计
Expert Systems Design
15
8.2 ES的一般设计方法
8.2.2 ES的构造原则 掌握了知识获取、知识表示、知识推理、推理解释等
基本技术后,即可着手实际ES的设计。ES设计与基于算 法的传统程序设计的区别是:ES设计一般是渐增式,通过 知识库由小到大地逐步扩充和改进,要求系统不断地进行 验证、评价和专家认可,最终才能成为可交付使用的ES。
由于人类专家掌握了关于该领域的大量的专门知识, 故它称为领域专家。要使计算机能和专家一样处理问题, 必须先获取大量的专门知识,然后才是有效地组织和存储 知识,以便推理使用。所以,ES实际上通过在系统中存储 大量与应用领域有关的专门知识来实现高水平的问题求解
的。
第6章 ES设计
Expert Systems Design
13
8.2 ES的一般设计方法
5)冲突消解 一个ES推理方向的选择往往取决于问题领域的特点
和领域专家习惯使用的推理方式。在问题求解的某个步 骤,可用的知识可能不只一条,从中有效地选择出一条 进行运用的问题,称之为冲突消解。 6)不精确推理
有时,领域专家的知识具有不精确特征,在推理过 程中涉及到的以模糊数学为基础的推理,成为不精确推 理。
为使ES的各功能模块能互相通讯,共享中间信息, 许多ES都采用在内存建立一个数据库的方法,存放各种 中间结果和通讯信息等。“黑板”是对其形象的称谓,在 必要时记录信息,不需要时擦掉信息。黑板系统一般按照 信息内容分类,分成若干个区,以便提高运行效率。实际 上,黑板就是中间数据库,用来存放ES在执行与推理过 程中的中间结果或论据。
ES所处理、求解的领域专家的问题千差万别,因此 建造ES很难给出统一的规范化模式。但从ES的发展看, 大多数ES的构造都遵循如下三个原则:
第6章 ES设计
Expert Systems Design
16
8.2 ES的一般设计方法
(1)知识与知识处理机构分开和相互独立的原则 ES中有独立存放知识的知识库,有用作推理、搜索的
第6章 ES设计
Expert Systems Design
8
8.2 ES的一般设计方法
一个ES的知识表示方法不仅关系到知识的有效存储, 也直接影响推理效率和新知识获取的能力。目前,有许 多知识表示方法,如规则表示、框架表示、逻辑表示、 语义网络表示等。各种知识表示方法都有其独特的优点 和内在的不足,但都要遵循两个重要的准则:
Expert Systems Design
12
8.2 ES的一般设计方法
(3)混合推理 正向推理和反向推理是两种基本的推理方式,在此
基础上,人们研究了交替使用正向推理和反向推理方向 的混合推理方式。
(4)元控制策略 结合启发式方法的推理方法称为元控制策略。
第6章 E源自文库设计
Expert Systems Design
的经验和知识输入到ES的知识库中。智能编辑程序应该具 备灵活的人机对话能力和有关知识库结构方面的知识。
(3)归纳学习程序 对大量实验数据进行归纳和总结,将会得到一些新的
规律和知识,利用归纳学习程序,可以模拟人的思维过程, 从有关知识库中发现新知识,然后将这些新知识加入到知 识库中,供ES使用。
第6章 ES设计
11
8.2 ES的一般设计方法
(2)反向推理(后向推理) 对于一个具体的ES问题,还可以先猜测问题的结
论,然后从结论开始以相反的方向推导支持结论需要 的证据,再看问题的已有信息是否提供了或者否定了 这些需要的证据。这种过程类似于从“求证”到“已 知”的过程,故称为目标驱动的反向推理方式。
第6章 ES设计
第6章 ES设计
Expert Systems Design
21
8.2 ES的一般设计方法
8.2.3 ES的主要设计步骤 一个ES一般可以按照三个步骤进行设计。
1)初步设计 首先分析需要求解的领域问题,在领域专家的协作下,
明确期望ES实现的目标,确定参与系统研制的合作专家以 及知识源,通过知识获取和领域专家的配合,对ES求解目 标任务的主要概念、关系、假设、约束等进行图解形式的 描述(如推理网络),选择合适的知识表示方法,把图解 形式的内容形式化地表达出来,并确定推理的控制方向等。
推理机和解释系统等,使得系统具有很好的模块性、可扩 充性和可维护性。
(2)按系统功能实现模块化构造的原则 为了使结构清晰和调试容易,绝大多数ES都采用按系
统功能分割模块化的构造原则,把系统分成几个互相独立 的功能模块。
第6章 ES设计
Expert Systems Design
17
8.2 ES的一般设计方法
第6章 ES设计
Expert Systems Design
2
8.1 专家系统的基本设计思想
2. 专家系统的核心是知识 知识的数量与质量是一个专家系统性能的决定性因
素。因此,专家系统的主要特征是拥有一个巨大的知识库, 存储着某个专门领域的知识。
专家系统的控制级通常表达成某种推理规则。整个系 统的工作过程是从知识库出发,通过控制推理得到所需的 结论。因此,专家系统能“理解”自身行为的目的,“知 道”采取某一个步骤的缘由,所以具有较高的智能水平。
第6章 ES设计
Expert Systems Design
19
8.2 ES的一般设计方法
ES如此往复地不断改变中间数据库的内容,直至最 终获得问题的解答。由此可见,中间数据库的内容动态 地控制着ES的工作过程。
在推理过程中,中间数据库的内容是不断变化的, 故又称之为动态数据库。由于ES知识库的内容在一次推 理中是不变的,故又称知识库为静态数据库。知识库仅 由知识获取模块和学习模块来改变其内容。
在不断供给知识库新知识的同时,系统不断对已有知 识和新加入知识的正确性及协调性通过实例进行测试。通 过不断扩充知识库和不断测试的过程,一般可以发现已形 式化知识的不完善之处,然后在领域专家的配合下对系统 进行不断调整。
这一阶段将产生出可运行的ES雏形,称为原型系统。
第6章 ES设计
Expert Systems Design
18
8.2 ES的一般设计方法
在ES开始工作时,先把ES从用户那里获得的关于问 题求解的事实和初始状态、初始数据等写入中间数据库。 然后根据中间数据库和知识库的内容,进行各种可能和需 要的搜索、匹配和推理等动作,不断以新的中间结果修改、 替代或补充中间数据库的内容。在此期间,必要时还可以 向用户提出询问,以求获得解题必要的补充知识。这些后 来从用户得到的信息也被记录在中间数据库中,以便与中 间数据库的其他内容一起参与后续的推理过程。
Expert Systems Design
7
8.2 ES的一般设计方法
由于真正做到能够发现知识的ES还不多见,所以,归 纳学习程序这种知识获取方式是机器学习研究的一个长期 目标,已经引起有关专家的重视,并列为ES的研究课题。 3)知识表示
知识表示是关于各种存储知识的数据结构及其对这些 数据结构解释过程的结合。知识表示主要研究各种含有语 义信息的数据结构的设计,以便在这些数据结构中存储知 识,开发各种操作这些数据结构的推理过程,使知识表示 和知识运用的控制以及新知识的获取相结合,把领域知识 有机地结合到程序设计中。
(1)知识表示方法能自然、有效地表示知识; (2)知识表示结构易于检索、运用、修改和扩充。
在实际应用中,易于人们接受并且使用最多的是基 于规则的产生式表示法(又称为规则表示法)。其主要 优点是:模块性,清晰性,自然性。
第6章 ES设计
Expert Systems Design
9
8.2 ES的一般设计方法
发,选择和运用知识库中的可用知识,以推导出一些有 用的中间结论,将中间结论作为已有信息的扩充,进一 步选择和运用知识库中的可用知识,继续推导,直至得 到问题的求解结论。这种过程类似于从“已知”到“求 证 ”的过程,故称为数据驱动的正向推理方式。
第6章 ES设计
Expert Systems Design
表示。 (2)设计推理机制与控制策略 涉及推理机制设计的两项主要技术是:基于知识规则
的推理和推理解释机制。
第6章 ES设计
Expert Systems Design
5
8.2 ES的一般设计方法
2)常用的知识获取方式 知识获取是从领域专家处获得知识、提取知识并将其
转换成ES程序的艰巨而细致的工作过程,即将问题求解中 领域专家的经验和技术从某个知识源提取到ES中。常用的 知识获取方式有三种:
第6章 ES设计
Expert Systems Design
3
8.1 专家系统的基本设计思想
综上所述, ES的基本设计思想就是将知识和控制推 理策略分开,形成知识库。在推理策略的控制下,利用 存储的知识分析和处理问题。
在求解问题时,用户为ES提供一些已知数据,然后 从ES中获得专家水平的结论。
第6章 ES设计
第6章 ES设计
Expert Systems Design
22
8.2 ES的一般设计方法
2)开发原型系统 选择合适的ES程序设计语言和开发工具设计推理机制,
或借用工具语言已具备的推理机制,可将形式化表示的知 识以ES求解目标或图解形式的模块为单元,逐个单元地把 知识转换为适合程序设计语言或工具接受的内部编码形式, 输入到知识库。
第6章 ES设计
Expert Systems Design
14
8.2 ES的一般设计方法
7)推理解释 推理解释是解释机制的重要组成部分,其目的是
对系统的推理过程、推理位置以及推理的每个动作做 出解释,使用户相信问题求解结论的可信性和正确性。
推理解释一般包括两部分: 咨询过程中使用的推理状态检查程序; 咨询中或咨询后使用的通用回答程序。
第6章 ES设计
Expert Systems Design
20
8.2 ES的一般设计方法
(3)交互性原则 领域专家和用户与ES信息交换的人机接口、知识
工程师维护知识库等,都需要与系统具有良好的交互性 操作,使得领域专家和用户都以尽可能自然、易于实现 的方式实现信息传输和结果输出,并使知识工程师对于 知识矛盾、冗余检查、新知识加入对现有知识的影响进 行调节,以及知识的存储、共享等能进行交互处理。
拥有的知识提供给知识工程师,由知识工程师和领域专家 一起将这些专家知识归纳整理成ES的知识库。
第6章 ES设计
Expert Systems Design
6
8.2 ES的一般设计方法
(2)智能编辑程序 熟悉计算机的领域专家可以通过智能编辑程序把自己
Expert Systems Design
4
8.2 专家系统的一般设计方法
目前,还没有统一的ES设计规范。 ES的基本设计思想 是使计算机的工作过程竭尽全力地描述领域专家解决实际 问题的工作过程。 8.2.1 ES设计的关键问题 1)设计ES的两个关键问题
(1)建造知识库 涉及知识库建造的两项主要技术是:知识获取和知识
1
8.1 专家系统的基本设计思想
1. 专家系统是一种计算机程序,但专家系统程序区别于 一般应用程序。 一般应用程序——把问题求解的知识隐含地编写在程序 中,即把知识组织成两级:数据级和程序级; 专家系统程序——将应用领域问题求解的知识单独组成 一个知识库实体,知识库的处理是通过独立于知识库的 控制策略来进行的。即把知识组织成三级:数据级、知 识库级和控制级。
4)基于知识规则的推理 基于知识规则的推理是指针对用户的特定问题,选
择并运用知识库中的知识,以实现求解问题的控制过程。 推理涉及的两个基本问题是: 推理方向的选择 冲突消解策略
第6章 ES设计
Expert Systems Design
10
8.2 ES的一般设计方法
(1)正向推理(前向推理) 对于一个具体的ES问题,可以从问题的已有信息出
第8章 专家系统的设计与开发
由于专家系统 对人类、科学做出的贡献。使得专家系 统越来越受到重视和接受。可以设计一个专家系统来解决 各种特定问题,可以在医疗诊断中做出令人信服的推论, 可以解释油井的波形,其应用遍及化学、医学、地质学、 气象学、教育、军事领域。但是,如何设计、开发专家系 统尚无统一的标准模式和方法。 8.1 专家系统的基本设计思想
推理解释系统实现的方法有:预制文本法、追踪 解释法、策略解释法、自动程序员解释法等。
第6章 ES设计
Expert Systems Design
15
8.2 ES的一般设计方法
8.2.2 ES的构造原则 掌握了知识获取、知识表示、知识推理、推理解释等
基本技术后,即可着手实际ES的设计。ES设计与基于算 法的传统程序设计的区别是:ES设计一般是渐增式,通过 知识库由小到大地逐步扩充和改进,要求系统不断地进行 验证、评价和专家认可,最终才能成为可交付使用的ES。
由于人类专家掌握了关于该领域的大量的专门知识, 故它称为领域专家。要使计算机能和专家一样处理问题, 必须先获取大量的专门知识,然后才是有效地组织和存储 知识,以便推理使用。所以,ES实际上通过在系统中存储 大量与应用领域有关的专门知识来实现高水平的问题求解
的。
第6章 ES设计
Expert Systems Design
13
8.2 ES的一般设计方法
5)冲突消解 一个ES推理方向的选择往往取决于问题领域的特点
和领域专家习惯使用的推理方式。在问题求解的某个步 骤,可用的知识可能不只一条,从中有效地选择出一条 进行运用的问题,称之为冲突消解。 6)不精确推理
有时,领域专家的知识具有不精确特征,在推理过 程中涉及到的以模糊数学为基础的推理,成为不精确推 理。
为使ES的各功能模块能互相通讯,共享中间信息, 许多ES都采用在内存建立一个数据库的方法,存放各种 中间结果和通讯信息等。“黑板”是对其形象的称谓,在 必要时记录信息,不需要时擦掉信息。黑板系统一般按照 信息内容分类,分成若干个区,以便提高运行效率。实际 上,黑板就是中间数据库,用来存放ES在执行与推理过 程中的中间结果或论据。
ES所处理、求解的领域专家的问题千差万别,因此 建造ES很难给出统一的规范化模式。但从ES的发展看, 大多数ES的构造都遵循如下三个原则:
第6章 ES设计
Expert Systems Design
16
8.2 ES的一般设计方法
(1)知识与知识处理机构分开和相互独立的原则 ES中有独立存放知识的知识库,有用作推理、搜索的
第6章 ES设计
Expert Systems Design
8
8.2 ES的一般设计方法
一个ES的知识表示方法不仅关系到知识的有效存储, 也直接影响推理效率和新知识获取的能力。目前,有许 多知识表示方法,如规则表示、框架表示、逻辑表示、 语义网络表示等。各种知识表示方法都有其独特的优点 和内在的不足,但都要遵循两个重要的准则:
Expert Systems Design
12
8.2 ES的一般设计方法
(3)混合推理 正向推理和反向推理是两种基本的推理方式,在此
基础上,人们研究了交替使用正向推理和反向推理方向 的混合推理方式。
(4)元控制策略 结合启发式方法的推理方法称为元控制策略。
第6章 E源自文库设计
Expert Systems Design
的经验和知识输入到ES的知识库中。智能编辑程序应该具 备灵活的人机对话能力和有关知识库结构方面的知识。
(3)归纳学习程序 对大量实验数据进行归纳和总结,将会得到一些新的
规律和知识,利用归纳学习程序,可以模拟人的思维过程, 从有关知识库中发现新知识,然后将这些新知识加入到知 识库中,供ES使用。
第6章 ES设计
11
8.2 ES的一般设计方法
(2)反向推理(后向推理) 对于一个具体的ES问题,还可以先猜测问题的结
论,然后从结论开始以相反的方向推导支持结论需要 的证据,再看问题的已有信息是否提供了或者否定了 这些需要的证据。这种过程类似于从“求证”到“已 知”的过程,故称为目标驱动的反向推理方式。
第6章 ES设计
第6章 ES设计
Expert Systems Design
21
8.2 ES的一般设计方法
8.2.3 ES的主要设计步骤 一个ES一般可以按照三个步骤进行设计。
1)初步设计 首先分析需要求解的领域问题,在领域专家的协作下,
明确期望ES实现的目标,确定参与系统研制的合作专家以 及知识源,通过知识获取和领域专家的配合,对ES求解目 标任务的主要概念、关系、假设、约束等进行图解形式的 描述(如推理网络),选择合适的知识表示方法,把图解 形式的内容形式化地表达出来,并确定推理的控制方向等。
推理机和解释系统等,使得系统具有很好的模块性、可扩 充性和可维护性。
(2)按系统功能实现模块化构造的原则 为了使结构清晰和调试容易,绝大多数ES都采用按系
统功能分割模块化的构造原则,把系统分成几个互相独立 的功能模块。
第6章 ES设计
Expert Systems Design
17
8.2 ES的一般设计方法
第6章 ES设计
Expert Systems Design
2
8.1 专家系统的基本设计思想
2. 专家系统的核心是知识 知识的数量与质量是一个专家系统性能的决定性因
素。因此,专家系统的主要特征是拥有一个巨大的知识库, 存储着某个专门领域的知识。
专家系统的控制级通常表达成某种推理规则。整个系 统的工作过程是从知识库出发,通过控制推理得到所需的 结论。因此,专家系统能“理解”自身行为的目的,“知 道”采取某一个步骤的缘由,所以具有较高的智能水平。
第6章 ES设计
Expert Systems Design
19
8.2 ES的一般设计方法
ES如此往复地不断改变中间数据库的内容,直至最 终获得问题的解答。由此可见,中间数据库的内容动态 地控制着ES的工作过程。
在推理过程中,中间数据库的内容是不断变化的, 故又称之为动态数据库。由于ES知识库的内容在一次推 理中是不变的,故又称知识库为静态数据库。知识库仅 由知识获取模块和学习模块来改变其内容。
在不断供给知识库新知识的同时,系统不断对已有知 识和新加入知识的正确性及协调性通过实例进行测试。通 过不断扩充知识库和不断测试的过程,一般可以发现已形 式化知识的不完善之处,然后在领域专家的配合下对系统 进行不断调整。
这一阶段将产生出可运行的ES雏形,称为原型系统。
第6章 ES设计
Expert Systems Design
18
8.2 ES的一般设计方法
在ES开始工作时,先把ES从用户那里获得的关于问 题求解的事实和初始状态、初始数据等写入中间数据库。 然后根据中间数据库和知识库的内容,进行各种可能和需 要的搜索、匹配和推理等动作,不断以新的中间结果修改、 替代或补充中间数据库的内容。在此期间,必要时还可以 向用户提出询问,以求获得解题必要的补充知识。这些后 来从用户得到的信息也被记录在中间数据库中,以便与中 间数据库的其他内容一起参与后续的推理过程。
Expert Systems Design
7
8.2 ES的一般设计方法
由于真正做到能够发现知识的ES还不多见,所以,归 纳学习程序这种知识获取方式是机器学习研究的一个长期 目标,已经引起有关专家的重视,并列为ES的研究课题。 3)知识表示
知识表示是关于各种存储知识的数据结构及其对这些 数据结构解释过程的结合。知识表示主要研究各种含有语 义信息的数据结构的设计,以便在这些数据结构中存储知 识,开发各种操作这些数据结构的推理过程,使知识表示 和知识运用的控制以及新知识的获取相结合,把领域知识 有机地结合到程序设计中。
(1)知识表示方法能自然、有效地表示知识; (2)知识表示结构易于检索、运用、修改和扩充。
在实际应用中,易于人们接受并且使用最多的是基 于规则的产生式表示法(又称为规则表示法)。其主要 优点是:模块性,清晰性,自然性。
第6章 ES设计
Expert Systems Design
9
8.2 ES的一般设计方法
发,选择和运用知识库中的可用知识,以推导出一些有 用的中间结论,将中间结论作为已有信息的扩充,进一 步选择和运用知识库中的可用知识,继续推导,直至得 到问题的求解结论。这种过程类似于从“已知”到“求 证 ”的过程,故称为数据驱动的正向推理方式。
第6章 ES设计
Expert Systems Design
表示。 (2)设计推理机制与控制策略 涉及推理机制设计的两项主要技术是:基于知识规则
的推理和推理解释机制。
第6章 ES设计
Expert Systems Design
5
8.2 ES的一般设计方法
2)常用的知识获取方式 知识获取是从领域专家处获得知识、提取知识并将其
转换成ES程序的艰巨而细致的工作过程,即将问题求解中 领域专家的经验和技术从某个知识源提取到ES中。常用的 知识获取方式有三种:
第6章 ES设计
Expert Systems Design
3
8.1 专家系统的基本设计思想
综上所述, ES的基本设计思想就是将知识和控制推 理策略分开,形成知识库。在推理策略的控制下,利用 存储的知识分析和处理问题。
在求解问题时,用户为ES提供一些已知数据,然后 从ES中获得专家水平的结论。
第6章 ES设计
第6章 ES设计
Expert Systems Design
22
8.2 ES的一般设计方法
2)开发原型系统 选择合适的ES程序设计语言和开发工具设计推理机制,
或借用工具语言已具备的推理机制,可将形式化表示的知 识以ES求解目标或图解形式的模块为单元,逐个单元地把 知识转换为适合程序设计语言或工具接受的内部编码形式, 输入到知识库。
第6章 ES设计
Expert Systems Design
14
8.2 ES的一般设计方法
7)推理解释 推理解释是解释机制的重要组成部分,其目的是
对系统的推理过程、推理位置以及推理的每个动作做 出解释,使用户相信问题求解结论的可信性和正确性。
推理解释一般包括两部分: 咨询过程中使用的推理状态检查程序; 咨询中或咨询后使用的通用回答程序。
第6章 ES设计
Expert Systems Design
20
8.2 ES的一般设计方法
(3)交互性原则 领域专家和用户与ES信息交换的人机接口、知识
工程师维护知识库等,都需要与系统具有良好的交互性 操作,使得领域专家和用户都以尽可能自然、易于实现 的方式实现信息传输和结果输出,并使知识工程师对于 知识矛盾、冗余检查、新知识加入对现有知识的影响进 行调节,以及知识的存储、共享等能进行交互处理。