开源之夏|黄玉含:基于MindSpore Quantum的QuCOOP量子-经典混合优化框架实践
开源之夏|黄玉含:基于MindSpore Quantum的QuCOOP量子-经典混合优化框架实践

01 项目介绍
项目名称:QuCOOP:迭代式求解复合二元优化问题
项目描述:本项目旨在提出并实现一种与经典计算相融合的通用量子优化框架,用于在量子退火器或混合量子–经典系统上求解非QUBO(二次无约束二元优化) 问题。该框架通过将含二元约束或高阶结构的复杂优化问题分解并转化为一系列可求解的 QUBO 子问题,结合 QAOA(量子近似优化算法) 与经典 爬山算法(Hill Climbing),在复杂优化任务中实现高效、稳健且具备可扩展性的量子–经典混合求解过程。
项目源码链接:
https://gitee.com/mindspore/mindquantum/tree/research/summer_ospp/2025/25c6d0356
02 技术实现:混合量子-经典协同优化架构
1、技术选型与系统流程:
以Python与MindSpore Quantum为基础平台,选用QAOA作为量子求解核心,辅以经典爬山算法增强局部搜索与收敛能力。
整体执行流程分为四步:
1)构建原始非QUBO二元优化问题;
2)通过QuCOOP框架进行QUBO近似转化(支持线性化与二阶展开两种策略);
3)在量子退火器或经典求解器上进行求解;
4)融合局部爬山算法,进一步提升解的精度与稳定性。
2、核心开发步骤:
步骤一:环境搭建与实验复现
阅读论文《QuCOOP: A Versatile Framework for Solving Composite and Binary-Parametrised Problems on Quantum Annealers》,搭建 MindSpore Quantum 环境,复现 QAP(Quadratic Assignment Problem)与 PSR(Point Set Registration)两类问题的实验流程。
步骤二: 算法主体实现
实现 QuCOOP 的两种近似方法:
- QuCOOP1:开方–线性化–平方恢复
- QuCOOP2:二阶泰勒展开近似
为每一种方案建立等价的 QUBO 表达式并调度 QAOA 求解。在此基础上,将 QuCOOP1/2 与爬山算法(Hill Climbing)结合,形成混合量子–经典优化策略,以充分发挥全局探索与局部精修的优势。
步骤三: 性能验证与基准测试
在 20 比特以内规模上验证 QAP 与 PSR 的 QUBO 转化精度及收敛性能;在 BBOB Benchmark 上验证混合算法在通用二元优化任务上的适应性。
步骤四: 优化代码与文档完善
优化代码结构,整理实验数据,撰写技术报告与说明文档,完成项目归档与开源发布。
3、主要成果与贡献:
1.在MindSpore Quantum中实现了QuCOOP通用二元优化求解模块,支持非QUBO问题的自动转化与迭代求解;
2.开源了QAP、PSR等典型任务的完整示例与性能基准;
3.提出“QuCOOP + Hill Climbing”混合求解模式,在BBOB测试中整体表现优于传统模拟退火算法。
03 攻关历程:关键挑战与解决策略
非 QUBO 函数的高阶项与复杂约束难以直接求解
- 探索过程:直接利用退火器会造成解空间错位和目标函数失配。多次尝试多项式截断或罚项嵌入,效果有限。
- 最终方案:最终与邹作恒老师讨论并提出两种转化近似方法:QuCOOP1:通过函数开方再线性化再平方恢复,实现只依赖函数值和梯度的信息近似;QuCOOP2:利用二阶泰勒展开获得高精度局部逼近。
Hessian 计算成本过高
- 探索过程: 二阶展开方案性能良好但计算复杂度高。
- 最终方案: 在 QuCOOP1 中完全避免 Hessian 计算,仅用梯度与函数值实现近似,从而显著提高计算效率。
单纯使用QuCOOP1/2框架易陷入局部最优
- 探索过程: 实验发现即使QuCOOP1/2可以提供全局探索,但缺乏精细局部收敛优化。
- 最终方案: 在 QuCOOP 框架中引入 Hill Climbing,实现全局–局部协同进化,显著提高稳定性与收敛率。
04 成长感悟:从开源实践到技术视野的拓展
1.是什么机缘让你在开源之夏的诸多项目中选择了昇思MindSpore?在选择项目任务和撰写申请书的时候有哪些考虑和准备?
黄玉含:选择 MindSpore Quantum 项目,是因为该社区在量子计算框架上生态完善且文档清晰,对科研型学生而言极具实践价值;同时,Mentor 团队在 QAOA、QUBO 建模等方向提供了专业指导。
2.此次开发工作与你以前的项目开发经历有何不可异同?
黄玉含:以往更多着重于量子优化算法如QAOA,VQE的线路结构设计,而此次项目让我首次系统构建“量子–经典协同”的算法闭环,对架构设计和思维模式都有新的认识。
3.通过这个项目任务,你对开源有了什么更深刻的理解吗?
黄玉含:开源不只是代码共享,更是系统性复现与可对比的科研路径,让算法能被验证、被改进、被传承。
4.作为学生参与开源项目,你认为最大的挑战是什么?又是如何克服的?
黄玉含:最大的挑战是理论公式与量子框架结合的落地性不足,我通过大量阅读 MindSpore Quantum 框架源码与社区讨论贴,逐步实现了代码级的等价映射。
5.作为过来人,有没有什么话想对刚加入昇思MindSpore的开发者说呢?
黄玉含:开源是一场“长期的不确定探索”,勇敢迈出第一步比完美准备更重要。MindSpore 的社区氛围非常友好并鼓励创新,希望学弟学妹们大胆尝试、保持持续输出。