复杂系统的计算机模拟方美琪课件

上传人:re****.1 文档编号:569512586 上传时间:2024-07-30 格式:PPT 页数:213 大小:1.28MB
返回 下载 相关 举报
复杂系统的计算机模拟方美琪课件_第1页
第1页 / 共213页
复杂系统的计算机模拟方美琪课件_第2页
第2页 / 共213页
复杂系统的计算机模拟方美琪课件_第3页
第3页 / 共213页
复杂系统的计算机模拟方美琪课件_第4页
第4页 / 共213页
复杂系统的计算机模拟方美琪课件_第5页
第5页 / 共213页
点击查看更多>>
资源描述

《复杂系统的计算机模拟方美琪课件》由会员分享,可在线阅读,更多相关《复杂系统的计算机模拟方美琪课件(213页珍藏版)》请在金锄头文库上搜索。

1、复杂系统的计算机模拟探索复杂性的模型方法MQFANGPUBLIC.BTA.NET.CN复杂系统的计算机模拟by方美琪课件复杂复杂诞生于秩序与混沌边缘的科学一场激动人心的科学观念的革命瞬间照亮了各个学科领域,其中的原则和思想影响是如此地深远和广泛,以至于绝大多数学科都卷入其中!复杂系统的计算机模拟by方美琪课件过去我们用数学给出世界完美的描述,我们很陶醉,以为我们已经认识了世界。但近来我们发现世界其实很复杂,并不确定,偶然的小情况可能放大为决定性的事件,影响了整个历史进程复杂地发展。原来组成系统的个体是有适应性的。个体的适应性就产生了系统的复杂性。用计算机程序描述个体的行为,在一定的框架之下,个

2、体平行地动作起来,这包括个体对外界的适应,偶然的小情况,个体的相互作用.如此,计算机模拟就比较真实地反映了复杂世界的一个个方面。 复杂系统的计算机模拟by方美琪课件第一节 复杂性科学1.确定性的终结、复杂性科学的兴起2.路径依赖的反思3.复杂性研究的方法复杂系统的计算机模拟by方美琪课件第二节 复杂系统1.系统理论2.复杂适应系统复杂系统的计算机模拟by方美琪课件第三节 模型与模拟方法1.模型2.建摸与模拟3.模拟软件平台SWARM的介绍4.模拟软件平台STARLOGO的介绍 5.应用举例复杂系统的计算机模拟by方美琪课件第一节 复杂性科学I 确定性的终结、复杂性科学的兴起复杂系统的计算机模拟

3、by方美琪课件I 确定性的终结!复杂系统的计算机模拟by方美琪课件拉普拉斯决定论宇宙不过是一台机械的钟表 宇宙的未来完全由它的过去决定。 世界是可被预知的。只要我们明白了支配宇宙的规律,那么我们就能推察过去,预言未来。 宇宙的统一规律已找到了(牛顿),宇宙的图景已被描绘出来了。复杂系统的计算机模拟by方美琪课件确定性的乐观诗人蒲柏为伟大的牛顿写下的墓志铭所言: 自然和自然的法则在黑夜中隐藏, 上帝说,让牛顿去吧 于是一切都已照亮。 复杂系统的计算机模拟by方美琪课件 通向混沌初始条件的微小变动就会导致轨道完全不一样。 “差之毫厘,失之千里”牛顿定律本身虽是确定性的,但它所描述的具体事物,很可能

4、出现随机行为。混沌 = 非线性动力学 =难以精确求解复杂系统的计算机模拟by方美琪课件洛伦兹与气象混沌1963年的一天,气象学家洛伦兹踱进麻省理工学院的咖啡馆。而在他进来之前,他刚把一个数据输入他那台现在看来工作速度其慢无比的计算机,以验证上一次的结果。他知道结果还需要等一个来小时,他大可一边躲开噪音,一边来悠闲地享受点咖啡。当他回到自己的工作室时,令他惊讶的事发生了:这次的结果与上次的结果在开始时相同,但到后来却出现了很大的差异。他的结果是通过曲线表示的,这就是说两条曲线只是在开始时相吻合,而到后来两者却分道扬镳了。复杂系统的计算机模拟by方美琪课件混沌与复杂复杂是多体系统多体之间的交互关系

5、是非线性的单独一个主体的运动轨迹是混沌系统整体则涌现出一定的秩序和结构例子:湍流与水分子 社会与人 历史规律 经济周期与经济主体 股票行情与股民的行为复杂系统的计算机模拟by方美琪课件在传统的社会科学研究中,解释和预测间的过渡看来太随意而缺乏严谨了对一个社会现象的正确解释并不意味必然能够对这个现象的未来进行预测,特别当内在机制中有非线性关系时,这种从解释到预测之间的思维延伸几乎百分之百是不可能的。复杂理论告诉我们,即便我们能够很清楚地界定和完全掌握了对个体行为影响的所有因素,对组织或机构行为的预测仍然是非常不充分的。 复杂系统的计算机模拟by方美琪课件人类认识实践中的经验教训大自然对人类线性思

6、维的教训 水坝生态 中国垦荒与沙漠化 美国西部的风尘暴 核泄露 人工生态实验的失败复杂系统的计算机模拟by方美琪课件失败的逻辑事情因何出错,世间有无妙策为什么为什么铁路信号系统工作正常时,列车仍然会发生撞车事故?为什么为什么所有操作人员警觉地坚守着工作岗位,核反应堆依然会发生灾难性的熔化事故?为什么为什么我们制定得甚好的那么多专业和个人计划,会如此频繁地出岔子?复杂系统的计算机模拟by方美琪课件对人类思维方式的反思德国 心理学迪特里希.德尔纳 思维复杂性研究用计算机模拟情景试验让不同的专家以游戏的方式 发掘决策思维模式的一般特征理性思维的局限性:逻辑严密 线性思维方式直觉、联想=思维的并行复杂

7、系统的计算机模拟by方美琪课件直觉思维整体思维的回归世界上原来不只存在一种逻辑思维方式神秘主义思潮和新时代(new age )运动复杂系统的计算机模拟by方美琪课件II 路经依赖的反思复杂系统的计算机模拟by方美琪课件路经依赖系统的发展与其初始条件紧密相关,与其发展过程中的偶然事件密切相关个体微不足道的行为可能产生出乎意料的结果复杂系统的计算机模拟by方美琪课件马屁股的宽度决定了火星探测发射器的宽度?马屁股的宽度决定了双马马车的车辙宽度 决定了 电车轨道的宽度电车轨道的宽度决定了铁轨的宽度(修建第一条铁路顺着马车的车辙印记)铁轨的宽度决定了火车的车厢的宽度决定了火箭发射仓的最大宽度(为了运载方

8、便)决定了火星探测发射器尺寸复杂系统的计算机模拟by方美琪课件故事是颇有趣的。从一定意义上说,今天世界是最先进的运输系统的设计,或许是由两千年前两匹战马的屁股宽度来决定的。历史惯性的力量是多么的强大,要冲破由惯性形成的规则又是多么的艰难。复杂系统的计算机模拟by方美琪课件经济领域内的路经依赖经济领域内的路经锁定:钟表的顺时针,信息化的标准和垄断 微软的战略: 当盗版让人们已经习惯于使用windows时,就会受制于它,很多人只会使用装了windows的计算机高科技的竞争就是标准的竞争 DD格式 无线上网的格式的争议复杂系统的计算机模拟by方美琪课件自然科学领域的路径依赖极其微小的初始状态会成指数

9、的放大,极大地影响了混沌系统的输出人类对世界的认识实践活动影响了世界复杂系统的计算机模拟by方美琪课件科学认识的反思人类对世界的认识实践活动影响了世界后现代科学:自然规律是自然的习惯集体的习惯有被锁定成为既定成俗的倾向个人习惯之间的交互涌现出集体的习惯自由落体难道是铜球的一种难改的积习?万有引力难道是物质世界的一种惯例?惯性vs习惯 参考 作为习性的自然法则作为习性的自然法则作为习性的自然法则作为习性的自然法则:科学的后现代基础英 鲁珀特谢尔德拉克 Sheldrake 网上有个人主页复杂系统的计算机模拟by方美琪课件科学认识的反思科学的自然观,不以人的意志为转移的客观世界是否存在?完全严格的重

10、复试验是否可能? 完全严格的重复实验是不可能的人是否可以第二次踏入同一条河流?反归纳法 归纳得到的现象越多,推广的余地越小正归纳 归纳得到的现象越多,推广到全部的可能性越大复杂系统的计算机模拟by方美琪课件后现代科学心理学家 麦独孤的老鼠迷宫实验随着实验的重复进行,虽然选定重复实验的老鼠是完全不同的个体,但老鼠的智力却随着实验的重复而递增,后来参加实验的老鼠比前面参加实验的老鼠更快地学会走出迷宫文化人类学和新时代巫术的兴起 影视界的 波利哈特热复杂系统的计算机模拟by方美琪课件3. 复杂性研究方法复杂系统的计算机模拟by方美琪课件复杂系统的特征涌现非线性反馈循环开放式部分不能包含整体路径依赖,

11、与历史相关(混沌特性)多层次嵌套边界模糊复杂系统的计算机模拟by方美琪课件复杂系统研究的议题和范例发现和应用刻划社会系统、自然系统演化的规律的普适性方法对人工技术系统(企业信息化、互联网络、数字化生存)的演化规律进行探讨例如:企业信息化建模 信息经济学 人工技术网络和社会网络的脆性研究 网络对社会交往的影响 交往媒介的革新与社会文化的变革等复杂系统的计算机模拟by方美琪课件复杂系统的普遍性生命体智力神经网络社会系统 蚁群 经济 股市人际关系网 互联网 电讯网 航运线路复杂系统的计算机模拟by方美琪课件生命体的复杂性2002年5月,英国自然周刊上宣布在冰岛北部海下发现了一种迄今所知最小的生命。这

