按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
我键入指令。我发现了那份目录。但是,我没有获得授权进入。
“口令是?”
“口令是l…a…n…g…t…o…n,全部小写。”
“好的。”
我键入口令。我正在目录中查看一份程序修改清单,其中的每次修改都标明了文件大小和日期。那些文件很大,这意味着它们都是集群机制的其他方面的程序。因为用于微粒自身的编码应该不多——只有几行,可能只有8至10千字节。
“里基。”
“是我,杰克。”
“微粒编码在哪里?”
“它不在那里吗?”
“妈的,里基。不要再糊弄我了。”
“喂,杰克,我又不负责文件的档案管理——
“里基,这些是工作文件,不是档案。”我说,“告诉我在什么地方。”
他停顿了一下“应该有个子目录斜线C…D…N。它存在那里。”
我往下翻动,“我看到了。”
在这个目录了中,我发现了一个文件清单,里面的文件都很小。修改大约是在6周以前开始的。没有过去两周的修改记录。
“里基,你过去两周中没有修改过编码?”
“对,大概是两周吧。”
我打开最近的文件。“你们写了高层次的小结吗?”
当初这帮人在我手下工作时,我总是要求他们用自然语言写出程序结构的小结。查看它比查看编码中的文件更快。而且,当他们按要求进行简短的文字小结时,他们常常解决逻辑问题。
“应该在那里。”里基说。
在屏幕上,我看见:
/* Initialize */
For j=1 to L x V do
Sj=0/* set Initial demand to 0/
Eed For
For i=1 to z do
For j=1 to L x V do
aiJ=(state(x,y,z))/* agent threshold
param */
aij=(intent(Cj,Hj))/* agent intetion fill */
Response=O/* begin agent response */
Zone=z(i)/* intitial zone unlearned by agent */
Sweep=l/* activate agent travel */
Eed For
Eed For
/* Main */
For kl=1 to RVd do
For tm=1 to nvz do
For e=1 to J do/* tracking surrounds */
aij=(intent(Cj,Hj))/* agent intetion fill */
aij 《 》(state(x,y,z))/* agent is in motion */
aikl=(filed(x,y,z))/* track nearest agents */
我浏览了—下,想找出他们是如何修改的:后来,我滚屏进入实际编码,看它执行的情况。但是,重要的编码不在那里。整套微粒行为被标志为对象调用,那个文件名称是“pstat…do”。
“里基,”我问,“‘pstat…do’是什么文件,它在哪个位置?”
“应该在那里。”
“它不在。”
“我不知道。可能它被编译了。”
“听我说,这样对我没有帮助,对吧?”经过编译的编码是无法读的,“里基,我要看那个倒霉的模块,有什么问题?”
“没有问题。只是我得找一找。”
“好吧……”
“你们回来后我就找。”
我瞟了一眼梅:“你看过那编码没响?”
她摇了摇头。她脸上的表情好像在说:那种事情根本不可能发生,里基将会找出更多借口,继续把我避开。我不理解这是为什么。我在那里的目的就是给他们提供编码方面的咨询。那是我的专长所在。
在另外一间储藏室里,洛西和大卫正在搜那些货架,寻找无线电继电器。他们一无所获。
查理·戴文波特在储藏室的另一侧大声放屁,接着大叫声:“嘿!”
“哎呀,查理。”洛西抱怨道。
“人不该把东西憋在肚子里,”查理说,“那会弄出病来的。”
“你才把我弄出病来了。”洛西说。
“哦,抱歉。”查理举起手来,那是一个亮晃晃的金属玩意。“那么,我想你不需要这个遥控压力阀。”
“什么?”洛西说着,转过身体。
“你在开玩笑吧?”大卫说着,走过去看。
“这上面的额定压力是20磅/平方英寸。”
“那应该工作良好。”大卫说。
“如果你不弄坏的话。”查理说。
他们拿着阀门,走到洗涤槽前;梅的手上戴着厚厚的橡胶手套,还在那里灌装液体。她说:“让我干完……”
“我在黑暗中会发光吗¨”查理说着,冲着她咧嘴一笑。
“只有你的臭屁会发光。”洛西说。
“嘿,有人已经那样做了。特别是当你用光照着它们的时候。”
“哎呀,查理。”
“臭屁是甲烷,这你知道。燃烧时冒出深蓝色的宝石般火焰。”他说着哈哈大笑起来。
“你能自我欣赏,我感到高兴,”洛西说,“因为没有人这样做。”
“哎哟,哎哟,”查理说着,用手捂着胸口,“我要死了,我要死了 ”
“不要异想天开。”
我的头戴式耳麦嘎的响了一声。“喂,伙计们?”又是博比·伦贝克的声音:“风力刚刚降到6节。”
我说:“知道了。”我转身对着大家,“我们结束吧,伙计们。”
大卫说,“我们在等梅。然后,我们再安装这个阀门。”
“我们回到实验室去安装。”我说。
“不过,我只是想确定——”
“回到实验室去干。”我说,“收拾东西,伙计们。”
我走到窗户前,朝外看;沙漠上的风仍旧吹得杜松丛不停地摇晃,但是,地面上已经看不见滚动的沙尘了。
里基的声音从头戴式耳麦中传来:“杰克,带着你那一帮人离开那里。”
“我们正在往回撤。”我说。
大卫·布鲁克斯一本正经地说:“伙计们,在确知阀门可用于这瓶子之前,我们不应该离开这里——”
“我看我们最好走吧,”梅说,“不管干完没有都该走了。”
“那有什么好处?”大卫说。
“收拾东西,”我说,“别说了,立刻收拾东西。”
博比通过头戴式耳麦说:“4节,而且还在下降。快速下降。”
“我们走吧,都走。”我说。我赶着他们朝库房门走。
这时,里基说:“不行了。
“什么?”
“你们现在无法走了。”
“为什么?”
“因为太晚了。它们在这里了。”
第6天
下午3点12分
大家都到了窗户边;我们伸着头观察各个方向。从我能够看见的角度,地平线上什么也没有。我根本没有看到任何迹象。
“它们在哪里?”我说。
“正从南面过来。我们在监视器上看见了。”
“多少个?”
“四个。”
“四个!”
“对,四个。”
主楼在我们的南面。库房的南面没有窗户。
大卫说:“我们什么也没有看到。它们移动的速度有多快?”
“很快。”
“我们有时间跑回去吗?”
“我认为没有。”
大卫眉头一皱:“他认为没有。妈的。”
我还没有来得及开口,大卫突然冲向库房的入口,拉开大门,走到了阳光下。我透过长方形门框,看见他用手挡住太阳,正在观察南面的情况。
我们同时叫喊起来:
“大卫!”
“大卫,你干什么呀?”
“大卫,你这个笨蛋!”
“我想看……”
“回来!”
“你这个蠢蛋!”
但是,布鲁克斯没有动,两手放在两眼上方挡着阳光。“我什么都没有看见,”他说,“我什么也没有听见。听着,我觉得我们可以跑——噢,不,不行了。”他拔腿跑回室内,被门坎绊了一下,跌倒在地,连忙爬起来,砰的一声关上门,用力拉着门把手。
“它们在什么地方?”
“来了,”他说,“它们来了。”他的声音紧张得发抖,“哦,上帝,它们来了!”他用双手拉住门把手,使出了浑身力气。他匣复咕哝道:“来了……它们来了……”
我走到大卫身旁,用一只手拍了拍他的肩膀。他仍旧拉着门把手,上气不接下气。
“大卫,”我镇静地说,“不要着急。作深呼吸。”
“我只是——我得把——得把它们——”他浑身冒汗,身体肌肉紧张,我觉得他的肩头在颤抖。那完全是恐惧的结果。
“大卫,”我说,“深呼吸,好吧?”
“我得——得——得——得——”
“吸一大口气,大卫……”我吸了一口气,给他作示范。“那感觉好多了。来吧,吸一大口气……”
大卫点着头,想听懂我的话。他吸了一口气,然后恢复了短促的喘息。
“好的,大卫,再来一次……”
他又吸了一口气,呼吸稍微慢了一点。他停止了颤抖。
“好的,大卫,很好……”
查理在我背后说:“我一直觉得这家伙不行。看一看他吧,和他说话就像在哄小孩子。”
我回头看了一眼,给查理使了一个眼色。
他只是耸了耸肩:“嘿,我说的是对的。”
梅说:“这帮不了忙,查理。”
“帮个屁忙。”
洛西说:“查理,把你的嘴巴闭一会儿,行吗?”
我转向大卫,使自己的语气平和:“好吧,大卫……好的,呼吸……现在好啦,放开门把手。”
大卫摇着头,拒绝松手,但是他这时显得糊涂了,不知道他自己在干什么。他飞快地眨着眼睛。他好像从迷幻中清醒过来。
我轻声地说:“放开门把手。这没有用处。”
最后,他松开了手,一屁股坐在地上。他开始哭叫,两只手捂着脑袋。
“噢,上帝”查理说,“我们需要的就是这个。”
“闭嘴,查理。”
洛西走到电冰箱前,取回了一瓶水。她把水递给大卫,他接过去边喝边哭。她帮着他站起来,对我点了一下头,示意让她来照顾他。
我回到房间中央,其他的人都站在计算机工作站旁边。在屏幕上,那几行编码已被主楼北面监视器传来的图像取代。四个集群都在那里,闪着银光,在主楼前上下移动。
“它们在干什么?”我问。
“想进去。”
我问:“它们为什么这样?”
“我们不知道。”梅说。
我们默默地看了一阵,它们行为的目的性给我们留下了深刻印象。它们使我想起试图进入活动房屋以便获得食品的狗熊的行为。它们在每一扇门前和关闭的窗户前都会停下来,徘徊一阵,顺着密封的地方上下移动,然后移到下一个有空隙的地方去。
我说:“它们总是那样试图从门口进去吗?”
“是的。为什么问这个?”
“因为它们看来不记得门是密封的。”
“对,”查理说,“它们不记得。”
“因为它们没有足够的记忆力?”
“要么是因为那样,”他说,“要么这是另外一代集群。”
“你的意思是中午以后出现了新集群?”
“对。”
我看了一眼手表:“每隔3个小时就生成一个新集群?”
查理耸了耸肩:“我不能那样说。我们一直没有找到它们的繁殖地点。我只是猜想。”
新一代集群迅速产生这一可能性意昧着,写入编码的进化机制也在很快发展。通常,遗传演算法——它们模仿繁殖,以便获得解决方法——要运行500至5,000次才实现最佳化。如果这些集群每3小时繁殖一次,那就意味着,它们在过去两周中已经繁殖出了100代左右。经过了100代的进化,它们的行为将会非常机敏。
梅看着屏幕上的集群说:“至少,它们待在主楼附近。看来它们不知道我们在这里。”
“它们怎么会知道呢?”我问。
“它们不会的,”查理说,“它们的主要感应模态是视觉。它们在进化过程中形成了一点听觉,但它们仍旧以视觉为主。如果它们不知道听觉,听觉对它们来说就不存在。”
洛西和大卫一起走来。他说:“我真的表示抱歉,伙计们。”
“没问题。”
“那没关系,大卫。”
“我不知道发生了什么。我只是无法忍受。”
查理说:“别担心,大卫。我们能