0

有时,我在 Quantum 计算设备(例如 ibmq_16_melbourne)上执行一个电路并得到类似“无效作业状态”的错误。作业应该完成,但它是 JobStatus.ERROR'。我可以得到这个错误的详细信息,例如错误的原因或类似的东西。

这次,我尝试执行一个电路,其中包括

from qiskit import QuantumRegister, ClassicalRegister, QuantumCircuit, IBMQ, execute
from qiskit.visualization import *
from qiskit.tools.jupyter import *
from qiskit.tools.monitor import job_monitor
IBMQ.load_account()
qr = QuantumRegister(6)
cr = ClassicalRegister(5)
mycir = QuantumCircuit(qr,cr)
for i in range(13):
    mycir.mct([qr[0],qr[1],qr[2],qr[3]],qr[4],None, mode='noancilla')
    mycir.mct([qr[0],qr[1],qr[2]],qr[3],None, mode='noancilla')

provider = IBMQ.get_provider(group='open')
backend = provider.get_backend('ibmq_16_melbourne')
job = execute(mycir, backend, shots=1000)
job_monitor(job)

result = job.result()
counts = result.get_counts()
# print(counts)
plot_histogram(counts, figsize=(14,8))

结果是上面的错误。

4

1 回答 1

0

通过转译器运行这个电路,我得到一个深度为 2201 的电路。我想这个电路不能运行的原因是因为它太深了。

为了解决这个问题,我建议要么减少电路的深度,要么在噪声模型类似于您尝试运行它的设备的模拟器上运行它。

于 2020-01-22T17:09:56.820 回答