当前位置:三体 > 三体社区 > >> 黑暗森林法则——单一文明的兴衰

黑暗森林法则——单一文明的兴衰

小说:三体社区作者: 发布时间:2023-01-07 13:58
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

宇宙就是一座黑暗森林,每个文明都是带枪的猎人,像幽灵般潜行于林间,轻轻拨开挡路的树枝,竭力不让脚步发出一点儿声音,连呼吸都小心翼翼;他必须小心,因为林中到处都有与他一样潜行的猎人。如果他发现了别的生命,能做的事只有一件:开枪消灭之。在这片森林中,他人就是地狱,就是永恒的威胁,任何暴露自己存在的生命都将很快被消灭,这就是宇宙文明的图景。                          

———《三体黑暗森林》

黑暗森林法则

两条宇宙公理

茫茫宇宙之中文明的兴衰再常见不过,生存本来就是一种幸运,过去的地球上是如此,现在这个冷酷的宇宙中也到处如此。但不知从什么时候起,人类有了一种幻觉,认为生存成了唾手可得的东西。你的无畏来源于无知!从两条公理出发,让我们构建整个宇宙:

1、生存是文明的第一需要。

2、文明不断增长和扩张,但宇宙中的物质总量基本保持不变。

猜疑链与技术爆炸

1、猜疑链:双方无法判断对方是否为善意文明。在地球上这样的猜疑可能再两三次就有可能通过交流解决。但在宇宙尺度上,时空的遥远导致猜疑链会无穷无尽的进行下去。

2、技术爆炸:文明进步的速度和加速度不见得是一致的,弱小的文明很可能在短时间内超越强大的文明。就像人类有几千年的历史,地球有数十亿年的历史,但是现代科技却仅在300年内发展起来。300年对于地球与人类的历史来说就像是一颗炸弹凌空爆炸,飞速到让人惊叹。

文明博弈

1、善意和恶意:善意指:在知道其他文明的存在后,不主动攻击和消灭其他文明,恶意则指主动攻击和消灭其他文明。

2、宇宙广播:指某个文明所处的坐标被广播到了全宇宙,被其他文明知悉,但是此文明并不知道自己被广播了。

“黑暗森林理论”的推理逻辑

1、当一个文明发现另一个文明以后,由于双方无法确认对方是善意的,且无法确认对方的技术能力,文明为了自保,只能以最大的恶意揣测对方。就算一方文明能确认对方的技术能力,由于技术革命的爆炸性,对方也可能在极短时间内超越自己,从而使自己处于劣势方。

2、在两个文明之间建立联系后,由于交流的困难以及文化之间的隔阂,必然存在不信任。甲对乙的善意可能导致乙的恶意,从而对甲自身不利,而对自己的不利是违反“生存是文明的第一需要”公理的。因此甲为了最小化自身的风险,就只能选择恶意。无论乙如何选择,迫于生存的必须,所有文明只能选择恶意。

3、将如上两个文明的情况扩展到全宇宙中。假设甲文明主动向宇宙广播自己的坐标,那么所有其他接收到信息的文明,都会知道甲的位置有文明。在两文明博弈中,所有其他文明立刻对甲文明抱有恶意,从而甲文明毁灭,从而甲乙博弈以乙胜出告终。

4、因此主动或者被动暴露自己的存在,将会导致文明的灭绝。所有文明最害怕的是自己的坐标被暴露,一旦暴露就可能会被其他人打击,因为这样就违背了第一条公理。

因此在宇宙中,没有文明敢于主动对外联系,宇宙间也无法找到任何智慧文明的痕迹。因此,宇宙是“黑”的,真黑啊!

黑暗森林与数学建模

本文尽量将黑暗森林的理论通过数学量化,从而代入中学数学建模课堂。基于阿拉丁最近的马赛克数学建模理论,将探究知识碎片化,微观解决各类小问题,从而组成一个宏观上较为清晰的马赛克图景,给岁月以文明,而不是给文明以岁月。当然本文只是理论的简单实践,欢迎广大同仁批评与建议。

单一文明的兴衰

