Skip to content

【代码贡献】新增 VQE 变分量子本征求解器算法模块#23

Open
jsjjl wants to merge 11 commits into
OriginQ:developfrom
jsjjl:trae/solo-agent-mn9aa1
Open

【代码贡献】新增 VQE 变分量子本征求解器算法模块#23
jsjjl wants to merge 11 commits into
OriginQ:developfrom
jsjjl:trae/solo-agent-mn9aa1

Conversation

@jsjjl

@jsjjl jsjjl commented Jun 15, 2026

Copy link
Copy Markdown

变更概述

本次 PR 为 pyqpanda-algorithm 项目新增完整的 VQE(Variational Quantum Eigensolver,变分量子本征求解器)算法模块。

新增文件

  • pyqpanda_alg/VQE/__init__.py — VQE 子包初始化,导出 VQE 类和 hardware_efficient_circuit 函数
  • pyqpanda_alg/VQE/vqe.py — VQE 核心算法类,支持 PauliOperator/Hamiltonian 输入、自定义 ansatz、scipy 优化器
  • pyqpanda_alg/VQE/ansatz.py — 硬件高效参数化量子电路(ansatz),使用 RY/RZ 旋转门和 CNOT 纠缠门
  • example/VQE/example_vqe.py — VQE 使用示例
  • test/VQE/Test_VQE.py — 单元测试

修改文件

  • pyqpanda_alg/__init__.py — 启用 VQE 模块的包级导入

功能说明

  • 支持单量子比特和多量子比特哈密顿量的基态能量求解
  • 默认使用硬件高效 ansatz(Kandala et al., Nature 2017)
  • 支持自定义 ansatz 电路
  • 集成 scipy 优化器(默认 COBYLA)
  • 提供完整的单元测试覆盖

OriginQuantumCloud and others added 11 commits January 28, 2026 16:21
Co-authored-by: traeagent <traeagent@users.noreply.github.com>
- 修复 amp_operator 中 in_operator 被重复调用的 bug(dagger 和正向电路现在共享同一实例)
- 提取 _ensure_list 辅助函数,消除 cir 与 amp_operator 中重复的 qubit 列表处理逻辑
- 移除 mark_data_reflection 中无意义的 BARRIER 操作,简化电路
- 修复 GroverAdaptiveSearch 中冗余的三元表达式和 minimum_indexes 去重逻辑
- 为 cir 方法添加 iternum 负值校验
- 新增 Grover.search() 便捷方法,一键完成电路构建、执行和结果返回
- 修正 Grover __init__.py 模块文档字符串
- 新增 test/Grover/Test_Grover.py 测试文件,覆盖 24 个测试用例
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants