本文概述
在人工智能中,正向和反向链接是重要的主题之一,但是在理解正向和反向链接之前,首先要了解这两个术语的来源。
推理机
推理引擎是人工智能中智能系统的组件,该引擎将逻辑规则应用于知识库,以从已知事实中推断出新信息。第一个推理引擎是专家系统的一部分。推理引擎通常以两种模式进行:
- 正向链接
- 向后链接
Horn子句和Definite子句:
Horn子句和定语从句是句子的形式,这使知识库可以使用更严格和有效的推理算法。逻辑推理算法使用前向和后向链接方法,这些方法要求KB以一阶确定子句的形式。
定语从句:将正好与一个正字面值相分离的从句的子句称为定句或严格的horn子句。
Horn子句:与最多一个正数文字分开的子句称为horn子句。因此,所有定语从句都是号角从句。
示例:(¬p V¬q V k)。它只有一个正数k。
A.前向链接
使用推理引擎时,前向链接也称为前向推论或前向推理方法。前向链接是推理的一种形式,它从知识库中的原子语句开始,并在向前方向上应用推理规则(Modus Ponens)来提取更多数据,直到达到目标为止。
前向链接算法从已知事实开始,触发满足其前提的所有规则,并将其结论添加到已知事实中。重复此过程,直到问题解决。
前向连锁的属性:
- 这是一种自下而上的方法,它从下到上移动。
- 它是通过从初始状态开始并达到目标状态,基于已知事实或数据得出结论的过程。
- 当我们使用可用数据达到目标时,前向链接方法也称为数据驱动。
- 正向链接方法通常在专家系统中使用,例如CLIPS,业务和生产规则系统。
考虑下面的著名示例,我们将在两种方法中使用该示例:
例:
“根据法律,美国人向敌对国家出售武器是犯罪。美国的敌人A国拥有一些导弹,所有导弹都由美国公民罗伯特卖给了它。”
证明“罗伯特是犯罪分子”。
为了解决上述问题,首先,将上述所有事实转换为一阶定句,然后使用前向链接算法达到目标。
事实转换为FOL:
- 美国人向敌对国家出售武器是犯罪。 (假设p,q和r是变量)美国(p)∧武器(q)∧出售(p,q,r)∧敌意(r)→犯罪(p)…(1)
- 国家A有一些导弹。拥有(A,p)∧导弹(p)。可以使用现有实例化在两个确定的子句中编写新的常量T1。自己(A,T1)……(2)导弹(T1)…….(3)
- 罗伯特将所有这些导弹卖给了A国。 ?p导弹(p)∧拥有(A,p)→出售(Robert,p,A)……(4)
- 导弹是武器。导弹(p)→武器(p)…….(5)
- 美国的敌人被称为敌对行动。敌人(p,美国)→敌对(p)……..(6)
- A国是美国的敌人。敌人(美国)………(7)
- 罗伯特是美国人。 ……….(8)
前向链证明
步骤1:
第一步,我们将从已知的事实开始,并选择没有含义的句子,例如:American(Robert),Enemy(A,America),Owns(A,T1)和Missile(T1)。所有这些事实将表示如下。
第2步:
在第二步中,我们将看到从可用事实和满意前提中推断出的那些事实。
Rule-(1)不满足前提,因此不会在第一次迭代中添加。
规则-(2)和(3)已添加。
规则(4)满足替换{p / T1},因此添加了Sells(Robert,T1,A),这是根据规则(2)和(3)的结合得出的。
规则(6)满足于替换(p / A),因此添加了敌对(A),并从规则(7)推论得出。
步骤3:
在第3步中,我们可以检查Rule-(1)是否满足替换{p / Robert,q / T1,r / A},因此我们可以添加推断所有可用事实的Crime(Robert)。因此,我们达成了目标声明。
因此,使用前向链接方法证明了罗伯特是犯罪分子。
B.向后链接
使用推理引擎时,反向链接也称为反向演绎或反向推理方法。反向链接算法是推理的一种形式,它从目标开始并向后工作,通过规则进行链接以找到支持目标的已知事实。
向后链接的属性:
- 这被称为自顶向下方法。
- 向后链接基于惯用方式推理规则。
- 在向后链接中,目标分为子目标或子目标以证明事实是正确的。
- 这称为目标驱动方法,因为目标列表决定了选择和使用哪些规则。
- 向后链接算法用于博弈论,自动定理证明工具,推理引擎,证明助手和各种AI应用程序中。
- 后向链接方法主要使用深度优先搜索策略进行证明。
例:
在反向链接中,我们将使用与上面相同的示例,并将重写所有规则。
- 美国(p)∧武器(q)∧出售(p,q,r)∧敌对(r)→犯罪(p)…(1)拥有(A,T1)……..(2 )
- 导弹(T1)
- ?p导弹(p)∧拥有(A,p)→出售(Robert,p,A)……(4)
- 导弹(p)→武器(p)…….(5)
- 敌人(p,美国)→敌对(p)……..(6)
- 敌人(美国)………(7)
- 美国人(罗伯特)。 ……….(8)
向后证明
在向后链接中,我们将从目标谓词(Criminal(Robert))开始,然后推断出更多规则。
步骤1:
第一步,我们将了解目标事实。从目标事实出发,我们将推断其他事实,最后,我们将证明这些事实是正确的。因此,我们的目标事实是“罗伯特是犯罪分子”,因此以下是它的谓词。
第2步:
在第二步中,我们将从符合规则的目标事实中推断出其他事实。因此,正如我们在规则1中所看到的那样,目标谓词罪犯(Robert)的代名词为{Robert / P}。因此,我们将所有构成性事实加到第一层以下,并将p替换为Robert。
在这里我们可以看到美国人(罗伯特)是事实,因此在这里得到证明。
步骤3:t在步骤3中,我们进一步提取事实导弹(q),它从武器(q)推断出,因为它满足规则(5)。用q处的常数T1代替武器(q)也是正确的。
步骤4:
在第4步中,我们可以根据满足规则4的Sells(Robert,T1,r)推断出Missile(T1)和Owns(A,T1)的事实,用A代替r。因此,这里证明了这两个陈述。
步骤5:
在步骤5中,我们可以从满足规则6的敌对方(A)推断出敌人(A,America)的事实。因此,使用反向链可以证明所有陈述都是正确的。