员工心理活动的突变与模拟模型(txt+pdf+epub+mobi电子书下载)


发布时间:2020-09-08 05:22:25

点击下载

作者:胡斌,朱侯,赵旭

出版社:清华大学出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

员工心理活动的突变与模拟模型

员工心理活动的突变与模拟模型试读:

前言

人的心理计算模型,可视为在网络环境下管理学、社会学和经济学等领域一切理论与应用研究的基础,其原因有以下几点。(1)不同于自科、工程等领域所面向的物理系统,管理、社会和经济系统是人物混合的,对这些系统做研究,如果不考虑人的因素,那么这些研究就是理想化的、脱离现实的。(2)目前在这些领域,人们已经开始重视人因素的研究了,但多数都停留在人的行为层面上,如行为运作管理、群体行为模拟等,缺乏从心理学底层入手来研究人的行为,是漂浮在面上的研究,难以得到深层次的发现。(3)随着网络在人们日常工作生活中的普及和深化,人的心理活动比传统环境下更具有节奏快、极化、突变、非线性等复杂特征,具有线性、静态、线下等特性的传统统计学研究方法,显然无力揭示网络环境下人的内心心理的复杂性发生和演化机制。(4)互联网、物联网的普及和深化,导致人们今后工作生活在人工智能型的环境之中,传统管理理论与方法终将被颠覆,新的管理理论方法的开发与运用,要依赖于人的心理-行为规律的快速计算与把握。

为此,欧美已有大量学者致力于人的心理活动计算的研究,除了人格(Personality)、智商(IQ)等测量以外,在认知(Cognition)、情绪(Emotion)等的计算模型上,早已有丰硕的成果,这些成果在人-机对话的电脑界面上运用,甚至对机器人进行拟人化运用。但是,由于人类心理活动的复杂性,这些心理计算模型面临着两方面难处。(1)要想用已知的数学、图形等符号模型穷尽对心理活动细节的描述,这是不可能的。(2)同一个心理计算模型,在一个环境下适用,换了另一个环境往往就会失效。因此,欧美已有的心理计算模型表现出如下三方面特点。(1)用描述性的框架来表达心理计算模型,为后来的学者留下发挥的空间,即基于这些基本的框架,面向不同的研究对象建立不同的模型。(2)用简单的算数运算方法来建立心理计算模型,以避免用复杂方法建立的模型太离谱,以及复杂模型不易验证的问题。(3)用人工神经网络来建立心理计算模型,这是因为人类心理活动太复杂,只能将之视为黑箱。

显然,这些模型和方法停留在对心理活动的观察层面,没有从心理活动的内部机制入手。

人的心理活动是人的内部和外部各种要素的综合作用过程,这些要素又是分层次的,因此人类的心理活动是一种非线性动力过程,突变论是这种非线性动力学的典型代表。根据已有的实验发现,人类和动物的认知、情绪、员工的工作倾向等心理活动,都具有突变性,但这些研究都没有建立突变数学模型。

同时,人的心理活动又是随时间、环境而变化的,而已有的从观察层面建立起来的心理计算模型,是不考虑时间维度的静态模型。

为了解决上述不足,本书研究人的心理活动的突变模型和模拟模型的建立方法及其应用,形成了如下四个方面的特色。(1)对个体人的心理活动建立尖点突变模型。已有心理学领域的突变论应用的做法是,要么实验证明人的心理活动具有突变现象,要么将突变论作为理论依据或概念模型,来指导实证研究(如指导调查问卷的设计)。本书则是直接建立尖点突变模型(即数学模型),包括两个连续变化的控制变量的选择和数学模型中的参数的拟合。(2)尖点突变建模中其他方法的集成应用。由于心理活动的要素属于人文社科和自然科学交叉范畴中的概念,难以用定量的值来表达,因此,本书运用定性模拟、模糊数学及其他方法来处理这些要素,并参与到尖点突变模型的建模过程中。尖点突变模型的推演也利用了定性模拟方法。(3)将定性的心理学理论转化为定量的模拟模型。传统的心理学理论或模型,多为文字描述或简单的图形说明,这显然是静态的概念模型,本书则将它们转化为Agent模型和多Agent模拟模型,使心理学理论成为随时间推演的动态理论、或参与到其他心理活动的计算模型建模。(4)将心理计算模型嵌入其他运作模型。为使心理计算模型在其他计算环境中推广,本书以业务流离散事件模拟过程为例,介绍了心理计算模型与其他运作模型之间的嵌入方法,这为进一步实现心理计算模型嵌入运筹优化模型、嵌入动态网络分析软件、嵌入游戏软件、嵌入军事作战仿真体系、甚至嵌入机器人等打下基础。

总之,本书对网络环境下以及将来人工智能环境下,管理、心理、社会、人工智能等学科的建设与发展,以及各类社会组织(包括权利组织、营利组织、非营利组织等)的管理、各类行业的管理以及军事领域的培训和仿真等实践活动,具有广泛的理论意义和现实意义。

本书受国家自然科学基金项目“基于系统模拟、心理学和突变论的企业管理组织性能测试研究”(No. 71071065)的资助。第1.1.3节、第9、第10、第12、第14章由朱侯博士完成,第8章由赵旭博士完成,其余各章的撰写以及全书的统稿都由胡斌完成。其中,第4、第7章由徐岩博士提供材料,第1.2.2、1.2.4节分别由硕士研究生田蒋博宁、黄传超提供了翻译支持。

在本书的撰写过程中,我们也得到了南京师范大学心理学院余嘉元教授在心理学理论上的指导、美国卡耐基梅隆大学社会与组织系统计算分析中心(CASOS)主任Kathleen M Carley教授在计算组织理论、方法与工具上的支持。清华大学出版社为本书的出版做了大量工作。在此,我们对所有帮助过我们的组织和人士致以衷心的感谢。

由于我们的水平有限,不妥甚至有争议之处在所难免,为了我国计算组织学事业的发展,恳请广大读者不吝赐教。胡斌2014年4月于华中科技大学Part 1 绪论体心理活动是内部心理、外部环境因素之间交互的过程,为了建立该个过程的突变和模拟模型,本部分先分析各因素及其交互过程的特征,并建立概念模型,然后介绍常见心理活动的计算模型及其特征,最后分析现有计算模型的不足。第1章 绪论1.1 个体心理活动模型1.1.1 心理活动的特点

管理系统或社会系统中的个体人可以从两个层面进行分析,即处于上层的行为表现和处于底层的心理活动。个体的行为表现来源于其心理活动,而心理活动是个体的各类心理因素、个体所处外部环境因素等相互交互的过程。如图1.1所示,大方框代表个体人,上面的小方框代表其行为表现,其中的椭圆代表该人的某项具体行为表现;下面的大方框代表其心理活动,其中的小方框代表子心理活动,圆形代表心理因素或环境因素。图1.1 个体心理活动-行为表现示意

具体的行为表现,在管理系统或社会系统中就是各种特定任务及环境下的决策选择,相应涉及的心理因素、环境因素也不同。

心理活动,就是各项心理因素、环境因素之间的交互过程,如图1.2所示,该过程有三个层次。图1.2 个体心理活动的层次

底层是人格特质,用椭圆表示为相对恒定的值,即它不随环境而变化,是人一生中基本固定的东西,是任何心理活动的基础。中层和上层用长方形表示心理活动。

中层是认知心理活动,它是所有其他心理活动的起始,即人的任何心理活动,基本上都是先经过认知心理活动以后才开始的。认知心理活动直接受外部环境的影响,但其活动结果取决于该人的人格特质。

上层是所有其他心理活动,如情绪、需求、动机、风险偏好等,它们都是基于认知心理活动的结果的,但更基于人格特质。在相同的外部环境下,不同人格特质的人会表现出不同的心理活动。

而心理活动(即图1.2中长方形表示的认知心理、其他心理)的发生机制,又包括两种类型:快速响应机制和精细计算机制。快速响应机制是人对外部刺激的本能反应,是不假思索的快速反应。在管理或社会系统中,也指人在如下三种条件下的随大溜行为选择。(1)信息收集不全;(2)需短时间内做出决策;(3)周围大部分邻居都有明确的行为表现。

与之相反,精细计算机制是在信息收集全面、时间充裕条件下由相应的心理学理论驱动的过程,如情绪理论、需求理论、动机理论等。

但不管哪种机制,为了研究心理活动规律,都要先建立起心理活动的模型。可以通过如下步骤来建立心理活动的概念模型。1.1.2 心理活动的概念模型

1. 确定研究对象

研究对象有两种情形,一是行为表现,如图1.1所示上面的小方框,比如群体中个体的跟从行为、经济系统中个体的购买行为或采纳行为等;二是某个心理因素,如图1.1所示下面大方框中的小方框即某项子心理活动,比如个体的自我效能感、情绪等。

2. 分析组成要素

一旦确定了研究对象,就对影响该对象的要素、或者该对象的组成要素进行分析。如果研究对象是行为表现,就要分析它受哪些子心理活动、心理因素、环境因素影响;如果研究对象是某项子心理活动,就要分析它有哪些心理因素、环境因素参与。比如人格模型,西方学者将人格的组成要素分为五类,并阐述各类要素的含义、衡量尺度等,而我国学者将其分为七类。

3. 建立定性模型

