تجربة على نطاق المنفعة II
Yukio Kawashima (12 July 2024)
تحميل ملف PDF للمحاضرة الأصلية. لاحظ أن بعض مقتطفات الشيفرة قد تصبح قديمة لأنها صور ثابتة.
الوقت التقريبي لوحدة المعالجة الكمية لتشغيل هذه التجربة هو 2 دقيقة و30 ثانية.
(لاحظ أن هذا الدفتر استخدم نصوصًا ورسومًا توضيحية وأكوادًا من دفتر تعليمي تم إيقافه الآن لـ Qiskit Algorithms.)
1. مقدمة ومراجعة التطور الزمني
يتبع هذا الدفتر أساليب وتقنيات الدرس 7. هدفنا هو حل معادلة شرودنغر المعتمدة على الزمن عدديًا. كما نوقش في الدرس 7، تتكون تقنية Trotterization من التطبيق المتتالي لبوابة كمية أو بوابات، يتم اختيارها لتقريب التطور الزمني لنظام ما خلال شريحة زمنية. نعيد هذا النقاش هنا للتيسير. لا تتردد في التخطي إلى خلايا الشيفرة أدناه إذا كنت قد راجعت الدرس 7 مؤخرًا.
انطلاقًا من معادلة شرودنغر، يأخذ التطور الزمني لنظام في الحالة الابتدائية الشكل التالي:
حيث هو الهاملتوني المستقل عن الزمن الذي يحكم النظام. نعتبر هاملتوني يمكن كتابته كمجموع موزون لحدود Pauli ، حيث يمثل حاصل ضرب تنسوري لحدود Pauli تعمل على كيوبت. على وجه الخصوص، قد تكون هذه الحدود تبادلية فيما بينها أو لا. بمعلومية حالة عند الزمن ، كيف نحصل على حالة النظام في وقت لاحق باستخدام حاسوب كمي؟ يمكن فهم الأسّي لمؤثر بسهولة أكبر من خلال متسلسلة تايلور الخاصة به:
بعض الأسّيات البسيطة جدًا، مثل ، يمكن تنفيذها بسهولة على الحواسيب الكمية باستخدام مجموعة مدمجة من البوابات الكمية. معظم الهاملتونيات المثيرة للاهتمام لن تحتوي على حد واحد فقط، بل ستحتوي على حدود كثيرة. لاحظ ما يحدث إذا كان :
عندما يكون و تبادليين، لدينا الحالة المألوفة (وهي صحيحة أيضًا للأعداد والمتغيرات و أدناه):
لكن عندما لا تكون المؤثرات تبادلية، لا يمكن إعادة ترتيب الحدود في متسلسلة تايلور للتبسيط بهذه الطريقة. وبالتالي، فإن التعبير عن الهاملتونيات المعقدة في شكل بوابات كمية يمثل تحديًا.
أحد الحلول هو اعتبار زمن صغير جدًا ، بحيث يهيمن الحد من الرتبة الأولى في تمدد تايلور. بناءً على هذا الافتراض:
بالطبع، قد نحتاج إلى تطوير حالتنا لفترة زمنية أطول. يتم ذلك باستخدام العديد من هذه الخطوات الزمنية الصغيرة. تُسمى هذه العملية Trotterization:
هنا هي الشريحة الزمنية (خطوة التطور) التي نختارها. ونتيجة لذلك، يتم إنشاء بوابة يتم تطبيقها مرة. تؤدي خطوة زمنية أصغر إلى تقريب أكثر دقة. ومع ذلك، يؤدي هذا أيضًا إ لى دوائر أعمق مما يؤدي عمليًا إلى تراكم أكبر للأخطاء (وهو مصدر قلق غير قابل للإهمال على الأجهزة الكمية في المدى القريب).
سندرس اليوم التطور الزمني لـ نموذج Ising على شبكات خطية مكونة من و موقعًا. تتكون هذه الشبكات من مصفوفة من اللفات المغزلية التي تتفاعل فقط مع جيرانها الأقرب. يمكن أن يكون لهذه اللفات اتجاهان: و ، واللذان يقابلان مغنطة و على التوالي.
حيث يصف طاقة التفاعل، و مقدار الحقل الخارجي (في الاتجاه x أعلاه، لكننا سنعدل هذا). لنكتب هذا التعبير باستخدام مصفوفات Pauli، مع الأخذ بعين الاعتبار أن الحقل الخارجي له زاوية بالنسبة للاتجاه العرضي:
هذا الهاملتوني مفيد لأنه يسمح لنا بدراسة تأثيرات الحقل الخارجي بسهولة. في الأساس الحسابي، سيتم ترميز النظام كما يلي:
| الحالة الكمية | تمثيل اللف المغزلي |
|---|---|
سنبدأ بدراسة التطور الزمني لمثل هذا النظام الكمي. وبشكل أكثر تحديدًا، سنقوم بتصور التطور الزمني لخصائص معينة للنظام مثل المغنطة.
# Added by doQumentation — required packages for this notebook
!pip install -q matplotlib numpy qiskit qiskit-aer qiskit-ibm-runtime
# Check the version of Qiskit
import qiskit
qiskit.__version__
'2.0.2'
# Import the qiskit library
import numpy as np
import warnings
from qiskit import QuantumCircuit, QuantumRegister
from qiskit.circuit.library import PauliEvolutionGate
from qiskit.quantum_info import SparsePauliOp
from qiskit.synthesis import LieTrotter
from qiskit.transpiler.preset_passmanagers import generate_preset_pass_manager
from qiskit_aer import AerSimulator
from qiskit_ibm_runtime import QiskitRuntimeService, Estimator
warnings.filterwarnings("ignore")