计算机课上,老师在带我们练习exe和pythn的操作题。计算机教室的储物格里放了不少老师自己带来的书,大部分关于数学和编程,他说把学考题练过关之后就可以自己看看。
这本《数学女孩》好像挺有意思的……等等,这是什么披着轻小说外套的数学学习指导啊。不过话说回来,我现在不就是和主角一样过着与天才美少女共同学习的生活吗……这样看来小说的内容突然好像变得没那么离谱了。
我把题库里的几套模拟题操作完了。越过12号同学的肩,我发现零醛还在电脑前,但是没有在做题,屏幕上是一些我看不太懂的操作框和命令行。她时而敲击几下键盘,时而掩卷沉思。连续几节计算机课都是这样。
又是一个周三的社团课。我拿出了作业。
“喂,等等,我这里有点好看的。”零醛神秘地眨眨眼,然后把我拉到了隔壁自习教室。
她在教室电脑上插上自己的u盘,点开一个文件。
“这是一个对函数进行迭代并且把结果画成图的小程序。”她自豪地展示。
“啊,我看到过这个式子……在那本关于复杂的书上。
“这是第n代的承载率,r是出生率减去死亡率的结果,也就是自然增长率,然后书里做了一些模拟,说像这样一个简单的单峰非线性函数也可以具有初始条件依赖等复杂特性……”
“是的是的,虽然已经看到过别人的研究了,但是自己做一做还是很有趣嘛!现在你指定一下r的值吧。”
“……2?”
“那就是收敛到一个值05嘛。再大一点?”
“3吧。”
她修改了式子里的一个数,然后按下运行快捷键,屏幕下方出现了一串数字——每一次迭代后x的值。50次循环后的x开始在大约063与069之间徘徊。屏幕右侧是折线振荡的图样。她把x改为09,仍然徘徊到了这两个值附近。
再大一点是四周期,然后是八周期,最后在大约3569946附近走进混沌的发端。
零醛把r修改为4,“你现在再指定一个x的初始值吧。”
“0314?”
零醛按这个画了个图,然后把x改为0315。
两条图线迭代十次后就没有一点相似了。对初始条件的敏感依赖。
她又打开了一个文件,“这边我取x的初始值都为05,然后r从25开始以0005的步长走到4……对每一个r都迭代二百五十次,去掉前一百次,剩下的差不多就到振荡状态了,这样把每一个r下的振荡值画出来……”
屏幕下方的数字串疯狂滚动,从相同的值到几个值之间的徘徊到近似随机。三五分钟后,右边出现了那张熟悉的分叉图。
我在被深深震撼了。“好漂亮,好厉害……”这些话在心里大声回响。但我最后说:“像蝴蝶一样。”
“好像确实有点像呢。”零醛退后,眯起眼睛看看,点了点头。
回到教室。开始写上午发的物理卷子。
“对初始条件的敏感依赖性……”写着写着有点走神,发出了奇怪的自语。
“你说什么?”
“没什么,就是感觉有点像人生,什么的。”
“毕竟是非线性系统。”
我盯着卷子上的小球滑块和斜面发呆。在这样的牛顿系统中,每一个过程都是可重复和可逆的。但是我们的生命不是这样,充满了不可逆的选择和非线性的混沌,每一次开始都会导向不同的路径、不一样的结局。
不一样的人生……吗?不过,我没有后悔过迄今为止所遇到的一切。快乐也好,痛苦也好,迷惘也好,让我经历这些然后将它们加入新的迭代继续运行下去吧,像蝴蝶振翅飞行一样。
“喂,问你们一个问题。”大课间,叶子涵像平日一样开始向前后左右的同学不断探头以发泄被压抑了一节课的表达欲。
“有话快讲。”大概整个下课都要被这位喋喋不休的噪音环绕了吧。
“你们知道自动驾驶汽车吧?现在,假设你是自动驾驶汽车的设计者,正在给它的ai写程序。”
叶子函前座的徐凝同学有些感兴趣地把椅子往这边转了转。徐凝平时不怎么说话(这是为什么他现在坐在叶衡旁边的原因),看上去也有些木讷,不过对于数学和人工智能有着非同一般的执念。“我知道一点,雷达和物体识别……”他小声地搓着衣角,试图加入讨论。
“啊不不不,不是那种实际应用的问题,更像是个思想实验吧——现在,假设高速行驶的车道上突然出现了两辆车,一辆是骑着一个人的摩托车,一辆是载满了人的大客车。刹车失效,必须要撞一边——你让它撞哪边?”
“这算什么?电车难题?”我苦笑着放下中性笔,挠了挠头。“摩托车那边吧。”
零醛也点了点头。
“理由是什么呢?令人信服的理由?”
“等等……平时人类开车遇到这种情况好像是想撞哪边就撞哪边吧,也没有人来追究他们为什么会这么选……为什么对ai的选择就突然苛刻起来了……”徐凝好像在为ai打抱不平一样地问道。