12、种被称为“Nanoarchaeum equitans”的微生物属于古细菌的一种,其基因组的DNA碱基对仅有50万左右。假设一个基因的平均长度为1000个碱基,那么这个细菌所拥有的基因大约是500个。如果每个基因编码一种蛋白质,那么这个细菌最多可以拥有500种蛋白质。哪怕是最小、最简单的生物体,也是由许多执行不同功能的组分构成的。因此,生命复杂性的第一个特征是,生命是一种复合体,不可能由一个成分(一种基因或蛋白质)构成。复杂系统的计算机模拟by方美琪课件全全球球通通讯讯网网络络全球通讯网络复杂系统的计算机模拟by方美琪课件航航空空交交通通网网航空交通网复杂系统的计算机模拟by方美琪课件分形图案分

13、形分布的宇宙:瑞士天文学家Franceso Sylos Labini 宇宙平均看起来是各向同性的,但却不是均匀的,我们在某一层级上。复杂系统的计算机模拟by方美琪课件复杂系统的计算机模拟by方美琪课件CAS复杂自适应系统理论CAS理论的最基本的思想系统的复杂性(整个系统的演变或进化,包括新层次的产生、分化和多样性的出现,新的、聚合而成的、更大的主体的出现等等,)是来源于系统中的成员的适应性。所谓具有适应性,就是指它能够与环境以及其它主体进行交流,在这种交流的过程中“学习”或“积累经验”,并且根据学到的经验改变自身的结构和行为方式。 1 参见系统科学,徐国志等,上海科技教育出版社 2000年 P

14、252返回返回返回返回复杂系统的计算机模拟by方美琪课件复杂系统研究的方法和理论结构状态描述 分形分维 状态空间 自组织与耗散结构 演化机制的动力学描述 艾根超循环 协同学复杂系统建模与模型表示 受限生成系统 网络模型 非线性动力学方程 元胞自动机 多主体系统 人工生命复杂系统的计算机模拟by方美琪课件复杂系统研究的方法和理论CAS理论网络模型:复杂网络拓扑研究 小世界网络 尺度无关的网络复杂系统的计算机模拟by方美琪课件为什么用计算机?1860 年,法国天文学家 Delaunay( Charles Eugene Delaunay,1816-1872)为计算受到地球与太阳重力影响的月球运动轨迹

15、,花了二十年,计算过程填满一本书,也只得到一个近似解1970年, 用符号方程检查他的计算,计算机只花了20个小时,不但求出更精确的近似解,还找出 Delaunay 的三个计算错误四色图问题整体大于部分之和:个体设计上的简单规则不能预料交互过程中涌现出的整体新特征根本原因:非线性方程的不可积,不能精确求解,不能长期预测复杂系统的计算机模拟by方美琪课件人工社会Sugar scape 模型 糖域模型 芝加哥大学社会政治学研究所人工社会拓展了社会学、人类学研究的手段在虚拟的社会中观察战争、文化等因素的形成例如:货币的形成过程。在一个追求交换效益最大化、以分工细化为方向的人工社会中这是必然发生的。复杂

16、系统的计算机模拟by方美琪课件统一规范与计算机建模工具如 Swarm Repast Ascape Satrlogo Dynamo等工具化 标准化 简便化跨学科性计算机建模工具应该 规范研究 方便研究 方便交流复杂系统的计算机模拟by方美琪课件模型方法是现代科学的一种核心方法用于复杂性研究的典型信息模型是一种半经验半理论模型。模型是知识表示的基本概念和工具复杂系统的计算机模拟by方美琪课件第二节 复杂系统系统理论复杂适应系统复杂系统的计算机模拟by方美琪课件系统理论 复杂系统的计算机模拟by方美琪课件系统 什么是系统?贝塔朗菲认为,系统是处于一定相互关系中与环境发生关系的各组成部分(要素)的总体

17、。 或者说,系统是集合内各要素按一定的结构组织而成的一个整体,并在与外部环境进行物质、能量、信息的交换过程中体现出一定的功能。 复杂系统的计算机模拟by方美琪课件系统科学系统科学是探索系统的存在方式和运动变化规律的学问,是对系统本质的正确反映和真理性认识。系统科学已经形成了一个学科群:如系统论、信息论、控制论、运筹学、博奕论、协同学、耗散结构理论等。系统科学方法是按照系统科学的观点和理论,把研究对象视为系统来解决认识和实践中的各种问题和方法的总称。复杂系统的计算机模拟by方美琪课件系统科学方法的原则运用系统的观点研究和处理对象时,要把握以下一些原则:(1)整体性原则。整体性原则是系统方法的首要

18、原则。(2)动态原则。这是指系统方法的历时性原则。复杂系统的计算机模拟by方美琪课件系统科学方法的原则(续)(3)最优化原则。 亦称整体优化原则。本着“多利相权取其重,多害相权取其轻”的精神进行综合优化和系统筛选。(4)模型化原则。 采用系统科学方法需要这真实系统模型化。模型化原则是采用系统化方法时求得最优化的保证。 前两个原则是基础,第三个是目标,第四个是手段。复杂系统的计算机模拟by方美琪课件系统科学方法的作用为人们提供了新的思想模式,是推动科技整体化、综合化的重要方法。兼具多种认识功能,是研究复杂系统的有效工具。为人们提供了制定系统最佳方案以实行优化组合和优化管理的手段。复杂系统的计算机

19、模拟by方美琪课件探索复杂性的方法一 探索简单性研究相对简单的对象特别是把用简化的方法研究事物,称为探索简单性。近代自然科学基本上属于探索简单性的科学,人们形成了一种信念,即认为一旦掌握了简单性的实体和关系,任何复杂的对象都可以构造和计算出来。复杂系统的计算机模拟by方美琪课件二 探索复杂性 强调整体与部分的关系是一种非加和性。 复杂系统各要素之间存在非线性。系统变化过程服从因果反馈规律。系统不但存在,还在生长和消逝着。复杂系统的计算机模拟by方美琪课件复杂性探索的方法论启示:从还原论到整体论的转变;从线性观到非线性观的转变;科学兴趣从简单性向复杂性的转变;从崇尚解析方法向重视非解析方法的转变

20、;确定论和概率论两套描述体系从对立到沟通。 复杂系统的计算机模拟by方美琪课件复杂适应系统理论 的最基本的思想复杂适应系统也即CAS(Complex Adaptive System)。我们把系统中的成员称为具有适应性的主体(Adaptive Agent),简称为主体。复杂系统的计算机模拟by方美琪课件所谓具有适应性,就是指它能够与环境以及其它主体进行交流,在这种交流的过程中“学习”或“积累经验”,并且根据学到的经验改变自身的结构和行为方式。整个系统的演变或进化,包括新层次的产生,分化和多样性的出现,新的、聚合而成的、更大的主体的出现等等,都是在这个基础上出现的。复杂系统的计算机模拟by方美琪课

21、件复杂适应系统的例子生物有机体生态系统经济运输复杂系统的计算机模拟by方美琪课件为什么使用Agent-Based Modelling传统的建模方法能够描述宏观的系统,但是并不能解释一些特性的来源;不能很好的处理离散系统;ABM能够很好的针对以上问题进行处理,它是传统建模方法的一个补充。复杂系统的计算机模拟by方美琪课件 CAS基本思想1994年正式提出我们把系统中的成员称为具有适应性的主体(Adaptive Agent),简称为主体。所谓具有适应性,就是指它能够与环境以及其它主体进行交流,在这种交流的过程中“学习”或“积累经验”,并且根据学到的经验改变自身的结构和行为方式。整个系统的演变或进化

22、,包括新层次的产生,分化和多样性的出现,新的、聚合而成的、更大的主体的出现等等,都是在这个基础上出现的。复杂系统的计算机模拟by方美琪课件基于CAS思想的要点:A)主体(Adaptive Agent)是主动的、活的实休。这点是CAS 和其他建模方法的关键性的区别。正是这个特点,使得它能够用于经济、社会、生态等其它方法难于应用的复杂系统。B)个体与环境(包括个体之间)的相互影响,相互作用,是系统演变和进化的主要动力。以往的建模方法往往把个体本身的内部属性放在主要位置,而没有对于个体之间,以及个体与环境之间的相互作用给予足够的重视。这个特点使得CAS方法能够运用于个体本身属性极不相同,但是相互关系

23、却有许多共同点的不同领域。复杂系统的计算机模拟by方美琪课件基于CAS思想的要点:C)这种建模方法不象许多其他的方法那样,把宏观和微观截然分开,而是把它们有机地联系起来。它通过主体和环境的相互作用,使得个体的变化成为整个系统的变化的基础,统一地加以考察。D)这种建模方法还引进了随机因素的作用,使它具有更强的描述和表达能力复杂系统的计算机模拟by方美琪课件CAS了描述复杂适应性的6个特点:分散的相互作用 全局现象是由许多分散的异质主体的相互作用产生的,任意给定主体的行动依赖于对有限数目其他主体的行动和这些主体共同建立的积累状态。主体的差异性导致积累行为的“永远新奇”没有全局控制者 没有全局性实体

24、控制相互作用,控制产生于主体间的竞争和写作机制。经济行为通过法律制度、设定的角色和波动的联系调节。没有全局竞争对手个体可以运用经济中的所有机会。复杂系统的计算机模拟by方美琪课件CAS了描述复杂适应性的6个特点:层次交叉的组织 经济中具有许多层次和相互作用。任何给定层次的单元(行为、动作、策略和产品)都作为构建较高层次的单元基本块。整个组织不仅具有层次性,层次间还存在许多相互作用。连续的适应性 依据积累的经验,主体的行为、动作、策略和产品不断调整,导致系统不断适应,层次间还存在许多相互作用。复杂系统的计算机模拟by方美琪课件CAS了描述复杂适应性的6个特点:永远创新 新行为和新结构可能刺激更新

25、的行为和更新的结构的创立,产生一个持续创新的状态。经济中的新市场、新技术、新行为和新组织不断创立新的环境,填充新环境的行动将产生更新的环境。静态被动态代替。偏离均衡的动态 由于新的环境、新的潜在力量、新的可能性不断产生,经济运行远离任何最优或全局的均衡。均衡是暂时的,非均衡是常态。意味着改进通常是可能的,并且却是是由规律的发生。复杂系统的计算机模拟by方美琪课件CAS的7个有关概念1聚集聚集(Aggregation)有两个含义。有两个含义。简化复杂系统的一个标准方法即把相似的事物聚合成类,例如树、汽车、银行等。 主体通过“粘合”形成较大的更高一级的主体介主体(meta-agent)。 2标识标

