1、太原科技大学硕士学位论文基于复杂适应系统理论的食物链建模与仿真姓名:刘聪申请学位级别:硕士专业:计算机应用技术指导教师:王宏刚;曾建潮20080701中 文摘要食物链是生态系统的重要组成部分和存在形式。食物链的研究对理解生态系统的性质和规律,解决生态问题具有重要的作用。食物链是典型的复杂系统,传统的研究方法疑有很大的局限性。复杂系统理论的发展,特别是复杂适应系统理论和方法的出现,为食物链的研究开辟了新的途径。本文首先基于复杂适应系统理论,建立了一个食物链基本模型。该模型采用比较典型的革原生态系统中的食物链佟为建模对象。模型由环境、植物主体、草食动物主体、肉食动物主体以及主体之间、主体和环境之间
2、的行为交互规则组成。模型的环境是革原,其中生存饕植物和各种动物主体。这些动植物主体通过捕食关系构成食物链。通过对各种动植物主体的属性和行为规则的抽取和建模,该模型尽量全露的反映各种食物链的普遍鹚性。然后使用Java编穰技术,在Swarm仿真平台上实现了模型。该模型的实现仿真平台中,可以方便的定制食物链中生物的种类、数量及相互关系,从丽模拟现实中不同组成和结构的食物链。该实现平台可通过图形爨面对模型仿真进行控制和设置,并将仿真的相关状态和数据以图形化方式输出。然艨使用该模型对不同组成和结构的食物链进行了仿寞。仿真结果较好的反映了现实食物链的一些性质和现象。通过模型仿真,从定性层面观察和分析了食物
3、链的种群数量动态,以及食物链的组成及结构与食物链的宏观性质之间的关系。为了更好的反映食物链的进化特征,在基本模型的基础上,探索性的构建了食物链初步的个体进化模型和整体进化模型。仿真结果能反映现实食物链进化的些特征。关键词:复杂适应系统,食物链,基于主体建模,仿真Complex Adaptive System Theory BasedFood Chain Modeling and SimulationGraduate Name:Liu CongMaj or:Computer Applied TechnologyDirected by:Zeng Jianchao,Wang HongGangAbst
4、ractFood chains are the primary components and existing form of ecosystemTheresearches of food chains are significant in the understanding of ecosystem and solving theecological problemsFood chains are typical complex systems,SO traditional methods areineffective on themThe development of complex sy
5、stem theory,especially theintroduction of complex adaptive system(CAS)theory,has provided a new way for theresearch of food chainsBased 011 the CAS theory,a fundamental food chain model is establishedThemodeling object is the food chain in grassland ecosystem which is a representative oneThe model c
6、onsists of environment,grass agents,herbivore agents,carnivore agents andinteraction rules among agents or between agents and environmentThe environment isgrassland where grass and animal agents exist。Predation relations link these agents toform the food chain。By extracting and modeling the properti
7、es and behavior rules of grassand various animals,the model tries to reflect the conlmon comprehensive properties ofall kinds of food chainsThe Java programming technology is used to implement themodel on the Swarm simulation platform。The species,amounts and interaction rules ofagents in food chain
8、can be set conveniently to simulate food chains with differentcompositions and structuresIn addition,there are graphic user interface to control andsetup simulation,and graphs to show the status or statistic data generated in simulationThen simulatiOns are conducted on the model to simulate various
9、food chainsThe resultsof simulation show well some observations of reallife food chainsSome qualitativeresults Can be drawn on the population dynamics,and relation between the compositionand macro properties of food chainFor the purpose to understand the better evolutioncharacteristics of food chain
10、ssome efforts are made to model individual evolution modeland elementary SWB_rm evolution model and the simulmion results show that the model isfeasible and effecfiveKey Words:complex adaptive system,food chain,agent based modeling,simulation承 诺 书本人郑重声明:所呈交的学位论文,是在导师指导下独立完成的,学位论文的知识产权属于太原科技大学。如果今后以其
11、他单位名义发表与在读期间学位论文相关的内容,将承担法律责任。除文中已经注明引用的文献资料外,本学位论文不包括任何其他个人或集体已经发表或撰写过的成果。学舞褥铲岁 200分年,月ff日 。第一章引言11选题背景及研究意义第一章 引 言生态系统中各种生物间以一系列吃与被吃关系联结起来的食物关系叫食物链。食物链是一种食物路径,它联系着群落中的不同物种。食物链中的能量和营养素在不同生物间传递。食物链是生态系统中将各组成元素联系起来的方式,是生态系统存在的主要形式。违背食物链规律则可能给人类和环境带来重大的损失,人们曾有过很多违背食物链规律的教训,一个典型的例子就是鹿和狼的故事。美国开巴普大草原上有很多
12、鹿。开巴普大草原虽然水草肥美,但野鹿的数量总是在4000来只上下,草长得再好也增加不多。人们发现,草原上由于生活着鹿的天敌一一狼和山狮,使鹿的数量无法增加。于是人们开始了消灭狼和山狮的大战。经过10年的努力,狼和山狮被打得踪影全无,野鹿一年比一年多起来,后来达到10万头。数目巨大的鹿群啃食一切可食的植物,吃光野草,毁坏林木,并使以植物为食的其他动物锐减,为此也使鹿群陷于饥饿和疾病的困境。随后的两年里,野鹿急剧减少。鹿的数量持续减少,以至于后来只剩下1万只左右。鹿虽然少了,草仍然不够吃,因为鹿的爆炸性发展给草原植被带来了毁灭性的破坏,不少地方长不出草来。后来过了很多年,这片草原都没有恢复元气。正
13、确认识食物链和生态系统的规律,可以指导人们在生态方面的决策,减少失误。合理利用这些规律,可以为人类造福。福建省农科院刘中柱教授主持的国家863航天领域的项目新食物链模式研究,已取得了重大进展。可以提高水利用率10倍,农产品综合产量提高10倍以上。普通一亩池塘养鱼可达六百至一千五百公斤,如一亩大田种作物,一亩可收稻谷一千公斤以上或蔬菜一万五千公斤以上,而用新食物链模式一亩就可收鱼一万到二万公斤,同时还可增加一万五千公斤蔬菜和五百公斤以上的稻谷,总共耗水量才七百至一千吨。根据国际水稻研究所2001年材料,每生产一公斤稻谷要消耗五千公斤水,国内材料是一公斤稻谷要二千公斤水,而用他研究的这个模式一公斤
14、稻谷仅需四百公斤左右的水。同时,这种模式在提高水利用率的同时,农产品不用土壤、不用化肥或用极少化肥、农药达到绿色食品要求,而且整体生产系统不构成对环境的污染。社会经济的持续发展需要生态系统提供大量的产品和服务,但人类对生态系统1基于复杂适应系统的食物链建模与仿真及其内部相互作用却知之甚少,在生物复杂性和生态系统功能方面研究较为缺乏。我国的生态系统退化严重,导致生态系统服务功能严重降低,外来入侵物种日益严重地威胁到我国的生态系统和经济发展,SARS和禽流感等疾病的爆发,已经严重阻碍着我国的经济发展和人民健康以及生活质量的进一步提高。生态系统及食物链是典型的复杂系统,系统内部个体之间存在错综复杂的
15、非线性相互作用,要解决当前的生物多样性、可持续发展、全球气候变化、外来物种入侵、疾病爆发和城市化的影响等生态环境问题,必须了解生态系统及食物链的复杂性和内在机理。复杂系统研究的进展,为生态系统和食物链这样的复杂系统研究提供了新的理论和方法。本文试图以复杂适应系统理论为基础,建立食物链的模型并仿真,然后结合复杂系统理论对仿真结果进行分析。一方面,通过模型仿真和研究食物链及生态系统的属性和内在机理。另一方面,现实生态系统等复杂系统是复杂系统理论的重要源泉,通过观察食物链模型仿真中表现出的复杂系统特性,可以反过来验证或者丰富现有的复杂系统理论。12国内外研究动态121复杂系统研究和应用20世纪70年
16、代后,复杂性科学的研究得到很大的发展。耗散结构、协同论、层次理论、突变论、混沌学理论、分形理论以及自组织临界性等理论的相继提出,标志着复杂性研究在自组织理论、非线性科学方面已经取得了比较明确的成果乜31。这些理论在解释一些复杂系统现象方面取得了很大的成功。上世纪末,复杂适应系统理论的出现,标志着复杂性理论又有了新的发展。复杂适应系统的一个核心观点是适应性造就复杂性,认为复杂的宏观性质是由大量相对简单的个体在相对简单的规则下相互作用而涌现出来的n刮。复杂适应系统这种自底向上的、分布式的系统观点,虽然用传统方法不好处理,但很适合于用计算机来建模和仿真。因此复杂适应系统的核心方法是基于主体的计算机建
17、模与仿真,让宏观的特性自动的涌现出来,这是复杂系统研究方法论上的一个突破。复杂适应系统理论在各个学科领域中得到了广泛的应用,用来研究现实中的各种复杂系统。如经济社会科学n 0uJ刳,企业管理13,143,供应链管理n5163,决策支持n71,软件工程n 8193和生态系统等领域陋2引。2第一章引 言122食物链研究概况早期的生态研究方法主要是对大自然中的动植物进行原地观察。如公元前4世纪亚里士多德就曾探讨过蝗灾、鼠害的成因,还有达尔文周游欧洲,积累撰写进化论的大量生态学资料,主要是通过对大自然的原地观察。精确的定量方法引入生态学始于种群研究。典型的如:J格朗特1662年根据人口统计资料探讨了出
18、生率、死亡率等指数与人口消长的关系:TR马尔萨斯的人口论:P-F费尔许尔斯特1838年提出的描述种群动态的逻辑斯谛方程。较系统的生物群落的定量研究出现得稍晚些。1895年JEB瓦尔明对不同地区植物群落的描述是当时在这方面的代表性成就。20世纪50年代起,系统科学得到了空前的重视和发展。系统概念和计算数学的方法渗入生态学研究领域。系统论、控制论、信息论等在这个时期被广泛应用于生态学的研究。越来越多的学者采用数学模型描述生态现象,预测未来趋势。这种基于数学模型的研究方法,在许多问题研究上是非常有效的。但是,由于生态系统及食物链是一个多尺度、多层次、异质性、非线性的系统,当食物链的规模稍大时,数学模
19、型会变得相当复杂,甚至无法处理。因为数学方法擅长于研究线性作用,对非线性作用则比较低效。这时期的研究方法都或多或少地忽略了这些复杂因素,从而使得理论预测结果与实验出现差异旧引。70年代后,复杂性科学的理论被逐渐应用到生态系统的研究中,以解释和分析生态系统和食物链的性质和现象。但仍然以数学模型和数学方法为主要的研究工具。后来出现的复杂适应系统理论,为食物链的研究提供了新的方法。生态系统和食物链是典型的复杂系统,用传统方法研究,有较大的局限性。而复杂适应系统的方法,则注重生态系统及食物链的整体性、多层次性、非线性等性质,而不是加以忽略或简化。其核心的研究方法是基于主体的自底向上的建模方法。在食物链
20、的研究上,表现为提取出食物链的基本要素和基本规则,建立食物链的基于主体的模型,然后观察和分析模型仿真中涌现的食物链的宏观性质。近年来,国内外有很多这方面的研究乜争3引。国内的如东北大学喻海飞等的食物链的基于主体的抽象建模,以应用于供应链的管理乜引。还有中科大的撒力等的稻田生态食物链的模型,用于分析和解决农业害虫的一些问题汹1。国外的如耶鲁大学的OSWALD JSCHMITZ和GINGER BOOTH的研究嗍。他们的模型是基于主体建模的,然而为了减少复杂性,对模型作了相当的简化,其主体的活3基于复杂适应系统的食物链建模与仿真动范围其实是一维空间。探讨了食物链中个体行为对食物链稳定性的影响。还有美
21、国大湖环境研究实验室(GLERL)的一个项目,其中要开发一个模型,叫虚拟生态环境中的数字生物(DOVE)口1|。DOVE是基于主体的模型,对食物链主体及主体的交互规则进行建模。试图用这个模型来研究湖泊中外来物种入侵等问题。因为食物链的固有复杂性,食物链的模型有相当的复杂度。这些研究的模型都是针对某一方面的特定问题,而不是研究食物链本身的普遍属性和复杂性。只是抽象出食物链一些相关属性建立模型,不能完整的反映食物链的各方面性质。13本文的工作根据以上对国内外相关研究现状的综述及分析,目前人们对生态系统和食物链的复杂性及内部作用机理所了解得仍很有限;基于复杂适应系统的食物链的建模仿真,虽已有很多尝试
22、,但模型不具有普遍性,比较局限。本文以复杂适应系统理论为理论基础,结合基于主体的建模仿真方法,按照自底向上的思想对食物链进行建模与仿真研究。首先构建了一个基于复杂适应系统的,能反映食物链普遍性质的食物链基本模型。然后在Swarm仿真平台下进行仿真,观察食物链仿真中涌现出的宏观性质,并结合复杂系统理论进行分析。随后对有进化功能的食物链建模和仿真作了一些探索性的尝试工作,试图构建一个初步的食物链进化模型,以分析进化在食物链中的作用机制以及进化对食物链的影响。先基于达尔文的进化理论,构建了一个基于个体的进化模型,即基于个体变异和对个体的自然选择的进化模型。然后构建了一个基于多层次自然选择食物链的整体
23、进化的初步模型,仿真结果与现实食物链中的进化比较相符。本文的主要内容安排如下:第一章,引言。介绍了本课题的研究背景和研究意义,以及国内外的相关研究现状,提出了本文的主要研究工作。第二章,复杂适应系统理论及研究方法。介绍了本文应用的理论基础,复杂适应系统理论。包括复杂适应系统理论的核心思想,复杂适应系统的属性、概念、机制和主要特点,以及基于主体建模方法,然后介绍了Swarm建模仿真平台。第三章,建立了食物链的基于复杂适应系统的基本模型。这个模型抽象出了食物链的普遍性质,试图尽量全面的反映食物链的本质属性。这个模型中,可以方便4第一章引 言的定制各种物种及物种间的关系,从而模拟出不同组成和结构的食
24、物链。然后在Swarm仿真平台上,使用Java编程语言实现了模型。第四章,食物链基本模型的仿真与结果分析。观察仿真中涌现的食物链的各种性质,与现实食物链进行比较,并进行分析。第五章,对构建食物链的进化模型进行了探索和尝试。首先,在基本模型的基础上,增加了个体变异和进化的功能,构建了一个基于个体进化的食物链模型。然后在基于个体的进化模型的基础上,构建了整体进化模型。自然选择不仅仅发生在个体层次,而且在种群等更高层次起作用,整体进化是指进化在多个层次上进行。第六章,结论和展望。回顾总结了本文的工作并探讨了进一步的研究方向。5基于复杂适应系统的食物链建模与仿真第二章复杂适应系统理论及其研究方法21复
25、杂适应系统理论211复杂适应系统理论的核心思想复杂适应系统理论(CAS)由美国JohnHolland在1994年提出。其核心思想是适应性造就复杂性。复杂适应系统中的成员被称为适应性主体。主体是具有自身目的性与主动性,有活力和适应性的个体。所谓具有适应性,是指主体可以在持续不断地与环境以及其他主体的交互作用中“学习”和“积累经验”,并且根据学到的“经验改变自身的结构和行为方式。正是这种主动性及主体与环境的、其他主体的相互作用,不断改变着它们自身,同时也改变着环境。整个系统的演变或进化,包括新层次的产生、分化和多样性的出现,新的聚合而成的、更大的主体的出现等,都是在这个基础上派生出来的。复杂适应系
26、统理论将系统的成员看作是具有自身目的、主动性的、积极的主体,适应能力表现在主体能够根据行为的效果修改自己的行为规则,以更好地在客观环境中生存。它认为主动性及主体与环境的反复的、相互的作用,才是系统发展和进化的根本动因。系统在主体之间、主体与环境的相互作用中发展,表现出宏观系统中的分化、涌现等种种复杂的演化过程,宏观的变化和个体分化都可以从个体的行为规律中找到根源。个体与环境之间这种主动的、反复的交互作用以“适应”一词加以概括,即适应性造就复杂性。H5,61212复杂适应系统的属性、概念和机制围绕“主体“这一核心的概念,Holland提出了研究适应和演化过程中要注意7个基本概念:聚集、非线性、流
27、、多样性、标识、内部模型和积木。前4个是个体的本质属性,后3个则是个体与环境进行交流时的机制,并认为复杂适应系统其他性质均可由这7个概念推出。畸,611聚集:个体在一定条件下通过“粘合”形成一个具有新的功能和属性、较高层次的聚集体,这种聚集体可以在系统中像单独的个体那样行动。2非线性:主体及其属性在发生变化时,并非遵从简单的线性关系。特别是与系统或环境的反复的交互作用过程中,作用更加明显。3流:在个体之间及与环境之间存在着物质流、能量流和信息流。流的周转直接6第二章复杂适应系统理论及研究方法影响系统的演化过程。4多样性:个体相互作用和不断适应环境的过程中,个体之间的差别会发展和扩大,最终形成分
28、化,形成个体类型的多样性。5标识:标识的作用就是相互识别和选择以实现信息的交流。为了相互识别和选择,个体的标识在个体与环境的相互作用中是非常重要的。6内部模型:每个主体都具有复杂的内部机制,对于整个系统来说,统称为内部模型,即主体认识、感知、预测世界的模型。7积木:复杂系统是一些相对简单的组件改变其组合方式而形成的。系统的复杂性不在于构件的多少和大小,而在于原有积木的重新组合。213复杂适应系统的主要特点1首先,主体是主动的、活的实体。复杂性正是在主体与其它主体之间主动交往,相互作用的过程中形成和产生的。个体主动的程度,决定了整个系统行为的复杂性的程度。这点是CAS和其他分析方法的关键性的区别
29、。2CAS中的主体与环境(包括主体之间)的相互影响,相互作用,是系统演变和进化的主要动力。同时具有明显的层次性,层与层之间的直接关联作用少,系统中的主体并行地对环境中的各种刺激作了响应,进行演化。3把宏观和微观有机地联系起来。它通过主体和环境的相互作用,使得个体的变化成为整个系统变化的基础,统一地加以考察。4引进了随机因素的作用,使它具有更强的描述和表达能力。引入随机因素并不是CAS理论所独有的特征,然而CAS理论处理随机因素的方法是非常特别的。它从生物界的许多现象中吸取了有益的启示,其集中表现为遗传算法。nt 561214复杂适应系统的研究方法基于主体的建模与仿真在复杂系统的研究中,往往无法
30、建立系统的足够精确的数学模型,所以对复杂系统的行为无法或非常困难进行准确的分析和预测,也就无法或很难对复杂系统进行实验研究。因此,为了开展对复杂系统的研究,大多数研究者通常都是在一定的约束条件下,建立系统局部的解析模型,分析系统局部的行为特性。而这种传统的复杂系统研究方法的不足之处就是很难描述系统行为的整体面貌,而且往往投入了大量的资金和人力,却很难获得理想的效果,即使是获得了某些研究结果,也常常是因为建模时的约束过多,而模型与实际系统差距甚远,致使相应的结论具有很大的局限性。7基于复杂适应系统的食物链建模与仿真CAS理论的最大贡献在于它提供了一种自下而上建模的研究方法一基于主体的建模仿真。这
31、种方法赋予组成系统的个体一一主体以简单的规则和关系,通过仿真来重现真实世界的复杂现象n331。基于主体的建模仿真是研究大量主体交互以及它们的交互所表现出来的宏观尺度行为的一种方法。该方法是在复杂系统理论指导下,结合计算机仿真技术来研究复杂适应系统的一种有效方法。这种方法将复杂系统中各个仿真实体用Agent的方式、思想来建模,通过对主体的属性和行为及之间的交互关系进行刻画,来描述复杂系统的行为。并借助计算机仿真工具(如Swarm软件平台)来研究从小规模性质到大规模性质的复杂适应系统涌现行为m,351。基于主体的建模方法的核心是通过在局部细节模型与全局模型(整体行为、突现现象)间的循环反馈和校正,
32、来研究局部细节变化如何突现出整体的全局行为。它体现了一种自底向上的建模思想,与传统的从系统分析与描述、建立系统的数学模型、建立系统仿真模型到模型的验证、确认这样一种从顶向下的建模思路是不同的。l、基于主体的建模方法的特点:1)从所论系统的低一层次进行研究,涉及的主体数目较多,并且具有一定的智能性,各主体之间存在局部连接规则;2)关注点是系统中发生于主体之间的联系和相互作用,这些相互作用引起复杂系统整体的涌现行为,产生系统的整体行为;3)在对待系统层次的视角上,该方法把注意力集中在相关的个体行为,自底向上地观察和描述系统的行为,是一种从微观到宏观、跨层次的研究思路。2、基于主体的建模的实现方法1
33、)面向对象编程技术。面向对象编程中的对象和主体(Agent)有很多的相似之处,它们都是实体的属性和行为的封装。并且对于面向对象和基于主体建模来说,实体及其交互关系的描述是一个共同的核心问题。由于两者之间有很多的相似性,有很多基于主体的模型是用面向对象语言实现的,例如用C+、Java等。2)利用仿真平台。为了减少基于主体建模仿真实现中的重复工作,提高模型之间的互通性,出现了一些建模仿真平台。国外的仿真平台有Swarm、Ascape、Repast和TNGlab等。国内的有国防科技大学开发的JCass仿真平台,中科院计算所史忠植等研制的IAGE系统等。本论文选取Swarm作为建模仿真的实验平台。8第
34、二章复杂适应系统理论及研究方法22 SWARM仿真平台221 Swarm概述Swarm软件是圣塔菲研究所(SFI)开发一个仿真工具集,用来帮助科学家们分析复杂适应系统b63引。Swarm系统向研究人员提供了一套标准、灵活、可靠的软件工具,可以用来对CAS进行研究。Swarm的基本目标是将研究人员从构造大规模计算机模拟所产生的大量软件工程方面的负担中解脱出来。为达到这个目标,Swarm提供了一整套工具和一个驱动模拟的内核。研究人员可以自由地定制Swarm中的多种对象,对系统在感兴趣的领域内建模。222 Swarm的工作原理Swarm是一个模拟平台,它用来辅助CAS的研究,作为CAS研究的实验工具
35、。这个模拟平台用来实现离散事件模拟,它具有一般离散事件模拟的共性。它采用了面向对象的实现方法,所以在这个平台中,提供了一整套类库,为研究者完成一些模拟试验的基本的工作,用户可以在这些类库的基础上实现所需的功能。在模拟过程中,像其它的离散事件模拟一样,它也是随着模拟时钟的逐步推进而使模拟过程逐步推进。在Swarm中提供了一个时间表和行为表的概念,时间表用来描述时钟推进过程中各个主体的行为顺序,行为表描述在每个时间点上的各个主体的一系列行为。由于有了纵向的时间的推进和每个时间点上的周期性的行为的发生,模拟过程就顺利展开了b7t巩39I。223 Swarm结构1Swarm的类库H仉413Swarm系
36、统为模拟工作定义了一些类库,其中主要的类库包括:Objectbase、Activity、Simtools、Coliections、Defobj、Random和Space。Objectbase库包括两个重要的类,Swarmobject和Swarm。Swarmobject是所有模拟主体的根类,它定义了内存管理的接口并提供对探测器的支持。Swarm类是模型的总控,ModelSwarm和ObserverSwarm都从这一基类处继承有用的代码。Activity库提供了对时间表的支持。时间表是模型运行的时序列表,用户可以将周期性执行的动作按顺序放入这个数据结构中,并指明运行间隔和触发条件,模型就可以按照这
37、个约定运行而不需人为的干预。Simtools库中包括支持探测器的类,这样就可以在模型的运行过程中观察或修9基于复杂适应系统的食物链建模与仿真改变量。Simtools还提供数据分析和显示支持的工具,能够产生统计数据汇总,画时序图等等。Collections中提供了一系列对象的列表,如List、Array、Set等。Swarm支持向一个列表中的所有对象传递消息,还可以将列表中的对象按某个属性排序。Defobj中提供了对消息、错误处理、调试和内存分配的支持,增强了ObjectiveC的功能。它还支持对象界面和实现分离,从而使Swarm编写的程序的层次性更加清晰。Random库提供给用户一套随机数生成
38、器。Swarm的随机数库支持正态分布、均匀分布、指数分布等多种随机分布。Space是一个简单的空间库,包括一系列用于二维离散模型的类。Space中的类大多数是从Grid2D,一个可以在指定格点上存储对象和整型值的二维数组继承得来。Swarm类库的总体结构如图21所示:图21 Swarm类库总体结构图2Swarm仿真模型中的对象7删大多数Swarm的模拟程序包括四类对象。ModelSwarm、ObserverSwarm、模拟主体和环境。其中的ModelSwarm和ObserverSwarm是Swarm类的子类。Swarm类是Swarm模拟的基本构造块,一个Swarm是一系列对象以及这些对象的行为
39、时间表的组合。模拟主体对应基于主体建模中的主体。模型的环境对象,是主体存在和活动的平台。下面着重介绍一下ModelSwarm和OberverSwarm。1)ModelSwarmModelSwarm是一个封装了被模拟的模型的Swarm对象。ModelSwarm中的每一个对象对应模型世界中的每一个主体。当用户定义了全部对象并为它们建立起关系后,lO第二章复杂适应系统理论及研究方泫就要把这些主体放到这个ModelSwarm对象中。除了作为对象的集合,ModelSwarm还包括模型中行为的时间表。用户需要为这些主体编写一个时间表,通过产生一系歹|具有特定顺序的行为来体现模型中的时间。时间表可以通过产生
40、activity库中的schedule类的实例对象来建立,在其中填入排好序的对象消息对。建好时间表,Swarm模型就可以运行了。ModelSwarm还包括一系列输入和输出。输入的是模型参数,输出的是要观测的变量的值及模型的运行结果。2) ObserverSwarm对于计算机模拟来说,还需要数据收集工具来观察模型并记录发生了什么。在Swarm中,观察是通过ObserverSwarm对象来实现的。0bserverSwarm是一个特殊的对象,可以通过探测器接口观察其它个体。ObserverSwarm也是一个Swarm,因此它也包括一组个体和一个行为时间表。ObserverSwar掇的个体是用来观测的
41、探测器及输出界面,如图表,二维格点等。其彳亍为时间表则描述各探测器采样的间隔和顺序。通过将一个模型的ModelSwarm和ObserverSwarm合并在一起,一个完整的实验模型就建立起来了。通过使用ModelSwarm和ObserverSwarm,可将模型的界面和模型的实现分离。Swarm仿真模型中的对象构成如图2。2所示。Ag图22 Swarm仿真模型中对象构成图224使用Swarnl建模仿真在使用Swarm进行建模与模拟时,首先对所研究的领域问题进行分析,找出描述系统的若干主体,抽象出这些主体的特性和行为,设计成相应的类,并建立这些主ll垩主墨銎堕坚至竺箜垒望壁堡堡皇堕壅体的层次结构关系
42、。然后建立模拟系统的主程序框架:创建一个ObserverSwarm,在ObserverSwarm中依次创建程序交互控制面板、创建对象集(Bui ldObjects)、创建行为集(BuildActions);在ObserverSwarm的BuildObjects中同时创建一个ModelSwarm对象,并由该ModelSwarm创建自己的对象集(Bui ldObjects);在ModelSwarm的Bui ldObjects中创建模拟主体和环境对象,并将主体加入环境中。在ObserverSwarm的BuiidActions中同时促使ModelSwarm创建行为集(BuiIdActions)。Mod
43、elSwarm的BuildActions中调度主体的行为及交互关系,安排行为时间表日7“0413。Swarm模型仿真流程如图23所示。图23 Swarm模型仿真流程12第三章基于复杂适应系统的食物链基本模型第三章基于复杂适应系统的食物链基本模型31食物链模型基本描述植物能够利用日光进行光合作用,将环境中的水分和二氧化碳合成为植物生长发育所需要碳水化合物。食草动物取食植物,而食肉动物又以食草动物为食。不同生物物种之间由食性关系所建立的各种物种之间的营养联系,形成一系列猎物与捕食者的锁链,这就叫食物链。“大鱼吃小鱼,小鱼吃虾米”是食物链形象的说明。本文是要建立一个能反映食物链普遍属性的模型,来研究
44、食物链作为复杂适应系统的共性。因此,采用比较典型的草原生态系统中的食物链作为建模对象。模型由环境、植物主体、草食动物主体、肉食动物主体以及主体的行为规则组成(图31)。草原既是植物主体的生长空间,也是草原动物主体的栖息地。草原的各种动物主体,在行为规则集的控制下,与环境相互作用,与其他主体相互作用,构成草原的食物链模型。其中植物主体在环境中生长,草食动物主体取食于植物,而肉食动物捕食其他动物。各主体间相互作用的关系如图(32)。图31主体关系图13基于复杂适应系统的食物链建模与仿真图32捕食关系图本模型是基于主体的自底向上建模,没有宏观上的集中控制和约束。模型完全是由主体之间根据各自的行为规则
45、进行交互,涌现出宏观的现象和结果。32食物链基本模型321环境环境在本模型中,是一个X*Y的二维的离散空间。每个离散格,代表一定面积的草原。每个离散格都容纳着一个草原植物主体。这些离散格也可作为动物主体的栖息地,并且同一时间,一个离散单元格,只能被一个动物个体占据。如33图,34图所示:14第三章基于复杂适应系统的食物链基本模型YoX图33环境的二维网格表示环境具有以下的属性:1。环境的宽度(礤orldX);2环境的高度(WorldY);图34模型环境示意图15基于复杂适应系统的食物链建模与仿真3环境温度(Temperature)。4环境湿度(Humidity)。322主体及其行为规则模型中定
46、义了三类主体:草原植物主体(Herb);草食动物主体(Herbivore):肉食动物主体(Carnivore)。其中草食动物主体(Herbivore)和肉食动物主体(Carnivore)同属于动物主体。1、草原植物主体(Herb)草原植物主体通过光合作用来获得能量。环境中每一个单元格,都有一个植物主体。1)植物主体的属性:a)能量(Energy)。每个植物主体包含的能量值,也是可被利用的资源的多少。植物主体m在t时刻的能量计算如公式31所示:Energy(m,t)=Energy(m,t1)+EnergyGrow(m,t)一EnergyEaten(m,t)(3-1)其中EnergyGrow(m,
47、t)是在植物主体m在t时刻的生长增加的能量值,EnergyEaten(m,t)是m在t时刻被取食的能量值。b)最大能量(energyMax)。植物主体由于物种本身的局限,个体不可能无限的生长,会有一个极限值。最大能量就是植物主体生长的一个极限值。当植物能量值达到最大能量值时,植物停止生长。C)颜色(color)。植物主体在环境中显示的颜色。本模型中,根据植物的生长状况,颜色显示有所不同。植物生长茂盛,能量大于最大能量70时,显示为绿色。否则显示为淡绿色。而当植物被过度的采食,能量小于最大能量的20时,显示为白色,表示可利用率低。设能量水平EnergyLevel是植物主体能量和最大能量的比值,即
48、EnergyLevel=EnergyenergyMax100 (3-2)则植物主体的颜色与能量水平EnergyLevel的关系可用表31表示:表31能量水平(EnergyLevel) 植物主体颜色大于或等于70 绿色大于20并小于70 淡绿色小于20 白色d)生长速率(growSpeed)。植物主体通过光合作用,合成资源和增加自身能量16第三章基于复杂适应系统的食物链基本模型的速度。e)位置(X,Y)。用来确定植物主体在环境中的位置,以所在单元格的坐标来表示。植物主体不会移动,所以坐标也不会变化。草原植物主体的有些属性是动态属性,是可以随着时间而变化的。植物主体的能量和颜色属性是动态属性。草原
49、植物主体的一些属性是静态属性,也就是这些属性在主体的生命周期内是不会变化的,对应于现实中,植物的一些比较固定的属性或极限值。植物主体的最大能量,生长速率,位置等属性是静态属性。2)植物主体的行为:生长(grow)。植物主体被吃过后,或能量小于最大能量极限时,植物以一定的生长速率(growSpeed)生长。当植物生长后,能量达不到最大能量值是,植物的能量等于原能量值加上生长速率的能量值。否则植物的能量等于最大能量值。植物主体m在t时刻的生长行为,可用下面公式3-3表示:I“Energy(mS)=Energy(mS一1)+growSpeed(n) ,Energy(mI一1)+growSpeed(n)=energyMax2、动物主体(Animal)动物主体(Animal),包括草食动物主体(Herbivore)和肉食动物主体(Carnivore)。草食动物主体进食植物主体获取能量。而肉食动物主体则通过进食其它动物主体来获取能量。在动物主体部分介绍草食动物和肉食动物的共同属性和行为,两者有差异的属性和行为将在后面分别介绍。1