首页 理论教育 关于信度的形式理论

关于信度的形式理论

时间:2022-02-11 理论教育 版权反馈
【摘要】:其结果是一个由字符串组成的智能体知识库的粗糙模型,字符串表示了智能体所相信的语句。正确的形式化表示是:其中 Concat 是作用在字符串上把它们的元素连接到一起的函数。没有一个表示方法是完全令人满意的,但是这些形式化方法确实允许关于有限智能体的高度受限范围的预测。

10.4.1 关于信度的形式理论

我们从智能体和“精神对象”之间的关系开始——类似于 Believes(相信),Knows(知道)和Wants(想要)之类的关系。这类关系被称为命题态度,因为它们描述了智能体对某个命题可以采用的态度。假设Lois相信某样东西——也就是,Believes(Lois, x)。什么种类的东西会是x呢?显然,x不能是逻辑语句。如果Flies(Superman)是一个逻辑语句,我们就不能说Believes(Lois, Flies(Superman)),因为只有项(不是语句)才可能是谓词的参数。但是如果Flies是个函数,那么Flies(Superman)就是可能成为精神对象的候选,Believes 就可能是智能体与命题流之间的一种关系了。将一个命题转化为对象被称为具体化(reification)[39]

这似乎给了我们想要的东西:智能体推理智能体信度的能力。不幸的是,这个方法有个问题:如果克拉克(Clark)和超人(Superman)是同一个(即Clark=Superman),那么克拉克的飞和超人的飞是同一个事件类别,即Flies(Clark)=Flies(Superman)。因此,我们必须得出结论:如果Lois相信超人能飞,她同样也相信克拉克能飞,即使她不相信克拉克是超人。也就是,

(Superman = Clark)|=

(Believes(Lois, Flies(Superman)) ⇔ Believes(Lois, Flies(Clark)))

某种意义上来说这是对的:Lois确实相信有时某个恰好被称为克拉克的人能飞。但是从另一个角度来看,这是错的:如果你问 Lois“克拉克能飞吗?”,她肯定会说不。具体化的对象和事件对第一种意义的Believes来说能正常工作,但是对第二种意义的,我们需要将那些对象和事件的描述具体化,以使Clark和Superman可以是不同的描述(即使它们指代的是同一对象)。

从技术角度而言,能够自由地用一个项置换一个等价项的属性被称为指代透明性。在一阶逻辑中,每种关系都是指代透明的。我们要将 Believes(以及其它命题态度)定义为一种关系,其第二个参数指代不透明的——也就是,无法不改变意义而用等价项来置换第二个参数。

有两条途径来达到这个目的。第一条是使用被称为模态逻辑的一种不同形式的逻辑,在这种逻辑下,诸如Believes和Knows之类的命题态度变为指代不透明的模态算子。这种方法在“历史的注释”一节中将会谈及。另一条我们将追寻的途径是,用精神对象的句法理论在指代透明的语言中获得有效的不透明性。这就意味着用字符串表示精神对象。其结果是一个由字符串组成的智能体知识库的粗糙模型,字符串表示了智能体所相信的语句。一个字符串只是一个代表符号表的复合项,所以事件Flies(Clark)可以表示为字符表[F, l, i, e, s, (, C, l, a, r, k,)],我们将它缩写为一个引用串,“Flies(Clark)”。句法理论包括了唯一字符串公理(unique string axiom),规定字符串完全等同,当且仅当它们由完全等同的字符构成。这样,即使Clark = Superman,我们仍然有“Clark”≠“Superman”。

现在我们所要做的就是为字符串表示语言提供句法、语法和证明理论,正如我们在第七章中所做的一样。区别在于我们必须在一阶逻辑内来定义它们。我们一开始先定义Den函数作为将一个字符串映射到它代表的对象的函数,定义Name函数作为把对象映射到表示它的字符串常量名的函数。例如,符号“Clark”和“Superman”表示的都是由常量符号 ManOfSteel 所指的对象,在知识库中该对象的名字是“Superman”,“Clark”或者其它常量,如“X11”;

Den(“Clark”) = ManOfSteel ∧ Den(“Superman”) = ManOfSteel

Name(ManOfSteel)=“X11

下一步是为逻辑智能体定义推理规则。例如,我们可能要说明一个逻辑智能体会使用分离规则(Modus Ponens):如果它相信p并且相信 p q,那么它也将会相信q。写这个公理的第一次尝试如下:


但是这不对,因为字符串“pq”包含字母‘p’和‘q’,但是与变量p和q的值的字符串无关。正确的形式化表示是:

其中 Concat 是作用在字符串上把它们的元素连接到一起的函数。我们将 Concat(p,“”, q)缩写为”。即,字符串内的出现是非引用的,意味着我们要用变量x的值来置换。Lisp程序设计员会把它识别为逗号/反引用算符,Perl程序设计员会把它识别为$-变量插入。

除了分离规则以外,一旦我们再添加了别的推理规则,我们就能够回答形如“给定一个知道这些前提的逻辑智能体,它能得到那个结论吗?”的问题。除了普通的推理规则外,我们还需要一些说明信度的规则。例如,下面的规则说明如果一个逻辑智能体相信某事物的话,那么它相信它是相信该事物的。

现在,根据我们的公理,智能体能够绝对无误地演绎出它的信度的任何结果。这称为逻辑全知者(logical omniscience)。已经进行了各种不同的尝试来定义有限理性智能体,它能在有限时间内进行有限数量的演绎。没有一个表示方法是完全令人满意的,但是这些形式化方法确实允许关于有限智能体的高度受限范围的预测。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