MAIA
——建立在IAD框架上人工社会模型

2014-08-10 08:09:56益,周
宜宾学院学报 2014年6期
关键词:框架人工定义

刘 益,周 陶

(1.宜宾学院计算机与信息工程学院,四川宜宾644007;2.宜宾学院政府管理学院,四川宜宾644007)

MAIA
——建立在IAD框架上人工社会模型

刘 益1,周 陶2

(1.宜宾学院计算机与信息工程学院,四川宜宾644007;2.宜宾学院政府管理学院,四川宜宾644007)

通过比较BDI、SugarScape、MAIA三种Agent模型结构特点,介绍了MAIA结构与IAD框架之间的联系、构成MAIA元模型五个模块(集体模块、体制模块、物质模块、操作模块、评估模块)的作用和包括的内容,以及利用MAIA元模型建立人工社会的步骤.

Agent模型;人工社会;MAIA;IAD框架

社会科学研究在经历过数理模型、统计数据实证、基于自然语言的论证[1]等方法后进入了社会学仿真研究阶段.社会学仿真有七种方法:系统动力学、微仿真、排列模型、多层仿真、元胞自动机、基于多Agent建模和学习与演化模型[2].随着社会学仿真的研究,社会学研究者提出了人工社会概念,并在1992年举行的第一次研讨会[3-4].人工社会把复杂系统科学体系方法应用到社会科学研究领域,利用计算机模拟现实社会建立起来的一种计算机模型.它通过社会规则抽象出一个一个的个体,并让这些个体在社会制度下相互作用来反映现实系统[5].人工社会依赖于Agent建模,这一点与社会学仿真相似.但人工社会在讨论Agent模型ABM(Agent Based Model)时,是将其放置在社会规则制度中进行的.换句话说,人工社会包括Agent系统和规则制度两个方面.如不考虑社会的规则制度,让Agent自由游走,也可以认为Agent模型ABM就是一个简单的人工社会模型.

1 Agent模型

Agent一般被划分为三类:理想Agent、智能Agent和软件Agent[6].理想Agent是具有各种像人一样能力的实体,智能Agent是具有部分能力的实体,是理想Agent在人工智能中的一种应用,而软件Agent则是从软件编程中定义的Agent.

1987年Bratman提出了BDI(belief、desire、intention)结构[7],认为信念、愿望、意图是Agent基本的思维属性.而后Shoham从系统实现角度讨论了Agent的结构和行为特性,提出了面向Agent的程序设计[8].BDI结构完成了对Agent直观性、模块性、复杂行为的抽象化描述,它在描述Agent的心理行为特征方面比较成功,但不能很好地把Agent的外在行为和社会行为统一起来.

1996年Epstein和Axtell提出了采用基于Agent建模的方法建立的SugarScape人工社会模型[9].Sugarscape翻译为“糖域”.它描述了在一个二维空间中分布着一定的资源“糖”,空间中的Agents不断游走,吸收“糖”增加资源.同时在“糖域”中设定每个Agent在一个周期中消耗一定单位的资源“糖”,如果Agent的“糖”消耗殆尽,则表示Agent死去.通过“糖域”可以仿真诸如自然资源利用,市场交易等社会现象,初步体现了Agents与自然、社会环境的交互作用.由于“糖域”模型更多的是考虑Agents的自发行为,因此在这个系统中无法体现Agents在特定社会规则、制度的表现.

2011年Ghorbani等提出了一种描述以个体和制度为关键元素的人工社会系统建模工具——MAIA(Modeling Agent systems based on Institutional Analysis)[10]. MAIA元模型是基于Ostrom的制度分析与发展框架IAD(Institutional Analysis and Development framework)提出的[11-12].Ostrom的制度分析与发展框架IAD很好地描述了社会结构和社会制度,它证明使用者自主治理的公共池塘资源可以通过合理的制度安排,取得优于人们先前根据标准理论所预测的结果.Ghorbani等根据IAD引入主体(Agent)和角色(Role),主体依据它在模型中担任的角色遵守制度规则行动.MAIA元模型很好的释义了Agents与社会规则、制度之间的关系.主体、角色和制度三者的关系如图1所示.

