收藏 分享(赏)

知识推理new.ppt

上传人:tkhy51908 文档编号:9356158 上传时间:2019-08-03 格式:PPT 页数:68 大小:187KB
下载 相关 举报
知识推理new.ppt_第1页
第1页 / 共68页
知识推理new.ppt_第2页
第2页 / 共68页
知识推理new.ppt_第3页
第3页 / 共68页
知识推理new.ppt_第4页
第4页 / 共68页
知识推理new.ppt_第5页
第5页 / 共68页
点击查看更多>>
资源描述

1、知 识 推 理,主要内容,本章讨论知识推理的基本理论和一些重要而常用的推理方法,包括:正向推理逆向推理双向推理非精确推理,推理是人类的一种重要的高级思维形式,依据一定的原则从已有 的事实推出结论的过程。知识推理是指在计算机或智能系统中,模拟人类的智能推理方 式,依据推理控制策略,利用形式化的知识进行机器思维和求解 问题的过程。 自动推理程序指利用推理辅助解决和回答问题的计算机程序。推理机是自动推理程序中基于知识推理的子类,它是知识系统 的主要部分。控制策略是推理机的核心部分,它的主要任务是解 决知识的选择与应用的顺序,也就是确定搜索方向和搜索方法。,4.1 知识推理概述,研究推理方法的目的是探

2、索人类思维活动中各种推理形式的基本规律,研制出辅助人类进行推理判断和问题求解的智能化软件系统。钱学森教授认为人类思维一般分为三类,即抽象思维、形象思维和灵感思维。抽象思维,即逻辑思维、概念的概括与划分、事物的分类与继承等;形象思维,如类比、联想等典型方法;灵感思维,是发生在潜意识的创造性的思维方法。按照人类思维和智能活动的不同特征,自动推理的研究具有不同的研究观点,将推理分为:正向推理、逆向推理和双向推理;精确推理和非精确推理;单调推理和非单调推理;计算推理、逻辑推理和智能搜索;,依据推理方向的控制策略,即推理的驱动方式,可将推理分为正向推理(Forward Reasoning)、逆向推理(B

3、ackward Reasoning)和双向推理(Bidirectional Reasoning)。正向推理(向前推理):它是从可用的事实出发,向前推理,用当前的事实匹配规则的前提,产生新的结论,直到达到目标状态终止。这种推理方式是由数据到结论,所以也叫数据驱动策略。推理方式如下所示:初始状态 目标状态(事实 条件) (结论 假设),(1)正向推理、逆向推理和双向推理,逆向推理(向后推理):它是从目标出发向后推理,用目标匹配规则的结论部分,将该规则的前提作为新的子目标,然后试图证明一系列子目标,直至找到支持结论的证据,则停止推理。这种由结论到数据的策略称为目标驱动策略。推理方式如下所示: 初始状

4、态 目标状态(事实 条件) (结论 假设),双向推理:先根据原始数据,通过正向推理帮助系统提出假设,再运用逆向推理,进一步寻找支持假设的证据,如此反复这个过程,直至达到目标。这就是双向推理,如下所示:初始状态 目标状态(事实 条件) (结论 假设),精确推理(Exact Reasoning)中,领域知识具有确定性,可表示成必然的因果关系和逻辑关系,推理的结论或是肯定的或是否定的,也可以把可能性大于某个固定的值(称为阈值)的假设认为是肯定的。精确推理的理论基础是布尔逻辑。,(2)精确推理和非精确推理,非精确推理(Inexact Reasoning)又称为近似推理,在这种推理中,使用确定和不确定的

5、知识,证据不一定是确定的,而是给予某种“权”(可信度);推理的规则也不是确定的,也给予某种“权”,推导出一个可能是不精确的结论。对于多个证据或多条规则的推理要进行“权”的组合。非精确推理基于非精确逻辑理论,例如,模糊逻辑、确定性理论、贝叶斯概率论、Dempster-Shfer证据理论等。,精确推理和非精确推理,单调推理(Monotonic Reasoning)是指推理过程中产生的新信息的数量随时间而严格增加,且这些信息不影响原有信息的真实性。非单调推理(Nonmonotonic Reasoning)是相对于单调推理而言,是指推理过程中产生的新信息的数量并非随时间而严格增加,这些信息可能对原有信

