编程模拟自然(九):元胞自动机。编程模拟自然(九):元胞自动机。

  旧书发摆:发鸠之山,其上大都柘木。有鸟焉,其状如乌,文首、白喙、赤足,名曰精卫,其鸣自詨。

  一天,精卫游于码海,溺而不返,后常衔西山之木石,以堙于海。有诗为证:

  万事有无一致,尔何空自苦;

  长将一寸身,衔木到终古?

  我愿意平码海,身沉心不转;

  码海无平期,我心坎无绝时。

  呜呼!君不见,西山衔木众鸟多,鹊来燕去自成窠!

  (前情提要:主角元乘坐返回舱降落到了码海上,随后撞了只鸟人…)

  “咳咳,远道的客,我叫作精卫XIV,乃是先祖精卫鸟的第十四替代后裔…”鸟人发自我介绍

  “…你是孰,从乌来而使到哪里去?”鸟人顿了刹车接着问道

  元不禁陷入了沉思,哲学问题连连不便快速被来答案。

  精卫XIV打量了一阵子首,见该仍沉默不语,更是坚定了温馨的想法,又道

  “少年,我看君颈椎清奇,必是万中无一的编程奇才,今日与汝生以,这里有同样按《码海之奇峰》,就给你了。”

  “唔,这说的是啊?”元好奇道。

  “精卫变成了单鸟人,但他从未放弃这世界之易,他一味微笑着,终于给同称作爱心的业主发现,老板将他招聘来开了后端开发,十年过后,精卫终于成为了相同名叫高大之软件测试师。所以,我们不要放弃希望,天使永远住在你微笑之口角。”

  …

betway必威 1

流动:码海,充斥着代码的海洋

注:Bug,码海中普遍存在的一致栽生物

  旧书发叙:发鸠之山,其达到大多柘木。有鸟儿焉,其状如乌,文首、白喙、赤足,名曰精卫,其鸣自詨。

  一天,精卫游于码海,溺而不返,后常衔西山之木石,以堙于海。有诗为证:

  万事有无等同,尔何空自苦;

  长将一寸身,衔木到终古?

  我愿平码海,身沉心不改变;

  码海无平期,我中心无绝时。

  呜呼!君不见,西山衔木众鸟多,鹊来燕去自成窠!

  (前情提要:主角元乘坐返回舱降落到了码海上,随后撞了单鸟人…)

  “咳咳,远道的嫖客,我叫作精卫XIV,乃是先祖精卫鸟的第十四替代后裔…”鸟人发自我介绍

  “…你是何许人也,从哪里来而要交哪去?”鸟人顿了刹车接着问道

  元不禁陷入了想,哲学问题接二连三不便长足吃来答案。

  精卫XIV打量了会儿老大,见该仍沉默不语,更是坚定了团结之想法,又道

  “少年,我看你颈椎清奇,必是万中无一的编程奇才,今日同您闹因,这里发出一样仍《码海底奇峰》,就捐赠你了。”

  “唔,这讲的是呀?”元好奇道。

  “精卫变成了单鸟人,但他没放弃是世界之轻,他一味微笑着,终于为同曰爱心的业主发现,老板将他招聘来做了后端开发,十年过后,精卫终于成为了一样称呼伟大的软件测试师。所以,我们决不放弃希望,天使永远住在你微笑之口角。”

  …

betway必威 2

流动:码海,充斥在代码的海域

流淌:Bug,码海中普遍存在的如出一辙种生物

先是段 复杂系统

  Hawaii读者评论:

  “我多年来读到平等随好书《码海之巅 》,文中涉及了什么样用元胞自动机模型更好地解码海中Bug的繁殖模式。” style=”color: #888888;”>–从事编程20不必要年的LuisIbara

  “很多编程书念起来味同嚼蜡,大多数的编程课程同样枯燥无聊。本书给有了自时所知道各种编程概念最初步的鸡汤解释。” style=”color: #888888;”>–不愿意透露姓名的Alice

  “我是一律誉为文艺爱好者,最喜爱的哪怕是笔者以书中之回忆录,在我看来这实则是平等如约讲述软件测试员与Bug之间爱恨情仇的书写。” style=”color: #888888;”>–自称文学爱好者的Youkili

  …

  style=”color: #888888;”>–节选自《码海的巅峰·抵得上20年工资的3句子评论》

  复杂系统的性质

  个体之间是小范围之维系

  个体的动作是互为的

  系统于一体化上会见展现出原始现象

  咦是元胞自动机?

  它能构建以时间推移发生状态转移的体系

  细胞在为一维要么多维网格中

  每个细胞都起一个要多只状态

  每个细胞都来邻居(即近的细胞)

  元胞自动机分类

   