单一文明占据一个恒星系,拥有一定资源,具有一定的技术能力。文明会随着时间发展技术能力,且技术发展可能进入技术爆炸阶段和技术停滞阶段。

随着技术的增长,文明消耗资源的速度加速,当资源耗尽时,文明要么死亡,要么选择移民附近的恒星系,占有新的资源延续下去。

因此本文主要从简单的单一文明的发展进行建模。尽量从中学生可以理解的角度对单一文明的发展做出数学的描述,可能不是很严谨,但尽可能自圆其说,毕竟宇宙不是童话。

模型假设

首先一个好的假设可以将复杂的问题简单化,从简单入手不断添加枝叶,将马赛克逐渐清晰化是数学建模前需要考虑的最重要的问题。

首先如何模拟整个文明?时间尺度怎么考虑呢?为了更符合文明的发展尺度,文明考虑使用差分方程(类似于数列递推公式的表达)来模拟文明的迭代,而每一次迭代我们规定为一年。

你们怎么通过简单的方程式包含整个文明发展的规则呢?很多策略游戏例如文明、维多利亚等都将人口、科技、文化和资源放在首位,我们人类的历史实际上也是在这几个维度中来回穿梭。因此为了将这个宏大的问题变成中学生可以解决的问题,合理地舍弃众多细节,我将文明的发展量化为三个表征参数:总可利用资源(AR)总人口(P)科技水平(ST)

总可利用资源(AR)顾名思义就是该文明所有可以利用的资源,也是对黑暗森林法则第二条公理:“文明不断增长和扩张,但宇宙中的物质总量基本保持不变”的应用。定量的反映一个文明的启示地位和最终消亡时间。并且资源只能被消耗无法继续增加,一旦资源降到某个规定的数值,则可以宣告该文明因资源枯竭而亡。由于本文只涉及单一文明,因此不考虑因为资源消耗而导致的移民或者并吞战争问题。

总人口(P)即定义为主导该文明的生物的生命个体总数,由于我们在宇宙的尺度考虑问题,所以这里并不能类比人类的人口,因为人类的一个家庭没有几个人,但是动物的家庭数量却很多(例如蚂蚁)。我们将这里的初始值定为1,并在一定时间能不断增长,但人口的增长会受制于资源总量和科技水平,一旦人口下降到某一个极限数值,我们定义该文明因为人口数量不足而灭绝。

科技水平(ST)是指该文明的科技文化等一系列情况,初始值规定为10.一旦科技水平下降到某一个极限数值以下,那么就宣告该文明因为退化而消亡。

不要轻视简单,简单意味着坚固,整个数学大厦,都是建立在这种简单到不能再简单,但在逻辑上坚如磐石的公理的基础上。无限长的曲线就是宇宙的抽象,一头连着无限的过去,另一头连着无限的未来,中间只有无规律无生命的随机起伏,一个个高低错落的波峰就像一粒粒大小不等的沙子,整条曲线就像是所有沙粒排成行形成的一维沙漠,荒凉寂寥,长得更令人无法忍受。你可以沿着它向前向后走无限远,但永远找不到归宿。

模型建立

背景故事和游戏规则制定好了,那么就开始游戏的主干吧!让我们的马赛克逐渐清晰!

让我们回忆回忆学必修一的时候我们通过指数研究过人口的增长,当时建立了一个指数的增长模型。如果人口基数为a,增长率为r,经过t时间,就有增长之后的人口数:

 

 

 

 

 

 

 

 

 

这个过程似乎有些绝对,因为增长率怎么可能是一个固定不变的数值呢?这其实就是数学应用题与数学建模的区别,前者将可变因素全部排除,主要考察学生的知识点应用能力,而后者则需要将可变因素考虑其中,如何自圆其说并且符合实际便成了关键。

那么我们不妨考虑一个迭代的过程:

 

 

 

 

 

 

 

 

 

 

 

 

这个方程描述了某一次迭代中人口的增长率为r,但并不是所有迭代都是r.那么我们将描述人口的过程落脚于这样一个差分的过程中后,我们就有了进一步研究增长率的条件。