26、识(Tag)在聚集体的形成过程中,标识机制在起作用。标识的作用在于区别主体。聚集体的形成或者说主体的聚集都是有选择的,并非任意个体都会聚集。标识的作用在于促进主体选择性的相互作用。 复杂系统的计算机模拟by方美琪课件3非线性非线性(Non-linearity)非线性是指个体自身属性的变化以及个体之间的相互作用并非遵从简单的线性关系。因为这样,复杂系统的行为才会如此难以预测;才会经历曲折的进化过程,呈现出丰富多彩的性质和状态。4流流(Flow)在个体与环境之间存在着物质流、能量流和信息流。CAS理论认为这些流的渠道是否通畅、周转迅速到什么程度,都直接影响系统的演化过程。 复杂系统的计算机模拟by

27、方美琪课件5多样性多样性(Diversity)CAS理论认为,在CAS系统中,多样性既非偶然也非随机。每个主体都安顿在由以该主体与其他主体相互作用所限定的小生境上(niche,或翻译为生态位)CAS理论认为,多样性产生的原因在于适应过程中,是一种动态模式,具有持续性和内聚性。 CAS系统与其他系统的最重要区别在于组成CAS系统的主体的多样性 复杂系统的计算机模拟by方美琪课件6内部模型(内部模型(Internal Model)主体复杂的内部模型是主体适应性的内部机制和精髓,主体在适应过程中接受外部刺激,做出反应,合理调整自身的内部结构。最终,结构的变化,必须使主体能够预知再次遇到该情形时会随之

28、发生的后果,主体由此来适应环境。 7. 积木块积木块(Building Blocks) 就像人往往通过将复杂问题分解成若干简单部分进行理解一样,CAS内部模型用搭积木的方法对已测试过的规则进行组合,产生新问题的处理规则,已有的规则被形象化地称为积木块,它们是新规则产生的基础。复杂系统的计算机模拟by方美琪课件第三节 模型与模拟方法1.模型2.建摸与模拟3.模拟软件平台SWARM的介绍4.模拟软件平台STARLOGO的介绍 5.应用举例复杂系统的计算机模拟by方美琪课件具体地用模型与模拟方法探索复杂性模型数学模型模拟基于主体的建模方法和CAS复杂系统的计算机模拟by方美琪课件 模型方法定义:模型

29、是在结构或/和行为的重要方面和所研究的系统相似的,真实的或想象的系统的映象。它往往能为大范围的观察事实提供解释。复杂系统的计算机模拟by方美琪课件模型与原型模型的建立不是“原型的重复”,而是按研究目的的实际需要和侧重面,寻找一个便于进行系统研究的“替身”。不同的人由于研究的目标不同,就会对某些方面做出不同的简化。 在原型系统及模型之间存在着“反馈”的关系,根据对原型系统规律的认识,可以建立模型。而建立模型进行实验的过程又可发现一些新的规律,由此预测未来或丰富对原型系统的认识。 复杂系统的计算机模拟by方美琪课件复杂系统的计算机模拟by方美琪课件模型应用范围人类对世界的探索过程,就是建立各种模型

30、表示的过程。人类知识积累的过程,也是修正和具体化各种形态的模型的过程。 静态结构的模型称为静态模型 描述事物发生、发展、演化过程的模型称为动态模型。 历史地看,模型形态的变化也有一个逐渐从简单到复杂的发展过程。从最初原始的思维意象模型,发展到借用外在的工具搭建的各种模型,包括绘画模型、建筑雕塑模型、工具模型等,再到哲学和神学中发展出的各种理论模型。 复杂系统的计算机模拟by方美琪课件模型分类按照模型存在的空间,模型可分为物质模型与思维模型两大类。物质模型是以某种速度、形式相似、人造或自然的模型实体去再现原型。物质模型是模拟实验赖以进行的物质手段。思维模型是人们在头脑中创造出来的,并且运用它在思

31、维中进行逻辑推理、数学演算和“思想实验”,可分为形象的(唯象的)模型和符号的(标志性的)模型。 复杂系统的计算机模拟by方美琪课件建模动机一般可以把人类建立模型的动机分为四个层次: (1)解释和理解的需要。 (2)预测的需要。(3)控制的需要。 (4)技术理性和工具的需要。 复杂系统的计算机模拟by方美琪课件一 近代常见的模型物质形式的模型 物理模型思维形式的模型 数学模型 统计模型 逻辑模型复杂系统的计算机模拟by方美琪课件物质形式的科学模型物理模型对要研究的客体,按照一定的研究目的,寻找一种天然存在的具有相似性的实物或者人工地制造一种具有相似形的实物,作为原形客体的实际模拟物,即实物模型。

32、运用这种实物模型,进行模拟实验或模型实验,以获取关于客体的某种规律性认识。天然模型:以天然存在物作为模型。最为典型和运用得最多的就是生物模型。其方法论作用:一方面生物所具有的奇妙器官和功能作为仿生学的对象。 另一方面,把某类生物作为人的科学模型来研究,获得对人体的认识。人工模型: 即以人工制作物作为科学模型。复杂系统的计算机模拟by方美琪课件 思维形式的科学模型 对要研究的对象,按照一定的研究目的,经过科学的分析而抽象出它的本质属性 特征,构造一种思维形式的模拟物,即思维模型,常表现为抽象的、数学的、理论的形 态。 (1)理想模型:是对研究对象的一种简化和理想化。 (2)数学模型: (3)理论

33、模型: (4)半经验半理论模型:复杂系统的计算机模拟by方美琪课件二 建立模型的方法论原则模型具有工具性与对象性双重性质。建立模型的方法论原则:相似性与简单性的统一。要求具有本质上的相似性。可验证性。多种知识和方法的综合运用。复杂系统的计算机模拟by方美琪课件三 科学模型的多重功能科学模型的研究纲领作用;科学研究的间接方法;思维模型可以起到思想实验的目的。思想实验实际上是思维操作亦即逻辑推理的结果。 是实际实验的逻辑补充。模型是研究复杂系统的关键。模型研究对实践的指导作用。复杂系统的计算机模拟by方美琪课件四 模型的多样性和有限性多样性局限性:常常过于简化。 复杂系统的计算机模拟by方美琪课件

34、模型的系统分析 人本体描述语言程序设计语言客体程序?客体描述系统设计形式系统认知模型软件制作模型抽象模型抽象模型组织模型组织模型表示模型表示语用语义 认知制作 语法复杂系统的计算机模拟by方美琪课件 模型: 客观事物的反映 客观规律的简化和抽象 整理信息的概念框架模型小结复杂系统的计算机模拟by方美琪课件 模型具有以下这些基本的性质:客观性:必须符合实际。主观性:对于目标有效。相对性:只反映客观事物的某一侧面。渐进性:随认识和实践的发展而发展。复杂系统的计算机模拟by方美琪课件模型的作用 模型是人类认识和改造世界的必经之路: 描述系统 整理信息 寻找规律 预测未来 设计人为事物复杂系统的计算机

35、模拟by方美琪课件从模型到模拟数学模型计算机模拟CAS复杂系统的计算机模拟by方美琪课件数学模型方法数学模型是对于某个特定对象或一定问题,采用形式化数学语言来描述其特征及数量相依关系的一种数学结构,它是一组数学关系式或一套具体的数学算法。即用数学语言表达事物的状态、关系和过程,经推导、演算和分析,以形成解释、判断和预言的方法。复杂系统的计算机模拟by方美琪课件数学模型的类型确定性数学模型;随机性数学模型;模糊性数学模型;突变性数学模型。复杂系统的计算机模拟by方美琪课件数学模型的特征:高度的抽象性;具有严密的逻辑性;具有应用的广泛性;过程描述,非直观:如果是非线性动力学方程,可表示、但却不可求

36、解。复杂系统的计算机模拟by方美琪课件数学方法在科学认识中的作用 为科学技术研究提供简洁精确的形式化语言 为科学技术研究提供数量分析和计算的方法: 为科学研究提供逻辑推理的工具复杂系统的计算机模拟by方美琪课件计算机模型方法:所要研究问题的数学模型,转换为能输入计算机进行数值运算的形式,或直接建立计算机仿真模型,在计算机上通过系统地变换参数作大量数值计算。复杂系统的计算机模拟by方美琪课件计算机模拟-发展的历史计算的历史主要是模拟的历史;在PC上模拟人的智能、智能发育过程;在平台上模拟系统,如人工生命,机器人足球,蚁群算法;在网络上模拟社会,如email,电子商务,网格计算;在平台上,网络上模

37、拟智能agent,agent是虚拟社会人,实质上是现实社会人的缩扩模型。 PC,网络是系统,人,社会是系统,它们之间是模拟关系。复杂系统的计算机模拟by方美琪课件模拟计算机发展中模拟是不变的,而变化的只不过是模拟的对象,那么什么是模拟?从系统观来看,模拟是两个系统之间的关系,模拟的实质是两事物或两个系统同一性的转化。模拟要素有四:原型,转化,模型,系统同一性。复杂系统的计算机模拟by方美琪课件传统建摸方法的问题 近代科学使用的各种建模方法普遍存在以下几个缺点: 宏观和微观的割裂。 状态和过程的割裂。 难以描述反映非线性过程。 忽视个体或元素的主动性。复杂系统的计算机模拟by方美琪课件基于主体的

38、建摸方法 新的方法具有三个显著的特点: 宏观和微观的结合 过程和状态的结合 可操作性强,软件工具的提供。复杂系统的计算机模拟by方美琪课件基于主体的建模方法复杂系统的计算机模拟by方美琪课件多主体建模的理论常见缩写CAS complex adaptive systemMAS Multi-Agent SystemABM Agent based ModelACE Agent based Computional Economy。广泛应用于各种社会科学、自然科学与工程科学中(生态经济学 人工社会 政治科学 人工智能 人工生命 商务经济模拟 工程模拟 地理信息系统 决策支持系统 生物信息学)复杂系统的计

39、算机模拟by方美琪课件计算机模型的一般特点 (1)计算机模型一般只输出一组离散的数值。它不像解微分方程组那样给出通解或一个函数。(2)它不用深究变动机理,只需从实际数据或直观感觉出发,来模仿描述系统,然后通过逐步求精,最后达到正确地反映系统。复杂系统的计算机模拟by方美琪课件计算机模型的一般特点(续)(3)计算机建模用其程序模拟现象,计算机语言被证明是便于进行模拟的。计算机语言的丰富的数据结构可以方便地描述系统的状态。用计算机程序能灵活地描述各种复杂的进程。 (4)计算机建模的应用很广泛, 可用于工、农、商及军事等各行各业的规划、调度、设计和决策等等。 复杂系统的计算机模拟by方美琪课件有人对

40、美国1000家最大的公司的计划系统应用定量分析方法的情况调查时,得到不同方法应用的频数表,发现在各种定量分析方法中模拟方法所占的比重很大。项项 目目应用频数应用频数所占百分比所占百分比模拟研究线性规划网络分析(包括PERT与CPM)存储理论非线性规划动态规划整数规划排队理论其他6043282416877122921141284336合计205100 应用定量分析方法的频率复杂系统的计算机模拟by方美琪课件计算机模型的一般特点(续)(5)可充分发挥人和计算机的优势。人具有直觉,其思维方式是很灵活的。在寻找复杂的因果关系时,可以根据直觉与经验比较敏锐地给出一个模型结构的框架。计算机有大的存储器,又

41、有高速运算的能力,所以它可以同时顾及系统的各方面结构或易于展现系统动态变化的具体情节计算机模型发挥了人机两方面的优势,通过人的直觉、思维和推理,一块一块地构筑模型,送入计算机,然后可迅速地逐步计算。 复杂系统的计算机模拟by方美琪课件计算机模型的一般特点(续)(6)计算机建模的实现方法灵活。一般来说,用解析式表示量之间的关系,明确、清晰、令人信服。然而,它只解决较简单而且有固定模式的问题。对复杂而灵活的问题,就要用模拟的办法。 (7)智能化的发展方向。人工智能的原理就是从人脑处理问题的模式中抽象出来的。计算机模型把人机的优势结合,以解决传统数学方法不易解决的复杂系统的认识问题,所以必然利用人工

42、智能所取得的成果。 复杂系统的计算机模拟by方美琪课件计算机建模方法优势 经济性 对于一个大型的系统、直接实验成本十分昂贵,使用计算机建模实验能大大地降低实验成本,而且可以多次重复使用;安全性 对于某些系统,如载人宇宙飞行器、核电站控制、直接实验往往是危险的和不允许的;预见性 对于经济、社会、生物、战争等非工程系统,直接实验几乎是不可能的。计算机模型可用于预测系统的特性和外部作用的影响,从而研究管理、控制的策略。复杂系统的计算机模拟by方美琪课件计算机模拟局限性各种模型都是基于建模者的认知水平和观测能力的结果,从而模型模拟的可信度缺乏统一的测量尺度,因此结果很难被大众采纳而形成公共知识;根据测

43、不准定理,观测事实不过是一种近似结果,由于建模者的参与,观测事实的细节和观测指标的取舍都带有建模者预先设计的痕迹,得到的结果很难客观第三,建模者本身就是有限信息和有限理性的主体,就是现实系统的参与者。因此不大可能实现超越系统、超越自身的理性。 这些局限在通常的实验研究方法中也同样存在,但在计算机建模方法中更容易引起人们的质疑 复杂系统的计算机模拟by方美琪课件模拟软件平台的介绍SwarmStarlogo复杂系统的计算机模拟by方美琪课件SWARM简介1、背景、背景2、Swarm的历史与简介的历史与简介3、面向对象的技术、面向对象的技术 4、 用用Swarm建模的思想和方法建模的思想和方法5、对

44、、对Swarm的感性认识的感性认识例子例子6、Swarm类库简介类库简介复杂系统的计算机模拟by方美琪课件1、背景、背景 早期的科学家通常自己制造实验仪器,自己磨透镜,自己连探测器,甚至自己制造计算机。研究者首先是工程师、技师、电工,其次才是科学家。 计算机模拟程序实际上就是用软件制造的实验仪器,这种方法在某些方面已经取代了物理实验仪器。 计算机模型常常使优秀的科学家变成糟糕的程序员。 Swarm是一个高效率的、可信的、可重用的软件实验仪器。其目标就是予科学家们一个标准的软件工具集,从而提供一个设备精良的软件实验室,帮助人们集中精力于研究工作而非制造工具。复杂系统的计算机模拟by方美琪课件Sw

45、arm是一个面向对象的类库,用户可以通过调用这些类库简化模拟工作。用户通过在自己的程序中引入Swarm类建模。Swarm类用Objective C编写,Objective C是一种面向对象的C语言。图形用户界面用Tcl/Tk编写,这是一种用于编写窗口小部件的脚本语言。 既可用于Unix平台又可以用于Windows 95/98/NT。2、Swarm的历史与简介的历史与简介复杂系统的计算机模拟by方美琪课件开发环境:Swarm支持 SUN JDK 1.2或以上版本。因此,常用的开发工具,如Jbuilder3,Visual Cafe 4等都可以用来编写和调试基于Java的Swarm程序。UnixUn

46、ix下:下:1)如果要使用Java,必须首先安装Swarm支持的Java虚拟机。在Unix下,可以使用Kaffe(http:/),Blackdown JDK(http:/)或SUN JDK()。2)系统中还必须安装emacs,emacs是一个GNU的编辑器,由于它配置灵活,功能强大,可以免费获得,又与开发工具具有一定的集成性,应用非常广泛。复杂系统的计算机模拟by方美琪课件3、SWARM的技术基础的技术基础面向对象的技术面向对象的技术对对象象(objectobject)这个词在英语中的意思是被感知或被触摸的事物。对象在客观世界中的意义是很简单的,即明确的物体,小到一个螺丝钉、大到一个生物、一个

