基于Repast.NET的演化囚徒博弈仿真

来源 :中国管理信息化 | 被引量 : 0次 | 上传用户:nolva
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘 要] 本文介绍了多主体仿真的基本理论,对新一代仿真平台Repast进行了阐述。通过对演化囚徒困境的进一步理论分析和仿真研究,揭示出多主体博弈的演化机制和规律。同时对影响博弈演化的因素进行了分析,比如博弈重复的次数、博弈者的适应系数、博弈邻居的选择等。并结合客观现实,对仿真结果进行了解析。仿真结果进一步揭示了Repast仿真工具在多主体演化博弈分析中的高效性和可靠性。
  [关键词] 博弈论;多主体仿真;Repast;演化
  doi:10.3969/j.issn.1673-0194.2009.10.035
  [中图分类号]F224.32; N945.13[文献标识码]A[文章编号]1673-0194(2009)10-0105-03
  
  1Repast与多主体仿真
  
  复杂适应系统(Complex Adaptive System,CAS)理论是由圣塔菲研究所(SFI)的霍兰教授于1994年提出的。它是当前最具代表性且应用最广泛的复杂系统理论。而基于 Agent建模与仿真是CAS理论的重要研究方法与手段。在系统和管理科学中,Agent是一种自身具有“主动行为能力”的个体。它和以前习惯使用的元素、部件、子系统等概念有着本质的区别。在多主体的情况下, Agent能够主动处理所处环境中发生的事件,作出反应,并且改变自身的结构和行为规则。从人工智能和软件开发的角度来看, Agent是一个能够完成某项或一系列任务的实体。总之,尽管侧重点不同,各学科对于Agent这个概念都是强调了主动性、适应性、演化、发展这样一些思想。这是基于主体的建模思想的核心。使用 Agent的建模方法是尽可能使微观个体与实际个体特征一致,然后观察在不同实验条件下系统可能的演化特征。
  在复杂适应系统仿真(Complex Adaptive System Simulation,CASS)中,ABM方法是极其重要和有效的。在这一领域有许多MABS(多主体仿真)工具,SWARM 和 Repast就是其中最杰出的代表。
  SWARM 起源于著名的美国圣塔菲研究所(Santa Fe Institute,SFI),是一组由 Objective C 语言写成的类库,也有用于 Java语言的编程接口,是应用最为广泛的 MABS 平台。
  Repast(Recursive Porous Agent Simulation Toolkit)是芝加哥大学社会科学计算研究中心研制的“循环多主体仿真工具”。而且Repast 3.0支持Java,Python,DotNet3种编程接口。Repast 在CAS理论研究、社会系统仿真、经济系统仿真等领域有着广泛的应用。特别是在基于 Agent 的计算经济学(Agent-based Computational Economics,ACE)这一新兴的经济学分支领域中,Repast 正在发挥越来越重要的作用。
  本文之所以选择Repast.NET版本,主要考虑3个原因:一是微软的视窗系统在国内有着最庞大的用户群;二是用于Repast.NET编程的C#语言是一种全新的、易用的、高效的跨平台语言,具有良好的发展前景;三是因为Repast在多主体重复行为处理中有着极其强大的功能,使得它在演化博弈建模中能够大显身手。
  
  2Repast.NET建模环境和运行环境
  
  2.1Repast.NET建模环境
  构造Repast.NET建模环境,主要有以下两个步骤:
  首先,要安装Microsoft VS.NET。这主要为Repast.NET建模提供一个编辑、编译和运行的集成开发环境。
  其次,要安装Repast.NET。从Repast网站上获取免费的名为Repast_.NET_1.1_Installer.exe的安装程序后,可直接安装。
  完成上述步骤后,我们就建立了一个Repast.NET建模环境。这时,运行Microsoft VS.NET,在新建C#项目时,就会发现有两个Repast的模板可供选择:一个是Base Repast Model;另一个是Default Repast Model。
  2.2Repast.NET运行环境
  实际上,在完成Repast.NET建模环境的构造后,也就建立了Repast.NET模型的运行环境。不过,更多的时候,我们可能要将编译后的模型带到其他机器上运行。此时,目标计算机必须至少符合两个条件:
  (1)安装了.NET Framework 。 这个框架,一般XP以上的系统都默认安装了。如果没有,安装一个微软的dotnetfx.exe即可。
  (2)拥有Repast的类库文件。这个条件容易实现,可在目标机上安装Repast,或者在建模时将模型中用到的Repast类库文件自动复制到模型所在目录。
  
  3基于Repast.NET的演化博弈仿真过程
  
  我们将基于Repast.NET的博弈仿真过程,分为模型背景和规则分析、仿真程序建立、仿真程序运行3个基本步骤。本文中,以“重复博弈囚徒困境”(Iterated Prisoner’s Dilemma,IPD)模型为例, 来介绍如何创建Repast仿真程序。
  3.1模型背景和规则分析
  我们先来看一下博弈论中的经典模型:“囚徒困境”。模型中有两个参与者A和B,可采取的行动有两个C(合作)和D(不合作)。在一次博弈中,双方根据博弈规则,选择利益最大化行为,不可避免地导致了行动组合(D,D)的发生。
  上述模型存在几个问题:首先,它是一个基于双主体的对阵局面,没有考虑多方博弈的情形;其次,这种博弈不是重复的;第三,所有博弈参与人都被设定为“利益驱动”类型,他们仅仅依赖博弈规则选择行动方案,没有考虑参与人类型对行动的影响。为此,对该模型进行如下修改,使其更加切合实际。
  首先,我们认为,参与人是有类型的,也就是“他有自己的行动信念”。他倾向于哪一种行动呢?这取决于对手的选择。假设对手合作,参与人合作的概率为p;而对手不合作时,参与人合作的概率为q。对应一组确定的p和q将决定一个参与者类型。因此,如果p和q连续分布,则参与者有无数类型。为了研究的可行性,取其中的4种特殊类型作为研究对象。
  
  结合现实情况,我们认为上述4种类型的博弈参与者是非常典型的:ALLC,即all cooperation,“吃亏也笑的人”;TFT,即tit-for-tat,对方合作,我也合作,也就是“吃软不吃硬的人”;ATFT,anti TFT,即“欺软怕硬的人”;ALLD,all defect,就是所谓“软硬不吃的顽固分子”。
  其次,考虑另一个现实情形,就是“人”总有学习的倾向。通过学习,他可能改变自身类型,以获取较高的效用。当然,每个人的“学习”能力和适应倾向是不一样的。因此,在模型中引入适应系数的概念,表示参与者改变类型的倾向程度。
  现在,假设有一组参与者进行博弈。群体中的每个成员和随机选择(或者按特定规律选择)的一组“邻居”进行重复博弈,博弈行动由他们的类型决定。每一轮博弈中,每两个参与者均进行多次博弈。在每一轮博弈结束时,参与者对这一轮博弈的所有行为者中最有效的战略进行模仿,每个参与者进行类型适应性改变。也就是说,在模型运行过程中,参与者类型是变化的。
  在这样一个“多主体,重复,演化”博弈环境中,博弈将呈现出什么样的规律呢?通过单纯的数学分析显然是不够的。下面,我们就用Repast.NET来进行仿真模拟。
  3.2 仿真程序建立
  根据上述模型背景,使用C#.NET为语言工具,借助于Repast.NET的强大类库,我们将仿真程序分为3个类:模型类、主体类和图形类。模型类负责控制模型的创建和运行,主体类描述主体的行为,而图形类则主要负责以图形方式输出仿真过程中的相关结果。我们建立其Repast 模型。具体思路如下:
  现在有一群参与者(256人),参与者类型type有4种。在模型运行过程中,参与者类型是变化的。现设定50个全局回合(即模型中的step方法执行50次)。每个全局回合中,执行如下任务:
  (1)每个全局回合开始时,将列表中的参与者部分属性重置。如博弈次数累计、收益累计,它们的初始值为0。并且,将博弈对象列表(也就是博弈邻居)清空。
  (2)每个全局回合中进行一次相互作用,每个参与者都与随机的一组邻居(本例中是4人)进行若干次重复博弈。在每一次两两博弈中,双方均将对手加入博弈邻居列表中,并将自己的收益进行累加。
  (3)每个全局回合结束后,每个参与者进行类型适应性改变。首先,所有参与者计算出自身的适应类型。计算依据是,对某参与者的博弈邻居列表中的每个主体在其若干次博弈中平均收益进行比较。博弈邻居列表中收益最大者的类型就是该参与者的新类型。然后,再据此对该参与者的类型进行更新。这样,所有参与者都依据此原理进行类型更新。
  (4)输出相关结果。这里,输出的是每一全局回合后各种类型的人数。
  在模型类的模型的step(在这里,一个step步进就是一个全局回合)方法代码中,可以看到模型执行的上述思路。
  限于篇幅,我们不再对模型的代码编制过程进行详细描述和分析。主要分析的是模型的运行结果,以及模型中相关参数的变化对运行结果的影响。
  3.3仿真程序的运行
  模型运行后,我们就可以看到动态的演化效果。如果主体总数为256,4种类型的主体数平均分配,适应系数为0.2。当博弈回合数为50时,演化结果如图1所示。
  
  如果修正模型的相关参数,我们就可得到不同的演化结果。在下面,将对不同参数下的仿真结果进行详细分析。
  
  4仿真结果分析
  
  通过上述模型参数的修改,我们可以发现一定的运行规律。现分析如下:
  (1)如果初始战略组合各占1/4,当两个参与者一次博弈时的回合数为 4时,随机的两个参与者的博弈行为是一种短期行为,这个演化模型将很快全部采取ALLD (总是不合作)的策略。通过调整4种类型的比例,我们发现只要存在ALLD类型,哪怕是很小的比例,也会导致可怕的结果。这一点也说明了这样一个事实,在市场中,如果不合作者能够赚取较多的利益,那么他有可能影响到整个市场。当一次博弈时的回合数为10或更大时,每一次博弈的两个参与者取得的就不是一种短期效益了。此时,TFT(针锋相对的战略)将是一种较优策略。参与者观察到这种优势,因此,最终所有的参与者将演化成TFT。我们从中不难体会到“近墨者黑,近朱者赤”的哲学真谛。
  (2)另外,第2,3两种类型的首次选择,可能也会给最终结果带来直接影响。特别是持“针锋相对”战略者在一开始博弈时的首次选择,也会给最终结果带来重要影响。TFT战略持有者,在一开始的博弈行动实际上表明了他更倾向于哪一种行动。他这种行为会直接影响其他参与者的后续战略改变,引起连锁反应。因此,参与者须充分考虑首次行为对整个博弈链的影响,不能因眼前利益而影响长期利益。也就是说,一次所谓的“理性”博弈的有效性,可能会导致重复博弈的长期无效。
  (3)此外,参与者的类型分布也是决定演化方向的关键因素。如果只有前两种类型(比如,pALLC = 0.5,pTFT = 0.5,pATFT = 0.0,pALLD = 0.0),演化结果就不会出现后两种类型。换句话讲,在给定的环境中,如果本来就没有某种类型,不管怎么演化,也不会生成这种类型。这个仿真结果也带给我们非常重要的启示。要防止系统的恶性演化,必须“防微杜渐”,只有彻底杜绝负面类型,才能完全遏制其负面影响。
  (4)模型中的适应系数pAdapt = 0.2,表示参与者改变类型的倾向程度。此系数一般较小,表示大多数参与者倾向于维持原有类型不变,这主要是由于人的“惯性力”所造成的。调整适应系数的取值,可以改变博弈演化的进程。正是因为这个原因,我们从中明白了这样的事实,那就是为什么在开放的现代都市中,改革进步的步伐要比落后闭塞的地区要快得多。
  (5)还有,收益矩阵的改变,也是影响博弈结果的关键因素。对于规则制定者来讲,应充分考虑各种主体类型,制定有明显指导意义的、体现系统主旋律的博弈规则。这样,与系统主旋律背道而驰的主体类型,在博弈中就不可能获取高于其他博弈者的效用。因此,这些与社会主旋律相违背的类型就不可能成为其他主体效仿的对象。同样,那些在社会中应倡导的主体类型,就应该在一个具有激励作用的博弈规则下,获取高于一般主体的效用。因此,对于一个社会来讲,法律、规章、道德公约都应该有明确的“颂善抑恶”的指导思想。可以这样讲,制度问题可能是博弈结果的核心决定因素。
  (6)现在,我们再来考虑博弈邻居的选择规则给博弈结果带来的影响。前面的模型,主体在两两博弈中,选择的是“随机”邻居。将所有参与者放置于一个空间网格中。博弈时,参与者通过Repast类库中空间类的getVonNeumannNeighbors方法获取其冯-诺依曼(Von. Neumann)邻域。这样,参与者只与他们的诺依曼相邻者发生博弈交互。这里的冯-诺依曼邻域指的是一个主体的上、下、左、右4个相邻主体。这种改变使得合作战略在群体中具有更强的生存力。该模型的运行结果说明,在大多数情况下,TFT比ALLD更加有利。这一仿真结果非常精确地解释了这样一个普遍存在的社会现象:当博弈主体间的联系比较固定时,博弈参与者更倾向于采取合作的战略。而对于主体联系的“随机”性较强的博弈,参与者可能会存有较大的“机会主义”倾向,以期博取不合作所带来的“一次性”利润。
  
  5小结
  
  从简单主体和简易规则出发来研究系统的复杂性是CAS 理论研究的重要方法。而刚刚兴起的Repast.NET则是对这种研究进行计算机仿真的重要工具。相信,随着多主体演化博弈理论的深化发展,也随着微软DOTNET技术的迅速普及,Repast.NET将会在这一领域扮演越来越重要的角色。同时,多主体演化博弈理论也会得以更快地发展。
  
  主要参考文献
  [1]陈禹. 复杂性研究的新动向——基于主体的建模方法及其启迪[J]. 系统辩证学学报,2003(1).43-50.
  [2] 姜昌华,韩伟,胡幼华. REPAST—— 一个多Agent仿真平台[J]. 系统仿真学报,2006(8).2319-2322.
  [3] 童慧骅,屠文川. 一种基于CAS的代理主体行为仿真模型[J]. 计算机仿真,2006(9):272-276.
  [4] Cohen, Riolo,and Axelrod. The Emergence of Social Organization in the Prisoner’s Dilemma[R].SFI Working Paper, 1999.
  [5] 张江.基于Agent 的计算经济学建模方法及其关键技术研究[D].北京:北京交通大学,2006.