平稳型:自任何初始状态开始,经过一定时间运作后,元胞空间趋于一个空中平稳的构形,这里空间平稳即乘各级一个元胞处于稳定状态。不随时间别而变更。
  周期型:经过一定时间运作后,元胞空间趋于一致多元简单的原则性结构(Stable
Patterns)或周期结构(Perlodical
Patterns)。由于这些组织可看成是同样种滤波器(Filter),故可采用及图像处理的研讨着。
  混沌型:自任何初始状态开始,经过一定时间运作后,元胞自动机表现来混沌的非周期表现,所杀成的构造的统计特征不再变止,通常表现呢分形分维特征。
  复杂型:出现复杂的局部组织,或者说是局部的无知,其中微会不停地流传。

betway必威 3

图1-1 二维元胞自动机

首先章 复杂系统

  Hawaii读者评论:

  “我近年读到平遵照好题《码海底巅 》,文中涉及了何等用元胞自动机模型更好地亮码海中Bug的繁衍模式。” style=”color: #888888;”>–从事编程20不必要年之LuisIbara

  “很多编程书读起来味同嚼蜡,大多数之编程课程同样枯燥无聊。本书给起了自身时所知各种编程概念最浅的鸡汤解释。” style=”color: #888888;”>–不情愿透露姓名的Alice

  “我是平等曰文艺爱好者,最欢喜的就是作者在题被的回忆录,在我看来这实际上是千篇一律遵循讲述软件测试员与Bug之间爱恨情仇的书写。” style=”color: #888888;”>–自称文学爱好者的Youkili

  …

  style=”color: #888888;”>–节选自《码海之巅·抵得及20年工钱的3句子评论》

  复杂系统的性质

  个体之间是多少范围的联络

  个体之动作是互相的

  系统于完全达标会展现出原始现象

  哎呀是元胞自动机?

  她能构建以时间推移发生状态转移的体系

  细胞在为一维或者多维网格中

  每个细胞都起一个还是多只状态

  每个细胞都来街坊(即近的细胞)

  元胞自动机分类

   
平稳型:自任何初始状态开始,经过一定时间运作后,元胞空间趋于一个空中平稳的构形,这里空间平稳即乘每一个元胞处于稳定状态。不随时间变更而变更。
  周期型:经过一定时间运作后,元胞空间趋于一致雨后春笋简单的固化结构(Stable
Patterns)或周期结构(Perlodical
Patterns)。由于这些组织可看作是一样种滤波器(Filter),故然采用及图像处理的研究被。
  混沌型:自任何初始状态开始,经过一定时间运作后,元胞自动机表现来混沌的未周期表现,所杀成的组织的统计特征不再变止,通常表现为分形分维特征。
  复杂型:出现复杂的组成部分结构,或者说是局部的无知,其中小会连地传。

betway必威 4

祈求1-1 二维元胞自动机

次章节 生命游戏

  初九日,惊蛰。

  我时时眺望码海,以为会等交一个丁。很多年以后,我去矣码海,我才懂是本人错了。

  很多年以前,我产生个外号叫做疯子,任何人都好变得疯狂,只要您尝试了什么叫做Debug时的悲凉。我非会见介意其他人怎么看我,我只不过不思量看看人家比我重新凄凉。

  又是一个雨天,我带了把伞。可是每次自我一个人口戗伞走在暴雨中的下,我都见面难以了。

  以前自己是不由伞的,因为自身感觉自己是同样单无脚鸟,只能不鸣金收兵的奇怪,飞的分神了便在歌谣里休息。这样也很好的,不知道疲倦。

  直到来一样天,一个充分眼的家里与自家一块儿在树下躲雨。

  我们最好相近的当儿,我及它中间的距离只有0.01公分,2独小时后,我容易上了此家。

  我相信除了寂寞,缘分是先生和家间相爱的其他一样种由。寂寞是随时,缘分是误。

style=”color: #888888;”> –节选自《码海之奇峰·时间是所彼岸桥》

  四边网格-死亡

  竞争:细胞周围有4只与以上的近邻时常,细胞死亡

  孤独:细胞周围“活在”的左邻右舍等于还是小于1时,细胞死亡

  季止网格-新生

  处于死亡状态的细胞,当它周围刚好来三只活在的左邻右舍,它呢会见成活在的状态

  **四限网格-静止**

  保持在在:如果细胞是“活在”的,而且周围有2个或3单邻居时常,它将继承在在

  保持死亡:如果细胞是“死亡”的,而且邻居数目不等于3时,它以保持死亡状态

betway必威 5