47、社会,都是实实在在的对象。作为系统的一个组成部分,它们都为其所在的系统提供一定的功能,在系统中具有一定的作用,担当一定的角色。实际上,我们在认识世界的时候就是面向对象的,我们通过了解系统中这些实实在在的对象来把握整个系统的各个方面。复杂系统的计算机模拟by方美琪课件变量方法状态行为一个对象程序消息复杂系统的计算机模拟by方美琪课件复杂系统的计算机模拟by方美琪课件简单的术语简单的术语类封装了对象的变量和方法父类其变量和方法将被继承子类从父类处继承了变量和方法实例一个对象,也是一个类的实例实例变量一个实例中的内部变量方法函数. 可以通过给实例发消息来调用复杂系统的计算机模拟by方美琪课件三大特点

48、三大特点封装对象把他们的功能(方法)和数据(实例变量和方法变量)隐藏起来继承所有子类都继承其父类的所有方法和变量多态一个类可以有多个对象,他们有共同的行为,但是又有不同的状态父类子类复杂系统的计算机模拟by方美琪课件4。用。用Swarm建模的思想和方法建模的思想和方法Swarm建模框架是一系列独立的主体通过独立事件进行交互。Swarm模拟可使用不同的领域如化学、经济、物理、人类学和政治科学。Swarm模拟的基本单位是主体,一个主体就象系统中的一个演员,是能够产生动作并影响自身和其他个体的一个实体。模拟包括几组交互的主体。主体定义Swarm系统中的基本对象模拟部件。一个时间表定义这些对象的独立事

49、件发生的流程。复杂系统的计算机模拟by方美琪课件get parameters initialize for 1 to timesteps do:for 1 to num_agents do:agent-i-do-somethingend forshow stateend forquit提供一些数据结构来存储主体的状态和行为初始化,设定数据结构和输入输出等将状态数据输出给程序在编程语言中的实现复杂系统的计算机模拟by方美琪课件主体的组织结构活动主体模型Swarm静态主体探测器Swarm建模结构:建模结构:探测器输出界面复杂系统的计算机模拟by方美琪课件模型“swarm” SWARM就是许多个体(

50、对象)组成的一个群体,这些个体共享一个行为时间表和内存池。显然“swarm”有两个主要的组成部分:8对对象象模型“swarm”中的每一项对应模型世界中的每一个对象(个体)。“swarm”中的个体就象系统中的演员,是能够产生动作并影响自身和其他个体的一个实体。8时时间间表表时间表是一个数据结构,定义了各个对象的独立事件发生的流程,即各事件的执行顺序。在SWARM中特定的事件发生在特定的时间,按照时间表安排的顺序进行。每种行为是一个独立的动作。模型按照这种安排好的事件的执行顺序向前发展,并尽量使这些事件看起来象同步发生的。8输输入入输输出出模型“swarm”还包括一系列输入和输出。输入是模型参数:

51、如世界的大小,主体的个数等环境参数。输出是可观察的模型的运行结果:如个体的行为等等。复杂系统的计算机模拟by方美琪课件观察员“swarm” 模型“swarm”只是定义了被模拟的世界。但是一个实验不应只包括实验对象,还应包括用来观察和测量的实验仪器。在SWARM计算机模拟中,这些观察对象放在一个叫观察员“swarm”的“swarm”中。最重要的观察组件是模型Swarm观察员行为的时间表主要是为了驱动数据收集,即从模型中将数据读出,并画出图表。输入是对观察工具的配置,例如生成哪类图表;输出是观察结果。在图形模式下运行时,观察员在图形模式下运行时,观察员“swarm”“swarm”中的大部分对象被用