对于研究对象与影响因素之间的关系,任何心理学理论都是难以建立起确定的、定量的数学模型的,这是由于人与人之间的差异、环境、情景的不同等造成的。因而,心理学的模型多以因果关系的定性模型的形式表达出来。

4. 测量心理与行为

定性模型是一般性的模型,如果针对某个特定个体人、环境、情景,则可以采用心理与行为测量方法(主要是实验和统计方法),测量变量(即各个因素)的取值刻度(scale),测量各因素之间因果关系的强弱。

从管理系统的运行特点、计算方法的要求等角度来看,上述概念模型的建立过程,有两个特点,即定性的和静态的。(1)定性特点。

心理活动的概念模型主要是用定性的方法来描述,如因果关系图;甚至用一个概念、观点这种文字性的描述,如前景理论的五个核心概念。

而管理领域的计算方法都是定量化的数理模型方法,如何在定量模型或方法中表述定性的描述性的东西?

心理与行为测量将它们定量化,但这种定量是特例,是对特定的人在特定的情景下某一个时点的测量所得。它突显了心理学理论或模型的静态性。(2)静态特点。

在现实社会中,人的心理属性是随时间和环境波动的,随着时间的推移、环境的变化,原先测量的结果可能会失去意义,需要重新测量。

因果关系图以及实证研究方法中的结构方程,只表达了要素之间的静态关系,无法揭示要素之间动态化的动力机制。在现实场景,要素之间很难说清谁为因、谁为果,而是互为因果关系的,这就是反馈的本质含义。反馈的存在,使得管理和社会系统成为一个非线性系统,而结构方程的路径图没有反馈回路的表达,结构方程是一种线性方程的表达。1.2 个体心理活动的计算模型1.2.1 计算模型及其类型

心理学领域的计算模型,指运用符号方式表达人的心理活动或行为表现等基本机理的方法。可以将其分为如下四大类。(1)描述性模型。主要指基于逻辑规则的模型,最常见的逻辑规则表达方式为IF-THEN产生式规则,从这一点也可看出,描述性模型离“计算”的本意较远。它对心理活动计算建模的贡献主要在于提供建模框架。心理计算模型中最著名的框架为BDI建模框架,用以描述从人对内外环境感知到的信息(Belief),以及人的期望(Desire),到某种意向(Intention)形成的逻辑关系。(2)算术运算模型。这是指加减乘除式的算术运算、或算法程序式的伪代码。这种方法在心理学和管理学、社会学等领域的软计算方法中大量存在,但要求变量之间的量纲保持一致。(3)网络模型。即运用结点加连线的网络模型,如联结主义模型和贝叶斯网络模型。前者主要是运用人工神经网络来表达人的心理活动过程,这些神经网络模型模仿人脑的计算和存储方式。后者是运用贝叶斯定理的推理定理来模仿人的心理活动过程,它假设人们的学习BDI分别为信念(Belief)、期望(Desire)与推理大致遵循贝叶斯定理的推理原理。(4)动态系统模型。该类理论和方法认为,人的心理过程形成了一个动态系统(Dynamical System),具有反馈、双向因果关系、迟滞、分叉、多态等动态系统特征,所以,能表达动力学机制的数学模型、系统模拟方法等是其主要建模工具。

下面介绍比较成熟的计算模型,包括BDI框架、认知模型和情绪模型。1.2.2 BDI模型

BDI分别为信念(Belief)、期望(Desire)和意向(Intention)的含义。这些概念源于亚里士多德关于人类(和动物)如何选择行动的分析,即生物体内部(心理)属性的变化如何导致其外部行动的发生:有三件事情控制着行动,即感觉(Sensation)、推理(Reason)和期望(Desire)。

其中感觉是生物体对环境的感应,用现代术语来说就是信念。推理指理性地选择一个行动,以实现既定的期望。这就是亚里士多解释行动选择的三段论:

如果A有一种期望D,并且A有一种信念,认为选择行动AC是实现期望D的一种(或最好的)方法,那么,A就会选择行动AC。

BDI模型运用了这样的推理模式,以解释行为发生的原因,即先是从信念和期望产生出意向,再从意向产生出行动。这就是如图1.3所示的两阶段BDI模型框架。图1.3 BDI模型示意

图1.3中,方框表示Agent(即个体人的代理体)的边界,圆圈表示Agent的属性状态,箭头表示属性状态的产生过程,即一种属性状态导致另一种属性状态的产生。在这个模型中,当Agent有意向(Intention)选择这个行动(Action),并且Agent从外部观察中获得了如下信念(Belief in Reason):在外部环境中存在选择该行动的机会,那么,这个行动才会被Agent选择。信念是从对外部的观察中获得的。当Agent持有某个期望(Desire),并且从外部观察中获得了如下信念:选择了该行动才能实现这个期望,那么,意向就会形成。

上述过程,可以用如下规范形式的规则表达:

Desire(D)^belief(B1)→intention(AC)

intention(AC)^belief(B2)→performs(AC)

其中,“^”代表操作符“and”。在具体应用中,该规范形式多以如下半规范形式表达:

At any point in time

 If desire D is present

 and the belief B1 is present

 then the intention for action AC will occur

At any point in time

 If the intention for action AC is present

 and the belief B2 is present

 then the action AC will be performed1.2.3 认知模型

针对个体人的认知过程,Ron Sun等开发了CLARION模型,其主要目标是建立一个具有与认知各个方面对应的参数可调的模型。过去的认知模型纯粹依赖于数学表达或技术因素,往往不能体现认知的机制。CLARION模型则较好地反映了认知活动的过程,CLARION通过调整模型参数来观察认知参数的变化对认知活动表现的影响。

CLARION模型是一个具有双重表达结构的认知模型,包括两个层次:显性学习的顶层和隐性学习的底层(图1.4)。而其中每一层都有专门的表达和运行机制,且都分为两个子系统:行动中心系统和非行动中心系统。行动中心系统可以直接影响行动,即认知系统能直接从人的行动中获得经验,也能直接指导人的行动。而非行动中心系统只能间接影响行动。学习可以是自底向上的,在这种情况下,知识最开始是被隐性学习获得的,然后成为显性学习的基础;学习也可以自顶而下,在这种情况下,知识是被显性学习先获得,然后作为隐性学习的基础。图1.4 CLARION构架

在CLARION两大层次的学习机制方面,底层通过亚符号(物理信号,而非数据符号,比如通过神经网络对人脸进行识别,计算机程序并没有对“脸”的长宽和每个部位进行严格定义,而网络自己演化出了对脸的抽象定义,使机器能够像人一样对“脸”进行抽象识别),以分布式表达的方式来进行隐性学习,通过强化学习(即Q-learning)和反向传播的组合,来提高有关状态/动作组合(x,a)的评估值。强化学习作为一种模仿人类学习过程的算法,实现了人类思维过程中大脑神经网络的反向传播机制,这使得底层的学习以试错方式进行。除此以外,其他的认知表达和学习方法还包括贝叶斯网络、隐藏式马尔科夫模型和模拟退火模型等。

在顶层,显性学习可以通过符号表达来获得,其中每个符号元素是离散的并且都有一个明确的含义。顶层的学习首先将底层的成功的行动经验视为一个规则,然后精炼该规则或者将该规则普遍化,主要就是利用“信息增益”方法。

依据上述CLARION模型的结构及其学习机制,CLARION模型的基本运行过程见图1.5。图1.5 CLARION模型的基本流程(1)观察当前状态x,即系统所面临的情景。(2)底层计算适合当前状态x的所有可能行动(a,i=1,2,…,in)的效果的估计值Q(x,a)。i(3)顶层根据当前状态x和规则,找出所有符合顶层规则的行动(b,j=1,2,…,m)。j(4)把可能的行动a和顶层所有可能行动b的Q值进行比较,选ij择Q值最大的行动作为将采取的行动,假定为a。i(5)执行行动a,并观察该行动的结果,即系统在行动a作用下ii由状态x变成的新状态y和强化值r。(6)基于反馈信息(状态y和其强化值r等),更新底层的知识,具体方法见Q-learning-Backpropagation算法基本原理的解释部分。(7)利用Rule-Extaction-Reinforcement算法更新顶层的知识,对规则进行普遍化或特殊化,具体方法见Rule-Extaction-Reinforcement算法的原理部分。(8)回到第一步。

底层的Q-learning-Backpropagation算法基本原理如下。一个Q值是在给定的状态x时一个行动“效果”的估值:Q(x,a),该值表明在状态x时行动a的效果,行动基于Q值进行选择。Q值计算使用加强学习的算法:ΔQ(x,a)=α[r+γmaxQ(y,b)-Q(x,a)]b

这个式子中x是当前状态,a是一种行动,r是及时的回馈(强化),y是下一个状态,γ是折扣因子。ΔQ(x,a)提供了强化学习中反向传播机制需要的误差信号,也就是说在每一步最小化错误:

顶层的Rule-Extaction-Reinforcement算法的基本原理如下:顶层是以一个简单的前置规则进行显性学习。如果由底层决定的行动成功,系统会根据成功的行动提取出一种规则,并且添加该规则到顶层;然后,系统多次应用该规则,如果应用结果成功,系统试着泛化规则的条件使之更普遍化,否则系统就缩小条件范围来把规则特殊化。下面具体从系统如何普遍化或特殊化该底层规则的角度阐述。