6、息产生影响,使其部分信息变成无效,或使其数量减少。,(3)单调推理和非单调推理,从推理过程中的计算方式来看,有专家把自动推理分为计算推理、逻辑推理和智能搜索。计算推理主要有数值计算和计算智能等。一般来说,使用计算方法与人类经验知识相结合的运算属于智能计算;而人工神经元网络计算、进化计算、人工生命及其智能生物的情感与心理计算等,则属于计算智能的范畴。常用的计算推理方法有:基于贝叶斯概率论、Dempster-Shafer证据等理论的近似推理;默认推理;神经网络推理等。,(4)计算推理、逻辑推理和智能搜索,逻辑推理是指使用谓词逻辑、模糊逻辑、模态逻辑、时序逻辑、动态逻辑等来完成关于问题的求解的推理。

7、逻辑推理又分为精确推理和非精确推理,以及单调推理和非单调推理。智能搜索是依据知识内容和知识关联来求解问题的过程,是一种特殊形式的人工智能推理技术。智能搜索寻求能合理利用知识尤其是人类的经验知识来引导搜索过程,例如控制搜索路线、演算步骤等,以便从初始状态,沿着最优或最经济的途径,有效地转移到所要求的目标状态,实现问题求解过程的智能化。例如,语义推理、案例推理、启发式搜索、知识检索等。,影响推理的效果和效率的主要因素是: 能否根据环境准确地选择出可用的知识; 能否正确地应用可用知识; 当推理失败时,能否寻找新的路径重新推理; 能否恰当地终止推理过程; 问题解答所需的费用(如时间)。,选择推理方向要

8、根据问题空间的拓扑结构而定,它受到三种因素的制约:(1)与初始状态集和目标状态集的大小有关,一般从小的状态集出发向大的状态集推理,这样找解要容易些;(2)受到方向分枝因素大小的约束。所谓分枝因素,是指从结点出发,可以直接到达的平均结点数。一般都是向分枝因素少的方向推理;(3)还决定于是否需向用户证实系统的推理过程,若需要,则选择方向应更加符合该用户的思考方法。,在实际应用中,可根据具体情况选择合适的推理方法。例如,初始状态是一组公理集,目标状态是待证定理,从公理出发正向推至定理的分枝因素,大于从定理出发逆向推至公理的分枝因素。因此,许多定理证明程序主要采用逆向推理。,4.2正向推理,首先由用户

9、提供一批事实,组成一个事实集合(或称事实库)。领域知识表示为规则,构成规则集合,正向推理侧重于规则的前提,用事实库中的事实与规则的前提进行匹配。前提由条件或子句集合组成,如果规则前提中的所有子句被证明成功,则执行这条规则,将产生的结论作为新事实加入事实库,或者执行一种真实世界中的活动。 事实库匹配 执行规则集合图4-1 规则执行示意图,4.2.1 正向推理的分析,一个规则集合中的规则可被反复地证明,直到一个所给的目标或假设被证明或再没有新的事实存在。现在,用一实例解释正向推理的过程,用谓词逻辑表示以下事实和规则。事实:推荐(经纪人-A,白银)推荐(经纪人-A,黄金)推荐(经纪人-A,油)推荐(

10、经纪人-B,黄金)推荐(经纪人-B,油),规则1:如果 推荐(经纪人-A,X) and 推荐(经纪人-B,X)则 投资于(投资者,X)规则2:如果 投资于(Y,X)则 拥有(Y,X),推理机如何操作这些规则呢? 它首先证明每一条规则,用规则的前提匹配事实库。事实库中第一个事实“推荐(经纪人-A,白银)”匹配这条规则,约束变量x的值为“白银”。然后证明相同前提中的另一个子句“推荐(经纪人-B,白银)”,它不匹配任何事实。,推理机再证明第一条规则中的前提“推荐(经纪人-A,X)”,匹配事实库中的事实,将变量x的值约束为“黄金”,然后找到一个匹配前提中第二个子句的事实“推荐(经纪人-B,黄金)”。第

11、一条规则的前提匹配成功,于是将第一条规则的结论“投资于(投资者,黄金)”加入事实库。,现在推理机试证第二条规则,它的前提刚好匹配用第一条规则产生的事实,因此第二条规则的结论“拥有(投资者,黄金)”作为新的事实加入事实库。因为规则集合中再没有其它规则,于是推理机返回第一条规则。推理机第二次应用第一条规则时,有二个事实匹配规则前提中的二个子句将变量x的值约束为“油”,这两个事实是:推荐(经纪人-A,油)推荐(经纪人-B,油)因此,规则的结论“投资于(投资者“油”)”被加入事实库。当推理机再试证第二条规则时,产生一个结论“拥有(投资者,油)”,并将其加入事实库。,现在推理机再返回到第一条规则,没有发