52、来调节用中的大部分对象被用来调节用户界面。这些对象可能是平面网格图,折线图或探测器,它们一方面与户界面。这些对象可能是平面网格图,折线图或探测器,它们一方面与模型模型“Swarm” “Swarm” 相连以读取数据,同时把数据输出到到图形界面,为用相连以读取数据,同时把数据输出到到图形界面,为用户提供了很好的实验观察方式户提供了很好的实验观察方式。复杂系统的计算机模拟by方美琪课件SwarmSub-Swarm主体时间表图形用户界面图形用户界面模型模型探测器Sub-sub-Swarm复杂系统的计算机模拟by方美琪课件Swarm中所有的主体和变量都可以被探测。探测器将它自己和主体联系起来, 它可以给

53、主体发送消息,还可以通过直接读取或者调用主体来获得或修改主体变量。探测器探测器被观测变量被观测变量=10.2探测器探测器复杂系统的计算机模拟by方美琪课件探测器将主体与图形界面联系起来缺省的探测器图形界面会显示被观测的主体的所有变量也可以由用户自定义显示变量。探测器探测器执行方法输入变量值打开该类的探测器关闭探测器探测器与图形用户界面(探测器与图形用户界面(GUI)GUI)复杂系统的计算机模拟by方美琪课件可用于绘制 线性图柱状图格栅图Digraphs图形用户界面的支持对象可以实现数据的收集,计算和更新。图形用户界面(图形用户界面(GUI)GUI)复杂系统的计算机模拟by方美琪课件平均价格平均

54、成本探测器探测器主体图形窗口图形窗口输出依赖于探测器动态地收集主体的数据。给图形用户界面(给图形用户界面(GUI)GUI)提供数据提供数据复杂系统的计算机模拟by方美琪课件建模思想:建模思想:这种建模方法不需要一个方程形式来体现系统中内生的关系。这种方法强调非均衡的发展路径,它的分析是基于进化和突变行为而不是基于一种机械的观点来看待社会。这种方法是基于单个主体的,因此用户必须为每个决策者建立微观模型,而不是为整个市场建立宏观模型。这种方法将经济系统看作是一个进化的复杂系统。用户可以使用Swarm提供的随机数生成器轻松的引入随机因素。复杂系统的计算机模拟by方美琪课件建模方法建模方法:Swarm

55、是一种支持“自下而上”(bottom-up) 的建模工具。复杂系统的计算机模拟by方美琪课件5、对、对Swarm的感性认识的感性认识例子例子热虫(Heatbugs)热虫是Swarm的经典例子之一,它说明了简单的局部的主体活动如何产生复杂的全局的行为。复杂系统的计算机模拟by方美琪课件结果显示结果显示复杂系统的计算机模拟by方美琪课件界面的样子界面的样子复杂系统的计算机模拟by方美琪课件interface HeatbugModelSwarm : Swarm int numBugs; / simulation parameters double evaporationRate; double di

56、ffuseConstant; int worldXSize, worldYSize; int minIdealTemp, maxIdealTemp; int minOutputHeat, maxOutputHeat; double randomMoveProbability; id modelActions; / scheduling data structures id modelSchedule; id heatbugList; / list of all the heatbugs Grid2d * world; / objects representing HeatSpace * hea

57、t; / the world-getHeatbugList; / access methods into the-(Grid2d *) getWorld; / model swarm. These methods-(HeatSpace *) getHeat; / allow the model swarm to be observed.+createBegin: aZone; / extra methods you-createEnd; / provide for Swarms-buildObjects;-buildActions;-activateIn: swarmContext;第一步:建

58、立一个模型第一步:建立一个模型swarm一个模拟的关键部分是模型swarm。这里是HeatbugModelSwarm的定义:复杂系统的计算机模拟by方美琪课件第二步:定义一个主体第二步:定义一个主体所有个体是整个模拟的中心。在模拟中的大部分工作来自于定义个体的行为,以使模型与真实世界的现象类似。heatbug主体的定义如下:interface Heatbug: SwarmObject double unhappiness; / my current unhappiness int x, y; / my spatial coordinatesHeatValue idealTemperature;

59、 / my idealtemperature HeatValue outputHeat; / how much heat I put out float randomMoveProbability; / chance of moving randomlyGrid2d * world; / the world I live in int worldXSize, worldYSize; / how big that world is HeatSpace * heat; / the heat for the world Color bugColor; / my colour (display)- s

60、etWorld: (Grid2d *) w Heat: (HeatSpace *) h; / which world are we in-createEnd;-(double) getUnhappiness;-setIdealTemperature: (HeatValue) i;-setOutputHeat: (HeatValue) o;-setRandomMoveProbability: (float) p;-setX: (int) x Y: (int) y; / bugs position-setBugColor: (Color) c; / bugs colour (display)-st

61、ep;-drawSelfOn: (id ) r;复杂系统的计算机模拟by方美琪课件第三步:建立主体第三步:建立主体Heatbug们已经被定义,模型swarm需要创建它们。这里是HeatbugModelSwarm中buildObjects方法的一段代码:for (i = 0; i numBugs; i+) Heatbug * hbug; int idealTemp, outputHeat; / Choose a random ideal temperature, output heat from the specified idealTemp = uniformRandom rMin: minI

62、dealTemp Max: maxIdealTemp; outputHeat = uniformRandom rMin: minOutputHeat Max: maxOutputHeat; / Create the heatbug, set the creation time variables hbug = Heatbug createBegin: self getZone; hbug setWorld: world Heat: heat; hbug = hbug createEnd; / Add the bug to the end of the list. heatbugList add

63、Last: hbug; / Now initialize the rest of the heatbugs state. hbug setIdealTemperature: idealTemp; hbug setOutputHeat: outputHeat; hbug setX: uniformRandom rMax: worldXSize / random position Y: uniformRandom rMax: worldYSize;复杂系统的计算机模拟by方美琪课件第四步:建立空间对象第四步:建立空间对象在swarm中,空间是另一种个体。在Heatbug模型中我们创建一个热空间,这

64、是swarm的space库中一个散射对象的子类。这里是HeatbugModelSwarm中buildObjects方法的一段代码:heat = HeatSpace createBegin: self getZone;heat setSizeX: worldXSize Y: worldYSize;heat setDiffusionConstant: diffuseConstant;heat setEvaporationRate: evaporationRate;heat = heat createEnd;复杂系统的计算机模拟by方美琪课件第五步:模型第五步:模型swarm的时序安排的时序安排一旦

65、所有的模拟对象在buildObjects中被创建,下一步的任务就是在buildActions方法中确定它们的时序安排。modelActions = ActionGroup create: self getZone;modelActions createActionTo: heat message: M(stepRule);modelActions createActionForEach: heatbugList message: M(step);modelActions createActionTo: heat message: M(updateLattice);modelSchedule =

66、 Schedule createBegin: self getZone;modelSchedule setRepeatInterval: 1;modelSchedule = modelSchedule createEnd;modelSchedule at: 0 createAction: modelActions;复杂系统的计算机模拟by方美琪课件第六步:建立图形化的探测器第六步:建立图形化的探测器模型swarm已经定义,下一步是安排图形化的探测器swarm。对于Heatbug模型来说,代码段在HeatbugObserverSwarm中。探测器swarm的结构同建立模型swarm几乎完全相同。

67、interface HeatbugObserverSwarm : GUISwarm int displayFrequency; / one parameter: update freq id displayActions; / schedule data structs id displaySchedule; HeatbugModelSwarm * heatbugModelSwarm; / the Swarm were observing/ Lots of display objects. First, widgets XColormap * colormap; / allocate colo

68、urs ZoomRaster * worldRaster; / 2d display widget EZGraph * unhappyGraph; / graphing widget / Now, higher order display and data objects Value2dDisplay * heatDisplay; / display the heat Object2dDisplay * heatbugDisplay; / display the heatbugs复杂系统的计算机模拟by方美琪课件第七步:建立数据图表第七步:建立数据图表数据图表是HeatbugObserverS

69、warm中的一个对象,表示平均的不高兴程度。这段代码用来创建这个对象:/ Create the graph widget to display unhappiness.unhappyGraph = EZGraph createBegin: self getZone;unhappyGraph setTitle: Unhappiness of bugs vs. time;unhappyGraph setAxisLabelsX: time Y: unhappiness;unhappyGraph = unhappyGraph createEnd ;unhappyGraph createAverageS

70、equence: unhappiness withFeedFrom: heatbugModelSwarm getHeatbugList andSelector: M(getUnhappiness) ;复杂系统的计算机模拟by方美琪课件第八步:主函数第八步:主函数函数main()是你的程序中最先被调用的函数。所有的实际工作已经完成,剩下的就是在合适的时间创建对象。int main(int argc, const char* argv) id theTopLevelSwarm ; / Swarm initialization: all Swarm apps must call this first

71、. initSwarm(argc, argv); / swarmGUIMode is set in initSwarm(). Its set to be 0 if you / typed heatbugs -batchmode or heatbugs -b, Otherwise, its set to / 1. if (swarmGUIMode = 1) / Weve got graphics, so make a full ObserverSwarm to get GUI objects theTopLevelSwarm = HeatbugObserverSwarm create: glob

72、alZone; else / No graphics - make a batchmode swarm and run it. theTopLevelSwarm = HeatbugBatchSwarm create: globalZone; theTopLevelSwarm buildObjects; theTopLevelSwarm buildActions; theTopLevelSwarm activateIn: nil; theTopLevelSwarm go; / theTopLevelSwarm has finished processing, so its time to qui

73、t. return 0;复杂系统的计算机模拟by方美琪课件6、 Swarm类库简介类库简介 Swarm类库有两个主要功能被用户直接使用;用户使用Swarm库来建立自己的子类,为专门的建模需要你建立自己专门的类SwarmobjectSwarmobjectsimtools该该库库包包括括两两个个重重要要的的类类,swarmobject swarmobject 和和swarmswarm。Swarmobject Swarmobject 是是所所有有模模拟拟主主体体的的根根类类,它它定定义义了了内内存存管管理理的的接接口口并并提提供供对对探探测测器器的的支支持持。SwarmSwarm类类是是模模型型的的