在决定普遍化还是特殊化底层提取的规则之前,系统需要在多种不同的状态下应用该规则多次,进而在每一阶段所得的Q值基础上计算信息增益(IG)。不等式γmaxQ(y,b)+r-Q(x,a)>thresholdbRER

决定了每阶段行动的极性(积极或消极)和该规则是否适合当前阶段的状态。当前行动的极性大于临界值threshold时,相当于一RER个行动成功,即该规则适合当前状态。然后,对多次应用该规则的结果进行统计,对PM(规则适合该状态)和NM(规则不适合该状态)的次数进行更新,并计算IG,见下式:

这个式子中A和B是两种不同的状态,但导致了同样的行动a。IG的值代表了对A和B两种输入状态下该规则成功应用的概率的一种比较。

是否进行普遍化操作是基于IG测量的。普遍化意味着增加一个输入值给规则的条件,使得规则在更多的情景中适用。为了使规则普遍化,必须满足以下条件:IG(C,all)>threshold and maxIG(C′,C)≥0GENC′

其中,C是这个规则当前的条件,“all”是指匹配全部规则的条件,C′是修正条件,即向C加上一个输入值。此时,C′是该规则的输入条件,相对于C变得更加宽泛。

如果从底层提取的规则不能满足上述条件,则对该规则进行特殊化处理,即对该规则的输入条件进一步具体化。特殊化操作会用一个与普遍化操作类似的方式工作,不过会舍弃输入值,而不是增加。1.2.4 情绪模型

1. 情绪的概念

人的情绪分三种类型:情绪(emotion)、心情(mood)和人格(personality),分别对应短期、中期和长期情绪。

短期情绪(emotion)指人的情绪持续几秒钟或几分钟,这类情绪通常与引起它的原因有关,原因一般是一个特定的事件、行为和对象等。而且这些情绪在产生之后通常会衰退,不再为个体人所关注。

中期心情(mood)指持续几个小时或几天,这类情绪通常与具体的事件、行为或者对象无关,比较持续稳定,它对人们的认知能力有着很大的影响。

而长期人格(personality)指该人的某种行为倾向保持长期的稳定,反映了心理特征上的个体差异。大五人格模型用来表达长期情绪,它通过开朗、责任、外向、亲和与神经质这五个维度的特征来定义人的人格。

因而,情绪通常会消失退化,心情会有一个稍持续的状态,并对人的认知过程产生很大影响。而人格反映的是人与人之间在精神(mental characteristics)上的差异。情绪可以分为两类:一是显现的行为表达(包括人的面部表情、人的运动及姿势,以及机器人的行为选择等),二是不显现的影响力,该影响力作用于人的注意力、感觉、认知与决策。情绪效果的计算模型可嵌入到其他软件或硬件系统,以表达用户的情绪信息。下面我们只介绍情绪(emotion)的计算模型。

Damasio根据神经生理的发现,认为有两种情绪,即primary和Second情绪。Primary情绪是对外部刺激的即刻反应,而Second情绪则是认知过程的结果。Goleman将primary情绪分为8个类,即愤怒、悲伤、害怕、喜悦、爱、惊讶、厌恶和羞耻,并认为所有的情绪属于这些类别中的子类。

2. 情绪计算的基础理论

情绪计算模型的建模基础为空间情绪理论和评价理论。(1)空间情绪理论

任何情绪都可以用一个连续的、具有内涵意义的三维空间来表示:总体效价信息的Pleasure/Valence(P)、情绪的主观积极性程度的Arousal(A)和描述情绪操控能力的Dominance/Power(D)。这三个维度表示的抽象空间称为PAD空间。(2)评价理论

在情绪计算领域,最成功的评价模型是Ortony和他的同事们提出的OCC模型。该模型具有三种触发机制、及其相应的响应即情绪表现,包括:事件(基于事件的情绪,例如愿望、希望、害怕)、他人的动作(归因情绪,例如愤怒)和物理对象的特征(吸引情绪,如喜欢、不喜欢)。

一个基于OCC的评价模型的运行过程,就是个体人对其所处当前环境做出认知评价的过程:该人根据别人或物理对象的事件、动作和特征,表达出相应的情绪,情绪以效价(Valence)的值的大小来表示。例如,该人对一个事件的发生会开心或者不开心,对于一个物理对象会喜欢或不喜欢,对于他人会赞成或者不赞成。

3. 情绪的计算模型

最早对情绪和情绪动力过程建模是设计具有情绪的虚拟人。在这项工作中,情绪建模包括评价(appraisal)、复制(coping)两个过程,前者就是评价该人所面向的环境:事件、动作和对象,后者则根据评价的结果从案例库中提取对应的情绪,这种表达框架多采用if-then的形式。

基于评价模型,人们已经在很多领域建立了情绪的计算模型。下面从应用领域、理论、方法论这三个方面,介绍ALMA模型和PE模型。

4. ALMA模型

即情感的分层模型,用于拟人对话过程,如虚拟训练、便携式个人指导、交互式小说、叙事系统,还有电子商务应用、电子产品的人机界面等。该模型的设计是基于OCC评价模型与大五人格模型。

ALMA模型有三个层次的情绪:短期情绪(emotion)、中期情绪(mood)和长期情绪(personality)。

ALMA运用了空间情绪理论来计算这三种情绪在三维空间中所处的位置,计算过程采用OCC模式,并将大五人格模型中的人格信息参与到情绪的计算中,并认为计算所得的情绪值是逐渐退化的,退化过程用退化函数来描述。

具体说来,三维空间由pleasure(P)、arousal(A)和dominance(D)所搭建,该PAD情绪空间对于每个坐标轴的范围是从-1到1。

在三维情绪空间的每个坐标轴上,情绪由以下分类来描述:+P和-P表示愉快与不愉快,A与-A表示激励与不激励,+D与-D表示支配与服从。通过这种分类法的划分,PAD情绪空间的八个卦限可用表1.1来描述。表1.1 PAD情绪空间的情绪卦限

大五人格因子模型参与情绪计算的公式为愉快=0.21×外向+0.59×亲和力+0.19×神经质激励=0.15×开朗+0.30×亲和力-0.57×神经质支配=0.25×开朗+ 0.17×责任+0.60×外向-0.32×亲和力

例如,某个人的大五性格特征值为:开朗=0.4、责任=0.8、外向=0.6、亲和力=0.3、神经质=0.4,那么通过计算,该人的情绪值为:愉快=0.38、激励=-0.08、支配=0.50,表明该人具有比较温和的情绪。

5. PE模型

PE模型即Personality and Emotion Model。该模型在计算情绪时,也要将人的人格值考虑进去,由于人格是一种长期的情绪,在该模型中,人格是不变的,并且在t=0时被一组数集初始化。情绪状态是动态的,它在t=0时被初始化为0。因此用p代表人格,e代表t时刻的情t绪状态。

对于人格的表达,仍采用大五模型,因此人格有5个维度(开朗、责任、外向、随和与神经质),每一个维度都用区间[0,1]中的值来表示,数值1相当于人格中的维度的最大的存在。因此个体的人格可以用如下向量来表示:

对于情绪的表达,仍采用OCC模型定义的情绪,情绪状态和人格有着相似的表示结构,但是它随着时间的变化而变化。因此,定义情绪状态e为一个m维的向量,这里所有向量的m个取值都用区间t[0,1]中的值来表示。取值为0的维度相当于一种情绪的缺乏,而取值为1的维度相当于一个情绪表达最强烈。这个向量用如下公式表示:

随着评价信息的输入(即运用评价模型OCC来获得评价信息,记为向量a),这个信息随即被用来更新情绪状态。其值域为区间[0,1],它包含了m个情绪中每一个情绪的预期改变的强度:

基于此,情绪状态可以用一个函数Ψ(p,ω,α)来进行更新,t这个函数基于人格p、此时的情绪状态历史记录和评价信息a。

情绪更新也用另一个函数Ω(p,ω)来进行,Ω(p,ω)表etet示该个体的内部变化,比如情绪状态的衰退。考虑到这两部分的更新,新的情绪状态e+1的计算模型为te=e+Ψ(p,ω,α)+Ω(p,ω)t+1ttet1.3 计算模型的缺陷分析

针对上述BDI、认知和情绪等计算模型的特征,分析它们的不足之处如下。

1. 心理因素的取值及其值域

心理因素的取值都是连续的数值,但在现实社会,人的心理和行为表现得更多的是离散状态,用太详细的自然数值来表达人的心理和行为是没必要的,比如,某个人的幸福(happiness)取值0.5或0.55,当我们说该人的幸福大小处在中等水平时,0.5和0.55是没有区别的,因此,模糊量词如“高”、“中”或“小”更适合于描述心理因素的取值。

同时,自然数值包含信息的能力也远不如多元组变量。比如,QSIM中的定性变量由三个成员组成,即变量的水平、变量的变化方向和时间。当这样的变量描述人的心理因素时,显然比自然数值所能表达的信息要多许多。

2. 心理因素的状态

如上所述,心理因素是有状态的,在现实社会中,人们更关注的心理因素的状态为:稳定状态或非稳定状态。比如,对大多数人而言,中等水平的情绪是稳定的,高或低水平的情绪是不稳定的,也就是说,心理因素多为多态的。描述一个人的心理因素时说从一个状态转移到另一个状态,远比说其值从0.3变为0.6要有意义得多。

