مقدمة
يمكنك اختبار برامجك الكمومية بتشغيلها على أجهزة محاكاة وفحص أدائها في ظل نماذج ضوضاء واقعية. يتيح لك هذا تصحيح أخطائها قبل إرسالها إلى وحدة المعالجة الكمومية (QPU).
يمكن الاستعانة بمحاكيات الكم لتطوير البرامج واختبارها قبل ضبطها الدقيق وإرسالها إلى الأجهزة الكمومية. تؤدي المحاكيات المحلية هذه المهمة بكفاءة وأداء عاليين.
نظرًا لأن تكلفة محاكاة الدوائر الكمومية كلاسيكيًا تتضاعف بشكل أسي مع زيادة عدد الـ qubit، فإن الدوائر التي تتجاوز نحو 50 qubit لا يمكن تشغيلها عمومًا على المحاكيات. في مثل هذه الحالات، يمكنك:
- اختبار نسخ مصغّرة من الدوائر التي يمكن محاكاتها كلاسيكيًا.
- تعديل الدوائر لتصبح قابلة للمحاكاة الكلاسيكية، وإن كانت أقل دقة.
تُعدّ دوائر Stabilizer، المعروفة أيضًا بدوائر Clifford، أداةً مفيدة لتحقيق هذا الهدف الأخير. إذ تمثّل فئة محدودة من الدوائر الكمومية التي يمكن محاكاتها كلاسيكيًا بكفاءة. ويستطيع المحاكيات المتخصصة محاكاة دوائر Stabilizer بآلاف الـ qubit بسهولة. راجع المحاكاة الفعّالة لدوائر Stabilizer مع Qiskit Aer primitives لمزيد من المعلومات.
للدوائر الكمومية العامة، تتوفر الأدوات التالية لاختبار برامجك الكمومية وتصحيحها:
- للمحاكاة الدقيقة للدوائر الكمومية الصغيرة، يمكنك استخدام reference primitives المضمّنة في Qiskit. راجع المحاكاة الدقيقة مع Qiskit primitives.
- للحصول على محاكاة أعلى أداءً تستطيع التعامل مع دوائر أكبر، أو لدمج نماذج الضوضاء في المحاكاة، استخدم Qiskit Aer، وهو مشروع ضمن Qiskit Ecosystem. راجع المحاكاة الدقيقة والضوضائية مع Qiskit Aer primitives.
- لبناء نماذج ضوضاء مخصصة، استخدم وحدة
noiseفي Qiskit Aer. راجع بناء نماذج الضوضاء.
اعتبارات الأجهزة
تؤثر عوامل عدة في مقدار الذاكرة التي تحتاجها محاكاة الكم، لذا لا توجد متطلبات أجهزة دقيقة للمحاكاة، لكن ثمة إرشادات عامة يمكنك اتباعها.
- المتطلب الوحيد لتشغيل Qiskit هو بيئة Python تعمل بشكل صحيح. للتفاصيل، راجع قسم دعم أنظمة التشغيل.
- نظرًا لأن متطلبات محاكاة الدوائر الكمومية تتزايد بشكل أسي مع عدد الـ qubit، فإن الأجهزة المتاحة تحدد الحد الأقصى لعدد الـ qubit القابلة للمحاكاة. على سبيل المثال، نظام بذاكرة وصول عشوائي (RAM) سعتها 4 جيجابايت يستطيع محاكاة نحو 27 qubit.
- زيادة الذاكرة أو نقصانها لن يؤثر على دقة النتائج (بافتراض إعادة النتائج)، وإن كانت الذاكرة الأكبر قد تُعيد النتائج بشكل أسرع أو تتيح محاكاة عدد أكبر من الـ qubit.
- للاستفادة القصوى من أجهزتك، استخدم محاكاة دوائر Stabilizer (Clifford) المحلية متى أمكن. راجع محاكاة Clifford مع وضع الاختبار المحلي في Qiskit Runtime أو المحاكاة الفعّالة لدوائر Stabilizer مع Qiskit Aer primitives للاطلاع على أمثلة.
- يمكنك زيادة قدرتك الحاسوبية باتباع هذه التعليمات للتشغيل مع وحدات GPU متعددة أو عُقد متعددة أو كليهما.
الخطوات التالية
- تعرّف على المحاكاة الدقيقة والضوضائية مع Qiskit Aer primitives.
- راجع وثائق تصوير الدوائر.
- راجع وثائق تصوير توقيت الدوائر.
- تصحيح مهام Qiskit Runtime.