粉丝1920获赞1.3万

上期啊,咱们玩了一个混沌游戏啊,大家觉得很神奇,那接下来呢,咱们再来玩这个游戏啊,这几个游戏更神奇,号称啊可以模拟生命的演化马,比如说知识就是力量。呃,今天呢,咱们就来介绍一个计算机当中著名的模型啊,就是生命游戏。下期呢,咱们再来介绍元宝自动机,这看一下生命游戏和混沌之间他又有哪些微妙的联系呢? 呃,生命游戏也是很早之前咱们的一个坑了啊,其实这个游戏的规则他很简单说呢,呃,考虑这样一个二维的巨人平面,就是在这个平面上有若干个小格子啊,比如说像这个围棋的棋盘, 现在呢,这每一个格子他可以有两种状态啊,非黑即白。比如说这样啊,那为什么叫生命游戏呢啊?是这样的,就是我们把每个黑色的格子啊看作是一个细胞啊,白色的格子呢就代表他啥也没有啊, 所以那就相当于说我们有了若干饿细胞,然后怎么办呢?然后我们要制定一些规则啊,你比如说,呃,细胞是存在生老病死的,那我们就再做一个假设,就 说每一个细胞他存活与否要取决于他周围细胞的个数,比如说这个相互扶持啊,或者是资源竞争啊,这就和人一样啊,就一个部落人太多了,太少了都不行。 那对于平面上每一个格子来说啊,他周围存在多少个邻居的位置呢?八个对吧?这里边咱们先只考虑这个最简单的情况啊,就是这个外边的这一圈啊,所以呢,我们这样规定说,第一, 如果一个指定的这个细胞周围啊,就是这个黑色的格子周围啊,若只存在一个其他细胞或者不存在细胞啊,则下一刻该细胞会孤独而死,能理解啊啊。 第二,如果一个指定的细胞周围啊,存在四个或四个以上的细胞啊,最多就八个对吧?则下一刻该细胞会因资源竞争而死啊,就说他也活不了。那第三,如果一个细胞周围啊,存在两个或者三个细胞时,则下一刻该细胞保持存活也就是不变啊。呃,说白了就是周围有两 两个以下或者是三个以上啊,那这个细胞他就都活不了以上呢。就是说针对这个指定格子当中有细胞时候的规则,那如果说一个格子他没有细胞呢,那就一个规则,若该空格周围存在切仅存在三个细胞时,则下一刻会新生成一个细胞,就是这个细胞生殖繁衍了, 没了。以上就是全部规则了,就和真实的生命啊,物种还是很像的对吧?所以叫做生命游戏吗?呃,但是你别看这个规则简单啊,功能却超级强大, 那现在说怎么玩呢?就是啊,我们先要设定好一些初始的这个细胞啊,然后呢我们用上述的这个规则去对所有的格子啊同时去执行,这样就算是过了一个时刻啊,或者说,呃一代演化就结束了,然后呢我再执行一遍啊,那就又整体变化了一下啊, 以此类推,我们其实就是要来看按照上述规则,那你这些细胞他是如何演化的就行了,明白了没啊?呃没关系啊,我来给大家演示一下,比如说咱们看这些二维的网格啊, 呃,只不过呢,我把这上面加上了相应的数字,这些数字就表示说这些格子他周围细胞的个数。如果说你这里边只有一个细胞呢, 那你看他周围就没有邻居啊,所以下一刻他肯定是死了,那咱们点一下喷,他死了,这样呢,游戏这就算是结束了。那如果说初始状态是一个田字格呢? 你这样呢?你每一个细胞他周围呢?他就是存在三个细胞,那下一刻呢,这些个细胞他就不会变化啊,那空白格周围呢?他又不够三个细胞啊,所以呢,这空格他也不会变化啊,那下一刻会怎么样呢?会保持不变,如果要是不存在干扰,那这个结构他就会一直存在下去啊,像这样的结构,我们就叫做一个稳定结构, 稳定结构有很多啊,你比如说这样呢,哎,你看像一朵小花一样,对吧?再比如说这样等等,还有很多具体的例子呢,一会再给大家看一下。那我们再来看,如果说这初始状态它是一个一 四呢,这个细胞周围呢?他只有一个邻居啊,所以下一刻他肯定是死了。同理呢,你这个细胞呢,他下一刻也会死掉。中间这个细胞呢,他周围有两个邻居啊,所以下一刻他应该保持不变啊。那再看这两个格子, 他们周围刚好存在三个细胞,所以按照规则,下一刻这和这呢,那就会生出一个细胞了,对吧?所以下一刻呀,这个一字就应该是竖起来的啊,咱们执行一下。哎,你看他竖起来了,那再下一刻呢,他应该又横过来了, 如此这么循环了。像这样的结构,我们说他是一个周期震荡的结构,或者叫做一个震荡器,显然呢,这个例子的周期呢,就是二,哎,那问题来了,有周期三、四五等等的这种震荡结构吗?有, 你比如说这个酒,他就是周期三啊,他叫做 french kiss, 有点污哈,那我们来执行看一下,你看啊,一二三,哎, 你看,又回到原来的样子了啊,这就是一个具有周期三的震荡结构,周期四,周期五、周期六等等的增长器也都存在啊,咱们来具体看一下啊。呃,实际呢,在一些程序里边,他就不会显示周围的这个细胞的个数啊,就这些事,这都是程序干的,就不用我们自己去说。 那这里呢,收集了一些,呃,常见的知名的震荡器,这前面的这几个数字就表示震荡的周期,如果这个周期是一呢,那就是咱们刚才说的就不会动的这种问题结构,对吧?其实本身这些数字他就是问题结构。好,那我们看啊,这些就都是不会变化的,奇形怪状的,什么都有,对吧?那下面呢,这就是周期二的震荡器,也很好玩 啊,你看这些,这像是这个镜子一样,对吧?然后这是周期三啊,这是周期四,这么以此类推,哎,那是不是说所有的自然数周期的震荡系全部都存在呢?人们猜想是这样的啊,不过到目前为止,周期十九,周期三十八,周期四十一,只有这 三个周期的震荡器,人们还没有找到啊。呃,当然,这里边需要说明两点啊,第一就是周期六十一以上的结构,其实是可以通过管道结构构造出来的啊,这个一会咱们再细说。第二你会发现如果我把一个周期二和一个周期三的结构放在一起,且呢不让他们相连,哎,就是他们互相不干扰, 那这个结构他就会具有一个周期六,对吧?你比如说这样我把一个一字和一个 french case 给他放在一起,那他的周期就是二和三的最小红倍数,能明白吧? 那像这样的结构呢?呃,我们暂且把它称作是平凡的,就是它具有一个假的周期六,如果这种不算的话,那那么周期三十四其实也没有找到啊。你比如说,呃,我们看这个周期三十四, 这你看实际上他就是一个周期二和一个周期时期啊,这两个结构拼成的,对吧?你这样的呢就不好, 对吧?就不具有代表性,那这样算的话,那就是四个周期还没有找到啊。呃,这也是现在生命游戏一个带解决的问题,这些个周期这都是就是爱好者们自发寻找的。你比如说周期二十三, 这个结构就在前一阵啊,大概是二零一九年十一月才找到啊。那好,他收回到咱们刚才那啊,我们现在呢已经知道了两种结构了,一种呢就是稳定结构,就是不会动的。那另外一种呢,就是具有周期的这种震荡气他会动,那咱们来实际演示一下啊。 啊对啊,这个软件叫做咖喱啊,感兴趣的同学可以去下载来玩一玩啊,或者你们可以找一些在线的这网页版的给我来,有很多啊。好,那我们新建一个空白的网格,我现在我随意这么画一笔,我们来看如此排布的这个细胞,他最终会演化成什么样呢? 哎,你看,最终他就会形成咱们刚才说的那两种结构,对吧?像这样一个一个这独立存在的这些区域,我们 就叫做一个种群啊,那这个地方呢?这就是稳定种群啊,那像这个地方就是周期二的这种震荡种群啊,那我们再来随意一笔啊看一下。 哎,你看这个结果是差不多的,最终他也会形成若干个种群,虽然这次有点慢,对吧?那现在我们就可以做一个大胆的猜想了,是对于有限数量的细胞,无论他排布多么复杂,最终一定会形成有限个种群。 换句话说就是没有任何模式啊,可以无限的增长下去。各位感觉这个猜想对不?实际上啊,这就是生命游戏的发明者,英国的数学家约翰康威当年提出来的一个猜想。 呃,我们之前介绍过不少啊,关于康威在数论上啊,以及趣味数学上的贡献,但是要说最出名的一个贡献,那可能就是他老人家发明了这款生命游戏了。生命游戏呢,其实是原包自动机的一个特, 不过早些年你像元宝自动离开不是很流行啊,而正是因为生命游戏的走红,让很多数学家啊,程序员啊,甚至是普通民众啊,都开始对元宝自动级生命游戏感兴趣了啊。呃,说起来,对于生命游戏的推广,还得感谢科普界的大佬啊,马丁加德纳就是他当年在这个科学美国人上发表了一篇介绍生命游戏的文章啊,瞬间就走红了啊。 好了,那咱们书归正传说康为当年为什么要提出这个猜想呢?其实啊,他是发现了另外一种结构了啊,就是这个结构呢,他既不稳定也不震荡,而是呢,他会行走哈,那咱们来看一下,那我们刚才说有的结构啊,他演化的就比较快,而有的结构呢,演化的就会比较慢, 那这件事啊,和复杂程度似乎还没有直接关系啊,你比如说康威,当年啊,他就发现了这么一个酒,就只有五个细胞,我们让他来演化看一下啊, 你看好像根本没有停下来的意思 哎,你再看这个小种群,他也是只有五个细胞,但是呢,他却可以一直的行走下去啊,像这类结构,我们叫做飞船啊, space, 这就是第三种结构啊,飞船其实也有很多种啊。呃,现在屏幕上看到这种就经常出现,他叫做滑翔机。那咱们再来看一下刚才这个种群,你看他还没有停下来, 那我加快点速度 好了,现在停下来了,实际上最初的这五个细胞会在一千一百零三代演化之后才会稳定下来,形成了这些个若干各种群,以及六个花香鸡。啊,这是六个, 虽然滑翔机会动对吧,但是你整体的这个种群的个数呢,他最终还是有。先哥,这康威就发现是滑翔机这个东西好玩, 如果说要是有一个初始结构,他可以不停的产生滑翔机,那最终的是种学数量,那不就是无限个了吗?但是看,我又不知道说存不存在这种 结构。呃,其实可以证明啊,就是对于任意给定的这种细胞结构是不存在一个固定的算法来判断他最终的样子的, 就是你只能执行去看一遍啊,这个停机问题是当家了,所以呢,他就为了鼓励其他人的这个加入啊,就提出了刚才说的这个猜想,就是有限个细胞必定不会无限的扩张啊。然后在一九七零年,康威就对外公开宣传说,谁要是能证明我是错的,那我就奖励他五十美元啊, 他像这样的小额悬赏有很多啊,就奖金不重要,重要的是结果。果然,哎,没过几个月,这麻胜理工学院的一个团队啊,就成功领走了这五十美元,他们给出了这样的一个节目,这看起来很简单,对吧?那我们来执行看一下, 你看他会不停的产生出滑翔机,因此这个结构就是第一个证明。康威的这个猜想是错误的结构啊,像当年 mit 的这个团队的领导叫做 beo gosper 啊,所以现在这个结构就叫做 gosper 滑翔机枪。哎,我们注意到,你看旁边这 两个方框,这就像是反弹臂一样,对吧?就可以让一些特殊的结构来弹来弹去的。呃,这就属于一种管道结构,像刚才说的比较大的这种震荡周期就是通过类似的方法构造出来的,就说我只需要更改这个管道的长度,那周期就会变化,那再后来呢?类似的这种无限增长的结构,人们发现了很多, 你比如说我们再看这个结构,他可以更加直观的演示,就通过有线的细胞的确是可以无限的扩张下去的,这个结构最初就只有横排了这些个细胞啊,但是我们来执行看一下, 你看他形成了两个无限繁殖的 分支啊,整体这个整群的数量呢,就会越来越多啊。呃,最后再来给大家看几个很拽的范例啊,这些呢是比较有名的飞船结构,就是他们都可以一直的行走下去, 你看这里边他有的像兔子对吧?有的就像一个人在游泳一样,哈,很有趣,咱俩看这个,他是一堆种群在一起配合前进,但你发现他最后这会留下一个长长的尾巴呀,啊,没关系,我放一个专门收尾巴的小螃蟹,你看这尾巴就没了哈,分工明确是吧? 再看这个结构,像一个大飞机一样啊,也是不停的前进,那这个还不算厉害, 我们来看这个结构,这乍一看这就是一个普通的生命游戏啊,对吧?但是啊,我们放大了再看,你看这些个大方格,它其实都是由最基本的那三种结构 构成了,这一堆小格子,他在不停的进行着运算,你看这就是逻辑门啊,这就相当于说我在生命游戏里边构造了一个生命游戏啊,你要是喜欢,我甚至可以构造出一个生命游戏里的生命游戏里的生命游戏,能明白这个意思吧? 你再别说,这个也是我们看到的这个图案都是一些很小的这个结构,他团队合作的结果 啊,这个拽吧,那结论是什么呢?结论就是啊,可以证明这种模型是图灵晚辈的啊,也就是说理论上你一切计算机可以做的事,生理游戏也都可以做啊,这就是他的厉害之处。 刚才这个结论啊, 可能有同学没啥感觉啊,说用计算机去模拟计算机,这有啥了不起的呢?不对,咱别忘了,生命游戏是有基本规则的,而这种规则呢,是通过自然得到的灵感啊。说一个细胞周围,他的细胞呢,是太多了也不行,太少了也不行。 各位还记得那个老 jt 个麦吗?其中那个喵指就是那个人口增长率加一这个参数,他也是啊,太大了,那就是马尔萨斯灾难了,太小了呢,这个部落他也会趋于灭亡,而中间可取的这些个缪指,正好就构成了一个从有序到混沌的分叉图。 这个生命游戏啊,其实也是一样的,就是为什么我们要规定说邻居说小于二大于三啊,这个细胞他就会死亡呢?以及为什么这个空白格周围,他恰好存在三个细胞的时候啊,才会繁衍呢? 其实这些数值啊,是当年康威试出来这三,这个数字果然很神奇啊,康威就发现是,如果规则不是三,或者说我们换一个规则啊,那这个游戏呢,他就不好玩了,也就是他不会出现这么多的变数, 只有在这个规则之下才会出现这奇妙的什么滑翔机啊,果然是 kiss 啊,什么小螃蟹啊等等有序的这些种菌啊。呃,这种现象呢,在复杂科学当中,有一个专业的术语啊,叫做混沌的边缘 awcas 啊, 通俗的说呢,就是对于某一个非线性系统而言,他其中呢会存在一个特定的参数啊,这个参数呢,你太小了也不行啊,太大了也不行,只有中间的某些个特定的区域,这个系统才会处于混沌的状态啊,这就是混沌的边缘,那像在物理学当中这种临界状态的过度这叫什么呀? 叫相便对吧?就像是水便冰啊,这个液态在低温下体现出这个超流性等等啊,一样啊,这种相便啊是质的变化。 呃,你再比如说咱们在介绍这个洛伦兹吸引子的时候啊,曾经留下过一个疑问,说对于不同的瑞丽树而言洛伦兹方程他都会得到一只混沌的蝴蝶吗?当然是不是的啊,这个瑞丽树太小太大了都不行,只有中间值才会出现这个蝴蝶的形状啊。呃,这也可以理解为是一种相变, 那同样啊,这个结论呢,各位也可以先听一下啊,之后咱们再来慢慢的体会。呃,最后呢我们再来进行一个拓展性的思考啊。说到 在这个生命游戏的规则当中啊,我们规定的邻居啊,就是周围的这一圈是八个方格子对吧?那如果说我们只规定和这个格子直接相连的这四个格子呢,那就是上下左右啊,他们才算是邻居,那会怎么样呢?或者我们向外拓展一下,就我规定说外边这两圈啊,他都算是邻居啊。你看这个问题立马就变得复杂了。 如果说我们再不一定啊,说一个细胞他要是可以有三种状态呢,除了生和死啊,我再加上一个,比如说半死不活啊,那你看这就又复杂了啊,这显然是一个很开放的问题啊。所以啊,刚才咱们才说生命游戏其实只是二维元宝自动机的一个特例,那对于以上说的这些规则啊,其实都可以统称为元宝自动机。 哎,一个更神奇的游戏正在等待着我们去探索啊。好了,时间关系咱们下期再继续。我是王秘书,一个焦虑的理工男,咱们下期见,拜拜。