CSP Layout 是不是始终是 qiskit 转译器用于映射量子电路的第一个算法?
Posted
技术标签:
【中文标题】CSP Layout 是不是始终是 qiskit 转译器用于映射量子电路的第一个算法?【英文标题】:Is CSP Layout always the first algorithm used by qiskit transpiler to map quantum circuit?CSP Layout 是否始终是 qiskit 转译器用于映射量子电路的第一个算法? 【发布时间】:2020-11-26 16:16:09 【问题描述】:我正在使用 Qiskit transpile
和 optimization_level=3
。我想知道 CSP 布局选择器是否总是 Qiskit 尝试的第一个算法,如果我设置为 layout_method='noise_adaptive'
或其他方法。
如果不是,如何强制转译器使用 CSP 布局选择器?我尝试使用layout_method='csp_layout'
,但出现以下异常:
qiskit.transpiler.exceptions.TranspilerError: 'Invalid layout method csp_layout.
【问题讨论】:
【参考方案1】:对于 Qiskit 0.23 或更早版本 (qiskit-terra 0.16)
答案是是的,CSPLayout
将在优化级别 2 或更高级别运行,即使提供了 layout_method
。
此文件构造优化级别 3 的通道管理器: https://github.com/Qiskit/qiskit-terra/blob/master/qiskit/transpiler/preset_passmanagers/level3.py
目前,布局选择器的首选始终是CSPLayout(coupling_map, call_limit=10000, time_limit=60)
,layout_method
(如果 CSP 布局没有找到解决方案)的可能选项是 'trivial'
、'dense'
、'noise_adaptive'
和 @987654330 @。
对于 Qiskit 0.24 或更高版本 (qiskit-terra 0.17)
随着PR #5495 的合并,答案是视情况而定。 CSPLayout
在级别 2 和 3 中运行。如果提供了 layout_method
,则将使用该方法。
【讨论】:
以上是关于CSP Layout 是不是始终是 qiskit 转译器用于映射量子电路的第一个算法?的主要内容,如果未能解决你的问题,请参考以下文章
量子计算与量子信息之Python-qiskit实现量子隐形传态
量子计算与量子信息之Python-qiskit第一个量子电路