מבוא
אפשר לבדוק תוכניות קוונטיות על ידי הרצתן על מכשירים מדומים ובחינת הביצועים שלהן תחת מודלי רעש ריאליסטיים. כך תוכל לאתר ולתקן בעיות לפני שתשלח אותן ליחידת עיבוד קוונטי (QPU).
סימולטורים קוונטיים יכולים לסייע בפיתוח ובבדיקה של תוכניות לפני כוונון עדין ושליחתן לחומרה קוונטית. סימולטורים מקומיים עושים זאת עם ביצועים ויעילות טובים.
מכיוון שעלות הסימולציה הקלאסית של מעגלים קוונטיים גדלה בצורה אקספוננציאלית עם מספר ה-Qubits, מעגלים הגדולים מ-50 Qubits בערך בדרך כלל אינם יכולים לרוץ על סימולטורים. עבור מעגלים כאלה, ניתן:
- לבדוק גרסאות קטנות יותר של המעגלים שניתן לדמות אותן קלאסית.
- לשנות את המעגלים כך שיהפכו לניתנים לסימולציה קלאסית, אם כי בדיוק נמוך יותר.
מעגלי Stabilizer, המוכרים גם כמעגלי Clifford, הם כלי שימושי להשגת המטרה השנייה. אלו הם מחלקה מוגבלת של מעגלים קוונטיים שניתן לדמות אותם ביעילות קלאסית. סימולטורים ייעודיים יכולים בקלות לדמות מעגלי Stabilizer עם אלפי Qubits. ראה סימולציה יעילה של מעגלי Stabilizer עם Qiskit Aer primitives למידע נוסף.
עבור מעגלים קוונטיים כלליים, הכלים הבאים זמינים לבדיקה ודיבאג של תוכניות קוונטיות:
- לסימולציה מדויקת של מעגלים קוונטיים קטנים, ניתן להשתמש ב-reference primitives הכלולים ב-Qiskit. ראה סימולציה מדויקת עם Qiskit primitives.
- לסימולציה בעלת ביצועים גבוהים יותר שיכולה לטפל במעגלים גדולים יותר, או לשלב מודלי רעש בסימולציה שלך, השתמש ב-Qiskit Aer, פרויקט שהוא חלק מ-Qiskit Ecosystem. ראה סימולציה מדויקת ורועשת עם Qiskit Aer primitives.
- לבניית מודלי רעש מותאמים אישית, השתמש במודול
noiseשל Qiskit Aer. ראה בניית מודלי רעש.
שיקולי חומרה
מספר גורמים משפיעים על כמות הזיכרון שנדרשת לסימולציה קוונטית, ולכן אין דרישות חומרה מדויקות לסימולציה, אך ישנן כמה הנחיות שניתן לפעול לפיהן.
- הדרישה היחידה להרצת Qiskit היא סביבת Python תקינה. לפרטים, ראה את הקטע תמיכה במערכות הפעלה.
- מכיוון שדרישות סימולציית מעגלים קוונטיים גדלות אקספוננציאלית עם מספר ה-Qubits, החומרה הזמינה מגבילה את מספר ה-Qubits שניתן לדמות. לדוגמה, מערכת עם 4GB RAM יכולה לדמות בערך 27 Qubits.
- זיכרון זמין רב יותר או פחות לא יגרום לתוצאות מדויקות יותר או פחות (בהנחה שהתוצאות מוחזרות), אם כי זיכרון רב יותר עשוי להחזיר תוצאות מהר יותר או לאפשר לדמות יותר Qubits.
- כדי להפיק את המרב מהחומרה שלך, השתמש בסימולציה מקומית של מעגלי Stabilizer (Clifford) כשאפשר. ראה סימולציית Clifford עם מצב בדיקה מקומי של Qiskit Runtime או סימולציה יעילה של מעגלי Stabilizer עם Qiskit Aer primitives לדוגמאות.
- ניתן להגביר את כוח החישוב על ידי ביצוע ההוראות האלה להרצה עם מספר GPUs, nodes, או שניהם.
הצעדים הבאים
- למד על סימולציה מדויקת ורועשת עם Qiskit Aer primitives.
- עיין בתיעוד ויזואליזציה של מעגלים.
- עיין בתיעוד ויזואליזציה של תזמון מעגלים.
- דיבאג של משימות Qiskit Runtime.