其他文献
本报讯 中国卫星导航系统管理办公室日前发布消息称,经全球连续监测评估系统实时测试表明,北斗三号全球卫星导航系统定位、测速、授时精度,以及服务的可用性、连续性等均满足指标要求。系统服务能力步入世界一流行列,特色服务得到全面部署。  据介绍,北斗区域短报文通信、全球短报文通信已面向大众用户和部分实际用户提供服务;星基增强服务正面向民航、海事、铁路等高完好性要求用户提供试运行服务;地基增强系统可提供实时
未来 5G 新基建逐步实施到位,有望带动核心化工新材料的需求爆发。因此,亟需加大对化工新材料研发和产业化投入,大力开展技术改造,加强国际深度合作,促进创新团队引进和人才培养,创造完善的产业发展环境,从根本上推动我国 5G 化工新材料产业的快速发展。  化工新材料对5G发展的支撑作用  5G通信特点和对材料的  特殊要求  第五代移动通信(5G)技术是最新一代蜂窝移动通信技术,无论从时域、空域还是频
本报讯 杭州互联网公证处基于司法联盟链打造的知识产权服务平台7月15日正式上线,平台基于区块链技术,提供电子数据在线存证、出证服务,将缩短取证和出證时间,充分发挥公证职能。同时平台与杭州互联网法院、司法鉴定中心、互联网公证处等司法节点对接,提高了存证数据的可信度。
[摘要] 本文结合微利的校园经济的特点,以个性化纪念册为例,从分析中国大学生市场需求出发,对个性化纪念册在高校校园推广的营销策略进行研究,并结合实例进行验证,具有实际价值和推广价值。  [关键词] 校园经济; 个性化; 大学生市场; 营销策略; 市场推广  doi : 10 . 3969 / j . issn . 1673 - 0194 . 2012 . 14. 041  [中图分类号] F27
本报讯 近日,农业农村部农村合作经济指导司与阿里巴巴集团达成战略合作,共同推进乡村治理、农民合作社和农业社会化服务组织的数字化。双方将共建数字化乡村治理平台。阿里巴巴将基于钉钉平台的基础功能,针对乡村组织特点和治理需求,以社会管理、公共服务、应急处置、乡风文明等内容为重点,为乡镇、村两级免费搭建数字化治理平臺。同时,逐步推进乡村治理过程中的组织在线、沟通在线、协同在线、业务在线、生态在线,用数字化
[摘 要]目前,产学研模式成为企业技术研发和转移的重要途径。本文首先阐述了产学研模式以及技术研发和转移的定义,接着分析现阶段产学研的类型及其存在的问题,并以清华大学重型装备成形制造工程研究所为例进行深入分析,试图为我国产学研模式的发展提供一种思路。  [关键词]产学研;技术研发和转移;清华大学;中冶京唐  doi:10.3969/j.issn.1673-0194.2009.14.038  [中图分
近日,据国外媒体报道称,大众将推出自己的充电服务“We Charge”,并在欧洲地区建立15万个充电桩。大众汽车数字充电服务主管Richard van Tatenhove表示,通过“We Charge”,大众为欧洲客户提供快捷、便利的电动化出行解决方案。  “We Charge”将采取三种资费模式。其中,“We Charge Free”的月费为零,但单次充电价格较高,适用于很少使用公共充电桩的车主
工信部支持创建北京等国家人工智能创新应用先导区  工业和信息化部近日印发通知,支持创建北京、天津(滨海新区)、杭州、广州、成都国家人工智能创新应用先导区。这是继上海(浦东新区)、深圳、济南-青岛3个先导区后,工业和信息化部发布的第二批先导区名单。至此,全国人工智能创新应用先导区已增至8个。“十四五”时期,工业和信息化部将进一步与有关省市加强协同,将先导区建设作为推动人工智能和实体经济深度融合的重要
LG Display近日表示,将牵头开发“可拉伸屏幕”这一国家级项目。据悉,该项目共有21家公司和机构參与,由韩国贸易、工业和能源部(MOTIE)支持,目标是在2024年之前生产出一种可拉伸的显示屏,该显示屏可以延长20%。  LG称,可拉伸屏幕具有一定弹性,可以像橡皮筋一样伸长,并且能够支持各种形状而不会发生变形和扭曲。与目前的可弯曲、可折叠之类的柔性显示屏相比,该款产品将拥有更加广泛的应用范围
摘要:当前经济高速发展,企业的风险控制力已经受到了越来越多企业的关注,对企业风险的认识、控制及防范已经成为当今企业长效发展的重要课题。下面,本文对企业风险的含义及特征进行简单概述,并对企业风险控制力的有效措施进行分析。  关键词:企业;风险;控制力;措施;分析    自上世纪90年代至今,世界经济一直处于危机四伏、动荡不安的局面,大范围的金融危机时有发生。在亚洲金融危机后,许多东南亚的企业破产了,