74、总总控控,ModelSwarmModelSwarm和和ObserverSwarmObserverSwarm都都从这一基类处继承有用的代码。从这一基类处继承有用的代码。activity该库提供了对时间表的支持。时间表是模型运行的时序列表,用该库提供了对时间表的支持。时间表是模型运行的时序列表,用户可以将周期性执行的动作按顺序放入这个数据结构中,并指明户可以将周期性执行的动作按顺序放入这个数据结构中,并指明运行间隔和触发条件,模型就可以按照这个约定运行而不需人为运行间隔和触发条件,模型就可以按照这个约定运行而不需人为的干预。的干预。该该库库中中包包括括支支持持探探测测器器的的类类,这这样样就就可可

75、以以在在模模型型的的运运行行过过程程中中观观察察或或修修改改变变量量。SimtoolsSimtools还还提提供供数数据据分分析析和和显显示示支支持持的的工工具具,能能够产生统计数据汇总,画时序图等等。够产生统计数据汇总,画时序图等等。复杂系统的计算机模拟by方美琪课件Collection该该库库中中提提供供了了一一系系列列对对象象的的列列表表,如如ListList、ArrayArray、SetSet等等。SwarmSwarm支支持持向向一一个个列列表表中中的的所所有有对对象象传传递递消消息息,还还可可以以将将列列表表中中的的对对象象按按某个属性排序。某个属性排序。defobj该该库库中中提提

76、供供了了对对消消息息、错错误误处处理理、调调试试和和内内存存分分配配的的支支持持,增增强强了了 Objective-CObjective-C的的功功能能。它它还还支支持持对对象象界界面面和和实实现现分分离离,从从而而使使SwarmSwarm编写的程序的层次性更加清晰。编写的程序的层次性更加清晰。random该库提供给用户一套随机数生成器。该库提供给用户一套随机数生成器。支持正态分布、均匀分布、指支持正态分布、均匀分布、指数分布等多种随机分布。数分布等多种随机分布。Space该该库库是是一一个个简简单单的的空空间间库库,包包括括一一系系列列用用于于二二维维离离散散模模型型的的类类。这这些些空空间

77、间类类型型在在生生态态系系统统模模拟拟中中经经常常用用到到。Space Space 中中的的类类大大多多数数是是从从Grid2DGrid2D,一一个个可可以以在在指指定定格格点点上上存存储储对对象象和和整整型型值值的的二二维维数数组继承得来。组继承得来。复杂系统的计算机模拟by方美琪课件ga和neuro遗传算法类和神经网络类。这是遗传算法类和神经网络类。这是SwarmSwarm的第一个用户提供的库,的第一个用户提供的库,是由是由Juan J.Merelo Juan J.Merelo 在访问桑塔菲研究所时编写的。在访问桑塔菲研究所时编写的。复杂系统的计算机模拟by方美琪课件Starlogo基于C

78、AS理论的 模拟平台之二复杂系统的计算机模拟by方美琪课件Starlogo概述概述StarLogo是一个可编程的建模环境。它用来研究分散系统的运行机制。所谓分散系统是指:没有组织者而有组织,没有协调者而协调的系统。使用StarLogo可以对许多现实世界中的现象进行建模并且观察研究,例如鸟群、交通、蚂蚁以及市场经济。StarLogo非常适合于研究人工生命。复杂系统的计算机模拟by方美琪课件StarLogo is developed at Media Laboratory, MIT, Cambridge, Massachusetts, with support from the National

79、Science Foundation and the LEGO group.复杂系统的计算机模拟by方美琪课件Starlogo中有海龟(turtle)和点(patch)。其中,海龟是我们自己创建的主体,点是画布(canvas)上固定的一个个小方格。我们可以对海龟和点的行为及属性进行编程,海龟主要固有属性是坐标位置, 头的朝向, 颜色, 和画笔。点的主要固有属性是颜色和坐标位置,我们还可以给它们自定义一些新的属性。程序运行时所有的海龟和点都以系统规定的时间步进,并行并行运转。Starlogo就是通过海龟和点的交互运作来模拟现实世界的运转的。另外,Starlogo允许对海龟进行分类(breeds

80、),例如,我们可以创建两类海龟:狼和兔子,然后对这两类分别定义它们的属性和行为。复杂系统的计算机模拟by方美琪课件界面界面 画布(canvas)、控件等控制中心控制中心 海龟窗口:命令窗口+函数窗口 观察者窗口:命令窗口+函数窗口复杂系统的计算机模拟by方美琪课件界界 面面复杂系统的计算机模拟by方美琪课件控制中心控制中心复杂系统的计算机模拟by方美琪课件控制中心控制中心 海龟窗口:每一个海龟都执行 观察者窗口:创建海龟等外部工作 命令窗口:立即执行 函数窗口:被命令窗口中的命令 或按钮调用时执行复杂系统的计算机模拟by方美琪课件控件按钮:通过按按钮调用函数控制程序的运行;滑块:显示及调节常量

81、的值;监控器(monitor):实时监控变量值;绘图:折线图、柱状图等;速度:控制系统的时间步进;画布:直观地表现海龟和点的运转;output 窗口:程序中print语句的输出窗口。复杂系统的计算机模拟by方美琪课件特特 点点距离:以画布的点的宽度为单位长度时间:以可调整的speed为时间步进,每隔一个speed时间系统中的observer和turtles并行执行当前要求执行的命令。 也可用timer来确定标准时间(以秒为单位)海龟有序号( Who)颜色:有14种主要色彩,每种主要色彩又都有色彩深浅程度,可用数字来表示。复杂系统的计算机模拟by方美琪课件建立模型建立模型 建模就是要对现实世界进

82、行抽象,剔除与主题无关的次要因素,抓住主要因素,提炼规则,用计算机来模拟主体在现实世界中依据一定规则运动的情况,观察结果,总结规律。不同的情况:建模之前已经确切地知道会有怎样的结果,建模的目的只是让结果更加形象化地表现出来。建模之前对于结果的大致方向有一定的把握,建模后验证了自己的判断并了解了更多的细节。建模之前对于结果没有什么判断或者有错误的判断,建模后出现了完全在意料之外的现象。这是最有价值的建模。 复杂系统的计算机模拟by方美琪课件可能应用的领域生物学流行病学社会学股市分析:每个股民有自己的行为规则,思维方式,不受他人控制,但所有股民的行为集合则在股市的涨落上体现了个体所不具有的性质。复

83、杂系统的计算机模拟by方美琪课件变变 量(一)量(一)Starlogo中只有四种数据类型数据类型:布尔型、数据列表型、数值型、字符串型。状态变量状态变量:是海龟和点固有的特性,除了坐标属性外它们都可以用set命令改变。自定义变量自定义变量:我们可以创建全局变量和海龟、点及观察者的新的状态变量。一旦创建了新的状态变量,系统便会自动生成相应的函数集来方便这个变量的使用。变量定义语句可以写在任何一个函数窗口中。复杂系统的计算机模拟by方美琪课件变变 量(二)量(二)变量的后缀变量的后缀:利用-at, -to , -towards 等后缀我们可以读取、修改其它海龟或点的状态变量复杂系统的计算机模拟by

84、方美琪课件变变 量(三)量(三)全局变量:局部变量局部变量:与全局变量一样和任何点或海龟无关。仅在定义所在的函数内有效。(用let语句定义,以冒号开头)函数参数函数参数:参数之前要加:,多个参数之间用空格隔开。复杂系统的计算机模拟by方美琪课件list可用list 或sentence命令或 生成列表,但是要注意这里只是针对数据列表,在Starlogo中,不能将执行语句置于数据列表中Pick 数据列表 随机返回列表中的一个数据copy-list 数据列表 返回列表的一个副本Median-of-list数据列表 将数据列表按大小排序,返回中值Mode-of-list数据列表 返回列表中出现次数最多

85、的项,如果不止一个,则返回他们的集合列表Setitem number数据列表 thing 把列表中第number项改为thing复杂系统的计算机模拟by方美琪课件输出方式画布Output窗口Plot窗口监控器Info窗口复杂系统的计算机模拟by方美琪课件命令测试diffuse variable percentage 语言解释: 让每个点把自己的variable变量取出percentage(0 到1之间的数),并分成八份给邻近的每个点一份。程序测试: 初始状态:(0,0)点的color置为139,其他点都置为0(黑色)。每调用一次go函数,每一个点都把自己的颜色拿出20%来平分给邻近的八个点。相

86、关命令: diffuse4 variable percentage ,和diffuse基本相同,只是diffuse4是分成四份给上下左右的点。复杂系统的计算机模拟by方美琪课件Diffuse测试程序运行结果初始状态运行一次后运行12次后运行27次后此外,我们还可以利用 output 窗口将每次运行后所有点的color值记录下来,定量地分析diffuse语句的含义。复杂系统的计算机模拟by方美琪课件fd, step, jump, leap 语言解释:这四个都是让海龟前进的命令。但它们又都不同。fd和step都是每移动一个step就要花一单位时间,也就是说移动10个step的时间=10*移动一个s

87、tep的时间。但jump和leap是无论移动多少个step所花的时间都一样。也就是说移动10个step的时间=移动一个step的时间。jump和leap的区别在于leap 要确定目标点上面没有别的海龟才执行跳跃,而jump没有这个要求。fd和step的区别在于fd后面要跟number ,可以前进多步,step就是前进一步,不带参数。复杂系统的计算机模拟by方美琪课件程序测试:运行结果: 打开output窗口观察结果to goask-turtle 1 resett fd 10 print timerask-turtle 2 resett jump 10 print timerask-turtle

88、 3 resett leap 10 print timerask-turtle 0 resett repeat 10 step print timerendTurtle #1: 0.831Turtle #2: 0.14Turtle #3: 0.14Turtle #0: 0.811复杂系统的计算机模拟by方美琪课件应用举例1.国会山保姆公司模型2.Akerlof模型3.企业集群研究4.ACE复杂系统的计算机模拟by方美琪课件1、国会山保姆公司模型模型背景一些主要在美国国会工作的年轻夫妇成立的组织,他们愿意彼此之间充当保姆。国会山保姆公司通过印刷临时票券来解决问题:每做一个小时的保姆工作(即照顾别