12、现新的事实与它匹配,第二条规则也如此。因此,正向推理处理就终止了。目前事实库的内容是:推荐(经纪人-A,白银)推荐(经纪人-A,黄金)推荐(经纪人-A,油)雅荐(经纪人-B,黄金)推荐人(经纪人-B,油)投资于(投资者,黄金)拥有(投资者,黄金)投资于(投资者,油)拥有(投资者,油),正向推理基于提供的事实应用规则。在推理过程中,用规则的前提匹配事实,如果多条规则匹配当前的事实怎么办?推理机必须做出决定,也就是应用某种策略决定首先应用哪些规则,这种策略叫做冲突解决策略。,4.2.2解决冲突的策略,对于正向推理,解决冲突的策略是:(1)选择一个:选择匹配事实的第一条规则。(2)顺序选择:按匹配规

13、则的顺序执行,前面建立的新事实可被后面的规则使用。(3)详细规则优先:这种方法是在冲突规则集中优先选择条件部分内容详细的规则。(4)重要度优先:该方法是预先给各规则赋予类似于优先数的权,然后在处理冲突规则时,选择优先数最高的规则。,(5)最近优先法:这种方法是在冲突规则集中优先选择与最近加入事实库中的事实相匹配的规则。在这种情况下,各数据元素被赋予时间标志。 此外,对于逆向推理和非精确推理还有其它解决冲突的策略,而且任何一种策略都有长处和短处,需要采用什么样的策略,完全由问题的性质来决定。,设所用知识库包括事实和规则,正向推理算法描述如下:(1)扫描知识库,产生可用规则集S,这些规则左边条件均

14、为真,即都被事实库中的事实满足;(2)调用解决冲突算法,从S中选出规则R;(3)执行规则R右边的结论部分,将产生的新事实加入事实库;(4)若目标得证或无新的事实存在,停止;否则转(2);,4.2.3正向推理算法,采用顺序选择匹配规则的冲突解决方法,可将正向推理算法表达如下: 证明一条规则:证明规则集合中一条规则的前提,如果前提成功,将规则的结论加入事实库。 检查假设:检查假设是否被证明,若被证明,则成功,停止推理。 证明另一条规则:重复步骤和证明规则集合中的下一条规则,直到规则集合中的所有规则被证明过。存在新的命题或约束值吗?在这次推理中,如果存在一个新的约束值或新的命题,从开始循环,否则,停

15、止推理。如果处理中没有假设,则步骤可不执行。因此,如果没有假设,正向推理继续到没有新的事实或约束值时停止。,4.3逆向推理,逆向推理:从某种意义讲,它与正向推理是互逆的,因为它聚焦于规则的结论部分,而不是规则的前提。逆向推理过程:用户或系统提出一个假设,叫做目标,推理机则证明目标的真假性。(1)用该目标匹配知识库中的事实,如果匹配成功,那么目标成立;(2)否则,用目标匹配知识库中规则的结论部分,然后选择一条匹配规则,将其前提作为新的子目标,继续证明,直到总目标证明成功,停止推理。逆向推理的实例:下面例子是应用谓词逻辑表达知识。由事实和逆向规则构成的知识库描述如下:,事实:wrote(Kowal

16、ski,Logic for Problem Solving)wrote(Clocksin,Programming in Prolog)wrote(Mellish,Programming in Prolog)wrote(Clark,Prolog:A Language for Expert Systems)wrote(McCade,Prolog:A Language for Expert Systems)published(Logic for Problem Solving,1979)published(Programming in Prolog,1981)published(Prolog:A L

17、anguage for Expert Systems,1980)published(Logic Programming,1983),规则1:Author-of(Author,Title,Year)wrote(Author,Title)published(Title,Year)规则2: Co-authors-of(Authorl, Author2,Title)wrote(Author1,Title)wrote(Author2,Title)not equal(Authorl,Author2),现在证明目标:co-authors-of(Clark,Author,Title)。该目标不匹配知识库中的任