同时,在目前已知的心理计算模型中,没有涉及心理因素在不同状态之间转移的机制。在社会心理领域,一个人的心理因素或行为表现从一个状态向另一个状态的转移,是服从阶梯函数规律的。比如,在一个人的行为发生突变前,要经历预警、警戒和突变这三个状态,这样的规律难以用数值来表达。

3. 算术运算

心理因素之间的因果关系,被表达为算术公式。比如,在ALMA模型中,

Pleasure=0.21·Extraversion+0.59·Agreeableness+0.19·Neuroticism

在PE中,情绪的更新被表达为e=e+Ψ(p,ω,α)+Ω(p,ω)t+1tetet

但是现实社会中有两种现象,其一,心理因素之间的因果关系是随时间而变化的,这取决于该人所处的情景,当他是一个人并处于一个朴素的环境中时,算术公式可以表达心理因素之间的因果关系。而当他处于一个群体中时,其心理因素变化的轨迹就无法用算术公式来计算。其二,心理因素之间的因果关系是一个动态系统,即其中包含有回路和时间延迟。回路意味着心理因素之间是交互影响的,时间延迟意味着当一个要素影响另一个要素时,另一个要素不会当即发生响应,而是过一段时间才响应。

4. 时间

物理系统中的自然时间是均匀运行的,但在管理系统与社会系统中,时间的推移不是均匀向前的,因为社会时间是人们感知到的东西。在很多情况下,时间过得比自然时间快,这是因为某些心理因素在快速变化。有时,人们感到时间不存在了,这是因为某些心理因素发生了突变。但在另外一些场合,时间又过得特别慢,不管时间过得多久,心理因素基本没有变化,这也意味着心理因素处于稳定状态。

因此,在心理活动计算模型中,应该有一个部件,即时间管理器,就像离散时间模拟方法中的下次事件推移法则,模拟时钟的推移遵循下次事件的发生,这个规则推动了整个模拟模型的运行。

5. 动态性

心理活动中各心理因素之间的交互,是双向的因果关系,这也是社会心理学现象的一个根本特征,即变量之间存在多重反馈回路,这导致心理活动呈现出动态系统特征:(1)某个心理因素发生变化时,可能不是外部环境因素造成的,而是自己内部其他心理因素造成的;(2)当外部环境因素发生一个轻微的变化,可能会引起内部某个心理因素的显著变化;(3)当外部环境因素发生一个较大变化时,也可能对内部心理因素没有任何影响。但从已有的计算方法中,还看不出来有什么办法能够表达这些动态性特征。

本书通过突变论和系统模拟两种方法来解决上述不足,建立心理活动的突变模型,可以表达心理活动中的心理因素的多态性、动态性,避免采用简单的算术计算方法。建立心理活动的系统模拟模型,可以表达心理因素在内部和外部不确定条件下随时间推移的动态性特征。参考文献

[1]Gigerenzer G,Swijtink Z,Porter T,etal.The empire of chance[M].Cambridge,UK:Cambridge University Press,1989.

[2]Hacking I.The emergence of probability[M].Cambridge,UK:Cambridge University Press,1975.

[3]Bosse T,Memon Z A,Treur J.A recursive BDI agent model for theory of mind and its applications[J].Applied Artificial Intelligence,2011,25:1-44.

[4]Sun R.Cognitive science meets multi-agent systems:A prolegomenon[J].Philosophical Psychology,2001,14(1):5-28.

[5]Sun R,Slusarz P,Terry C.The interaction of the explicit and the implicit in skill learning:A dual-process approach[J].Psychological Review,2005,112(1):159-192.

[6]Sun R,Peterson T.Autonomous learning of sequential tasks:Experiments and analyses[J].IEEE Trans Neural Networks,1998,9(6):1217-1234.

[7]Jensen F V.An introduction to bayesian networks[M].NY:Springer-Verlag,1996.

[8]Rabiner L.A tutorial on hidden markov models and selected applications in speech recognition[C].Proceedings of the IEEE,1989,77(2):257-286.

[9]Watkins C.Learning with delayed rewards,PhD Thesis[M].Cambridge University,Cambridge,UK,1989.

[10]Gebhard P,Kipp K H.Are computer-generated emotions and moods plausible to humans[C].The 6th International Conference on Intelligent Virtual Agents,California,USA,2006.

[11]Gratch J,Marsella S.A domain-independent framework for modeling emotion[J].Journal of Cognitive Systems Research,2004,5(4):269-306.

[12]Ruttkay Z,Pelachaud C.From brows to trust,evaluating embodied conversational agents[M].Kluwer Academic Publishers,2004.

[13]Morris W N.Mood:The frame of mind[M].New York:Springer-Verlag,1989.

[14]Hudlicka E.What are we modeling when we model emotion[C].The 2008 American Association for Artificial Intelligence(AAAI)Spring Symposium,2008,January.

[15] Damasio A R.Descartes' error:Emotion reason and the human brain[M].Putnam Berkley Group,Inc,1994.

[16]Goleman D.Emotional intelligence[M].New York:Bantam Books,1995.

[17]Gehm T L,Scherer K R.Factors determining the dimensions of subjective emotional space[M].In Scherer K R(Eds.),Facets of Emotion Recent Research,Lawrence Erlbaum Associates,1988.

[18]Ortony A,Clore G L,Collins A.The cognitive structure of emotions[M].NY:Cambridge,1988.

[19]Arnold M.Emotion and Personality[M].NY:Columbia University Press,1960.

[20] McCrae R R,John O P.An introduction to the five factor model and its implications[J].Journal of Personality,1992,60:171-215.

[21]Kuipers B J.Qualitative simulation[J].Artificial Intelligence,1986,29:289-338.

[22]Bandura A.The self system in reciprocal determinism[J].American Psychologist,1978,33:344-358.

[23]Brehm S S,Brehm J W.Psychological reactance:A theory of freedom and control[M].New York:Academic,1981.Part 2 基本建模原理诸多系统模拟方法中,针对非线性涌现现象的多Agent模拟,以及能够在处理不完备信息的定性模拟,更适于个体人的心理活动建模。在数学模型(含算术运算)方法中,突变论模型更能表达个体人心理活动的诸多非线性特征。本部分介绍多Agent模拟、定性模拟和突变模型的原理,它们是本书心理活动建模的基本方法。第2章 多Agent建模与模拟2.1 多Agent建模与模拟2.1.1 基本原理

基于多Agent的建模与模拟在社会科学领域最早应用,是从一系列经典的论文发表开始的,如《Models of Segregation》、《On the Ecology of Micromotives》(微观动机的生态学)以及《Dynamic Models of Segregation》(种族隔离动态模型)。还有在后来的《Micromotives and Macrobehavior》(微观动机与微观行为)一书中,认为当代文化中的很多主题都涉及基于Agent建模、社会复杂性、以及经济与社会进化等的问题。

随后,多Agent的建模与模拟被冠以很多不同种类的名称,如社会仿真、人工社会、生态学中基于个体的建模、基于智能体的计量经济学(ACE)、基于智能体的计量人口统计学(ABCD)等。

多Agent的建模与模拟的特点是面向“涌现”的,即系统宏观现象是由其底层微观对象的相互作用引起的,所以对于群体行为,它是最好的建模与模拟方法之一。在一个研究对象中,所有的Agent可以是相同类型(同质)的、或者每个Agent的类型可以是不同(异质)的。

元胞自动机(Cellular Automata,CA)是多Agent建模与模拟中最经典和成熟的方法。

不管哪种多Agent的建模与模拟方法,设计这样的计算实验,要包含四个基本要素:智能体、一个环境或者空间、规则以及面向对象的实现。下面介绍其建模步骤,具体说来,要从系统的底层入手,即从分析系统的基本要素入手建立多Agent模型。

1. 确定Agent类型及数目

分析被模拟对象的基本组成。例如社会系统中的社会组织有权利组织、营利组织等不同类型,那么,就可以分别用不同类型的Agent来代表;权利组织、营利组织有几个,那么相应的不同类型的Agent就有几个对象。又如,管理系统中“人”大致分为管理者和普通员工两类,那么,就可以分别用两类Agent来代表,并根据管理者和普通员工的人数来设置相应的对象的个数。

2. 确定Agent的属性

Agent的属性,如员工的工作倾向是社会型、还是经济型;工作态度是积极还是消极;等等。又如营利组织的组织文化、生命周期阶段、市场竞争力等。一般来说,有些Agent的属性,就是模拟输出要得到的东西。我们模拟的目的,就是要得到这些属性值随时间的变化,或者在模拟终止时,根据这些Agent的属性值计算我们要得到的评价指标。

3. 分析Agent的行为

分析现实系统中每个Agent的行为,这要从两两Agent之间的相互作用来分析,包括不同类型Agent之间,以及同类型Agent之间。例如我国的经济系统中,政府Agent调整银行Agent的贷款利率,那么这个“调整”就是银行Agent的行为,即政府对象发给银行对象的消息。居民Agent之间针对是否购买房产商Agent的商品房,而相互传播观念,那么,“观念”就是居民对象的属性,“更改观念”是居民对象的方法。

4. 分析Agent行为发生的原因