89、人的孩子)可以得到一个单位的票券,反过来,请别人照顾孩子,则要付给别人一张票券。困惑出于对未来的预期而导致当前消费减少,从而发生经济衰退。复杂系统的计算机模拟by方美琪课件模型的实现每个保姆对未来预期的票数为:NumTicket = p * predictDay当一个保姆手中掌握的票数大于他/她预期的票数时,出行的概率增加,找工作的概率下降;否则,找工作的概率上升,出行的概率下降。通过调整参数求得解决之道。复杂系统的计算机模拟by方美琪课件模型结果分析(一)刚开始,找工作和出行的人数基本相等。由于货币供给不足而导致的消费不足,最终将导致失业率上升,引发市场衰退。复杂系统的计算机模拟by方美琪课

90、件模型结果分析(二)通过政策调整达到市场均衡1、增加每个保姆手中的初始票数,也就是增加整个市场的货币投放量2、减少人们的预期天数,完善和健全贷款制度、保险制度和社会保障金制度复杂系统的计算机模拟by方美琪课件模型结果分析(三)由于主体竞争能力不同而导致贫富分化,需要税收政策等进行收入再分配返回复杂系统的计算机模拟by方美琪课件2、阿克洛夫模型模型以旧车市场上旧车的销售情况来解释在非对称信息环境下产品销售方面的不利选择问题。它解释了在某些特定情况下,一种低效率的市场是如何产生的。复杂系统的计算机模拟by方美琪课件所有外表相同的汽车都以同样的价格出售。高质量的汽车在旧车市场上就无法以预期的高价格出

91、售。对于卖主是不利的。低质量汽车的卖主不愿意以较低价格卖出,直到旧汽车的低质量性质将要显示出来为止。拥有高质量汽车的卖主往往将他们的汽车撤出市场。这样旧汽车市场上汽车的平均价格在下降。复杂系统的计算机模拟by方美琪课件模型的实现OBJECT:汽车、市场汽车:定义汽车的属性和卖主的行为市场:容量固定,记录当前高质量和低质量的汽车的数量,和当前卖出的高质量和低质量的汽车的数量。复杂系统的计算机模拟by方美琪课件如何表示市场上交易双方的信息不对称:对于卖方,汽车的信息是完全的,即卖方知道汽车是高质量的还是低质量的,但是买方并不知道汽车是高质量还是低质量的,只能根据上一轮的交易情况预测本轮交易中市场上

92、高质量和低质量汽车的比例,并以此为基础给出买方购买汽车的期望价格复杂系统的计算机模拟by方美琪课件模型结果分析市场中汽车交易价格下降高质量汽车退出市场市场萧条与传统经济学相悖,在非对称信息环境中,商品质量依赖于价格。返回复杂系统的计算机模拟by方美琪课件3。关于企业集群形成机制的研究企业集群的形成是现代经济生活中引人注目的一种现象。我们用模拟的方法,观察了其形成的过程,得到了一些有趣的结果。复杂系统的计算机模拟by方美琪课件应用举例4:ACE1. 有限理性和经济进化2. 基于主体的可计算经济学3. 基于主体的可计算经济模型复杂系统的计算机模拟by方美琪课件 1. 有限理性和经济进化 1.1 新

93、古典经济学的理论基础1.2 经济是一个复杂适应系统1.3 经济主体行为的有限理性和经济进化论复杂系统的计算机模拟by方美琪课件 1.1 新古典经济学的理论基础 经济主体行为的完全理性假设经济主体行为的完全理性假设经济系统的均衡假设经济系统的均衡假设在在此此理理论论基基础础上上,经经济济学学者者应应用用数数学学工工具具推推导导出出一一系系列列经经济济结结论论,用用于于分析经济理论和经济现实。分析经济理论和经济现实。复杂系统的计算机模拟by方美琪课件 1.1 新古典经济学的理论基础 完全理性假设完全理性假设 (1)经济主体行动的完全理性,所有经济主体愿意并能够极大化他们的预期效用或预期收益; 2)

94、经济主体知识的完全理性,所有经济主体具有理性预期。理性预期意味着所有经济主体关于其他主体如何行动有相同和正确的信念(对称信息)经济系统均衡假设经济系统均衡假设 追求个体利益最大化的行为在市场机制的作用下,能导致整个社会福利的最大化,资源达到最有效的配置。复杂系统的计算机模拟by方美琪课件 这里应用一个简单的竞争市场的静态模型阐述经济主体行为完全理性假设的应用。假设某行业中存在n个同质企业(n很大 ),每个企业选择其产量x以使其利润R R ( x . p ) = px c ( x ) 达到最大化,其中p为价格,c ( x )是一个递增的成本函数。 复杂系统的计算机模拟by方美琪课件存在一个下降的