18、何事实,而匹配规则2的结论,变量Author1的值约束为“Clark”推理机证明该规则的前提部分,它们是:wrote(Clark,Title)wrote(Author2,Title)not equal(Clark,Author2),第一个子句匹配事实,变量Title的值约束为“Prolog:A Language for Expert Systems”。第二个子句现在变为:wrote(Athor2,Prolog:A 1anguage for Expert Systems)。它匹配知识库中的事实,变量Author2的值为“MeCade”,且该值不等于“C1ark”,因此第三个子句也成立。目标得证,

19、结果是:co-authors-of(Clark,McCade,Pro1og:A language for Expert Systems)。,现在证明另一个目标:co-authors-of(Author,Mellish,Title)。 该目标不匹配任何事实,匹配规则2的结论,变量Author2的值约束为“Mellish”,证明该规则。它的前提部分是:wrote(Authorl,Title)wrote(Mellish,Title)not equal(Author1,Mellish),首先证明第一个子句,它匹配第一个事实,Author1的约束为“Kowalski”,变量Title的值约束为“Logi

20、c for Problem Solving”)证明第二个子句:wrote(Mellish,Logic for Problem Solving),失败。,推理机需要回退,来重新选择一种约束值,再证明目标,这种处理称为回溯(backtracking)。如果规则前提中包含多个子句,当其中一个子句证明失败时,推理机回退到该子句的前面一个子句,继续证明之。推理机回溯,再次证明规则的前提部分,第一个子句匹配知识库中的第二个事实,Authorl的约束值为“Clocksin”,Title的约束值为“Programming in Prolog”。前提中第二个子句变为:wrote(Mellish,Programm

21、ing in Prolog),它匹配事实库。作者名“Clocksin”不等于“Mellish”第三个子句也成立。目标证明成功。结论是:Co-authors-of(Clocksin,Mellish,Programming in Prolog),如果目标中的参量均是常量,则证明目标为真时,推理就停止;若目标中含有变量,推理机要找出使目标为真的变量的所有值后,才停止推理。设知识库包含事实和规则,给出目标G,逆向推理算法描述如下:(1)扫描事实库,找出与目标G匹配的事实F,若F存在,则成功返回。(2)扫描规则库,找出结论与目标G匹配的规则集S(3)如果S为空:则失败返回。(4)如果S非空且G未知,重复

22、执行以下操作:调用解决冲突算法,从S中选出规则R;将规则R的前提部分作为子目标G,证明之; 若G未知,递归调用本算法;若G为真,执行R的结论部分,并且从S中删除规则R。,说明: 在证明规则R的前提部分G的过程中,当G包含多个条件或子句时,若某个子句证明失败,则在前提内回溯,查找前个子句的变量的新约束值,继续证明。如果算法能合适选择子目标,则可减少回溯,提高推理效率。,4. 4 双向推理,正向推理的主要缺点是盲目推理,求解了许多与总目标无关的子目标。逆向推理的主要缺点是盲目选择目标(在系统开始选择目标时,与问题有关的信息还没有提供),求解了许多可能为假的总目标,尤其是解空间较大时,更为明显。双向

23、推理的基本思想:解决这些问题的有效方法,是综合利用正向推理和逆向推理的优点,即通过正向推理帮助选择某个目标,再通过逆向推理证明该目标。,双向推理的算法是:重复执行以下步骤,直到问题被解决:(1)让用户将事实输入到事实库中;(2)调用正向推理算法,从已知事实出发演绎出部分结果;(3)调用选择目标算法,选出某个目标G;(4)调用逆向推理算法,确定目标G的真假性。其中,“选择目标”算法,是根据用户提供的已知事实,由正向推理推导出所有结论,利用第二节介绍的解决冲突的某种方法,选择一条较理想的目标,供逆向推理使用。在逆向推理中,还可向用户询问更多的信息。,以上算法描述了双向推理的一种模式。在实际应用中,

24、还有许多其它模式。例如,在正向推理机制中,若正向规则前提中一个子句不匹配事实库,可将该子句作为目标,调用逆向推理证明它。另一方面,在逆向推理机制中,也可以使用谓词调用正向规则。,4.5 非精确推理,在人工智能系统中,除了利用确定的规则对确定的知识进行精确推理外,更重要的是用经验知识对不确定的知识进行非精确推理。近些年,发展了一些处理不确定信息的理论。主要的理论有概率论(Probability Theory)、模糊逻辑(Fuzzy Logic)、确定性理论(Certainty Theory)和Dempster-Shafer的证据理论。,4.5.1 不精确知识的表示,(1)概率论概率论将不确定性表