图1 主体、角色和制度三者的关系

2 MAIA元模型

MAIA元模型通过参考了IAD框架抽取出集体模块、体制模块、物质模块、操作模块、评估模块五个模块.通过对五个模块中个要素的定义完成人工社会模型的建立.

(1)MAIA元模型与IAD框架

根据Ostrom理论,制度分析与发展框架包括7组主要变量,形成图2所示的结构.这7组变量分为三个模块:①自然物质性质、社群属性、实际运行规则代表社会系统的根本结构;②行动场景代表操作环境;③通过评估标准观察互动模式和结果,并将结果反馈给系统.

图2 制度分析与发展框架

直接根据制度分析与发展框架理论来建立人工社会模型是相当困难的,MAIA元模型在引入Agent概念后对IAD建模进行了相应修改,主要体现在四个方面:

①对参与者及其内在的特征进行格式化,这些特征是独立于参与者所扮演的角色和遵从的规则的.

②对IAD某些概念进行严格详实的定义和格式化.

③对IAD的互动模式、结果和评判标准这三个模块按照软件模型的输出结果重新定义和格式化.

④对IAD各部分之间的关系暗含的系统行为进行格式化,理清软件模型之间的关系.

由于IAD采用的是自然语言描述的概念性的知识,这些信息在建立计算机人工社会模型时必须按照计算机语言形式进行描述,因此在使用MAIA工具前必须将它们进行重新定义和格式化.这种规范方式一般称为元模型方式.对模型的精准描述能够更好地挖掘、分析和理解所要模拟的定义域.用来描述模型的一组正式规范的概念称之谓元模型[13-14].根据IAD框架的核心思想:搞清楚行动舞台中行动情境和行动者在外生变量影响下的相互作用及其产生的结果对两者的反作用,MAIA对IAD框架进行了分解和组合,形成了一个包括5个部分的元模型并给出了如图3的关系图[15]:集体模块、体制模块、物质模块、操作模块、评估模块.

图3 MAIA元模型框架

在这5个模块中,可以大致认为集体模块定义了参与者的信息;体制模块定义了行动情境中的社会环境以及规则;物质模块定义了行动情境中自然条件以及规则;操作模块定义了互动模式;评估模块定义了对结果的验证和衡量模式.

将图2的制度分析与发展框架转变为图3的MAIA元模型框架是建立基于Agent的人工社会模型非常重要的一步,这一步是概念转化过程,它将抽象的、自然语言描述的社会结构转变为规范的,格式化的模型结构,为建立计算机软件模型做好了充分的准备.

(2)MAIA工具

Ghorbani为了支持MAIA元模型的应用,开发了基于web的MAIA工具来处理概念化过程,并分别对元模型种的5大模块进行说明.

①集体模块:在集体模块中定义了所有Agents,并详细描述了每个Agent的属性.在MAIA中Agent被定义为系统中制度驱动的实体,它必须担任能完成系统任务的角色.一个Agent包括属性、个人价值、信息、物质成分、可能的角色、内在行为和判断标准几个内容.

②体制模块:体制模块定义了三个对象:角色,制度以及角色之间的依赖关系.

角色是一系列行为的表示,是一种身份.角色的行为是根据系统规则为了完成社会目标做出的,它由独立定义在集体模块中的Agent扮演.一个Agent可能同时或者先后担任多个角色.不同的agent担任相同的角色可能因为他们内在特性的差异(比如个人价值)有不同的行为.一个角色有下列性质:目标,规则制度,入场条件,责任.

角色的属性中的规则制度在体制模块中作为制度专门列出来进行了说明.制度的制定遵循ADICO(Attributes,Deontic,aIm,Condition and Orelse),它分别为:属性、义务、目标、条件,否则.Agent根据他们所担任的角色遵守这些制度.

依赖关系描述了一个角色在实现自己目标时对其它角色的依赖.依赖对象是一个角色的目标.依赖者是这角色,它实现依赖对象的目标.

③物质模块:物质模块由系统中所有具有物质表现的实体,以及这些物质实体的合成物、连接物组成.它分三个方面说明:物质成分、物质联系、物质合成.