贪图2-1 保持稳步的重组

betway必威 6

图2-2 交替出现的结合

第二回 生命游戏

  初九日,惊蛰。

  我常常眺望码海,以为会等交一个口。很多年过后,我去了码海,我才懂得是自我错了。

  很多年以前,我产生个外号叫疯子,任何人都好转换得疯狂,只要你品尝过什么叫做Debug时之凄美。我非见面介意其他人怎么看自己,我只不过不思量看到人家比自己还凄凉。

  又是一个雨天,我带了拿雨伞。可是每次自己一个人口戗伞走在暴风雨中之上,我还见面难以了。

  以前我是勿起伞的,因为自发温馨是相同但无脚鸟,只能不歇的奇怪,飞的分神了便于风里休息。这样吗不行好之,不知晓疲倦。

  直到有雷同天,一个充分双目的妻和自己一起当塑造生躲雨。

  我们尽相近的时节,我与她中间的去只有0.01公分,2只钟头之后,我容易上了之老婆子。

  我信任除了寂寞,缘分是男人以及老伴间相爱的旁一样种原因。寂寞是天天,缘分是潜意识。

style=”color: #888888;”> –节选自《码海底奇峰·时间是座彼岸桥》

  四边网格-死亡

  竞争:细胞周围是4只和以上的邻居时常,细胞死亡

  孤独:细胞周围“活在”的街坊等于还是小于1时,细胞死亡

  季止网格-新生

  处于死亡状态的细胞,当她周围刚好来三独在在的近邻,它吗会成为活在的状态

  **四度网格-静止**

  保持在在:如果细胞是“活在”的,而且周围发出2单或3只街坊常,它以延续生存在

  保持死亡:如果细胞是“死亡”的,而且邻居数目不对等3时,它将保障死亡状态

betway必威 7

图2-1 保持有序的组成

betway必威 8

祈求2-2 交替出现的成

其三章节 扩展属性

  惊蛰,忌骄暴动怒。每年的斯时,我都见面开着船,去东方的三角洲,见一个总人口。我明白,她表现不至本人,会悄悄咬自己之头发。

  “我们以乌见了啊?”她的船舱里,总有几只奇奇怪怪的老搭档。

  “你忘掉了邪?忘了极致好–”那个圆脸蛋的一行擦了擦桌子,脸色变了移。

  “我们作了誓要充分了而的,不过大偏,我们今天啊未算是敌人。”一个薄高个,山羊胡子的人数答道。我认为她们都深意外,明明是店里之搭档,总说自己是仇人。

  她这里来同栽泡了桃花的酒,她说酒给“醉生梦死”,喝了后来,可以让你忘记以前做了之别工作。

  我特别意外,为什么会生出如此的酒。她说,人最充分的堵,就是记忆力太好,如果什么还好淡忘了,以后的各级一样天,都见面是新的初始。那您说基本上开心。

  她陪同在自家一同喝,喝了之后还会见唱歌曲调很十分的曲。

  现在,我不过记得少句,丑Bug怪~呀咦呀啊啊~啊什么什么,能否别把灯打开。

 –节选自《码海之奇峰·人生如梦》

  扩充的性

  岗位:网格中的职务

  颜色:实际显示的ARGB颜色

  大小:单个网格占据的像素大小

  形状:方块、圆形或另形状

  生命:记录迭代次数

  其他:其他自定义之习性

  扩展属性之风味

  多状态:前述被细胞只有“生”与“死”两栽状态,现在它的状态变得极其丰富,比如RGB颜色可代表多上1678万栽色彩。

  历史性:在面向对象的生游戏程序中,如果你用一个数组存放细胞的状态历史,会有怎么样的特性?事实上这种特性常用来开发“复杂自适应系统”,它会起历史读着持续适配和反规则。

betway必威 9

祈求3-1 保留历史的CA图案