那么人口增长率会和什么有关呢?七嘴八舌的议论:GDP、学历、医疗、科技文化、就业等等等等太多了,就像现在的三胎政策就是在促进人口增长。那么这些如果我们都考虑进去,是不是我们也可以做国家智库成员了(做个小白日梦)。

那当然做不到,起码现在的我们做不到。在之前其实我们就对模型有过假设,将文明的表征定为三个参数:总可利用资源(AR)、总人口(P)和科技水平(ST),那么实际上影响文明人口增长的因素,我们其实已经简化到了两个维度:总可利用资源和科技水平。

那么这两者是如何影响的呢?我们来考虑一下如果资源总量给定,并且每年在不断减少,那么可以承载的人口数量就是有限的,不可能无穷无尽的增长下去;同样的科技水平也制约着人口的发展,生老病死人之常情,科技或许做不到增加人口的寿命,但是可以延长人口生命的时间。

于是我们给定另外两个参数:资源承载系数(

 

 

)和科技承载系数(

 

 

)。我们定义在某个迭代过程中

 

 

 

 

 

 

代表着该段时间中总资源能承载的极限人口,同理

 

 

 

 

 

 

代表着该段时间中科技水平能承载的极限人口。

 

那么两者相互制约?还是相互促进呢?也就是说谁占影响人口的主要地位呢?实际上不好说,但是为了模型的合理性,我们认为这两者地位等价。那么如何用数学表达描述这样的等价地位呢?

思考一个问题:如果总资源很少,但是科技值很高,人口会大量增长吗?当然不会!因为并没有更多资源支持大量人口。同样的如果资源很多,但是科技值很少,虽然出生人口可能比较多,但是死亡人口同样多,那么人口净增长率也不会高。这就类似于英语语法中的就近原则,我们这里它俩谁更少我们就认为谁主导——也就是木桶效应(短板效应)。

那么这样解释我们用数学描述是不是就简单很多了,高一就学过的知识:

可是我们好像跑偏了,我们刚刚定义的都是极限承载的人口,但是我们想要的增长率啊。其实没有跑偏,增长率其实就是比值嘛。于是在一定量的资源与科技下能够承载的最大人口数为,当前人口数为

 

 

,于是

 

那么

 

 

就是当前人口占此时最大人口的比率,那么这个文明想要增长,就得有上升空间。这个空间是多少呢?当然是

 

当然这只是资源与科技的影响而已,虽然影响很大,但是人口的增长关键是靠人,而不是外力。因此我们需要另一个参数人口极限增长率

 

 

,代表着绝对舒适条件(指资源和科技均充足的情况)的人口增长率。

 

ok,到这里这里再去考虑更复杂的情况就不礼貌了,学生也该造反了。因此我们通过分析得到每一年的人口增长率为

那么结合差分差分方程,我们就得到了人口的增长模型:

这其实就是大名鼎鼎的logistic人口模型(黑暗森林版),高中生物的“S”型曲线基本上就是这么来的。

好啦,考虑完人口,该考虑比较简单的总可利用资源(AR)了。根据黑暗森林公理二:文明不断增长和扩张,但宇宙中的物质总量基本保持不变。因此总可利用资源就是一个单调递减的过程,至于怎么减?是线性的?是下凸的?是上凸的?我们说不好,一切得依靠数学说话。

那么资源的消耗来源于人口的消耗和科技发展的消耗,为此我们继续引入两个参数:人口消耗系数

 

 

和科技消耗系数

 

 

.顾名思义两者存在的意义就在于衡量人口与科技对资源的消耗。于是我们定义

 

 

 

 

 

为当前时间人口对资源的消耗量;

 

 

 

 

 

 

为当前时间科技对资源的消耗量。

 

那么我们就很容易得到总可利用资源的变化模型:

最后也是最复杂的科技水平建模。由于科技的发展并不遵循某种规律,并不呈现线性或者指数发展模式,这时因为上文对技术爆炸的推论。那么什么时候会发生技术爆炸呢?我也不知道,谁都不知道。因此我们规定迭代的每一次都可能发生技术爆炸,爆炸的概率为

 

 