系统中的一个物质成分是一个能反映系统中Agent行为的实体.一个物质成分可能被指定给一个Agent从头到尾扮演的角色,或者可能是Agent自身拥有的,与它所扮演的角色无关.它包括特性、类型、行为、功能性几个方面.

物质成分之间可能存在各种关系,比如在门和房间之间有一个关联.同时物质成分能够有其它物质成分构成,比如一辆汽车由轮子、发动机等组成.

④操作模块:操作模块借助在物质模块、集体模块中定义的概念为Agent提供一个基本的动态模型.使用一次操作模块就完成一次模拟.操作模块有一个精确的活动区域,这区域被一系列活动环境所定义.操作模块中包括实体行为、计划、活动区域、角色扮演几个部分.每个实体都要自己的行为,这些行为具有下列属性:行为执行者、行动集、决策、前提、后置条件.

实体的行为是按计划进行.在系统中有四种不同类型的计划.原子计划,单一实体行为组成,比如员工演变为单位老板;顺序计划,由一套按特定次序执行的计划组成;可选择计划,由一套随机选择的计划组成(平等机会);循环,由一套保持条件的重复计划组成.

活动区域根据实体活动环境定义,每个活动环境的绘制是根据计划清单中大量相关实体行动发生次序完成的.在操作模块中Agent将被选为实体行为的实施者,也就是说Agent在不同行动中扮演某个角色.

⑤评估模块:评估模块帮助模型设计者分析模型仿真结果,评估模型的有效性(是否满足现实需要),可使用性(能帮助探索预先的问题).评估模块的评估方式是利用模型参数进行分析,包括问题领域变量、确认变量.

模型的执行不能违背现实世界条件,根据现实世界条件定义问题领域变量.它用于监控模型的运行,可从模拟运行结果的数据和变量中计算出来.问题领域变量与实体行为之间的关系用问题领域矩阵描述,变量和实体行为之间的关系可以是直接关系,也可以是间接关系.确认变量根据设计者想探索的问题来定义.

(3)MAIA建模思路

分析现实社会进行形式化;建立个体、社会模型;编写仿真程序并进行仿真运算;分析仿真结果并修正仿真模型,这是人工社会研究方法的基本步骤.它对于缺乏计算机学科背景的社会科学研究者是一件相当困难的事情.为此一些学者提出了以模型概念设计,运行模型,校正和数据分析为基本步骤的基于主体的人工社会建模指南[16].其中模型概念设计是人工社会模型能否被合理有效构建出来的关键.计算机建模语言很多,结构化方法,面向对象方法,面向目标建模方法,情景实例方法,形式化方法等[17].这里选择UML(Unified Modeling Language)进行讨论.

通过IDA框架我们可以确定研究问题,确定系统重要参数和条件,但这些问题、参数、条件的描述是一种自然语言的描述.在实现人工社会模型仿真中,我们需要准确的,形式化的计算机建模语言描述.MAIA元模型结构条理化人工社会模型中的各个要素,它对人工社会模型中的各个概念按模块进行的定义和说明,这些定义和说明在UML中的静态视图中按照程序设计思路用类图进一步完善并建立各对象之间的关系,为软件工程建模做准备.MAIA一方面是模型分析者和程序员之间的交流工具;另一方面它生产的概念模型表达了社会学研究者和程序员对所研究的社会模型的理解,以方便对模型的评估和校对.MAIA建模思路是利用MAIA元模型建立起了这样的一座桥梁:IAD—MAIA—UML.

3 结语

基于IAD结构发展起来的MAIA元模型与其它人工社会模型相比,它将社会制度和Agent全面的联系起来,更好地反映社会结构特征.根据MAIA元模型得到的MAIA工具定位在人工社会模型设计阶段:IAD框架的社会描述与计算机软件模型设计两个步骤之间,为社会学研究者和程序设计人员之间建立了一座桥梁,方便了两者的沟通交流.但是社会的复杂性不是能完全用MAIA元模型来体现的.在实际运用中,在具体的社会环境中,有些特定的参数需要专门列出来讨论.

[1]张江,李学伟.人工社会——基于Agent的社会学仿真[J].系统工程,2005,23(1):13-20.

