他离开会议室后,我独自收拾好东西,回到工位。电脑屏幕上,蝴蝶模型的界面还开着,那只简约的线条蝴蝶静静停在中央,翅膀随着数据流微微振动。
我打开一个新的文档,开始构思“困惑点采集”模块。但思绪总是不自觉飘向别处——飘向早晨食堂里他搅拌豆浆的认真模样,飘向会议中他不动声色为我补全设计时的精准,飘向他说“表现合格”时那种克制却真实的肯定。
手机震动。苏晓的消息:
“今晚云南菜!六点半,老地方,不许放鸽子!离线三小时条约启动倒计时——”
我笑了,回复:“收到。绝对离线。”
然后,我点开楚惟舟的聊天窗口(虽然我们几乎只通过邮件和系统消息联系),犹豫了几秒,输入:
“楚总,关于困惑点采集的设计,我可能需要查阅一些认知心理学和知识追踪(Knowledge Tracing)的文献。您有推荐的论文或资料吗?”
消息发出。我盯着屏幕,心跳有点快。
两分钟后,回复来了。不是资料推荐,而是一个简洁的:
“图书馆四楼B区,索书号BF318-449。那里安静,网络好。”
我愣住。他连我们学校图书馆的索书号都知道?
紧接着,第二条消息:
“另外,今晚我有技术评审会,回复可能不及时。设计草案明早十点前给我即可。”
这条消息读起来,像一种……解释?或者说,是在告诉我:他今晚确实有事,不是故意不回复我。
我盯着那两行字,嘴角不自觉地弯起。这个人,连解释都要包裹在“工作安排”的外衣里。
“明白。谢谢。”我回复。
放下手机,我继续工作。但心情莫名地轻盈起来,像那只屏幕上的蝴蝶,找到了更稳定的振翅频率。
下午五点,我准时关掉工作电脑,背上帆布包离开公司。夕阳正好,整条街道都浸泡在暖金色的光里。我步行去地铁站,路过一家新开的面包店,橱窗里摆着造型可爱的蝴蝶酥。
我走进去,买了两份。一份给自己,一份……我犹豫了一下,打包好,在纸袋上贴了张便签:
“启发式搜索的燃料。来自一个‘合格’的负责人。——林晚”
没有署名,但我知道他认得我的字迹。我让前台帮忙叫了个同城闪送,地址填了灵犀科技,收件人楚惟舟。
走出面包店时,我忍不住笑了。这大概是我做过最大胆的、最“不实习生”的举动。
晚上六点半,我和苏晓坐在那家云南菜馆靠窗的位置。木桌、暖灯、空气里飘着菌菇和香料的复合香气。我果然严格遵守“离线条约”,手机调成静音塞进包里。
“所以,会开得怎么样?”苏晓夹起一块汽锅鸡,眼睛发亮,“有没有被那两个大佬怼到怀疑人生?”
“有。”我老实承认,“但楚惟舟……帮我把漏洞补上了。”
我把会议过程简单讲了一遍,省略了那些心跳加速的细节,只聚焦于技术讨论。
苏晓听得津津有味,中途还拿出手机备忘录记了几句。“‘困惑点分布’……这个概念好。失败的数据往往比成功的数据信息量更大。这完全可以写进我的社会研究方法论文里——关于如何从‘异常值’中解读社会结构。”
“你又偷我灵感。”我笑着夹走她碗里最后一块黑糖糍粑。
“这叫学科交叉!”苏晓抗议,然后凑近,压低声音,“不过说真的,他给你补漏洞的方式,很微妙啊。不是直接替你回答,而是给你提示,让你自己完善——这很像那种……嗯,‘脚手架教学法’,在你能独立行走的地方撤掉支撑,只在你会摔倒的地方扶一把。”
我怔了怔。苏晓的比喻总是这么一针见血。
“而且,”她继续分析,“他让你明早十点前交草案,却告诉你他今晚有会——这等于在说:‘我不在线,但你可以随时发,我会在我能看的时候看。’既给了你自由度和安全感,又保持了边界感。啧啧,这分寸拿捏,不愧是INTJ。”
我低头喝了一口泡鲁达,椰奶的甜香在舌尖化开。“晓晓,我有时候觉得……我像在解一道没有标准答案的题。每一步都需要试探,每一个变量都可能影响最终收敛。”
“那就别想着收敛。”苏晓认真地说,“感情又不是优化算法,非得找到全局最优解。你们现在这样,像在做‘启发式搜索’——不知道最优路径在哪,但凭着一些经验规则(比如价值观共鸣、专业上的默契),一步步探索,每次都离目标更近一点。这本身就很浪漫啊。”
启发式搜索。又一个精准的比喻。
晚餐在轻松的氛围里结束。我们聊了期中考试、社团活动、苏晓最近在追的剧,还有她那个若即若离的暧昧对象。走出餐馆时,夜色已经浓郁,街灯一盏盏亮起,像一串温暖的数据点。
回到宿舍,我打开电脑,开始认真查阅楚惟舟提到的索书号下的文献。认知心理学关于“学习瓶颈”的研究、知识追踪模型对“错误概念”的建模……资料浩如烟海,但我沉浸其中,像一块海绵吸收水分。
晚上十一点,我完成了“困惑点采集”模块的初步设计草案。不算完美,但有了清晰的框架和关键算法思路。我把它发到楚惟舟邮箱,附上一句简短说明:
“草案已完成,请查收。文献很有帮助,谢谢。另:燃料收到了吗?”
发送。我合上电脑,洗漱,爬上床。
宿舍已经熄灯,苏晓那边传来均匀的呼吸声。我躺在黑暗里,看着天花板上的月光影子,回想这一天。
从紧张的会议,到他克制的肯定;从食堂早餐的“协议协商”,到夜晚这份隔着网络却心意相通的工作传递。还有那份冒昧送出的蝴蝶酥——他会吃吗?会觉得不专业吗?还是……会理解那笨拙的、试图用食物传递“我懂你正在忙碌”的心意?
手机屏幕在枕边忽然亮起。没有声音,只有一道微光。
我拿起来。是楚惟舟的邮件回复,时间显示五分钟前。
“草案已收到。结构清晰,关键路径正确。‘燃料’也收到了,热量摄入已计入今日营养预算。另:蝴蝶酥的造型,符合‘启发式’的随机美感。不错。”
邮件的最后,附了一张照片——是那个面包店的纸袋,便签被拿下来,平整地放在他的办公桌上,旁边是咬了一口的蝴蝶酥。桌角,能看到笔记本电脑的一角,和那支沈清让的铜制铅笔。
我看着那张照片,在黑暗里无声地笑了。
原来,这就是启发式搜索。
我们不知道最优的相处模式是什么,不知道感情的最优解在哪里。但我们都在用自己的方式,发送信号,接收反馈,调整策略。
他用论文索引和营养预算表达关心。
我用蝴蝶酥和设计草案传递心意。
我们在各自的问题空间里探索,却被彼此的存在,指引着搜索方向。
而每一次微小的、看似不经意的数据交换——一句“合格”,一份早餐,一条索书号,一块蝴蝶酥——都是我们为对方点亮的路标。
指引着我们,在茫茫的可能性海洋里,朝着那个也许存在、也许不存在的“最优解”,笨拙地、坚定地、一步一个数据点地,靠近。
我放下手机,闭上眼睛。
睡意袭来前,最后一个清晰的念头是:
明天,蝴蝶模型的准确率,会不会因为新增的“困惑点采集”模块,再上升0.01呢?
而我和他之间,那无法被量化的“耦合系数”,是不是也在今夜,完成了一次静默的、却意义重大的版本迭代?
窗外,城市灯火如星河流淌。
而两个灵魂的算法,正在夜色的掩护下,进行着无人知晓的、持续而精妙的相互训练。