大规模求解QUBO问题的PyTorch、JAX、SciPy和Neal框架对比评估

二次无约束二进制优化(QUBO)是解决组合优化问题的通用框架。本研究在随机生成的1000×1000至45000×45000规模QUBO矩阵上,针对10^-1到10^-6六种收敛阈值,对比了五种基于软件的求解器性能:Neal、PyTorch(CPU版)、PyTorch(GPU版)、JAX和SciPy。该团队从解的质量(能量值)和计算时间两个维度进行评估。测试结果显示,Neal求解器能获得最低能量值,但因内存消耗过高,仅能处理6000变量以内的问题;PyTorch所得能量值略高于Neal,但展现出卓越的可扩展性,能解决高达45000变量的问题,其支持的GPU加速和CPU多线程技术还大幅缩短了运行时间。JAX的能量值略逊于PyTorch,且最多只能处理25000变量,其GPU版本的运行时间与PyTorch相当。SciPy表现最为受限,仅能处理6000变量以下问题,且始终产生最高能量值与最长计算时间。这些发现揭示了求解质量、可扩展性及运行效率之间的权衡关系,表明在计算资源允许的情况下,PyTorch是处理大规模QUBO问题的最均衡选择。

量科快讯