什么是糖域模型 | 集智百科
本文是对集智百科中“糖域模型”词条的摘录,参考资料及相关词条请参阅百科词条原文。
本词条由集智俱乐部众包生产,难免存在纰漏和问题,欢迎大家留言反馈或者前往对应的百科词条页面进行修改,一经修改,可以获得对应的积分奖励噢!
目录
一、什么是糖域模型?
二、起源
三、原理
四、模型实现
五、相关资源推荐
六、集智百科词条志愿者招募
糖域模型:https://wiki.swarma.org/index.php?title=糖域模型
1. 什么是糖域模型?
糖域模型 Sugarscape models是一个遵循简单规则的基于主体的模型,用于人工智能、基于主体建模以及社会仿真等领域,在约书亚·爱泼斯坦 Joshua M. Epstein和罗伯特·阿克斯特尔 Robert Axtell一起出版的书籍中《如何创造人工社会》Growing Artificial Societies中有详细介绍。
2. 起源
糖域模型最早可以追溯到马里兰大学 University of Maryland的经济学家托马斯·谢林 Thomas Schelling发表的论文 ,他提出了谢林的种族隔离模型 Schelling's model of segregation。这篇论文是谢林和社会环境建模的同事写于1969年,但由于缺乏足够的算力与合适的编程机制来充分开发其模型的潜力,他们的选择受到了限制。
Epstein和Axtell在他们《如何创造人工社会》书中,应用了约翰·何顿·康威 John Horton Conway提出来生命游戏的主体仿真模型,并将其应用于谢林的最初的想法中。为了证明他们在基于主体仿真领域的发现,他们创造了一个模型并将其制成CD-ROM附在书上一起出售。这个模型就是我们现在众所周知的概念糖域模型。此后,糖域模型就被广泛使用于基于主体的模型中,只要这些模型使用的规则与Epstein和Axtell定义的规则相似即可。
3. 原理
所有的糖域模型都包括主体(居民),环境(二维网格)以及控制主体之间,主体和环境之间相互作用的规则。
Epstein和Axtell最初提出来的模型(被认为是第一个大规模社会仿真的主体模型),是基于51x51的细胞网格,其中每个细胞可以包含不同量的糖(或香料)。在每个步骤中,主体都会环顾四周,找到离自己最近的充满糖的细胞网格,然后移动并代谢。它们可能会留下污染,死亡,繁殖,继承资源,传递信息,交易或借糖,产生免疫力或传播疾病-取决于模型设置时定义的特定情况和变量。
模拟中的“糖”可以看作是人造世界中资源的隐喻,设计者可以通过该隐喻来研究社会动力学效应,诸如进化,婚姻状况和种群继承问题。
Epstein和Axtell在他们的书中提到的原始规则在精确模拟时可能会出现问题,因为并不总是能够复现出《如何创造人工社会》中所提供的结果。
4. 模型实现
糖域模型已经有多种实现方式,其中一些可以在开源软件中获得。
Ascape
一个最初的应用实现是基于Ascape开发的。Java软件适合做基于主体的社会仿真。糖域模型仍然是Ascape内嵌库模型中的一部分。
NetLogo
NetLogo已经可以实现糖域模型。NetLogo模型库中包含三个糖域场景:“立即生长 Immediate Growback”,“恒定生长 Constant Growback”和“财富分配 Wealth Distribution”。除了这三种场景外,还有Iain Weaver的Sugarscape NetLogo模型,该模型是用户社区模型库的一部分。“它建立在Owen Densmore的NetLogo社区模型的基础上,涵盖了除战斗规则(尽管包含了琐碎的规则,但对模型却没有多大价值)之外,在《如何创造人工社会》一书中讨论的所有规则。” 并且该模型配备了丰富的文档,其中包括成功复制最初糖域规则的说明。
SugarScape on steroids
随着基于主体的模型(ABM)的兴起,在建模时,仿真中的总体大小与动态系统的总体大小相匹配是至关重要的。
但是,现代主体仿真程序框架的性能不足以处理如此大的人口规模,并且设计运行计算集群的并行计算框架受到可用带宽的限制。根据摩尔定律,随着计算能力的增加,仿真框架的规模和复杂度也会随之增加。来自密歇根理工大学的R. M. D’Souza, M. Lysenko and K Rahmani使用糖域模型来证明ABM仿真中的图形处理单元(GPU)每秒更新50多次,主体人数超过200万。
Mathematica
也可以在Mathematica上实现。
MASON
乔治·梅森大学 George Mason University的MASON项目中,只要有免费学术许可证 Academic Free License,也可以实现糖域模型,其中MASON是使用Java开发的多主体仿真环境。
5. 相关资源推荐
课程推荐
NetLogo NetLogo多主体建模课程
北京师范大学系统科学学院张江教授通过数个案例教会大家如何去动手搭建一个多主体仿真模型,以及如何利用NetLogo去实现。可以教你如何用Netlogo程序来做人工社会的仿真和模拟。
包括以下模型:
用“生命游戏”认识Patch
从Langton的蚂蚁看Turtle与Patch的交互
从羊-草生态系统深入Turtle与Plot画图
玩具经济模型与 Turtles间的互动
从玩具经济模型学文件导出与复杂曲线绘制
从玩具经济模型学习如何使用行为空间做实验
透过人工鸟群Boid模型学习List的使用
网络上病毒传播的SIR模型 用Links建模网络动力学
重访羊-草模型与系统动力学建模
课程推荐:NetLogo多主体建模入门https://campus.swarma.org/course/1095
6. 百科项目志愿者招募
作为集智百科项目团队的成员,本文内容由思无涯咿呀咿呀参与贡献。我们也为每位作者和志愿者准备了专属简介和个人集智百科主页,更多信息可以访问其集智百科个人主页。
在这里从复杂性知识出发与伙伴同行,同时我们希望有更多志愿者加入这个团队,使百科词条内容得到扩充,并为每位志愿者提供相应奖励与资源,建立个人主页与贡献记录,使其能够继续探索复杂世界。
如果你有意参与更加系统精细的分工,扫描二维码填写报名表,我们期待你的加入!
来源:集智百科编辑:曾祥轩
点击“阅读原文”,阅读糖域模型相关内容与文献