计算机程序的“行为学”之三——行为的解构及传统方法的缺陷

来源:互联网 发布:淘宝对话整理信息 编辑:程序博客网 时间:2024/05/03 20:15
首先要说的是,因为文章引用的内容比较繁杂,还有很多我自己整理的想法和结果,为了尽量避免引用错误,并且保证内容的一致性所以要花时间去查相关资料和复查上下文,写的速度就会慢下来了,请见谅。在这个章节里我们要对行为进行一种“非精确”解构,并提出很多新定义。为了更清晰地观察这些定义的真正用途,我们会和相关的传统方法(其实有些不是非常传统拉)作比较并着重分析异同。这一章节有很多实质性的东西,换句话说有很多“体系化”的猜想和论证,所以——欢迎拍砖啦。还有就是章节会比较长,所以会分很多次,有兴趣的慢慢踩了……

事实和事物

在讨论任何事物之前,我们往往会陷于一种困境,如几千年前的古希腊先贤一样,即我们无法精确地“定义”一件事物;实际上当我们试图定义这件事物的时候,我们会发觉我们的描述中又多出来许多件没有定义过的事物。而这也是符号语言(比如:谓词逻辑)的一大缺陷:我们根本看不到A,B,C,D或者α,β,γ,δ的后面隐藏着什么,它们都是自明的。通常的做法是选择一些众所周知的参照物,然后通过比较和构造,来演绎出新的定义。

但是,事实上我们往往忽略了此在(或观察者)在整个过程中的作用,作为观察者我们和事物发生着互动、我们思考着事物的规律、我们将看似不相关的事实联系起来。但是无论如何,我们都无法窥得事物的全部细节,也无法了解事物的一切因果。“此在”这个词来自海德格尔的催眠大作《存在与时间》,定义为可以领会其本身的存在并进行思考和干涉的一种特别的存在;在考虑行为的过程时,我们可以发觉观察者必然被牵涉到行为中去,并且往往就是行为的主体。

关于观察者如何被牵涉到行为中去,我们下文会做讨论。但是如上的讨论为我们揭示了一个重要的事实:事物可以通过观察者的行为来定义。如上所述,无论多少次观察都无法揭示事物的全部细节,但是我们往往只关心和我们的行为有关的一些判据性事实,因此我们可以把事物看成是已经观察到的事实和未被观察到的事实的集合。而在使用这些事实来决策我们的行为的时候,我们往往只关心少数已经观察到的事实和可能能被观察到的事实。由此,我们得到了关于事物的第一个“非精确”定义:

事物是相关的已知和未知事实的总和。

注意这里的几个关键词,关于“相关”的事实,我们一般倾向于将它们看成一个独立的事物,但是有时候我们也把它们归于两个或者更多不同的相关事物,这里并没有明确的标准;但是要组成一个事物,这些事实之间必然存在相关性,且这种相关性不一定和观察者的目的相联系,或者观察者可能尚未意识到这种联系。这里的“已知事实”,也可以说成“已确定事实”或者“已观察到的事实”,但是“已知事实”更加确切,因为其包含了两层含义:事物在该事实的相关的“轴”上达到了一种局部稳定状态;观察者可以通过某种手段直接或间接地观察到该事实。“未知事实”则可以再细分为“未确定事实”和“不可知事实”,前者指的是观察者因为某种原因而暂时无法得知该事实的状态,后者则指的是观察者对该事实完全不具有知识或完全不知道该事实的存在。还有一点就是我这里同时使用了事实和状态两个词,其实他们在这里描述的是同一个概念,但是状态更加贴切一些,我们下面会看到。

我们可以用符号F(O, H)来表示上面的定义,其中F为事物,O为已知事实的集合,而H为未知事实的集合。这个概念并不精确,因为我们对于H具有的知识是不完整的,而H的变化可能会影响甚至破坏整个F的构成(由此可见这样的符号语言表示是不可靠的,我们在这里只是暂时用用)。

以上定义的问题在于并没有很好地描述事物状态的可变性和连续性。显然每一次观察我们都可以得到事物的一组状态/事实,但是下一次观察这些状态/事实可能又会变化。在考察过程中我们往往会关注某些事实/状态的变化规律,因而我们得到的往往是某些事实/状态的一系列观察结果;这些观察结果揭示了事物背后的状态变化规律。前文之所以说状态更贴切,是因为状态一词的含义既带有一种瞬时性和变化性;而事实一词则强调了客观存在性,虽然作为观察者的我们并不一定能够知会某些事实。

另一方面,所谓已知事实和未知事实都是相对的,对于同一个事物,不同的观察者可能得到不同的结果,这取决于观察者的能力和所在的位置。同样,同一事物在不同环境下所呈现的状态也是不同的。关于环境我们接下来讨论,现在让我们先看看事物的第二个“非精确”定义:

事物是相关的已知和未知的连续状态的总和。

关于这个定义,需要注意的是,此处的连续并非和离散相对,而是代表所有的状态都有着发展和变化的特性。由如上定义,我们可以得到观察的定义:

某个观察者在特定环境中所能够知会的某个事物的所有状态称为该事物在该环境下对于该观察者的一个观察。

此处环境可以看成和事物的状态相关但是没有被涵盖进该事物的所有其他事实/状态,但是实际上我们也可以把一些暂时无关的状态/事实也归为环境,毕竟对于观察者来说某个外部状态和事物是否一定不相关总是值得商榷的。

和上面一样,我们用一种特殊的符号语言来表示事物和环境以及观察者的关系,其形式为:

{E, V}F(O, H)

此处E为环境状态的集合,V为观察者的集合。符号├同样是借用的(抱歉我用了制表符,但是在知识表达和人工智能领域这个符号应用还是比较广的)。关于E没有更多可说的,只是需要注意环境状态也分成已知和未知的,所以我们也可以把上面的形式改写成:

{(Eo, Eh),V} F(O, H)

关于观察者集合,在实际生活中我们习惯于只有一个观察者的情况,但是实际上在我们研究问题的时候往往假设不止一个观察者。并且这种假设是隐式的,我们在描述问题的时候不会提到,在解决问题的时候也不会去想,似乎这是理所当然的。很典型的一个例子就是我们先前看过得泥孩子问题,每个孩子的心理状态当然只有这个孩子自己才能够了解,因此此处所有的孩子都是观察者,而每个观察者又被强制不与其他观察者交流,因此这里的知识只可能来自一个观察者的集合而不是某一个观察者;当然我们可以想象这里有一个人和每个孩子进行私下的一对一交流,从而了解了所有孩子的想法,并且他在交流过程中是纯粹被动的,但是这个假设的问题在于这种交流是要花费时间的,而在交流过程中孩子们肯定会作进一步思考;当然我们还可以假设孩子们在交流的时候完全不思考问题,只是表述之前想到的结果,这种假设很不切实际但是又很有效,实际上我们在讨论很多问题的时候都在做这种假设。

由上面的讨论我们可以发觉观察者集合和观察者相比存在着知识分布的不均衡性,不同观察者所具有的知识会通过时间传播到所有的观察者那里(除非这种交流是被禁止的)。而在讨论很多问题的时候,我们都会假设存在一种“通用观察者集合”,这种特别的观察者集合存在如下两个特点:集合中包括了所有的观察者,集合中的观察者互相交流不需要时间。这样所有的观察结果就可以在第一时间为所有的观察者所知。

看过了观察者集合的问题,独立观察者还有一个很大的问题就是观察结果和当前状态的不一致性,换句话说观察者在观察到状态(或者经过思考而了解到事物的内在状态)时,被观察的事物的状态已经变化了。这种情况在物理学特别是量子力学上非常常见,但是在讨论实际问题的时候,我们会做某种程度上的假设,即观察者得到某些比较初级的观察结果的时间是可以忽略的,但是进一步思考仍然需要时间;这里的界定其实比较难,什么样的结果才是初步的观察结果呢?在讨论思维模式的时候我们会有一个相对有效的界定,而这里让我们秉承一个简单的原则:具体问题具体分析。如果我们假设观察者得到我们需要的观察结果的时间是可以忽略的,则我们称这样的观察者为“瞬时观察者”

在“通用观察者”和“瞬时观察者”的前提下,我们可以保证所有的事实都在第一时间被获取,因此我们可以将上面形式中的观察者部分去除,从而得到:

EF(O, H),或者(Eo, Eh) F(O, H)

在接下来的讨论中,如果没有特殊说明,这个形式将是事物的一般符号表示形式。但是如前文已经提到的,这种形式不是很完善,主要是因为符号语言无法很好地表达事实及其关联,因而我们在描述构成事物的那些事实/状态的时候会显得手足无措。下面就让我们来看看传统方法里是怎么做的。