.

 

那有同学就会疑问了:那有没有可能年年爆炸呢?当然有,所有为了模型的简洁性,我们规定:

1.技术爆炸期间不会出现新的爆炸。只有处于非技术爆炸期间才有可能出现技术爆炸。

2.科技只会在技术爆炸期间发展,非爆炸期间则停滞不前。

那么在技术爆炸期间我们的科技增长很好建模,只需要引入一个参数即可:爆炸时期科技发展率(

 

 

),因此我们可以得到爆炸期间的科技发展模型:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

那么还有一个问题:爆炸持续的时常该怎么规定呢?是确定时常还是非确定呢?这里没有很多参照物进行类比,只能参照人类的四次技术革命:历史上,第一次工业革命开始于18世纪60年代,终止于19世纪中期,历时90年;第二次工业革命开始于19世纪70年代,终止于20世纪初,历时约50年;第三次信息革命开始于1950年至今,已存在约70年。这三次技术爆炸都在百年左右,因此假设爆炸时常

 

 

 

 

 

 

 

 

 

 

 

 

,即随机从10-100的均匀分布之间取一个值,作为本次科技革命的持续时间。(这里就当是课外探索吧,均匀分布高中也不怎么研究,学了概率论再说吧)

 

到这里其实还有个问题:文明的发展总是一帆风顺吗?当然不是!天灾人祸也是制约文明发展的又一大因素,从史前的火山喷发到中世纪的黑死病,连年的战乱和无尽的厮杀,每次都将文明推向黑暗的深渊。那么我们再次规定,每一次迭代中都有

 

 

概率发生天灾,而发生天灾后的人口总数与科技水平分别退化到原来的

 

 

(人口影响系数)和

 

 

(科技影响系数)。也就是天灾后人口为

 

 

 

 

 

,科技水平为

 

 

 

 

 

 

.考虑到中学生的能力,我们规定每一次天灾人祸的影响系数相同。

 

很好,到现在我们就完成了对单一文明发展的模型建立。

虽然写到这阿拉丁看着这个模型都显得那么单薄,但是我觉得对中学生来说到这已经是很优秀了。还是喜欢庄颜与罗辑的那段对话,我觉得在这个模型下说这样的话很应景:

庄颜:“我觉得它像晚霞的眼睛”

罗辑:“你怎么不说是朝霞的眼睛”

庄颜:“我更喜欢晚霞”

罗辑:“为什么”

庄颜:“晚霞消失后可以看到星星,朝霞消失以后,就只剩下····”

罗辑:“只剩下光天化日下的现实了”

庄颜:“是,是啊。”

模型虽然简单,但是却饱含我们对宇宙的向往;现实的复杂却映射着宇宙的残酷。

参数初始化分析

参数的选取和赋值都是建模中至关重要的,模型的好坏一定程度上取决于参数的赋值与实际含义。并且对参数初始化分析,也可以帮助文明了解模型的敏感度(适用程度)。

1.初始总资源

 

 

 

:这是一个相当大的数字,就像游戏《群星》中也会在开始让玩家选择开局的初始资源,是贫瘠还是富饶。贫瘠不一定就不会,可能导致战争欲望的增加,开疆扩土,获得更多资源。而富饶也不一定就好,黑暗森林中的猎人千千万,搞不好你就是下一个猎物。但是本文只考虑单一文明的发展,所以我们就类比地球上最常见的资源——水,地球上的水资源储备大于为14.5亿立方千米。那么我们对文明的初始值就设为

 

 

 

 

.

 

2.人口极限增长率

 

 

:由于我们并未发现外星文明,那么还是只能类比人类。根据联合国人口基金会2021年数据,世界人口平均增长率约为1.2%,这是在疫情、战争、金融危机等等影响下的数据,所以我们估算该文明的人口极限增长率约为1.5%.

 

3.人口消耗系数

 

 

和科技消耗系数

 

 

:似乎根据人类的数据没办法具体估计,那么就先暂定其都约为0.05吧。

 

4.天灾人祸发生概率

 

 

