BenchRL-QAS
收藏资源简介:
BenchRL-QAS是一个统一基准测试框架,旨在系统地评估强化学习(RL)算法在量子架构搜索(QAS)中的表现,涵盖从2到8量子比特的多种变分量子算法任务和系统大小。数据集包含9个RL智能体,包括基于值的方法和策略梯度方法,在无噪声和现实噪声环境下对代表性量子问题进行评估。该数据集通过加权排名指标平衡了准确度、电路深度、门数和计算效率,使得比较公平全面。该工作代表了迄今为止最全面的RL-QAS基准测试工作,BenchRL-QAS及其所有实验数据均已公开发布,以支持可重复性和未来的研究。
BenchRL-QAS is a unified benchmarking framework dedicated to systematically evaluating the performance of reinforcement learning (RL) algorithms for quantum architecture search (QAS). It encompasses diverse variational quantum algorithm tasks and system scales spanning from 2 to 8 qubits. The dataset includes 9 RL agents, covering both value-based methods and policy gradient methods, which are evaluated on representative quantum problems under both noise-free and realistic noisy environments. To enable fair and comprehensive comparisons, this dataset balances accuracy, circuit depth, gate count and computational efficiency via weighted ranking metrics. This work represents the most comprehensive RL-QAS benchmarking effort to date, and BenchRL-QAS along with all its experimental data have been publicly released to support research reproducibility and future studies.
BenchRL-QAS 数据集概述
数据集简介
- 名称: BenchRL-QAS
- 类型: 强化学习算法在量子架构搜索中的基准测试框架
- 论文: BenchRL-QAS: Benchmarking Reinforcement Learning Algorithms for Quantum Architecture Search
数据集特点
- 全面性: 提供迄今为止最广泛的RL-QAS基准测试
- 算法覆盖: 评估9种强化学习算法
- 实验设置: 包含无噪声和含噪声实验
- 任务针对性: 提供针对不同量子任务的特定见解
- 可重现性: 通过开源代码和数据集确保结果可重现
强化学习算法
| 类别 | 算法 | 描述 |
|---|---|---|
| 基于价值 | DQN | 深度Q网络 |
| DQN PER | 优先经验回放 | |
| DQN Rank | 基于等级的动作优先级 | |
| Dueling DQN | 竞争价值与优势流 | |
| DDQN | 双重DQN以减少过高估计 | |
| 基于策略梯度 | A2C | 优势演员-评论家 |
| A3C | 异步优势演员-评论家 | |
| PPO | 近端策略优化 | |
| TPPO | 真正的近端策略优化 |
支持的量子问题
| 任务 | 描述 | 动作类型 |
|---|---|---|
| 状态准备(GHZ) | 准备最大纠缠态 | 非参数化 |
| VQSD | 变分量子态对角化 | 参数化 |
| VQE | 变分量子本征求解器用于基态估计 | 参数化 |
| VQC | 变分量子分类器用于监督学习 | 参数化 |
性能亮点
- 在VQE(BeH₂)中优于最近的QAS方法,误差降低3个数量级,门数减少>50%
- RL-VQC+DQN-rank达到>99.99%的训练和测试准确率
系统要求
- Python 3.10
- Anaconda或Miniconda
使用说明
- 克隆仓库并创建conda环境
- 安装依赖包
- 运行实验:
- 单个任务和代理:
python main.py --task [TASK] --agent [AGENT] - 全部任务和代理:
python main.py --task ALL --agent ALL
- 单个任务和代理:




