近日,中国科学院金属研究所张志东研究员在计算机科学基础理论领域取得重要进展,首次精确确定了计算机科学中经典NP完全问题——“背包问题”的计算复杂度下限,这项成果5月23日发表于《AIMS数学》。
什么是“背包问题”?假设你有一个容量有限的背包,面前摆着N件价值不同、重量各异的物品,如何选择物品组合才能使总价值最大化?这个看似简单的选择难题,实则暗藏计算玄机。当物品数量超过一定规模后,即使使用最先进的计算机也需要耗费天文数字时间求解,而“计算复杂度下限”就是解决问题所需的最少时间。在现实中如在物流运输领域如何优化集装箱装载方案,在金融投资领域如何构建收益最大化的投资组合,材料科学领域如何寻找最优原子排列方式等都涉及这一问题。
图1.自旋玻璃三维伊辛模型最小核模型示意图,其中红色自旋指向随机分布,并且蓝色自旋存在阻错。
中国科学院金属研究所张志东研究员在十余年三维伊辛模型研究工作的基础上,建立了“背包问题”与自旋玻璃三维伊辛模型的联系,根据两个问题的关系确定了背包问题的计算复杂度的下限。把每个物品的选择(取或不取)对应为微观粒子的两种自旋状态,将价值最大化问题转化为寻找系统最低能量状态。发现“绝对极小核心模型”,揭示计算复杂度的本源来自三维晶格中自旋排列的特殊拓扑结构。构建计算相图,首次描绘出NP完全问题与NP中间问题的分界区域。确定复杂度下限,证明最优算法的时间复杂度至少为(1+ε)^N(ε为趋近0的正数),显著优于现有1.3^N的算法。
“背包问题”可以被映射为许多其它的科学问题,该研究的结论可以直接推广应用,解决计算机、物理、化学、生物、数学以及材料科学领域一系列相关基础科学问题。
(光明日报全媒体记者王鲁婧)