Agent行为发生的原因,即Agent采取行动的条件,包括两个方面:一是Agent之间互动的规则。例如管理系统中,企业Agent根据经济效益,决定是否裁减员工Agent;员工Agent根据员工群体之间的行为规范要求(即社会场的影响),以及管理者Agent在物质上的激励措施,权衡自己是否为企业卖力(即提高员工Agent的工作努力度)。二是Agent采取行动要具备什么样的外部环境。例如股票市场中,每个投资者的行为(买、卖、持有)发生,除了受相互之间的影响,还受外部环境的影响,这个外部环境就是政府的宏观政策。

然后,将上述分析结果用符号模型表述出来,即成为多Agent模型。统一建模语言(Unified Modelling Language,UML)可以胜任该项工作,具体为以下步骤。

5. 描述多Agent模型的静态结构

对于Agent类型及数目,可以运用UML中的类图和对象图来描述,一个类对应一种类型的Agent,而对象则为同种类型Agent中的各个Agent。

6. 描述多Agent模型的动态行为

对于Agent之间的相互作用,表现为对象之间互发消息,可以运用UML中的顺序图来描述对象之间的这种行为。

而对于行为原因,即对象之间发送消息的条件,那就要运用实际系统所属的领域问题所特有的模型了,例如经济系统的经济增长模型,企业管理系统的效益分析模型等,其中具有随机特征的变量,则要用到概率分布函数来描述。

最后,运用计算机语言,建立多Agent模拟模型,即运用专用的多Agent建模与模拟软件、或者运用一般计算机语言,编程实现多Agent模型。这里面要着重解决如下关键问题。

7. 搭建一个平台

建立一个模仿现实系统中Agent相互影响、相互作用的一个平台,类似于沙盘模型的一个台面。模拟运行时,Agent就在该台面上活动。

8. 确定Agent的空间特性

确定每个Agent的空间位置是移动的还是静止的。如果是移动的,那么每个Agent就可以在平台上到处移动,与相遇的Agent或资源发生行为互动;Agent如果是静止的,那么每个Agent在平台上的各自的位置都相对固定,只与其周边的Agent发生行为互动,元胞自动机就是按这种方式运行的。

9. 实现所有Agent行动的迸发过程

在现实系统中,所有Agent的行动是同时发生的,不是一个一个地进行的,这就要求编程实现时要采用并行处理方式,不能是串行方式。而计算机CPU的工作方式在理论上是无法实现并行方式的。因此,并行模拟一直是计算机模拟领域的热门话题。

目前,已出现的多Agent建模与模拟软件有多种,Swarm就是其中久负盛名的,还有借鉴Swarm的原理,但比Swarm使用更灵活的Reparst以及AnyLogic,都可以实现多Agent模型。当然,运用一般的高级编程语言,也能完成编程和开发工作。2.1.2 多Agent模拟示例

这里以AnyLogic的帮助中提供的一个经典的模型——Bass Diffusion Model来介绍多Agent建模与模拟。Bass Diffusion Model用来研究新产品的扩散过程,该模型认为一个新产品投入市场后,它的扩散速度主要是受到两种信息传播途径的影响:(1)大众传播媒介如广告等(外部影响),它通过传播产品性能中容易得到验证的部分(如价格、尺寸、颜色和功能等)来影响产品的扩散;(2)口头交流,即已采用者对未采用者的宣传(内部影响),它通过传播产品某些一时难以得到验证的部分(如可靠性、使用方便性和耐久性等)来影响产品的扩散。

其建模的主要步骤包括:

1. 创建Agent及其属性、数目

模型中的每个Agent代表市场中的一个人(person),受广告和口头交流的影响,该人由产品的潜在使用者(Potential Adopter)转变为产品的使用者(Adopter)。

那么Agent有一个属性,即是否接受该产品。如果不是,则该Agent的状态为产品的潜在使用者。如果是,则该Agent的状态为产品的使用者。

设定市场上一共有1 000个人,即创建1 000个person类的对象Person。

2. 分析Agent的行为及其原因

Agent的行为就是改变属性值:将产品的潜在使用者改变为产品的使用者。行为发生的原因有两个方面。(1)广告影响。Agent受广告的影响从Potential Adopter状态转变为Adopter状态,状态转变率为参数AdEffectiveness,设定它的缺省值(Default Value)为0.011。(2)口头交流影响。Agent也受相互之间的口头交流影响从Potential Adopter状态转变为Adopter状态。设参数Contact Rate=100表示每单位时间有100个人见面进行口头交流,参数Adoption Fraction=0.015表示口头交流对潜在使用者变为使用者这一转化过程的影响效果。那么,Contact Rate×Adoption Fraction表示每单位时间口头交流使潜在使用者变为使用者的人数。(3)环境。广告影响和口头交流影响的环境是所有Agent,即广告对市场上任何一个人的影响效果是一样的,口头交流的范围是市场上所有人两两之间的交流。

用AnyLogic开发的多Agent模拟模型界面如图2.1所示。图2.1 逻辑模型

模型的运行结果如图2.2所示。图2.2 模型的运行结果2.2 元胞自动机模拟2.2.1 元胞自动机基本概念

元胞自动机(Cellular Automata,CA),是时间、空间和状态都按离散方式变化的动力系统。散布在珊格(Lattice)中的每个元胞(Cell)取有限的离散状态,遵循同样的相互作用规则,同步更新各自的状态。元胞之间的相互作用规则是简单的,但通过简单的相互作用却能够导致系统整体行为的动态演化。

1. 元胞自动机的特点(1)元胞自动机建模不是像系统动力学那样建立完整的数学模型,而是用元胞之间的一系列局部规则构成。(2)元胞自动机的运行时间(模拟时钟t=0,1,2,…,k)是离散的,运行的物理空间(即珊格)是离散的,每个元胞的状态也是离散的,且状态空间是有限的。(3)每个元胞状态改变的规则是局部的,即元胞只与其邻居元胞相互作用。

2. 元胞自动机的组成

元胞自动机最基本的组成为元胞、状态、元胞空间、邻居及规则、时间六部分。(1)元胞,是元胞自动机的最基本的组成部分。元胞分布在离散的一维、二维或多维欧几里得空间上。(2)状态。状态可以是{0,1}的二进制形式,或是{s,s,02…,s,…,s}整数形式的离散集。元胞只能有一个状态变量,但在ik实际应用中,也可使每个元胞拥有多个状态变量。(3)元胞空间。处于分布状态的元胞空间网点集合就是元胞空间。最为常见的是二维元胞空间,通常以四方形网格排列,如图2.3所示。(4)邻居。在二维元胞自动机中,邻居定义较为复杂,但通常的形式(以最常用的规则四方网格划分为例)为摩尔(Moore)型,如图2.3所示。黑图2.3 元胞自动机的邻居模型:Moore型色元胞为中心元胞,灰色元胞为其邻居,它们的状态被一起用来计算中心元胞在下一时刻的状态。(5)规则。根据元胞当前状态及其邻居状况确定下一时刻该元胞状态的动力学函数,即状态转移函数,该函数包括元胞的所有可能状态、负责该元胞的状态变换的规则两部分。该函数可以记为t+1ttf:s=f(s,s)iiNt

其中,s为t时刻的邻居状态组合,我们称f为元胞自动机的局部N映射或局部规则。(6)时间。元胞自动机在时间维上的变化是离散的,即时间t是一个整数值,而且连续等间距。假设时间间距dt=1,若t=0为初始时刻,那么t=1为其下一时刻。

因此,元胞自动机是隶属于多Agent模拟方法的。与一般多Agent模拟相比,元胞自动机的每个元胞(即Agent)的行为规则都是一样的。而一般多Agent模拟中,Agent的方法、规则各不相同。2.2.2 元胞自动机模拟示例

元胞自动机是一种开放的、通用的建模与模拟方法,其应用涉及自然、社会、经济、管理等各个领域。元胞自动机很适合进行群体动力学的分析,下面以人群动力演化过程的模拟为例,介绍元胞自动机的运用。

1. 民意集中模拟(1)问题

当外界环境发生变化时,对于一群人如何应对环境的变化而言,在这群人里会产生多种不同的观点或意见,随着时间的推移,人群中个人和个人之间不断地交换意见,意见的种类会发生变化。我们可以运用元胞自动机,对人群中意见种类发生的变化做如下工作:模拟变化过程,分析变化过程的规律。(2)建模

假设CA基于有限的二维矩形栅格,每个元胞都看作有主张的个人,元胞的状态代表每个人的意见,状态的集合服从(0,1)均匀分布。每个人依据其邻居的状态(包括自己)定期改变它自身的状态,每个邻居的影响力相同。u(t)表示在第t个阶段元胞j的状态,N表ji示元胞的所有邻居的集合,#N表示邻居的数目。元胞j在下一个阶i段的状态可以表示为:

采用上述算法计算下一时刻元胞的状态时,可能出现元胞状态集合是无限的情况。而CA规定状态集合必须是有限的,所以需要对上述的结果进行修正。在此,我们使用离散化的方法,图2.4中给出了离散函数,其中,横轴为x轴,纵轴为y轴。

图2.4(a)中,如果x<1/2,那么y=0;如果x≥1/2,那么y=1。图2.4(b)中,如果x<1/3,那么y=0;如果x≥1/3并且x<2/3,那么y=0.5;如果x≥2/3,那么y=1。图2.4 离散函数

接下来,把该计算结果作为输入,循环进行上述过程。上述过程可以简单描述为:

式2.2是通用的转换规则。它顺序地应用在随机选择的元胞上,称为顺序更新(连续更新是同时在所有的元胞上应用式2.2)。(3)模拟与分析

图2.5表示了在2、5、10、15种和30种意见的情况下模拟的典型结果。在模拟开始时,每种意见的元胞是等数目的。从图中可以看出,模拟结束时,同一种状态会显示出一定形状,且表现出涌现性。图中所示的结构是稳定和持久的。图2.5(f)给出了连续状态下的模拟结果,即没有用到阶梯函数,用到的动力学方程是式2.1而不是式2.2,可以看出,当t趋于无穷大时,所有个体的意见基本相同。

从图2.5可以看出,状态集合中包含的意见种类越多,最终个体间的意见越容易统一。

2. 种族隔离形成过程模拟(1)问题

有两个不同种族人群,最初各个成员都无意地居住在某个区域的各处,在两类人群中,成员之间的价值观的取向(即一个成员对另一个成员的价值评判或看法)包括三种:正向、中立和负向。正向表示欣赏对方,负向表示敌视对方。当外部环境稳定时,大家都相安无事,各自都居住在原处。

但是,由于社会环境发生了变化,例如两个种群所属的国家发生了战争,成员之间的态度就发生改变了,一种是“隔离”态度(segregation attitude),另一种是“怀疑”态度(suspicion attitude),在这两种态度的驱使下,两类人群的成员们开始选择新的居住地了,表现为成员们不断地搬家。

此处介绍Sakoda运用元胞自动机,对搬家过程所做的如下工作:模拟搬家过程;分析搬家过程中的现象及规律。图2.5 模拟结果(2)建模

为了便于模拟,把正向、中立和负向的价值取向进行离散的量化处理,把它们称为“效价”(Valences),用整数V来表示。ij

P表示所有个体的集合,并且模型的每一个元胞都代表一个个体,有些元胞中没有个体。个体有机会移动到3×3邻居范围的空元胞中。如果没有空元胞的存在,允许个体跨越一个元胞来移动,但是移动通常都是局部的,且必须满足特定的条件。个体i最终移动到最大的元胞中。其中,d表示个体i与j之间的欧几里得距离;w表示随着距离的增加,效价减少的百分比。从式中可以看出,w越大,距离的增加对效价减少的影响越小。

模型建立在8×8的棋盘上,一共有两类群体,每类群体包括6个成员,一类群体的成员用“□”表示,另一类成员用“+”表示。两种态度条件下,成员之间的价值取向值如表2.1所示。表2.1 两种态度条件下“价”V的取值ij(3)模拟与分析

图2.6显示了在隔离态度下,两类群体形成的动态过程。从最开始的随机分布到最终聚集在一起只花费了很短的时间。图2.6 隔离态度下群体形成的过程

图2.6显示的最终结果和我们预想的相同。但是在怀疑态度下,群体最终形成另一种情形,见图2.7。

显然,持中立价值取向的个体不会单独形成一个群体,只有对另一个群体持负向价值取向的个体才会形成独立的群体。图2.7 怀疑态度下群体形成的过程

从图2.6和图2.7的比较中,隐含着如下现象:当个体对另一群体持负向价值取向,且对自身所在的群体漠不关心(即中立)时,会比对自身所在群体持正向价值取向时表现出更明显的集群现象。

验证这个结果,需要在更大范围的棋盘内进行实验,图2.8是一个40×40的棋盘,两个群体各包含180个成员,分别用黑色和灰色来表示。其他的假设条件与Sakoda的模型相同。

通过对上面的实验进行分析,就不难解释为什么对自身群体持中立价值取向时会表现出更明显的集群现象,且两种价值取向都促使成员远离另一个群体的成员。

在隔离态度下,同一群体中的成员在移动的过程中,当碰到同一群体中的其他成员时,会在相遇点停止移动,并产生足够的影响力,使得他们能够在相遇点停留下来。而当成员对自身所在群体持中立价值取向时,同一群体的成员之间不会产生吸引力,所以这些成员的唯一目标是远离别的群体的成员,最后导致了同一群体的成员全部聚集在一起,并且远离另一个群体。如图2.8(b)所示。

此外,还存在个别的成员,因为移动速度太慢而被另外群体的成员包围起来,成为孤立的个体。

上述结果说明CA可以深入分析行为变化的机理,并且有效地解释在社会变化过程中宏观行为和微观行为之间的关系。图2.8 40×40的模拟结果(最初个体为随机分布)

上述研究统称为统计物理学研究,其研究对象是粒子之间的互相作用,所有单个动物如鸟类、鱼类、蚂蚁和其他群居动物或者所有个人都被视为粒子,粒子之间的交互会涌现为宏观行为。但这种交互只是物理过程,其中没有心理学模型来支持这种交互。

从计算的角度来看,把心理学模型嵌入到Agent中也并不罕见。例如,基于前景理论的Agent具有人类的直觉和有限的理性行为;基于人格理论的Agent在购买商品时具有独特心理特质;基于认知心理学的Agent能够描述具有人的心理特征的个人行为规则。

本书建立的人的Agent模型,就是要把传统Agent建模与心理学理论结合起来。参考文献

[1]Schelling T C.Models of segregation[J].American Economic Review,Papers and Proceeding,1969,59(2):488-493.

[2] Schelling T C.Dynamic models of segregation[J].Journal of Mathematical Sociology,1971,1(2):143-186.

[3]Schelling T C.On the ecology of micromotives[J].The Public Interest,1971,25:61-98.

[4]Schelling T C.Micromotives and macrobehavior[M].Norton,New York,1978.

[5]Goldstone R L,Janssen M A.Computational models of collective behavior[J].Trends in Cognitive Sciences,2005,9(9):424-430.

[6] Bonjean N,Bernon C,Glize P.Towards a guide for engineering the collective behaviour of a MAS[J].Simulation Modelling Practice and Theory,2001,18(10):1506-1514.

[7]Vallacher R R,Nowak A.The emergence of dynamical social psychology[J].Psychological Inquiry,1997,8(2):73-99.

[8]Hegselmann R,Flache A.Understanding complex social dynamics:A plea for cellular automata based modelling[J].Journal of Artificial Societies and Social Simulation,1998,l(3).

[9]Kenrick D T,Li N P,Butner J.Dynamical evolutionary psychology:Individual decision rules and emergent social norms[J].Psychological Review,2003,110(1):3-28.

[10]胡斌,周明.管理系统模拟[M].北京:清华大学出版社,2008,7.

[11]Castellano C,Fortunato S,Loreto V.Statistical physics of social dynamics.http://physics.soc-ph,2009,May,11.

[12]Zhang Y,Leezer J.Simulating human-like decisions in a memory-based agent model[J].Computational and Mathematical Organization Theory,2010,16:373-399.

[13]Roozmand O,Ghasem-Aghaee N,Hofstede G J,et al.Agent-based modeling of consumer decision making process based on power distance and personality[J].Knowledge-Based Systems,2011,24:1075-1095.

[14]Ghasem-Aghaee N,Ören T I.Cognitive complexity and dynamic personality in agent simulation[J].Computers in Human Behavior,2007,23:2983-2997.第3章 定性模拟3.1 QSIM

定性模拟方法用来模拟具有不完备甚至歧义信息的物理系统行为演化过程。1984年de Kleer和Brown提出了基于流的定性物理理论,Forbus提出了定性过程理论。在他们的基础上,Kuipers于1986年提出了QSIM方法,随后,该定性模拟方法的研究与应用一直没有中断。

针对QSIM缺乏定量信息的缺陷,Kuipers和Berleant又提出了Q2和Q3方法,即结合区间代数理论使定性变量的推演更加清晰、准确。这种结合区间代数和定性模拟的方法被称为半定量模拟。3.1.1 基本概念

QSIM用定性微分方程来描述模拟对象,定性微分方程由变量和约束组成,变量代表系统状态,约束描述变量之间的关系。它的核心技术为:(1)用两个元素来表示定性变量:“水平”和“变化方向”。水平取值:“low”,“moderate”,“high”;变化方向取值:“decrease”,“standard”和“increase”(各自记作“-”,“0”,“+”)。(2)用六个约束建立系统的定性模拟模型。这六个约束是ADD,MULT,MINUS,DERV,M+和M-。在信息不完备的条件下,这六个约束用来建立由定性变量表达的定性模拟模型。(3)I/P规则被用来推演随时间推移系统行为的变化过程。在定性模拟模型建立好以后,每个定性变量的后续行为都通过I/P规则来推演。(4)过滤机制用来避免定性变量后续行为的组合爆炸。过滤机制可以根据现实系统的环境和需要来设计。

具体说来,QSIM涉及如下基本概念:

1. 可推理函数(Reasonable Function)*

函数f为可推理函数,当且仅当f:[a,b]→R满足下列条件:

f在闭区间[a,b]上连续;f在开区间(a,b)上连续且可微;f有有限个奇点;。

定性模拟的目的,是要记录系统的状态变量随时间的变化过程。因此,每个状态变量都可视为一个可推理函数。

2. 路标值(Landmark Value)

路标值是指可推理函数f在行为上有标志性意义的重要点处的取值,一般每个变量存在多个路标值,它们按照一定顺序组成有序路标值集合。随着定性模拟的进行,可以发现和使用f的新路标值。

3. 显著时间点(Distinguished Time)

