GPT-5.6与Fable 5联手攻克了一道困扰无线通信学界长达25年的数学难题。微软研究院首席研究员Dimitris Papailiopoulos成功证明了一种多项式时间算法,能够使MIMO检测精确命中最大似然阈值。据他透露,这一过程耗费了整整七天。MIMO检测是无线通信领域的经典难题,核心在于接收端需从被噪声干扰的信号中,完整还原出发送端发送的信息。虽然在统计上这一操作是可行的,但传统方法依赖穷举搜索,计算耗时呈指数级增长。因此,核心问题转化为:能否在不穷举的前提下,利用快速算法实现信息还原?早在2001年,Hassibi和Vikalo曾以为找到了突破口,但2005年Jaldén和Ottersten便证明此路不通。此后,学界又尝试了半正定松弛、比特翻转局部搜索、AMP(近似消息传递)以及统计物理方法,但最佳结果也只能停留在理论门槛的两倍处。二十五年来,一波又一波学者轮番上阵,却无人能啃下这块硬骨头。
MIMO检测是无线通信中的基础问题。发送端将N个比特通过N×N的信道发出,信道会混合这些比特并叠加噪声;接收端仅持有被搅乱后的信号,需将原始N个比特毫厘不差地找回来。理论上存在一种万无一失的办法,即最大似然检测,也就是遍历所有可能的比特组合,找出与接收信号最匹配的那一个。这种方法一定能找到正确答案,前提是你愿意等待——N个比特意味着2的N次方种组合,N稍大,穷举便算到天荒地老。1989年,Sergio Verdú证明了这类问题在最坏情况下是NP-hard的,即存在某些输入让计算量指数级爆炸。但“最坏情况”是指数学上刻意构造、专为刁难算法而设的信道矩阵。现实中的无线信道并非刻意构造,其衰减和噪声是随机产生的,不会专门挑选最难算的情况。于是,2000年代初,学界提出了一个更具体的问题:如果信道是随机产生的,只要统计上存在恢复原始比特的可能,是否就一定能找到不需要穷举的算法?后续研究给出了精确的分界线:当信噪比达到2logN,发送的比特能够被完全恢复的概率趋近于1。低于这条线,连最大似然检测本身也会开始出错,这条分界线因此被称为最大似然阈值。问题于是变得具体——能否设计一个跑得快的算法,精确命中2logN这条阈值?
2001年,Babak Hassibi和Haris Vikalo以为找到了答案。他们分析的是球形译码算法。这种算法先在接收信号周围划定一个“球”,仅在球内候选里搜索,球外的直接跳过,以此压缩搜索范围。Hassibi和Vikalo推导出该算法的期望复杂度公式,结果看起来是多项式时间的。如果这个结论成立,这道题基本就解决了。但2005年,Joakim Jaldén和Björn Ottersten推翻了这一结论。他们证明,在任意固定的信噪比下,球形译码的期望复杂度其实是指数级的,而非多项式的。原因在于,要以不趋于零的概率把发送的信号包进“球”里,球的半径必须随问题规模一起变大,球一旦变大,球内要搜索的候选数量也呈指数级增长。
球形译码这条路走不通后,学界转向了各种近似方法——半正定松弛、比特翻转局部搜索、AMP、统计物理里的方法。结果,每一种都能给出漂亮的分析,但没有一种被证明能精确匹配2logN这条阈值。2020年,一种叫box relaxation的方法,把离散问题放宽成连续优化问题来解,拿到了当时最好的严格证明结果,能在信噪比达到4logN时做到精确恢复,但复杂度依然是理论门槛的两倍。二十五年来,统计上“能恢复”和用快算法“能恢复”之间,一直隔着这条鸿沟。上周,这条鸿沟被填平了。Dimitris Papailiopoulos与GPT-5.6、Claude Fable 5证明,一个只有两步的简单算法,同样能在信噪比等于2logN时精确恢复全部比特,且为多项式时间,仅需O(N³)次运算。而且这篇论文证明的是一个双向结果:一方面证明了该算法能在信噪比等于2logN时精确恢复信号;另一方面则进一步证明,信噪比只要略低于2logN这个最大似然阈值,连“笨办法”最大似然检测也会开始失败。
GPT-5.6和Fable 5联手证明Dimitris找GPT-5.6和Fable 5来试这道题,两个模型很快分别给出了自己的证明思路,但接下来的打磨过程一波三折。GPT-5.6的路径用了一种叫AMP的算法,这是Dimitris一直没能吃透分析方法的一类工具。Fable 5给出的路径则不同,用的是“符号LMMSE,加贪心逐位翻转”,一个业内实际在用、却从没被严格证明过的老算法。两条路径都各自给出了完整的证明,声称能在信噪比2logN精确恢复。Dimitris最终选择了Fable给出的这条路,让GPT接手检查和修补里面的漏洞。GPT把漏洞修好了,但修好之后的证明是一堵“符号墙”,变量指着变量,被指着的变量又指着更多变量,而且塞满了Dimitris看不懂的矩阵分析工具。接下来的几天,他反复让两个模型互相简化对方给出的论证,唯一的底线是,不管怎么简化,最后都要保住2logN这个门槛。除此之外,只要他自己能看懂,怎么改都行。他还拒绝了用Lean做形式化验证,原因也很抓马,因为……他不懂。Lean是一种能让计算机自动检查数学证明是否成立的工具,但要用它,得先把证明翻译成Lean能读懂的形式语言。这道翻译工作本身也可能出错,而Dimitris不懂Lean,也就没法检查翻译对不对。总之折腾了一周后,他终于拿到了一份可以逐行手算核对的证明。
拆开看,这个算法只有两个核心步骤。第一步,叫LMMSE取整。LMMSE(线性最小均方误差估计)是信号处理里的一种标准估计方法,先给出一个不是整数、连续取值的粗略猜测,再把每个坐标按正负号取整成+1或-1。这一步不需要精确猜中每一个比特,论文证明的是,取整后的结果和真实发送的比特之间,汉明距离(两个等长比特串之间不同的位数)只有o(N)。也就是说,随着N变大,猜错的比特数占总数的比例会趋近于零。
第二步,叫贪心逐位翻转。这步从第一步给出的猜测开始,每一轮检查所有N个比特,找出翻转哪一位能让代价函数(衡量当前猜测和接收信号匹配程度的一个数值,越小越匹配)下降得最多,就翻转那一位,然后重复这个过程。问题是,这样的贪心搜索凭什么能找到正确答案,而不是在中途卡在一个错误的地方不动?为了回答这个问题,论文证明了两件事。第一,在猜测起点周围的一个范围内,每一个还没猜对的点,都至少存在一位翻转能让代价函数严格下降,而且下降的幅度有一个不趋于零的下限,不会随着N变大而消失。这意味着贪心搜索不会卡死不动,永远能找到继续往下走的一步。第二,代价函数本身会随着汉明距离(也就是猜错的比特数)增大而增大。这形成了一道天然的护栏——搜索路径就算中途某一步猜错的比特数量暂时变多,代价函数也回不到起点,没法翻越这道护栏跑到猜测范围之外。
把这两件事放在一起看,每一步至少能降低多少代价,除以起点距离最优解总共差多少代价,就得到贪心搜索的算法复杂度,论文算出来的答案是O(NlogN)步。贪心搜索有一条停止规则,那就是找不到任何能让代价下降的翻转时,就停下来。前面已经证明,护栏内每一个猜错的点,都还有至少一位翻转能让代价下降。也就是说,只要还没猜对,算法就一定能找到下一步该翻哪一位,不会停。等真的猜对了,任何一次翻转都只会让代价变得更差,这时候才没有能改进的翻转可选,算法这才会停下来。贪心搜索唯一能停下的地方,就是真实发送的那个比特串。算法最终只会停在真实发送的比特串上,证明也就完成了。Dimitris表示,这一整套论证过程,自己已经从头到尾验证过一遍。
作者简介Dimitris Papailiopoulos,现在是微软研究院的首席研究员,同时是威斯康星大学麦迪逊分校电子与计算机工程系的副教授。他早年的研究方向是信息论和编码理论。2009年,他还是博士一年级学生,写下了第一篇论文,并于次年发表,合作者是导师Alex Dimakis。那篇论文用一种叫MCMC(马尔可夫链蒙特卡洛,一种靠随机采样逼近答案的计算方法)的方法,尝试解决MIMO检测这道题,但没有成功。这次被GPT-5.6和Fable 5证明拿下的,正是同一道题。十七年前那道让他卡住的题,这次被他自己解开了。