[2]Gilbert N,Troitzsch K.Simulation for the Social(Second Edition)[M]. Buckingham:Open University Press,2005.

[3]Gilbert N,Doran J.Simulating societies:The computer simulation of social phenomena[M].London:UCL Press,1994.

[4]Gilbert N,Conte R.Artificial societies:the computer simulation of social life[M].London:UCL Press,1995.

[5]Lansing J S.Artificial societies and the social sciences[J].Artificial Life,2002,8(3):279-292.

[6]Hayes-Roth F,Erman L,Fouse S,Lark J,Davidson J.ABE:A cooperative operation system and development environment[M]//Bond A H,Gasser L.Reading in Distributed Artificial Intelligence.San Mateo:Morgan Kaufmann Publishers,1988:457-490.

[7]Bratman M E.Intentions,Plans,and Practical Reason[M].Cambridge, MA:Harvard University Press,1987.

[8]Shoham Y.An overview of agent-oriented programming[M]//Bradshaw M.Software Agents.Menlo Park,CA:AAA I Press,1997:271-289.

[9]Epstein J M,Axtell R.Growing Artificial Societies:Social Science from the Bottom up[M].Washington DC,USA:Brookings Institution Press and Cambridge,MA,USA:MIT Press,1996.

[10]Ghorbani A,Dignum V,Dijkema G.MAIA:An analysis and design framework for building artificial societies[J].Autonomous Agents and Multiagent Systems,2011,2(6):13-25.

[11]Ostrom E,Gardner R,Walker J.规则、博弈与公共池塘资源[M].王巧玲,任睿译.西安:陕西人民出版社,2011.

[12]王群.奥斯特罗姆制度分析与发展框架评介[J].经济学动态,2010, 4:137-143.

[13]Bézivin J.On the unification power of models[J].Software and Systems Modeling,2005,4(2):171-188.

[14]Schmidt D C.Guest editor’s introduction:Model-driven engineering [J].Computer 2005,39(2):5-31.

[15]Ghorbani A,Bots P,Dignum V,et al.MAIA:a framework for developing agent-based social simulations[J].Journal of Artificial Societies and Social Simulation,2013,16(2):9.

[16]Heath B,Hill R,Ciarallo F.A survey of agent-based modeling practices[J].Journal of Artificial Societies and Social Simulation,2009,12(4): 9-20.

[17]牛曦,刘强.软件工程需求建模方法的比较与分析[J].微计算机应用,2006,27(6):646-651.

【编校:王露】

MAIA——The Artificial Societies Model Based on IAD Framework

LIU Yi1,ZHOU Tao2
(1.School of Computer&Information Engineering,Yibin University,Yibin,Sichuan 644007,China;2.School of Government, Yibin University,Yibin,Sichuan 644007,China)

The characteristics of three Agent models(BDI,SugarScape,MAIA)were compared,and the connection between the structure of MAIA and the frame of IAD was introduced.The function and contents of MAIA Meta model's five structures,which include collective structure,constitutional structure,physical structure,operational structure and evaluative structure was concluded,and the elementary step of manual society based on MAIA Meta model was established.

Agent model;artificial society;MAIA;IAD framework

TP182

A

1671-5365(2014)06-0099-04

2014-02-21修回:2014-04-28

四川省教育厅资助项目(14ZA0266);宜宾学院资助项目(2011Z17)

刘益(1971-),男,副教授,硕士研究生,研究方向为计算机逻辑、人工智能

时间:2014-05-16 11:31

http://www.cnki.net/kcms/detail/51.1630.Z.20140516.1301.012.html

猜你喜欢
框架人工定义
人工3D脊髓能帮助瘫痪者重新行走?
军事文摘(2022年8期)2022-11-03 14:22:01
框架
人工,天然,合成
人工“美颜”
哈哈画报(2021年11期)2021-02-28 07:28:45
广义框架的不相交性
WTO框架下
法大研究生(2017年1期)2017-04-10 08:55:06
新型多孔钽人工种植牙
成功的定义
山东青年(2016年1期)2016-02-28 14:25:25
一种基于OpenStack的云应用开发框架
一种基于OpenStack的云应用开发框架