סימולציה של הטבע
צפו בוידאו של אוליביה ליינס על סימולציה של הטבע עם מחשבים קוונטיים, או פתחו את הוידאו בחלון נפרד בYouTube.
שיעור זה משתמש בתוכן מהמדריך הבא:
מדריך להפחתת שגיאות בקנה מידה utility עם הגברת שגיאה הסתברותית
מבוא
אחד היישומים המרתקים ביותר של מחשבים קוונטיים הוא יכולתם לסמלץ תופעות טבעיות. בשיעור זה נחקור כיצד מחשבים קוונטיים משמשים לפתרון בעיות דינמיקה קוונטית — ובמיוחד כיצד הם עוזרים לנו להבין את האבולוציה בזמן של מערכת קוונטית.
ראשית, נסתכל בצורה רחבה על השלבים הכלליים הכרוכים בביצוע סימולציות אלו. לאחר מכן, נבחן דוגמה קונקרטית: הניסוי שהציגה IBM ב-2023, שהדגים את הרעיון של quantum utility. ניסוי זה מהווה מקרה בוחן מצוין להבנת השלבים המעשיים והמשמעויות של סימולציית דינמיקה קוונטית עם חומרה קוונטית אמיתית. בסוף, תהיה לכם תמונה ברורה יותר כיצד חוקרים מתמודדים עם האתגרים האלו ומדוע סימולציה קוונטית מבטיחה כל כך להעמיק את הבנתנו את העולם הטבעי.
ריצ'רד פיינמן נשא הרצאה רבת השפעה בקלטק ב-1959. הכותרת המפורסמת שלה הייתה "There's Plenty of Room at the Bottom," ברמז שובב לאפשרויות הרחבות שטרם נחקרו בסקלה המיקרוסקופית. פיינמן טען שחלק גדול מהפיזיקה ברמה האטומית ותת-האט ומית טרם התגלה.
החשיבות של ההרצאה גדלה בשנות ה-80 עם התקדמות הטכנולוגיה. בתקופה זו, פיינמן חזר לרעיונות אלו בהרצאה חשובה נוספת בקלטק, שבה הציג מאמר בשם "Simulating Nature with Computers." שם הוא שאל שאלה נועזת: האם ניתן להשתמש במחשבים לביצוע סימולציות מדויקות שמשחזרות את התנהגות הטבע ברמה הקוונטית? פיינמן הציע שבמקום להסתמך על קירובים גסים לדגום תהליכים אטומיים, נוכל להשתמש במחשבים שמנצלים את חוקי מכניקת הקוואנטים עצמם — לא רק לדגם את הטבע, אלא לחקות אותו.
זהו סוג הסימולציה הפיזיקלית שנבחן לאורך שיעור זה.
נזכור את גרפיק הציר הזמני שהוצג בפרק קודם. בקצה אחד של הספקטרום רואים בעיות שקל לפתור ואינן דורשות את המהירות המשופרת שמחשוב קוונטי עשוי להביא.
בקצה הנגדי נמצאות בעיות מאתגרות ביותר הדורשות מכונות קוונטיות עמידות לחלוטין בפני תקלות — טכנולוגיה שעדיין אינה זמינה. למרבה המזל, מאמינים שבעיות סימולציה רבות נופלות איפשהו באמצע ציר הזמן הזה, בטווח שבו מחשבים קוונטיים של ימינו כבר יכולים להיות מיושמים ביעילות. ישנן סיבות רבות להתרגשות ועניין בסיכוי זה, שכן סימולציה של הטבע מהווה את הבסיס למגוון רחב של יישומים מבטיחים.
המידע הבא מכסה את תהליך העבודה הכללי בסימולציות טבע ולאחר מכן מקרה ספציפי של תהליך העבודה לשחזור תוצאות ממחקר ידוע.
תהליך עבודה כללי
לפני שמישהו יכול להחיל מחשוב קוונטי על תחומים מרתקים אלו, חשוב להבין תחילה את השלבים הבסיסיים בתהליך עבודה טיפוסי של סימולציה:
- זיהוי ההמילטוניאן של המערכת
- קידוד המילטוניאן
- הכנת המצב
- אבולוציה בזמן של המצב
- אופטימיזציה של Circuit
- הרצת Circuit
- עיבוד לאחר
התהליך מתחיל בזיהוי מערכת קוונטית של עניין. זה עוזר לקבוע את ההמילטוניאן השולט על האבולוציה בזמן שלה, וכן תיאור משמעותי של תכונותיה ההתחלתיות, כלומר המצב שלה. לאחר מכן, עליכם לבחור שיטה מתאימה לממש את האבולוציה בזמן של מצב זה. שימו לב שארבעת השלבים הראשונים בתהליך עבודה זה הם כולם חלק משלב ה-Mapping במסגרת הדפוסים של Qiskit.
לאחר הגדרת Circuit האבולוציה בזמ ן, השלבים הבאים כוללים ביצוע הניסוי בפועל. זה כולל בדרך כלל אופטימיזציה של Circuit הקוונטי המממש את אלגוריתם האבולוציה בזמן, הרצת Circuit על חומרה קוונטית ועיבוד תוצאות לאחר. אלו זהים לשלושת השלבים האחרונים במסגרת הדפוסים של Qiskit.
לאחר מכן, נדון במשמעות השלבים האלה לפני שנמשיך לקידוד.
1. זיהוי ההמילטוניאן של המערכת
השלב החיוני הראשון בביצוע ניסוי סימולציה הוא לזהות את ההמילטוניאן המתאר את המערכת. במקרים רבים, ההמילטוניאן מבוסס היטב. אך לעיתים קרובות אנחנו בונים אותו על ידי סכימה של תרומות האנרגיה מחלקים קטנים יותר של המערכת. זה מבוטא בדרך כלל כסכום של איברים:
כאשר כל איבר פועל על אחד מתוך תת-מערכות מקומיות (כמו חלקיק בודד או קבוצה קטנה של חלקיקים) של ההמילטוניאן הכולל . במקרה של חלקיקים אלמנטריים שאי-אפשר להבדיל ביניהם, חשוב לקבוע האם המערכת כוללת פרמיונים או בוזונים, כאשר פרמיונים מציתים את עקרון האי-כלה של פאולי, כלומר שני פרמיונים זהים אינם יכולים לתפוס את אותם מצבים קוונטיים כמו אלקטרונים. בניגוד לפרמיונים, בוזונים מרובים יכולים להתקיים באותו מצב קוונטי, והבדל זה משפיע על הסטטיסטיקה של המערכת וכיצד יש לדגם אותה.
בפועל, אנשים מתעניינים לעיתים קרובות במערכות פיזיקליות שבהן ניתן להבדיל בין המרכיבים, כמו ספינים על סריג.
מערכת זו מורכבת מספיני דיפול מגנטי הסדורים על סריג, הנחשבים לחלקיקים ניתנים להבחנה על ידי ספירת הכתובת שלהם. מערכת זו מתוארת על ידי מודל איזינג בשדה רוחבי, וההמילטוניאן שלה בנוי מסכום של שני חלקים:
כאשר האיבר הראשון מייצג את אנרגיית האינטראקציה בין ספינים שכנים. כאן מציין שאנו סוכמים על כל זוגות הספינים המחוברים ישירות על הסריג, ו- הם מטריצות פאולי-Z המייצגות את מצב הספינים באתר ו-, ו- הוא קבוע הצימוד, המגדיר את עוצמת האינטראקציה. האיבר השני מייצג את השפעת שדה מגנטי חיצוני המופעל על פני המערכת כולה. כאן הוא מטריצת פאולי-X הפועלת על הספין הבודד באתר , ו- מציין את עוצמת השדה החיצוני הזה.
2. קידוד המילטוניאן
השלב הבא הוא לתרגם את ההמילטוניאן לצורה שמחשב קוונטי יכול לעבד, מה שאנו קוראים קידוד. תהליך קידוד זה תלוי במידה רבה בסוג החלקיקים במערכות: ניתנים להבחנה או לא ניתנים להבחנה, ופרמיון או בוזון, אם החלקיקים אינם ניתנים להבחנה.
אם יש לכם מערכת עם חלקיקים ניתנים להבחנה, כמו ספיני קבועים על סריג, שבחנו בפשטות לעיל, ההמילטוניאן לעיתים קרובות כבר כתוב בשפה תואמת לקיוביטים. אופרטור פאולי-Z, למשל, מתאר באופן טבעי את מצב ספין למעלה או למטה, ואין צורך בקידוד מיוחד.
בעת סימולציה של חלקיקים לא ניתנים להבחנה של פרמיונים או בוזונים, נדרש להחיל טרנספורמציית קידוד. חלקיקים אלה משמשים לתיאור במסגרת מתמטית מיוחדת הנקראת second quantization, המעקבת אחרי מספר האוכלוסייה של כל מצב קוונטי על ידי הכנסת אופרטורי creation ו-annihilation, כאשר אופרטור היצירה מוסיף חלקיק אחד למצב בעוד אופרטור ההשמדה מסיר חלקיק אחד ממצב . בהתבסס על מסגרת הקוואנטיזציה השנייה הזו, הפרמיון ניתן לטרנספורמציה על ידי Bravyi-Kitaev ו-Jordan-Wigner. טרנספורמציית Jordan-Wigner מגדירה את אופרטור היצירה הפרמיוני
שממלא את המצב הקוונטי ה- בפרמיון ואת אופרטור ההשמדה הפרמיוני שמרוקן פרמיון מהמצבים ה-. ניתן למצוא פרטים נוספים על טרנספורמציית Jordan-Wigner זו בQuantum Computing in Practice, פרק 5 - Mapping. באופן דומה, גם בוזונים דורשים שיטות קידוד משלהם, כמו טרנספורמציית Holstein-Primakoff, כדי להיות מיוצגים על ידי קיוביטים.
בסופו של דבר, בין אם הדרך ישירה ובין אם היא דורשת תרגום, המטרה זהה: לבטא את ההמילטוניאן של המערכת בצורת אופרטורי ספין פאולי שמחשב קוונטי יכול להבין ולבצע.
3. הכנת המצב
לאחר קידוד ההמילטוניאן הרצוי לתוך מערכת ה-Gate של המחשב הקוונטי, השלב החשוב הבא הוא לבחור מצב קוונטי התחלתי מתאים להתחלת הסימולציה. בחירת המצב ההתחלתי משפיעה לא רק על ההתכנסות של אלגוריתמים וריאציוניים כמו Variational Quantum Eigensolver (VQE) אלא גם על הדיוק והיעילות של אבולוציית הזמן ודגימה. בעיקרו של דבר, המצב ההתחלתי משמש כנקודת ההתחלה לחישוב, ומניח את הבסיס לחילוץ ערכים נצפים שימושיים מהמערכת הקוונטית המדוגמת. באופן אידיאלי, מצב זה צריך לייצג תצורה פיזיקלית משמעותית של המערכת הנחקרת.
עבור סימולציות רבות בכימיה קוונטית, מצב Hartree-Fock יכול להיות נקודת פתיחה טובה. בשפת הקוואנטיזציה השנייה, מצב Hartree-Fock () נוצר על ידי החלת אופרטורי יצירה () עבור כל אחד מהאורביטלים בעלי האנרגיה הנמוכה ביותר על מצב הריק(), מצב ללא אלקטרונים.
בנוסף, ansatz שהכנתו קלה עם חפיפה משמעותית למצב היסוד האמיתי יכולה לשמש כמצב התחלתי טוב לבעיות כימיה, כמו מציאת אנרגיית מצב היסוד.
באופן כללי יותר, נוכל לכתוב מצב שרירותי של קיוביטים כסופרפוזיציה של מצבי בסיס חישובי עם מקדמים , המקיימים תנאי נרמול. הכנת מצב כזה ניתנת לגישה כללית על ידי החלת אופרטור ספציפי על המצב ההתחלתי, שהוא בדרך כלל מצב הבסיס הסטנדרטי האפס לפי מוסכמה.
אולם, תהליך זה דורש לעיתים קרובות מספר אקספוננציאלי של Gate-ים מסוג CNOT, מה שהופך אותו לכלל אינטנסיבי משאבים. אנחנו מתמקדים לעיתים קרובות בהכנת מצבים התחלתיים שדרישות המשאבים לביצועם מוצנעות יותר. מסיבה זו, אנחנו מתמקדים לעיתים קרובות בהכנת מצבים התחלתיים פחות מורכבים. בחירה נפוצה ומעשית היא מצב מכפלה, שבו קיוביטים אינם מסובכים, ניתן להכנה תוך שימוש בפעולות קיוביט בודד בלבד, מה שמקטין משמעותית את דרישות המשאבים של הכנת המצב ואת המורכבות. 4. אבולוציה בזמן של המצב
עכשיו כשהמצב ההתחלתי הוגדר, נוכל לבסוף להתחיל את הסימולציה עצמה — לבחון כיצד המצב