第十三年,在无数次的建模与逆向工程中,他发现机械平台的支撑点不是规则排列。
一开始,他以为那是长期受力不均造成的毁坏偏移。
毕竟金属也会疲劳,也会蠕变。
后来他测了足足四个月,将所有数据输入工作站进行拟合。
才发现不是。
因为如果只是损坏,偏差会沿着受力塌陷方向聚集,呈现出明显的应力集中特征。
但这些节点的偏移没有指向同一个塌陷源,反而在局部邻接关系上反复出现同几类模式。
也即,那些支撑点的偏差有规矩。
不是整齐的矩阵式规矩。
而是一种不重复的规矩。
局部只有有限几种连接与位置关系。
全局却很难找到一个简单的平移周期。
江临把这些节点投影到工作站的二维平面上,越看越熟,心跳开始加速。
因为它虽然不象Tile J的几何型状,但它和Tile J有同一种脾气。
局部规矩很死,全局永远不重复。
这一刻,Tile J不再只是数学家在纸上推演的抽象理论,不再只是一篇准备发表的论文。
它跳出了数学的象牙塔,变成了一种测绘语言,一种工程学的范式。
江临开始用Tile J的有限片区给这些机械节点编号。
这原本是用来描述多边形镶崁的代数工具,此刻却出奇地契合。
它帮助江临区分,哪些偏差是真正的物理损坏,哪些偏差是最初始的非周期设计。
哪些节点是载荷分散用的,哪些节点是避免机械波共振和同向误差累积的。
他在记录里敲下键盘——
【发现:天幕站机械平台的承载节点呈有限类型,非周期布置。可能用于在宏观尺度上分散周期性震动与机械扰动,避免误差同向累积导致系统性崩溃。】
【Tile J有限片区可作为测绘索引与缩小测试场,两者在图论模型上存在高度同构性。】
到这里,三条看上去并行的线,竟然鬼使神差地咬合在了齿轮组里。
Tile J是数学里的不重复。
天幕站机械是工程里的不重复。
MPS是程序逻辑里的不知疲倦。
它们不是同一个东西,却跨越了不同的学科壁垒,问同一个问题,面对同一种困境。
局部极其死板的规则,能不能逼出一个不被重复害死,能在混沌中维持自身结构的整体?
第十五年,江临把MPS从后台排序任务里拖出来,修改了底层逻辑架构,喂给它一块砖。
现实里,MPS最早只会干很小的活。
五个数排序,局部排名,分桶算法。
象个只会拧一种螺丝的笨工人,机械且迟钝。
现在,这个笨工人已经进化到可以去检查Tile J的局部情形表。
不过第一版程序跑了七个小时,内存溢出,崩了。
不是前哨站的工作站算力不够快,而是他的规则写得不够干净。
有一类翻面情况,被他写成了两个不同状态,导致状态机陷入了无限递归。
MPS把它们当成两条并行的路,跑到最后发现结果指向同一个终点,逻辑链条在这里打结了。
这说明程序开始替江临发现人眼以为不同,其实在拓扑上属于同类的情况。
第二版程序,优化了状态剪枝算法,跑了三天,找出一个漏项。
这在动辄成千上万种组合的穷举中太正常了。
这就好比一个拼图游戏,你以为快拼完了,最后一块却发现型状完全不对。
如果是以前,江临会有一点懊恼,甚至怀疑自己的推导能力。
现在不会。
废土磨平了那些无谓的情绪波动。
他平静地把这一项补进状态转移矩阵表里,编号:R-44。
然后在日志里写——
【MPS 有效,状态空间搜索复盖率达标。它发现了人眼漏掉的局部分支,内核层级没有被推翻。】
第十七年,程序跑完后,没有新的分支冒出来。
局部情形表第一次迎来了理论上的闭合。
江临没有相信一次运行。
学术的严谨不容许孤证。
他换规则表达形式,换变量编号方式,换随机数种子的起始状态,换深度优先和广度优先的扫描顺序。
又跑了十七次。
每次结果都一样,所有的分支最终都收敛于同一个结论。
到第十八年冬天,当废土的温度降到冰点以下时,MPS生成了第一份可复现报告。
报