95、需求函数p = p ( n X ),表示价格是行业总产量n X的反函数,其中X是行业中的 “平均”企业(典型个体)的产量。每个企业的价格p给定,选择x以使其利润最大化,这意味着设置x以满足“价格等于边际成本(p = c( x ))”条件。 复杂系统的计算机模拟by方美琪课件通过求解x*=argmaxxR(x,p)=g(p) 来得到该问题的解,其中argmax意味着x的最大值。由于p = p ( n X )依据市场需求函数,我们可以表示x如下: x=g(p(nX)=h(X)复杂系统的计算机模拟by方美琪课件因而,经济主体利润最大化假设能从给定的平均企业归纳出一个个体(企业)的优化选择。理性预期假

96、设要求个体的选择一致性。因为所有的企业是同质的,一致性X=h(X),每个企业最终选择平均企业的选择X。由于x=X=h(X),我们可以断定每个企业都没有偏离平均企业产量的冬季。这一例子说明,完全理性假设可以用于分析竞争性市场。复杂系统的计算机模拟by方美琪课件西方经济学者一直追求的是建立一个综合和统一的经济学理论。这个理论以经济主体的完全理性行为假设出发,构造消费理论、投资理论和生产理论,进而形成完整的经济理论体系。随着数学工具的不断引入,理论发展的越来越精密,越来越机械,也离经济现实越来越远。复杂系统的计算机模拟by方美琪课件 1.2 经济是一个复杂适应系统 复杂性意味着:复杂性意味着:(1)

97、系统是由一系列相互作用的主体(过程、元素)构成一个网络;(2)这些主体的活动自然形成了系统的动态积累行为;(3)累积行为的描述可以与个别主体的细节知识无关。适应性意味着:适应性意味着: (1)环境中主体的活动可以被赋予一个值(如效用、偿付或适应);(2)随着时间的推移,主体的行为趋向于使该值增加。复杂系统的计算机模拟by方美琪课件 1.2 经济是一个复杂适应系统 经济是一种重要的复杂适应系统经济是一种重要的复杂适应系统经济是由无数个主体(如消费者)构成;主体在重要的方面有所不同,如消费偏好和收入等;主体被组织成群体或等级结构,如家庭和企业等;主体为适应环境,必须从时间中学习或自然选择,如教育和

98、广告效应等;主体的状态和行为随时间而改变,如价格调整;主体的变化是反馈的结果,如购买或销售;宏观层次行为从微观层次的相互作用中自然产生。如通货膨胀和失业等。 复杂系统的计算机模拟by方美琪课件 1.2 经济是一个复杂适应系统沙沙堆堆模模型型:倒塌沙量的分配是在指定时间段T上遵循一种幂律分布。也就是说,一个给定沙崩量的平均发生次数是和它的大小量成反比的。即大的沙崩是很少的,小的沙崩是经常的。例如,24个小时你可能观察具有1000沙粒的一个沙崩,10个有100沙粒的沙崩,100个10颗沙粒的沙崩。 log(N) = log(K)-slog(c) N=沙崩的数量,K=1000,c=沙崩中沙粒的数量,

99、s1 经济系统的许多行为,如股市崩盘,与此类似。 复杂系统的计算机模拟by方美琪课件 1.3 经济主体行为的有限理性和经济进化论 在复杂的经济系统面前,经济主体的理性是有限的。 进化经济学者认为经济中也存在自然选择。企业在市场中相互竞争,赢利的企业增长扩大,亏损的企业收缩衰弱,直至被淘汰出局。企业要在激烈的竞争中利于不败之地,必须不断创新和不断适应,以保持持久的竞争优势。复杂系统的计算机模拟by方美琪课件 2. 基于主体的可计算经济学 基于进化经济学、认知科学和人工智能技术产生出来的基于主体的可计算经济学(Agent-based Computational Economics)简称ACE,是研

100、究经济理论和经济现实的一个新的有效方法论。ACE把经济模型化成由一系列相互作用主体构成的进化系统,是复杂适应系统的经济学体现。复杂系统的计算机模拟by方美琪课件 2. 基于主体的可计算经济学 2.1 计算经济学计算经济学2.2 传统人工智能技术及其在经济学中的应传统人工智能技术及其在经济学中的应用用2.3 基于主体的可计算经济学研究的基本内基于主体的可计算经济学研究的基本内容容2.4 遗传算法和分类器系统遗传算法和分类器系统2.5 基于主体的可计算经济学的建模过程基于主体的可计算经济学的建模过程2.6 基于主体的可计算经济实验室基于主体的可计算经济实验室复杂系统的计算机模拟by方美琪课件 2.

101、1 计算经济学 计算经济学(Computational Economics)是应用计算技术研究经济问题的方法论。计算途径计算途径能对传统经济模型提供有效的数量求解方法,即利用计算机的高速计算和海量存储计算途径计算途径可以提供更准确的洞察力,是对传统经济研究途径的替代 。复杂系统的计算机模拟by方美琪课件 2.2 传统人工智能技术及其在经济学中的应用 人工智能(Artificial Intelligence)是研究如何制造出人造的智能机器或智能系统,来模拟人类智能活动的能力,以延伸人类智能的技术。早在1992年一份美国国家科学基金的报告就指出:“经济学是人工智能一个很有前途的应用领域”,但人工智

102、能在经济学中的应用仍远远滞后于其他自然科学领域。 因为使用工具不同,研究途径不同。 复杂系统的计算机模拟by方美琪课件 2.2 传统人工智能技术及其在经济学中的应用人工智能的传统技术是专家系统和神经网络 专家系统是一种在相关领域中具有专家水平解题能力的智能程序系统,它能运用领域专家多年积累的知识与专门经验,模拟人类专家思维过程,求解需要专家才能解决的问题。 专家系统的最大优势是复杂系统的定性推理能力,因而它可以作为传统定量计算程序(如计量经济模型)的有力补充。专家系统能够有效的处理不完全和不确定信息,而在现实经济中,不完全和不确定信息是广泛存在的,因而专家系统在经济学领域应该大有用武之地。 复

103、杂系统的计算机模拟by方美琪课件 2.2 传统人工智能技术及其在经济学中的应用目前,在经济领域应用最广泛的传统人工智能技术是神经网络(Neural Networks)。神经网络是一个计算机程序,它模拟了人脑的认知处理过程 神经网络是由具有各种相互联系的单元组成的集合。每个单元具有极为简化的神经元的特性。神经网络常常被用来模拟神经系统中某些部分的行为,生产有用的商业化装置以及检验脑是如何工作的一般理论 复杂系统的计算机模拟by方美琪课件 2.3 基于主体的可计算经济学研究的基本内容 基于主体的可计算经济学ACE研究的主要内容是经济的自组织和进化性,以及经济的模拟实验。ACE运用了计算机强有力的运

104、算能力,尤其是OO程序语言,来模拟经济政策导致的经济环境变化,在“结构、行为和福利效果”这一框架中探讨经济政策的可行性。这种方法使经济学进一步接近了现实世界,并使经济政策在一定程度上可以如同科学实验一样得到检验。 ACE是从微观经济的角度(企业和消费者)分析宏观经济的运行规律(经济政策机制和经济周期)。复杂系统的计算机模拟by方美琪课件 2.3 基于主体的可计算经济学研究的基本内容现代计算技术允许我们在计算机上建立一个人工经济(Model Economy)在人工经济中,允许出现广泛的微观个体行为及其相互作用进化过程可以被描述成自然选择压力直接作用于个体行为的过程,而不是被描述成群体的运动规律一

105、旦所有个体的初始状态和行为模式以及个体个体和个体环境相互作用的市场协议被确定,经济系统中不存在集中控制,人工经济沿时间路径自动发展复杂系统的计算机模拟by方美琪课件 2.3 基于主体的可计算经济学研究的基本内容 发展现状发展现状例如在在财税领域中的不少成果:美国霍普金斯大学Young对财政决策过程的分析,美国耶鲁大学Shubik对公共政策福利效应的研究,美国密执安大学Henrich对公共资源合理运用的分析,英国牛津大学Chattoe对预算过程的研究等等。 在2001年,国家著名经济学刊物Journal of Economic Dynamics and ControlComputation Ec

106、onomics和计 算 机 刊 物 IEEE Transaction on Evolutionary Computation都分别出版一期基于主体的可计算经济学专刊,表明它已经成为当前经济学研究的一个热点。复杂系统的计算机模拟by方美琪课件 2.4 遗传算法和分类器系统 目前,经济学者主要应用遗传算法和分类器系统来研究经济主体的适应行为 受达尔文进化论适者生存的启发,Holland 于1975年提出了模拟遗传进化过程的计算方法遗传算法(Genetic Algorithms) 基本的遗传算法组成部分包括: 对主体(或其潜在行为)编码的符号串表示;评价符号串对环境适应程度的适应值函数;产生新符号串

107、的遗传算子 复杂系统的计算机模拟by方美琪课件 2.4 遗传算法和分类器系统 Holland(1986)提出分类器系统(Classifier Systems)技术。分类器系统是并行传递消息的基于规则系统,并能应用数学算法修改其规则。 分类器系统由3部分组成: (1)执行子系统; (2)赋适应值子系统; (3)规则发现子系统。 复杂系统的计算机模拟by方美琪课件 2.4 遗传算法和分类器系统 执行子系统规则: IFTHEN赋适应值子系统用某一算法计算适应值,用于调整规则的强度。在每一个时间片内,每一个满足条件的规则都要依靠其强度进行投标。规则发现子系统应用遗传算法发现新规则,其中规则强度相当于适

108、应值。 复杂系统的计算机模拟by方美琪课件 2.5 基于主体的可计算经济学的建模过程 问题识别问题识别 分析经济理论和经济现实中存在的问题,并提出解决问题的目标 模型框架模型框架 描述人工经济的框架: (1)主体的类型; (2)主体之间相互作用的市场协议; (3)人工经济一轮进化过程中的事件发生次序; (4)经济总量的统计方式。 复杂系统的计算机模拟by方美琪课件 2.5 基于主体的可计算经济学的建模过程主体描述主体描述 描述每一类主体的状态和行为模式。主体的状态决定其行为,主体的行为能改变其状态,甚至改变行为模式本身(行为进化) 实验设计实验设计 选择一种人工适应主体技术和一种计算机程序设计

109、语言,模拟主体行为模式和经济运行模式。确定每一类主体的数目,并采用合适的方法为所有主体状态赋初值。结果分析结果分析 观察模型运行的结果,并应用经济学理论给予解释。 复杂系统的计算机模拟by方美琪课件 2.6 基于主体的可计算经济实验室 可计算实验室CL(computational laboratory ) CL是一个可计算框架,它支持有若干相互作用主体的系统依靠控制和可复制实验进行研究。具有清晰和简单的图形用户操作界面的CL使得研究者可以进行严谨的可计算研究,很容易操作。CL可以设计成为有标准的可扩展的。可以开始使用可选择执行模块来实验,并可以使用CL来扩展系统的应用范围。复杂系统的计算机模拟

110、by方美琪课件 2.6 基于主体的可计算经济实验室Trade Network Game(TNG)Lab (C+ /Visual BasicSimBioSys,一个基于主体的进化模拟CL 主要用于生物学和社会科学一般基于主体的进化模拟; Swarm、Ascape (Java)、RePast (Java)平台;一些建模语言,如MAML(Multi-Agent Modelling Language)、 MATLAB 、 SDML (The Strictly Declarative Modelling Language )、 StarLogo 和 StarlogoT等复杂系统的计算机模拟by方美琪课件

111、 3. 基于主体的可计算经济模型 3.1 ACE模型在经济理论研究中的应用3.2 ACE模型在具体市场分析中的应用3.3 Thomas Schelling的城市种族隔离模型 3.4 阿克洛夫模型3.5 ACE模型的优势和存在的问题复杂系统的计算机模拟by方美琪课件 3.1 ACE模型在经济理论研究中的应用 1989年,Kiyotaki和Wright(1989)建立了著名的货币产生模型。 但是在完全理性假设基础上进行的工作在Kiyotaki和Wright的基本环境中,Marimon等人(1900)提出基于主体货币产生模型Vriend(1995)应用分类器系统来模拟市场的自组织过程,在有限理性假设

112、下,验证了斯密的“看不见的手” Epstein(2001)应用一个基于主体的计算框架,实验性的研究了社会准则进化的重要方面:主体思考某个行为的时间和与此行为有关的社会准则的强度负相关 复杂系统的计算机模拟by方美琪课件 3.2 ACE模型在具体市场分析中的应用 美国Santa Fe研究院研制的著名的人工股票市场模型Tesfasion应用一个基于主体的劳动力市场模型,研究职业容量、职业集中度和市场力之间的关系 。工作供给者和雇主应用人工适应主体来描述,他们在不断更新预期效用的基础上寻找合作伙伴,相互作用基于囚徒困境模型,并随时间进化其行为。模型的主要发现是,在用于预测工作者与雇主的相应市场力时,

113、职业容量一贯优于职业集中度。 复杂系统的计算机模拟by方美琪课件 3.2 ACE模型在具体市场分析中的应用Kirman和Vriend(2001)建立了一个居于主体的零售渔业市场模型,用于分析显示渔业市场的两个特性即:价格分散和重复性购买卖方的决策包括:产品供应量、产品要价和对老顾客的优惠。买方的决策包括:在谁那里购买和可接受的价格。他们应用分类器系统模拟主体的决策行为。实验结果表明:经过一段时期的协同进化,买方成为给他较大优惠卖方的忠实顾客,而卖方也通过优惠吸引老顾客以获得更大的收益。复杂系统的计算机模拟by方美琪课件 3.3 Thomas Schelling的城市种族隔离模型 1.模型描述模

114、型描述 Schelling著名的城市种族隔离模型主要描述一个城市中的人们在不愿意有太多和他们不同类邻居的情况下,怎样受响应局部干扰迅速由高度的综合转向高度的隔离。在城市中种族隔离的准确度很强的依赖于主体快乐法则的规范 2.模型实现模型实现复杂系统的计算机模拟by方美琪课件 3.5 ACE模型的优势和存在的问题 优势:优势:ACE模型的一个优势是群体中每个个体的细节表示,他们的状态和行为存在重要差异。 ACE模型的另一个优势是群体中的个体存在广泛的相互作用。 复杂系统的计算机模拟by方美琪课件 3.5 ACE模型的优势和存在的问题 问题:问题:几乎没有数学理论可以用来解释模型模拟的结果。 计算技

115、术方面的问题 由于其研究工作起步较晚,它目前通常作为研究方法论在实验室中进行研究 ACE模型缺少完整系统的经济理论的支持。 复杂系统的计算机模拟by方美琪课件总 结 复杂系统的计算机模拟by方美琪课件MATLABhttp:/复杂系统的计算机模拟by方美琪课件四、几点思考1。信息时代要求新的思维方法;2。信息技术提供了新的工具和手段;3。他山之石,可以攻玉,学科之间的交流是科学进步之道。复杂系统的计算机模拟by方美琪课件结 束 语希望学习哲学和其他学科的同行,希望学习哲学和其他学科的同行,对于这种方法给予更多的关注,对于这种方法给予更多的关注,有更多的同学掌握和利用这些工有更多的同学掌握和利用这些工具,从新的视角观察和研究丰富具,从新的视角观察和研究丰富多彩的各种新发现的问题和现象。多彩的各种新发现的问题和现象。复杂系统的计算机模拟by方美琪课件

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号