其三章节 扩展属性

  惊蛰,忌骄暴动怒。每年的是时段,我都见面开着船,去东方的沙洲,见一个人口。我明白,她见不交自己,会鬼鬼祟祟咬自己之发。

  “我们以乌见了也?”她的船舱里,总起几乎只奇奇怪怪的搭档。

  “你忘掉了吗?忘了最好–”那个圆脸蛋的同路人擦了摩桌子,脸色变了更换。

  “我们作过誓要深了若的,不过好偏,我们现为未算是敌人。”一个瘦高个,山羊胡子的人数答道。我道她们都生奇怪,明明是店里的一行,总说自己是大敌。

  她此出相同种植泡了桃花的酒,她说酒给“醉生梦死”,喝了后,可以为您忘掉以前做了之其余业务。

  我万分意外,为什么会生这样的酒。她说,人无限可怜之抑郁,就是记忆力太好,如果什么还好淡忘了,以后的各级一样上,都见面是新的开。那若说基本上开心。

  她陪伴在自身一块儿吆喝,喝了下还会歌唱曲调很充分的曲。

  现在,我偏偏记少句子,丑Bug怪~呀咦呀啊啊~啊什么什么,能否别把灯打开。

 –节选自《码海之巅·人生如梦》

  扩展的性

  职:网格中之岗位

  颜色:实际显示的ARGB颜色

  大小:单个网格占据的像素大小

  形状:方块、圆形或外形状

  生命:记录迭代次数

  其他:其他自定义之习性

  恢宏属性的表征

  多状态:前述被细胞只有“生”与“死”两种植状态,现在其的状态变得极其丰富,比如RGB颜色可代表多上1678万栽色彩。

  历史性:在面向对象的生游戏程序中,如果你用一个数组存放细胞的状态历史,会出哪的特色?事实上这种特征常用来开发“复杂自适应系统”,它能够起历史上着连连适配和更改规则。

betway必威 10

贪图3-1 保留历史之CA图案

季节 六限网格

  立春过后,一集彻底剿码海Bug的战役打响了,我做测试资源调度员,也便是运用粮官。不过没什么,战场上到底能够听见风声。

  “精卫小贼,我们来取公的命令。”我看来山羊胡子和圆脸胖子有白光,觉得十分好笑。自动化测试好军势如破竹,已经学习到了近海,还有这种无恐惧死的Bug吗?

  他们说他们被沙洲八怪,但是好奇怪。我很了同才以同样特,为何还是丢失一单单。

  一个时之后,码海上来平等道波浪线直冲云霄。这天是惊蛰,万物复苏,是初的启幕。现在,却发生一个Bug来查找大。

  我的编译器不再提拔错误了。甲板前方来一个相助在武器的女人,一句子话也非说,向着自己走来。

  我认识时虽理解她是Bug,她骗的了编译器,却骗不了自身。有时候最了解你的口不是你的爱人,而是你的敌人。

  “回去不好也?在你的沙洲泡酒,快活一海内外。我拦不住他们,只能拦下你了。”

  “可自未贪图一律大地,只祈求一时。我是只RuntimeException。”

  “哎–”她抛出的空指针暗器来势汹汹,却并未小杀意。我看来她底口角流血,自己的满心为开莫名的疼了一下。

  我了解有的悲欢都曾经化作灰烬,任世间哪一样久路,她都未能够跟己同行。

style=”color: #888888;”> –节选自《码海的奇峰·世界上无比悠久的距离》

  二维CA空间划分

  三角网格:较少之街坊数目,这在好几时刻杀有因此

  四限网格:适合在计算机环境下进展可视化输出

  六止网格:自然真实,能比好地模仿各奔同性的光景

  六度网格的兑现

  六止网格依然可以就此二维数组存储

  奇数层相对偶数层偏移一定的离开

  奇数叠、偶数层对诺不同的邻家关系

betway必威 11

图4-1 六限网格邻居关系

betway必威 12

希冀4-2 六度网格生命游戏

季章 六止网格

  立春过后,一庙会根本剿码海Bug的战役打响了,我当测试资源调度员,也就是是行使粮官。不过没什么,战场上究竟能听到风声。

  “精卫小贼,我们来收获公的命令。”我看齐山羊胡子和圆脸胖子有白光,觉得甚可笑。自动化测试大军势如破竹,已经修到了海边,还有这种不惧死的Bug吗?

  他们说她们受沙洲八怪,但是好奇怪。我好了平仅仅以平等不过,为何还是丢失一单独。

  一个小时以后,码海上来同等抹波浪线直冲云霄。这天是惊蛰,万物复苏,是新的开。现在,却发一个Bug来寻觅好。

  我之编译器不再提拔错误了。甲板前方有一个援手在武器的女人,一句话也非说,向着自己活动来。

  我认识时即便了解它是Bug,她骗的了编译器,却骗不了本人。有时候最了解您的人不是你的朋友,而是你的仇人。

  “回去不好呢?在您的沙地泡酒,快活一中外。我拦不住他们,只能拦下你了。”

  “可自莫贪图一律世,只祈求一时。我是单RuntimeException。”

  “哎–”她抛出的空指针暗器来势汹汹,却无稍微杀意。我看齐它的嘴角流血,自己之心窝子啊起莫名的痛了瞬间。

  我了解有的离合悲欢都早已变成灰烬,任世间哪一样修总长,她还无克与自同行。

