Saltar al contenido

# introduccion-a-la-computacion-cuantica-con-qiskit

Introducción a la computación cuántica con Qiskit

Volver a la portada del curso
Video instructor

Simulación Cuántica

Sección 5 · Simulación y Ejecución en Qiskit

En este video

  • Distingues tres simuladores: Statevector, StatevectorSampler y AerSimulator
  • Ves con el número de disparos que la estimación se desvía más con cien que con diez mil
  • Simulas ruido con AerSimulator.from_backend y FakeManilaV2, y ves que el GHZ ya produce resultados que el circuito ideal nunca da
  • Usas transpile y ves que el circuito transpilado casi siempre es más largo
  • Eliges simulador según el objetivo y fijas siempre la semilla
disparos.py
from qiskit import QuantumCircuit
from qiskit.primitives import StatevectorSampler

qc = QuantumCircuit(1)
qc.h(0)
qc.measure_all()
for shots in [100, 10000]:
    sampler = StatevectorSampler(seed=11)
    res = sampler.run([qc], shots=shots).result()
    uno = res[0].data.meas.get_counts()["1"]
    print(shots, "->", round(uno / shots, 3))
ruido.py
from qiskit import QuantumCircuit, transpile
from qiskit_aer import AerSimulator
from qiskit_ibm_runtime.fake_provider import FakeManilaV2
from qiskit.visualization import plot_histogram
qc = QuantumCircuit(3)
qc.h(0)
qc.cx(0, 1)
qc.cx(1, 2)
qc.measure_all()
sim = AerSimulator.from_backend(FakeManilaV2(), seed_simulator=5)
job = sim.run(transpile(qc, sim, seed_transpiler=5), shots=2000)
plot_histogram(job.result().get_counts(), color="#2563EB")