寓言故事
灯塔每次只转出下一束光
海峡灯塔夜里给船只发信号。守塔人先读完风向、潮汐和船位,然后开始按顺序转动灯镜。第一束光亮起后,船员稍微安心,但完整信号还很长。每一束光都必须接在上一束之后,否则远处船只会读错含义。
镇长先要求守塔人一次照出整段信号。守塔人摇头:灯镜的位置、上一束光的方向和下一束光的选择互相影响,不能全同时发。
有人让多个学徒各自照一段,结果信号断裂,船只误会了港口指令。顺序生成的工作,不能简单切给多人并行。
老守塔人改进了别处。他把前面已经用过的风向和船位记录在转盘旁,每发一束光就更新一次,不再重复查完整航海簿。他还让多座灯塔在同一轮节拍里工作:每座灯塔发自己的下一束光,共享油料和节奏,但不打乱各自顺序。
海峡吞吐变高了,单船等待也更可控。真正限制速度的,是每束光之间不可跳过的依赖,以及每轮节拍的计算成本。镇长明白,守塔是在一束接一束地发信号。每一束都要看前面的方向,再决定下一束怎么转。
年轻守塔人嫌慢,想一次把所有灯镜都摆好。老守塔人拦住他:前一束光会改变下一束的含义,船只看见‘向北’后,后面的‘三刻’才知道是北行三刻;若先后错了,整串信号都会变味。
后来海雾加重,守塔人更不能乱。他每发一束,就等齿轮归位,再按刚发出的光调整下一束。有时前面一个选择很稳,后面就顺;有时前面犹豫,后面也要跟着改。船只收到的不是一团光,而是一束接一束长出来的句子。
后来灯塔优化时,不再只盯第一束光。第一束之后的稳定节拍,才决定长信号能不能撑住风浪和夜航。