25、示为一个事实或规则为真的概率。概率论已发展了描述和处理不确定性的复杂方法,当应用于以下领域时,它是一种好方法。有关世界是真正随机的,例如,流行病发生时的病人分布。处理确定世界,求解完全确定的问题时,涉及大量的数据,但程序不能经常存取这样多的数据。没有使用恰当的表示方法引起的随机性。,(2)模糊逻辑和确定性理论概率方法要求详细的先验知识,且这种知识的获取很困难。再者,概率论无法处理模糊信息。因此,它不适于大多数知识领域,取代概率论的方法是模糊逻辑和确定性理论。模糊逻辑把不确定性信息表示为事实或规则的可信度。 (3) 表示和处理不确定信息的基本方法:确定一个可能性、概率、真实程度、确定性或信度因子

26、,可将它们看作闭区间 0,1上的实数或0100之间的整数,将这些值赋给基本事件的集合。然后应用一些运算方法,如可能性演算、概率组合、真值传递和非精确推理等,来求得复合或复杂事件的不确定性。,模糊逻辑(Zadeh 1965)是一种多值的、不精确的逻辑,它将两值逻辑(布尔逻辑)和集合论作为特殊情况。在这种方法中,数学概率被认为是不合适的,代换它的是可能性理论(Possibility Theory)。模糊逻辑研究和处理模糊现象。模糊真值是关于一个事实或规则为真的可能性或可信度。一个断言不必简单地为真或假,可具有任何可信度。,4.5.2模糊逻辑,模糊集合 在传统的集合论中,一个对象可以是一个集合的成员

27、,如2是偶数集合的一个成员,3不是。而在一个模糊集合中,每个元素不能简单地用“属于或不属于”来表达。如检索词与文献集合的相关问题,“相关”是一个模糊概念,一般人们要求检索词与文献某种程度相关。模糊集合的主要思想:将模糊逻辑中的真值或模糊集合中的成员值表示为0,1上的实数,0表示绝对的假,1表示绝对的真,0 1的模糊真值用于描述不精确的概念和事实。,模糊集合的概念:定义:字母U代表论域空间,它是由任一组对象或数学结构形成的集合。设在论域U上给定了映射:U0,1 则说确定了U上的一个模糊子集,记为A,称为A的隶属函数,可写作A,A(u)称为u对于A的隶属度,它表示u属于A的程度。当A(u)0,1时