f取路标值时的系统模拟时钟t为显著时间点,即t∈[a,b]且f(t)=x,其中x是f的路标值。系统当前的时间,要么是在显著时间点上,要么是在两个显著时间点之间。

4. 定性状态与定性行为*

设f:[a,b]→R有路标值集合L={l|l=l<l<…<l},对应01n有显著时间点集合T={t|t=t<t<…<t},t∈[a,b],则有如下01n定义。(1)定义f在t时刻的定性值为(2)定义f在t时刻的变化方向为(3)定义f在t时刻的定性状态为QS(f,t)=<QVAL(f,t),QDIR(f,t)>

其中,<QVAL(f,t),QDIR(f,t)>为二元组。例如:QS(temperature,t)=<(0,100),inc>表示t=t时水温是在0℃kk与100℃之间,且正在上涨。(4)f在t∈[a,b]上的定性行为定义为f的定性状态序列:

QS(f,t),QS(f,t,t),…,QS(f,t),QS(f,t,t),001iii+1…,QS(f,t,t),QS(f,t)n-1nn

即定性行为由f在显著时间点上的定性状态和显著时间点间的定性状态间隔组成。3.1.2 QSIM定性模型

1. 约束

对系统的结构用变量之间的约束的集合来描述,这些约束包括:(1)加约束ADD(f,g,h):*

对于任意t∈[a,b],f,g,h:[a,b]→R,满足f(t)+g(t)=h(t)。(2)乘约束MULT(f,g,h):*

对于任意t∈[a,b],f,g,h:[a,b]→R,满足f(t)·g(t)=h(t)。(3)反约束MINUS(f,g):*

对于任意t∈[a,b],f,g:[a,b]→R,满足f(t)=-g(t)。(4)微分约束DERIV(f,g):*

对于任意t∈[a,b],f,g:[a,b]→R,满足f′(t)=g(t)。(5)单调增约束M+(f,g):(6)单调减约束M-(f,g):

2. 定性微分方程(Qualitative Differential Equation)

在定量模拟(如系统动力学方法)中,系统结构由一组常微分方程(Ordinary Differential Equation,ODE)来描述,采用上述六种约束,将常微分方程抽象为定性微分方程(Qualitative Differential Equation,QDE),这是定性模拟对系统结构的描述。用一个例子来说明抽象过程。2dy/dyt=kt+t22

为线性微分方程。令A=dy/dt,B=kt,C=t,T=t,则原方程可分解为dy/dt=A,B+C=A,k·T=B,C·C=T

从而得到定性微分方程:

DERIV(y,A),ADD(B,C,A),MULT(k,T,B),MULT(C,C,T)。3.1.3 QSIM定性状态转换

从本质上来说,QSIM是一种定性推理方法,即由当前定性状态推导出其后继状态的推理过程。推理是按照一定的规则来进行的,这些规则如表3.1所示。表3.1 通用函数状态转换表

其中,P转换表示从显著时间点上到显著时间点之间的定性状态转换。I转换表示从显著时间点之间到显著时间点上的定性状态转换。3.1.4 QSIM算法

Kuipers定性模拟理论的核心是QSIM算法,它用定性微分方程来描述系统的结构,用定性状态转换及过滤来推导系统行为。在每个方程的初始定性状态给定的前提下,QSIM首先生成所有可能的后继状态,然后用方程间的定性限制和全局相容规则来删除不相容的或多余的状态组合。如此一直下去,模拟系统的行为。

下面分别从数据输入、数据输出、算法步骤及过滤与解释等几个方面来介绍QSIM算法。

1. 数据输入(1)代表系统m个变量的一个可推理函数集合F={f,f,…,12f}。m(2)用六种约束关系(ADD、MULT、MINUS、DERIV、M+、M-)建立的约束方程集合E={e,e,…,e}。12u(3)每一个变量有一个代表路标值的有序集合L={l,l,…,i12l,l}(i=1,2,…,m),其中至少包括{-∞,0,+∞}。ri-1ri(4)每个函数的上下极限。(5)初始时间点t和每个函数t(i=1,2,…,m)在t时的定性0i0状态<QVAL(f,t),QDIR(f,t)>。00

2. 数据输出(1)显著时间点集合:T={t,t,…,t}。01n(2)每个函数的完整的、可能扩展了的有序路标值集L′={l,l,i12…,l,l}(i=1,2,…,s)。ii

w-1w(3)每个函数f(i=1,2,…,m)在显著时间点t上和显著时间ij点之间(t,t)的定性状态<QVAL(f,t),QDIR(f,t)>和<jj+1ijijQVAL(f,(t,t)),QDIR(f,(t,t))>。ijj+1ijj+1

3. 算法步骤

步骤1:从活动状态表中取出一个状态作为当前状态。

步骤2:根据通用状态转换表,确定每一个变量由当前状态可能转换到的状态集合。

步骤3:对每个约束,产生状态转换的二元或三元组集合,根据约束的限定,过滤掉与约束不一致的元组。

步骤4:对元组进行配对一致性过滤,即具有相同函数的两个元组,对同一个函数的转换必须一致。

步骤5:将经过上述过滤剩余的元组加以组合,产生系统状态的全局解释。如果全局解释失败,则当前状态即为系统的结束状态;否则,把全局解释产生的状态作为系统的后继状态,并加入活动表。

步骤6:判断活动状态表是否为空,若为空,模拟结束,否则返回步骤1,模拟继续进行。

4. 过滤与解释

QSIM算法中,依次包括了约束一致性过滤、配对一致性过滤、全局解释、全局过滤。(1)约束一致性过滤

约束一致性过滤是指在QSIM算法中对每个约束根据函数间的约束关系,将各个函数的独立转换,组合为相应的元组,得到状态转换的二元或三元组集合,再根据限定它们的约束方程进行检验,与约束不一致的元组将被过滤掉。其检验主要包括函数定性值的一致性和函数变化方向的一致性两方面。

例如,对于满足约束M+(f,g)的函数f,g,根据状态转换表得到后续状态,其中一个状态转换组合为(I,I),由于I为<l,std1411>→<l→,std>,I为<(l,l),inc>→<(l,l),inc>,而j4jj+1jj+1M+(f,g)要求函数f,g保持变化方向相同,因此,这个状态转换组合与约束不一致,被过滤掉。(2)配对一致性过滤

在QSIM算法中,若两个约束有公共函数,则称这两个约束是相邻的。配对一致性过滤就是对相邻约束中的公共函数的状态转换的一致性进行检验,不一致的将被过滤掉。配对一致性过滤遵循Waltz算法,即逐个访问每个约束,查看所有与它相邻的约束,对由它们所联系着的元组组成的元组对,如果一个元组赋予公共函数的转换在和它相邻的一个约束的所有元组中均不存在,则删除这个元组。如此类推,直到最后一个不一致状态转换得到过滤为止。配对一致性过滤可在很大程度上减少状态转换空间,从而提高QSIM算法的效率。

例如,三个函数f,g,h分别满足约束M+(f,g),M-(g,h),在根据状态转换表转换并且经过约束一致性过滤后,剩下符合条件的状态转换组合,按照约束可组对如下:

①对约束M+(f,g)有(P,P),(P,P);2254

②对约束M-(g,h)有(P,P),(P,P);2332

g为两个约束的公共函数,则两约束是相邻的。根据Waltz算法,由于按约束M+(f,g)组成的元组对(P,P)在按其相邻约束M-22(g,h)的元组对(P,P)中,公共函数g存在一致的状态转换23P,则两元组被保留。而(P,P)与(P,P)因在对应的相邻的25432约束中g并不存在与之一致的状态转换,则双双被过滤掉。(3)全局解释

全局解释就是根据约束一致性过滤与配对一致性过滤后剩余的函数转换,得到相应的函数后续状态,系统中所有函数的后续状态的组合即为系统的全局解释。

要说明的是,并不是所有元组的组合都是全局解释。由于全局解释是根据深度优先算法遍历所有可能的元组空间来完成的,若一个全局解释失败了,则当前状态的所有后继状态被删除,而认为当前状态就是系统的结束状态。(4)全局过滤

全局解释后,还要进行全局过滤,主要是对状态循环、状态不变以及取极点值时的状态转换进行处理,具体过程如下。

①前后直接相邻状态一致,则过滤掉新的状态。若全局解释中的所有转换都是在集合{I,I,I}中,则认为新的状态和它的直接前147驱状态是一致的,新状态被过滤掉。

②前后状态出现循环,则过滤掉新的状态。若新的状态和它前面的某个祖先状态所有函数定性值与变化方向都一致,即定性状态一致,则认为系统行为在该处出现循环,新的状态被过滤掉。

③有一个函数取值为区间的终点,如∞,则过滤掉新的状态。

总之,由系统的一个初始状态出发,按通用函数状态转换表得到每个变量当前状态的后继状态,把每个变量的后继状态按约束组合起来,依次进行约束一致性过滤与配对一致性过滤,再从整体上组合进行全局解释,经过全局过滤,剩下的当前状态集合即为系统的后继状态。就这样按显著时间点顺序不断往后模拟,最终将得到系统状态的有向图,从根结点到叶结点的路径就是系统的一个定性行为。3.1.5 应用示例:U型管水体行为QSIM模拟

