第一卷少年游 第八十七章自生
第一卷少年游 第八十七章自生 (第1/2页)绿色燕子本写完以后,江遥第二天还是照常把它带进了教室。
她已经没有地方可写,最后一页也只剩日期和那个关于“没有任何部分知道全局,整体还能不能知道什么”的问题,可那本绿色封皮的小册子在书包侧袋里待了几年,早晨收拾东西时,她仍然顺手把它塞了进去。走到楼下才反应过来,又懒得返回去换新的。训练中心门口的雪已经化得差不多,台阶边积着一层被踩脏的灰白冰碴,保洁阿姨拿着硬扫帚一下下敲碎。江遥绕过去时,对方提醒她小心,她答了声谢谢,进门后才发现核心组今天换了教室,十五个人被带到楼下一间平时不用的计算机房。
每台电脑旁边都放着一张纸,上面只有四条规则。
第一,屏幕里有两百个小点,每个点只能看见自己附近很小的一片区域。第二,它们可以向前移动,也可以略微调整方向。第三,如果附近的小点太少,它会靠近别人;太挤,它会避开;如果距离合适,则尽量让自己的方向与附近同伴一致。第四,没有领头者,也没有任何一个点知道整个屏幕是什么样子。
顾老师等所有人看完才让他们运行程序。
最初几秒,屏幕里像撒进一把受惊的芝麻,两百个小点各走各的,碰到边缘又重新转向。十几秒以后,某些小点开始朝相近方向移动,几团短暂的队伍出现,又因为互相碰撞散开。再过一会儿,整个画面忽然安静了许多,原本杂乱的运动自行聚成三四个方向一致的群体,一群向左上,一群沿着边缘转弯,还有一大群绕成一个缓慢旋转的环。
有人第一反应是:“鸟群。”
顾老师问:“哪里有鸟?”
教室里笑了一阵。
“那像鱼群。”另一个人说。
“哪里有鱼?”
这次没人继续抢答。大家当然明白屏幕上没有动物,只是两百个按照几条局部规则运动的小点,可一旦它们开始成群转弯,人的眼睛几乎无法不把它们看成某种活着的东西。江遥盯着那个旋转的环看了很久。没有任何一个小点知道“我们现在排成了一个圆”,更没有一只负责发布命令,可从屏幕外面看,一个稳定的形状确实出现了,而且还能维持相当长时间。
顾老师让他们把第一条规则关闭,也就是取消“离别人太远时靠近”的倾向。群体很快散掉;恢复以后,再关闭“太近时避开”,屏幕里又迅速挤成几个密得几乎重叠的团块。最后只留下“尽量和邻居方向一致”,系统仍会偶尔形成局部队伍,却很难维持整体结构。
“哪条规则制造了鸟群?”顾老师问。
这一次没人急着回答。
江遥把三条规则重新读了一遍。每一条单独看来都不像“形成鸟群”的规则:靠近别人只是不要走散,避免太近只是别撞上,跟附近的人朝相似方向走也只是局部模仿。可三件小事放在一起以后,屏幕上就出现了原本没有直接写进去的东西。她想起前一天的蚂蚁,那里也是类似情形,每只蚂蚁只走路、留下痕迹、闻附近的痕迹,却会形成一条比较好的路线。今天更加直观,因为群体甚至长出了形状。
陆徊把其中两个参数调得很极端,屏幕上的点马上从整齐队伍变成乱窜。他说:“所以不是规则一加就行,强度也有范围。”
江遥点点头。她把“跟随邻居”的力量一点点增加,发现系统并不是越整齐越好。力量太弱时大家各走各的,适中时可以形成几支稳定队伍,继续增强以后,整个系统反而变得迟钝,一旦形成一个方向就很难改变。顾老师随后在画面右侧突然放进一个红色障碍区,正常参数下的群体会在接近障碍时逐渐分流、绕开,跟随力量过强的一组却因为过分坚持原有方向,大量小点直接撞了进去。
简宁看着那一幕说:“太团结也不行。”
这句话引来不少笑声,江遥却在草稿纸上记了下来。她没有立即把它上升成群体、组织或者社会的比喻,只觉得这个现象本身已经足够有意思:一个让系统产生秩序的机制,如果强过头,也可能让系统失去改变方向的能力。所谓“好规则”并不是越强越好,它总和环境、速度、邻居范围以及外部变化绑在一起。
上午真正的任务是让十五个人自己设计一种新环境,然后预测这群小点会发生什么。有人加入食物源,有人设置捕食者,有人改变屏幕边界,江遥这一组却做了一件看起来很小的修改:把两百个小点分成两类,两类遵守完全相同的规则,只是“看见邻居”的距离不同。一类眼睛看得近,只根据身边很少几个点行动;另一类能看到更大的范围,可以同时受到更多同伴影响。
他们原本只是想知道“看得远是不是更容易形成大群体”,第一次运行结果也大致符合预期。远视野的小点更快形成统一方向,近视野那一组则分成更多小队。可把障碍加入以后,情况突然反过来了:大群体遇到障碍时调整较慢,小群体反而更灵活,有些从左侧绕,有些从右侧绕,虽然看上去更乱,却更快在障碍另一边重新汇合。
沈策说:“那到底哪个好?”
江遥盯着两段回放:“可能这个问题本身就没有固定答案。看得远会让大家更快一致,看得近会让局部更灵活。”
“可以两个都有吗?”
方禾已经开始改代码:“混起来?”
这一下比原来的任务有趣得多。他们把两类小点混在一个系统里,不再分成两支队伍。最开始的几次运行没有明显优势,有时甚至更差,因为两类小点影响范围不同,局部会产生奇怪的拉扯。可当参数调整到某个范围以后,一种新的结构开始出现:视野较远的个体像是帮助群体维持大方向,视野较近的个体又让队伍在障碍附近保留足够的局部调整,整体既不会太散,也不会过分僵硬。
韩思遥若是在,大概会说这是“既要又要”,江遥想到这里笑了一下。
顾老师走到他们身后,看了一会儿,没有问结论,而是问:“是不是必须真的存在两种个体?”
江遥没听明白。
“也可能是同一个个体,在不同情况下改变自己看多远。”顾老师说完便走了。
五个人安静了几秒。
这个改动非常小,只要让“邻居范围”随着局部拥挤程度或环境变化自动调整即可,可问题突然从“不同个体如何合作”变成了“一个个体能不能根据环境改变自己的规则”。江遥没有马上去写程序,她先问自己:如果每个小点不仅遵守规则,还能根据最近发生的事情调整规则,那么最终那些群体结构还是由程序员设计的吗?显然底层机制仍然是人写的,可具体什么时候看远、什么时候看近,甚至最终会形成什么样的队伍,却可能不再由人直接指定。
她第一次隐约碰到一个比“涌现”更麻烦的问题。
如果一个系统的结果不是人一笔一笔设计出来的,而是许多局部规则和环境互相作用以后自己长出来,人到底应该把哪一部分称作“设计”,哪一部分称作“学习”,又从哪一步开始愿意承认它产生了某种属于自己的结构?
这些词她都没有写进报告。她只在新拿的一张普通草稿纸上写了三件事:固定视野、两种视野、可改变视野。然后在第三行旁边打了一个很大的问号。
中午回宿舍时,韩思遥正坐在桌边做普通组的训练卷。
核心组和其他学员的课程已经开始真正分开。上午江遥他们做群体模型,普通组则上了一节光学专题。韩思遥过去几天表面上没怎么提这件事,可两边作息一错开,差异便很难装作不存在。江遥进门时,她正好抬头看了一眼江遥手里的计算模型讲义,问:“今天又玩什么了?”
“很多小点乱跑。”
“就这个?”
“最后自己排队。”
韩思遥接过她手机里那段动画,看了十几秒,第一反应果然是:“像鸟。”
江遥笑:“老师今天专门问,哪里有鸟。”
“你们老师很烦。”
“确实。”
韩思遥又看了一遍,把手机递回来,没有继续问。江遥却能感觉到她想知道更多,只是最近不太愿意显得自己在追着核心组课程走。两人一时都没有说话。简宁还在食堂,宿舍里只有暖气的轻响和走廊偶尔传来的关门声。
过了一会儿,韩思遥自己开口:“下轮还有一次重新分组。”
“嗯。”
“我要再试一次。”
江遥说:“好。”
只有一个字,却比“你肯定能进”真实。韩思遥看了她一眼,似乎本来准备防着某句安慰,结果没等到,反而笑起来:“你现在确实会聊天一点了。”
“谁教的?”
“被骂出来的。”
两个人都知道她说的是谁,也都没有继续。
江遥下午没有核心组课程,陪韩思遥去楼下买了新的笔芯。训练中心旁边的小店东西不多,柜台边摆着一叠最普通的硬皮本,绿色只有一本,颜色却和她那本燕子本差得很远。韩思遥随手拿起一本问她是不是该换本子,江遥想了一会儿,最后拿了最普通的灰色。没有图案,没有燕子,也没有任何纪念意义。
“你怎么不挑个好看的?”韩思遥问。
“写完再说。”
“写完它就好看了?”
江遥想了想:“可能更难看。”
(本章未完,请点击下一页继续阅读)