style=”color: #888888;”> –节选自《码海之峰·世界上无与伦比漫长的离开》

  二维CA空间划分

  三角网格:较少的左邻右舍数目,这当一些时段怪有因此

  四边网格:适合当处理器环境下进行可视化输出

  六度网格:自然真实,能比较好地模仿各为同性的场面

  六限网格的实现

  六度网格依然可为此二维数组存储

  奇数层相对偶数层偏移一定之离

  奇数重叠、偶数叠对承诺不同的邻居关系

betway必威 13

贪图4-1 六边网格邻居关系

betway必威 14

祈求4-2 六限网格生命游戏

第五章 CA应用

  当自身立在沙地前边,觉得特别之难过,我毕竟认为,应该是少只人站于这边。

  很多年后,总起把代码,你想写却不知从何写起,总有点人,你想见却还要无处找寻,琐碎生活和时光倦怠的逐年侵蚀,感觉日益趋向迟钝,心为出于得安之若素。

  只是记忆不由得你,或闲庭信步的触景伤情,或梦醒时分的黯自惆怅,或只是某个漫不经心的恶作剧后,那昔日之状况乍然浮现心间,遥远得恍若海市蜃楼。

  其实“醉生梦死”只不过是她跟自家起来的一个噱头,你更加想知道自己是未是忘记的时刻,你反而记得越明白。我早就听人说罢,当你切莫能够再拥有,你唯一可开的,就是教自己毫不遗忘。

style=”color: #888888;”>–节选自《码海之巅峰·总以寒夜里思念着一个人》

  CA可用来研究多貌似景象  

  通信(Communication)

  计算(Compulation)

  构造(Construction)

  生长(Grain Growth)

  复制(Reproduction)

  竞争(Competition)

  进化(Evolution)

  微机科学领域的应用

  并行计算:CA可以让看做是并行计算机,从而用于并行计算的钻

  图像处理:CA规则可用来模拟墨水在张上的浸散效果以及图像的水纹效果

betway必威 15

贪图5-1 CA模拟水墨浸散(50%封存)

betway必威 16

图5-2 CA模拟水墨浸散(100%保留)

 

第五章 CA应用

  当自身立在沙洲面前,觉得那个之难过,我总看,应该是少单人口站于这边。

  很多年后,总起几代码,你想写却不知从何写起,总有点人,你想见却还要四处找寻,琐碎生活和时倦怠的日趋侵蚀,感觉日益趋迟钝,心呢鉴于得安之若素。

  只是记忆不由得你,或闲庭信步的触景伤情,或梦醒时分的黯自惆怅,或只是某个漫不经心的调侃后,那昔日之场面乍然浮现心间,遥远得恍若海市蜃楼。

  其实“醉生梦死”只不过是她跟自家起来之一个噱头,你越想掌握自己是无是忘记的时候,你反而记得越明白。我曾经听人说罢,当你莫可知重新拥有,你唯一可举行的,就是教自己不要遗忘。

style=”color: #888888;”>–节选自《码海之巅峰·总以寒夜里思念着一个人》

  CA可用来研究广大相似景象  

  通信(Communication)

  计算(Compulation)

  构造(Construction)

  生长(Grain Growth)

  复制(Reproduction)

  竞争(Competition)

  进化(Evolution)

  微机是领域的运

  并行计算:CA可以叫作为是并行计算机,从而用于并行计算的钻研

  图像处理:CA规则可用来模拟墨水在张上的浸散效果跟图像的水纹效果

betway必威 17

贪图5-1 CA模拟水墨浸散(50%封存)

betway必威 18

图5-2 CA模拟水墨浸散(100%保留)

 

后记

  “暴风雨就要来了!我得走了。”

  两日晚,精卫IV飞至了老大之头顶之上。

  “码海中满了千钧一发,你为太好去吧,要无设自己充满你同路程?”  

  处女一叙未作,点了碰头。只是,他起另外一个世界来,又会去哪吗?

  …

后记

  “暴风雨就要来了!我得走了。”

  两天晚,精卫IV飞至了最先的头顶之上。

  “码海中浸透了惊险,你呢极好去吧,要无若自我满你平路?”  

  首一张嘴未发,点了接触头。只是,他从另外一个社会风气来,又能去哪里吗?

  …

附录

  未完待续。预知前情请浏览目导航。

  GitHub开源:EDGameEngine.Visuals.CA

  参考书籍:《The Nature of
Code》[American] Daniel
Shiffman

附录

  未完待续。预知前情请浏览目导航。

  GitHub开源:EDGameEngine.Visuals.CA

  参考书籍:《The Nature of
Code》[American] Daniel
Shiffman

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注