图3.1所示的是一个由底部连通的A、B两管组成的U型管,其中装了一定体积的水。当A管中水面高于B管水面时,高度差产生的压强使得水将从A管流向B管,直到两管水面处于同一高度。图3.1 U形管水体示意图

为了分析这一过程U型管中的水体行为,我们用QSIM方法来进行模拟。为此,设A、B管的水面高度分别为HeightA、HeightB,A、B管底部所受压力分别为PressureA、PressureB,A管与B管的压力差为P,水体从A到B管的流速为FlowAB。AB

1. 变量的量空间

HeightA∈[0,AMAX,∞],HeightB∈[0,BMAX,∞],PressureA∈[0,∞],PressureB∈[0,∞],P∈[-∞,AB0,+∞],FlowAB∈[-∞,0,+∞]。

2. 变量之间的约束

M+(PressureA,HeightA),M+(PressureB,HeightB),ADD(PressureB,P,PressureA),M+(FlowAB,P),M-ABAB(FlowAB,HeightB),M+(FlowAB,HeightA)。

3. 初始状态

初始状态即当t=t时各变量的值。HeightA=<AMAX,dec>,0HeightB=<0,inc>,PressureA=<(0,∞),dec>,PressureB=<0,inc>,P=<(0,∞),dec>,FlowAB=<(0,∞),decAB>。

4. 从初始状态到某时间点的模拟

为分析水体从t=t变化到t=(t,t)的过程,采用P转换对各变001量进行状态转换处理,并用变量间的约束关系过滤掉一些不合理的组合。(1)P转换

对HeightA,P:<AMAX,dec>→<(0,AMAX),dec>6

对HeightB,P:<0,inc>→<(0,BMAX),inc>4

对PressureA,P:<(0,∞),dec>→<(0,∞),dec>7

对PressureB,P:<0,inc>→<(0,∞),inc>4

对P,P:<(0,∞),dec>→<(0,∞),dec>AB7

对FlowAB,P:<(0,∞),dec>→<(0,∞),dec>7(2)约束过滤

M+(PressureA,HeightA):<(0,∞),dec>,<(0,AMAX),dec>

M+(PressureB,HeightB):<(0,∞),inc>,<(0,BMAX),inc>

ADD(PressureB,P,PressureA):<(0,BMAX),inc>,AB<(0,∞),dec>,<(0,∞),dec>

M+(FlowAB,P):<(0,∞),dec>,<(0,∞),dec>AB

M-(FlowAB,HeightB):<(0,∞),dec>,<(0,∞),inc>

M+(FlowAB,HeightA):<(0,∞),dec>,<(0,AMAX),dec>

5. 从某时间点到时间区间的模拟

为分析水体从t=(t,t)变化到t=t的过程,采用I转换对各变量011进行状态转换处理,并用变量间的约束关系过滤掉一些不合理的组合。(1)I转换

对HeightA:

I:<(0,AMAX),dec>→<0,std>5

I:<(0,AMAX),dec>→<0,dec>6

I:<(0,AMAX),dec>→<(0,AMAX),dec>7

对HeightB:

I:<(0,BMAX),inc>→<0,std>2

I:<(0,BMAX),inc>→<0,inc>3

I:<(0,BMAX),inc>→<(0,BMAX),inc>4

对PressureA:

I:<(0,∞),dec>→<0,std>5

I:<(0,∞),dec>→<0,dec>6

I:<(0,∞),dec>→<(0,∞),dec>7

对PressureB:

I:<(0,∞),inc>→<0,std>2

I:<(0,∞),inc>→<0,inc>3

I:<(0,∞),inc>→<(0,∞),inc>4

对P:AB

I:<(0,∞),dec>→<0,std>5

I:<(0,∞),dec>→<0,dec>6

I:<(0,∞),dec>→<(0,∞),dec>7

对FlowsAB:

I:<(0,∞),inc>→<0,std>5

I:<(0,∞),inc>→<0,inc>6

I:<(0,∞),inc>→<(0,∞),inc>7(2)约束过滤

①根据M+(PressureA,HeightA)对PressureA、HeightA的状态组合进行过滤,如表3.2所示。表3.2 根据M+(PressureA,HeightA)的约束过滤

其中,标有*的是被过滤掉的组合,则剩下组合有:(I,I)、55(I,I)、(I,I)、(I,I)、(I,I)。66677677

②根据M+(PressureB,HeightB)对PressureB、HeightB的状态组合进行过滤,如表3.3所示。表3.3 根据M+(PressureB,HeightB)的约束过滤

其中,标有*的是被过滤掉的组合,则剩下组合有:(I,I)、22(I,I)、(I,I)、(I,I)、(I,I)。33344344

③根据ADD(PressureB,P,PressureA)对PressureB、ABP、PressureA的状态组合进行过滤,如表3.4~表3.6所示。AB表3.4 根据ADD(PressureB,P,PressureA)的约束过滤AB

其中,标有*的是被过滤掉的组合,则剩下组合有:(I,I)、22(I,I)、(I,I)、(I,I)、(I,I)。33344344表3.5 根据ADD(PressureB,P,PressureA)的约束过滤AB

其中,标有*的是被过滤掉的组合,则剩下组合有:(I,I,I)、365(I,I,I)、(I,I,I)、(I,I,I)、(I,I,I)、(I,I,36636737537637I)。7表3.6 根据ADD(PressureB,P,PressureA)的约束过滤AB

其中,标有*的是被过滤掉的组合,则剩下组合有:(I,I,I)、465(I,I,I)、(I,I,I)、(I,I,I)、(I,I,I)、(I,I,46646747547647I)。7

④根据M+(FlowAB,P)对FlowAB、P的状态组合进行过滤,ABAB如表3.7所示。表3.7 根据M+(FlowAB,P)的约束过滤AB

其中,标有*的是被过滤掉的组合,则剩下组合有:(I,I)、55(I,I)、(I,I)、(I,I)、(I,I)。66677677

⑤根据M-(FlowAB,HeightB)对FlowAB、HeightB的状态组合进行过滤,如表3.8所示。表3.8 根据M+(FlowAB,HeightB)的约束过滤

其中,标有*的是被过滤掉的组合,则剩下组合有:(I,I)、63(I,I)、(I,I)、(I,I)。647374

⑥据M+(FlowAB,HeightA)对FlowAB、HeightA的状态组合进行过滤,如表3.9所示。表3.9 根据M+(FlowAB,HeightA)的约束过滤

其中,标有*的是被过滤掉的组合,则剩下组合有:(I,I)、55(I,I)、(I,I)、(I,I)、(I,I)。66677677(3)配对一致性检验

M+(PressureA,HeightA):(I,I)、(I,I)、(I,I)、(I,5566677I)、(I,I)。677

M+(PressureB,HeightB):(I,I)、(I,I)、(I,I)、(I,2233344I)、(I,I)。344

ADD(PressureB,P,PressureA):(I,I,I)、(I,I,AB46546I)、(I,I,I)、(I,I,I)、(I,I,I)、(I,I,I)。6467475476477

M+(FlowAB,P):(I,I)、(I,I)、(I,I)、(I,I)、AB55666776(I,I)。77-

M-(FlowAB,HeightB):(I,I)、(I,I)、(I,I)、(I,6364737I)。4

M+(FlowAB,HeightA):(I,I)、(I,I)、(I,I)、(I,5566677I)、(I,I)。677(4)全局解释

对上述过滤和配对一致性检验的结果进行整理,可得到相互关联的各变量从t=t到t=t的状态变化。01

对HeightA:

<(0,AMAX),dec>→<0,dec>

<(0,AMAX),dec>→<(0,AMAX),dec>

对HeightB:

<(0,BMAX),inc>→<0,inc>

<(0,BMAX),inc>→<(0,BMAX),inc>

对PressureA:

<(0,∞),dec>→ <0,dec>

<(0,∞),dec>→<(0,∞),dec>

对PressureB:

<(0,∞),inc>→ <0,inc>

<(0,∞),inc>→<(0,∞),inc>

对P:AB

<(0,∞),dec>→ <0,dec>

<(0,∞),dec>→<(0,∞),dec>

PressureB:

<(0,∞),inc>→ <0,inc>

<(0,∞),inc>→<(0,∞),inc>3.2 Q2:基于数字区间的定性模拟方法

Q2算法是通过将系统不完全的定量信息,在系统定性模型的约束间进行局部传播,以提高模拟的效率与精度。其核心是定量信息的传播算法。3.2.1 Q2中定量知识的传播方法

对于不同的需要传播的定性约束,定量传播以不同的形式出现。作为一种数学规则,如果路标值L在一个特定时间点t,定性行为是parameter(t)=L,那么我们可以使用parameter(t)=[L,H]或oi者L=[L,H]去描述它,定量范围[L,H]必须包含L的未知数值。oioi

在Q2中,每一种定性约束和部分定量信息传播过程相联系。存在四种不完全定量信息传播方法,分别阐述如下。

1. 通过算术约束传播

在算术约束中传播定量信息是基于区间代数运算规则的。相应的规则如表3.10所示。表3.10 区间代数运算规则

2. 通过单调函数约束传播

在定性建模中,用于描述不完全单调关系的重要函数是M+,其表示变量之间的单调增和单调减的关系。我们可以从物理系统中获得单调函数的上下界信息,因而可以在单调函数中传播这种信息。通过部分定量约束M+的传播示例如图3.2所示。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载