:好像最近几百年人类历史上发生的大型天灾人祸事件很多,间隔也很紧密并没有出现明显的规律,那么我们就暂定发生概率为0.01吧,约为每百年发生一次大灾难。

 

5.人口影响系数

 

 

和科技影响系数

 

 

:天灾对人口的影响让我想到了黑死病肆虐的中世纪,当时因为黑死病死亡人数约7000万,可是当时地球上的人口总数无法考证,那么就估计为当时的10%,那么我们估计人口影响系数

 

 

 

 

 

 

。灾难对科技的影响应该比对人口的影响小,毕竟科技会促进人口素质的提升,那么估计科技影响系数

 

 

 

 

 

 

 

.

 

6.资源承载系数

 

 

和科技承载系数

 

 

:又是个世纪大难题,这又是没办法类比估算的,那么我们就暂且给个周期,也就是每百年会消耗相同的资源与人口,那么资源在就以百年为单位承载人口,同样科技也以百年为单位承载人口,因此两者估值均为0.01.

 

7.爆炸时期科技发展率

 

 

:2021年全球GDP增长率约为5,8%,有点夸张了,但是我们实际上的确也处于一个技术爆炸的时代,那么我们规定爆炸时期科技发展率

 

 

 

 

 

.

 

看着这简化的不能再简化的参数设定,在差分的迭代下,在时间的积累中都会变得黯然失色,当迭代到几千年后,你还能看出我们的参数吗?其实我们的文明就像一场五千年的狂奔,不断地进步推动着更快的进步,无数的奇迹催生出更大的奇迹,人类似乎拥有了神一般的力量……但最后发现,真正的力量在时间手里,留下脚印比创造世界更难,在这文明的尽头,他们也只能做远古的婴儿时代做过的事。

 

模型的模拟与敏感度分析

对不起对不起对不起!阿拉丁实在做不到!都怪当我没有好好学编程,现在书到用时方恨少,Python确实好上手,让我解个方程组什么的很简单,但是阿拉丁玩不明白的是这怎么搞成一个整体,概率怎么加?用布尔值吗?咋用啊?我这脑子就是不好用啊!

唉,我好菜啊,本来想象中的模拟绝对让人惊艳,但是可惜了。不过从这件事也能看出来,数学建模脱离了编程总是架空的,没办法模拟。也可能大学时期的比赛阿拉丁从来没负责过编程吧,太内疚了。现在看着小贴士小气球还有群里找美赛队友的,我都想去求求这些优秀的师弟师妹了,帮帮菜鸟师兄吧。

这次就先跳个票,给阿拉丁点时间再学学,之后会旧文重发,把模拟和敏感度分析补上。

再说一遍:对不起!Sorry!私密马赛!

写在后面

作为一个中学就在数学课上看《三体》的人来说,这三本书可谓是对我影响很大,甚至一度我想想去学理论物理,当然最后知难而退了。到现在已经是刷了三四遍了,每一次看都会被书中庞大的世界观所震撼。即使黑暗森林理论还有所谓的宇宙社会学并不是科学理论,只是小说而已,但是阿拉丁还是想将其设计成一次数学建模课,毕竟仰望星空是每一个孩子的梦想。是啊,我们都是阴沟里的虫子,但总还是得有人仰望星空吧.

本文只是将单一的文明发展进行建模,后续会推出两个文明的博弈,也就是尽量用中学生的办法构造猜疑链。再之后就是模型的组合,真正建立起宇宙中的黑暗森林。不过这可能需要些时间,一方面阿拉丁对博弈并不是很熟,而且加上这篇文章还没有模拟,也希望各位读者可以继续支持。

敬畏宇宙、探索宇宙,也希望在不远的将来人类敢于真正突破地球的限制,走向那黑暗恐怖但又令人向往的宇宙。我有一个梦,也许有一天,灿烂的阳光能照进黑暗森林。或许那时候的人类也就不叫人类了。

“自然选择,前进四!”

+1
747
顶一下

喜欢《三体社区》吗?喜欢吗?喜欢就用力顶一下吧!

看网友对 黑暗森林法则——单一文明的兴衰 的精彩评论