28、,隶属函数A便退化为两值布尔函数,A退化为普通集合。,当A(u)=1时,则u完全属于模糊集合A。当A(u)=0时,则u完全不属于A。A(u)越接近于1,u属于A的程度就越大。这些隶属度的值不需要总和到1,而概率受总和公理的限制。因此,在模糊逻辑中,可使用任何形式的不精确值,不用担心违反数学模型。模糊集合A是一个序对集:A=(ui,A(ui),uiU若对所有的uU,A(u)=0,则A称为空集:若对于所有的uU,A(u)=1,则A称为全集U。,模糊集合实例:例如,自然语言中具有许多模糊的和不精确的概念,如“高“、“大”、“相关”等。在实例之间没有确定的分界线,人们通常比较一些人的高度来区分高与矮。

29、令U表示身高的集合:U=1.4,1.5,l.6,1.7,1.8,l.9,2.0单位是m。令H表示u的模糊子集,它代表高个的集合,它的元素是人,他们的隶属度依赖于他们的高度。设一个高1.4m的人有隶属度0,一个高2m的人有隶属度1,对某一个人是否描述为高个子,不同的人有不同的看法。一种可能表示是:,按照这种表示,模糊集合H可用它的论域U(1.4,1.5,1.6,1.7,1.8,1.9,2.0) 和隶属度(0.00,0.08,0.32,0.50,0.82,0.98,1.00) 来描述:H=(ui,H(ui)| ui U,H(ui)入其中,入为主观阈值。,模糊运算: 两个模糊集合间的运算,是关于隶属

30、度的运算。 定义:设A、B为论域U上的模糊子集;则A与B的交、并、补集的模糊运算分别为:AB(u) = min A (u),B(u)AB(u) = max A (u),B(u)(u)=1 - A (u)符号max和min表示最大最小运算。该运算公式可推广到n个模糊集合上去。,确定性理论是Shortliffe等人于1 975年提出的,它是建立在确定性因子基础上的非精确推理理论。各种非精确推理方法,以不同的方式表示和处理不确定性信息。概率论方法将不确定性考虑为一个事实或规则为真的概率;模糊逻辑把不确定性表示为事实或规则的可信度。确定性理论:应用确定性因子CF(Certainty Factor)表示

31、事实或规则的真实程度。确定性因子是0 - 1 00之间的一个数字,100表示绝对为真,0表示确定的假值。这些确定性因子不是概率,是描述的真实程度,不需要总和到100。,4.5.3确定性理论,为了应用确定性理论进行推理,需要定义一些运算公式。首先需将两值规则的概念扩展为不精确规则的概念,前提和结论中的描述(或参量)可以带有确定性因子。设描述A和B的确定性因子分别是CF(A)和CF(B),根据模糊逻辑有以下公式:CF(A AND B) = minCF(A),CF(B) (1)CF(A OR B) = maxCF(A), CF(B) (2)CF(NOT A) = 100 - CF(A) (3) 应用

32、以上公式可计算规则前提的确定性因子CF 。,结论的CF值运算公式:不仅可以给参量或事实赋于确定性因子CF,还可以给每条规则赋于CF值,那么结论的CF值依赖于前提和规则的确定性,可用下式计算:CF(结论)= CF(前提)* 规则确定性因子100 (4)例如规则:if A AND B then C( CF = 50);CF(C) = minCF(A),CF(B)*50100,组合运算公式:当存在多条规则支持同一假设,即这些规则的结论匹配这个假设,则将每条匹配规则看作支持这个假设的一个证据。为了计算假设的确定性因子,需要组合支持该假设的所有规则提供的CF值,称为组合证据。设CF(H,E)是基于证据E

33、的假设H的确定性因子,有两条规则支持,一般形式的逆向规则如下:Rule1:CF = c H if A and B;Rule2:CF=c H if C or D;,基于每条规则分别求假设的确定性因子:cl = CF(H,Rule1)= minCF(A),CF(B) * c/100 c2 = CF(H,Rule2)= maxCF(C),CF(D) * c/100组合两条规则,设CF(H,Rule1&Rule2)表示假设的确定性因子,那么组合证据的运算可定义如下:CF(H,Rulel& Ruld2) = cl + c2 -(c1 * c2)/100 (5)证据的组合满足结合律和交换律,并要求各证据相

34、互独立。根据最后计算组合后的确定性因子,人们可以利用确定的阈值、选择满足要求的假设,丢弃阈值以下的结论。,非精确推理的理论可以表示和传递不确定的信息。非精确推理的质量很大程度上依赖于如何测量基本的确定性及推理中如何组合不确定性。根据模糊逻辑和确定性理论,非精确推理系统可综合使用两种逻辑:两值或精确逻辑和多值或不精确逻辑。系统定义两值逻辑的精确真值为两个数字0和100,100表示真,0表示假,模糊真值是0 - 100之间的一个整数。 系统还可以定义一个特殊的非精确真值UNKNOWN,用于表示一个未知的不精确事实的真值。一般来说,真值UNKNOWN的操作和传递是不确定的。,4.5.4 非精确推理与

35、算法,非精确推理的目的:是基于可用的事实,产生具有最大可能性的结论或解释。非精确推理要寻找目标的真值或确定性因子CF,用目标匹配事实库和规则库。在逆向推理中,如果一个目标可用一条规则证明成功,就不再试用其它规则而停止推理。然而,在非精确推理中,为证一个目标,需要尝试所有的匹配规则,每条规则中有关目标的确定性因子可以在推理中被动态确定,然后组合从所有匹配规则中获得的确定性因子。,推理机可以综合精确的和非精确推理,使用前面介绍的正向、逆向和双向推理控制策略。不精确规则的前提由若干条件或子句组成,每个子句的真值是一个0 100的数字。下面以逆向推理的实例介绍非精确推理的过程。假设有以下事实和逆向规则

36、:事实:推荐(经纪人-A,黄金)(CF = 75)推荐(经纪人-A,白银)(CF = 50)推荐(经纪人-B,白银)(CF = 90)定价低(黄金)(CF=80)定价高(白银)(CF=90),规则1:(CF = 70)投资于(投资者-1,X)推荐(经纪人-A,X) and推荐(经纪人-B,X) andnot定价高(X)规则2:(CF = 50)投资于(投资者-l,X)推荐(经纪人-A,X) and定价低(X)规则3:(CF = 100)定价低(X)not定价高(x),推理机证明目标:投资于(投资者-1,白银),也就是查找目标的确定性因子。首先,它用目标匹配事实,失败。然后系统寻找结论部分匹配该

37、目标的所有规则。目标匹配第一条规则的结论,X约束为“白银”。现在需要求该规则前提的确定性因子,前提目前变成:推荐(经纪人-A,白银)and推荐(经纪人-B,白银)andnot定价高(白银)。,系统需要求出前提中每个子句的确定性因子。前二个子句均可在事实库中找到,并且它们的确定性因子分别是50、90。第三个子句中“定价高(白银)”也在事实库中,确定性因子为90,因此,“not定价高(白银)”的确定性因子为100 90 = 10。第一条规则中前提的确定性因子为min(50,90,10) = 10,它的结论的确定性因子是:CF(规则1) = 10*70100 = 7,因为非精确推理考虑所有的匹配规则

38、,系统用目标匹配第二条规则成功,且约束X为“白银”,于是开始证明规则的前提。 前提变成:推荐(经纪人-A,白银) and定价低(白银)前提中第一个子句匹配事实库,具有确定性因子50。第二个子句不匹配事实库,而匹配第三条规则的结论。系统开始求第三条规则中结论“定价低(白银)”的确定性因子:CF(not定价高(白银) = 100 CF(定价高(白银)= 100 90 = 10CF(定价低(白银) = CF(not定价高(白银) * 100100 = 10,第二条规则中前提的确定性因子是min(50,10)=10,结论的确定性因子是:CF(规则2) = 10 * 50100 = 5 现在,组合两条规

39、则,求得目标的确定性因子:CF(H,规则1&规则2)=7 + 5(7 * 5)100 = 11.65 目标“投资于(投资者,白银)”的确定性因子是11.65,它表达了1l的确定性。,以逆向推理为基础,非精确推理的算法步骤如下:(1)匹配事实库:检查目标是否匹配事实库,若匹配,返回其确定性因子。如果匹配询问子句,则提问用户。(2)匹配规则:用目标匹配规则集中所有不精确规则的结论,对于每条匹配规则,计算其结论的确定性因子:查找前提中每个子句的确定性因子:循环执行这一步骤,求得前提中所有子句的确定性因子;求出前提的确定性因子:应用模糊逻辑的最大最小运算方法(公式(1)(3),计算前提的确定性因子;求

40、出结论的确定性因子:应用公式(4),求得该规则结论的确定性因子。(3)组合证据:应用公式(5),组合从所有匹配规则中获得的确定性因子,求出最终目标的确定性因子。,不精确推理,通常我们用CF来表示可信度。 例如,规则: if A then B CF(B,A) 设:CF(A)表示前提条件A的可信度;CF(B)表示结论B的可信度;CF(B,A)表示从A推出B的可信度(可能性),即该规则的可信度。 n 前提为单个条件时 CF(B)= CF(B,A)CF(A) 例如,规则的可信度为100%,即CF(B,A)=1,则CF(B)=CF(A)。,不精确推理,n 前提条件以“AND”连接时 如果前提A以“AND

41、”连接了多个条件,例如A(A1A2A3),则取前提条件中可信度的最小值作为A的可信度。 CF(A)=CF(A1A2A3)min(CF(A1),CF(A2),CF(A3) CF(B)=CF(B,A)CF(A)= =CF(B,A)min(CF(A1),CF(A2),CF(A3),不精确推理,n 前提条件以“OR”连接时 如果前提A以“OR”连接了多个条件,例如A(A1 A2A3),则取多个条件中可信度的最大值作为A的可信度。 CF(A)CF(A1A2A3)max(CF(A1),CF(A2),CF(A3) CF(B)=CF(B,A)CF(A)= CF(B,A)max(CF(A1),CF(A2),CF(A3),不精确推理,例:试求得出结论“金钱豹”的可信度,即计算CF(金钱豹)。,提示: CF(哺乳动物)=CF(a)CF(用乳汁哺育幼子)=0.50.8=0.4 CF(食肉动物)=CF(b)CF(会吃肉)=0.950.9=0.855 CF(金钱豹)= CF(c)min(CF(哺乳动物),CF(食肉动物),CF(有暗斑点)=0.60.4=0.24 所以,得出结论“金钱豹”的可信度是0.24。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报