Search
  • Noa Feldman

פוסט 13 - מחשב קוונטי

*חדשים כאן? ברוכים הבאים! קוראים לי נעה ואני דוקטורנטית לפיזיקה באוניברסיטת תל אביב. אני כותבת כאן על קוונטים לקהל הרחב. לא צריך רקע במתמטיקה או בפיזיקה, אבל כן מומלץ מאד לקרוא את הפוסט הראשון בבלוג לפני שקוראים את הפוסט הזה. מקווה שתהנו!


לאחרונה, להרגשתי, מחשבים קוונטיים נמצאים בכל מקום - חברות ענק כמו גוגל ואמאזון משקיעות בפיתוח מחשב קוונטי, עיתונים כלכליים מעדכנים על חברות חדשות ומדדים חדשים להשקעה, הממשלה מקימה קרן להשקעה במחשוב קוונטי... המון באזז בשביל טכנולוגיה שעוד לא כל כך קיימת (כלומר, היא קיימת, כמו שנראה בהמשך, אבל עדיין בחיתולים)! יכול להיות שאני טועה, ושאני שומעת על הנושא כל כך הרבה בגלל שהוא קשור קשר הדוק לתחום המחקר שלי. אבל סמכו עלי - אם עוד לא שמעתם על מחשבים קוונטיים, אתם תשמעו עליהם בקרוב. וכשזה יקרה, אני מאמינה שתרצו להבין למה הכוונה. זהו פוסט שני בסדרה שבה ננסה להבין מה זה בעצם אומר, מחשב קוונטי, ולמה הוא שונה מפיתוחים טכנולוגיים אחרים בתחום המחשבים.


אז מה זה מחשב קוונטי? כדי להבין מה זה מחשב קוונטי, כדאי להבין קודם כל מה זה מחשב קלאסי, כלומר, מה זה מחשב רגיל. יש לנו תמונה לא רעה בראש - קופסה שבתוכה מעבד עם צ'יפ שעליו מעגלים חשמליים, רכיב זכרון, מאווררים וחוטי חשמל, שיש לה מסך שמציג לנו יישומים. כל היישומים והעטיפות של המחשבים היומיומיים שלנו הם תוספת נחמדה, אבל המהות הבסיסית שלהם עדיין טמונה ברכיב העיבוד שלהם, שמורכב ממעגלים חשמליים ומסוגל לבצע פעולות בסיסיות כמו חיבור או כפל. לצורך הדיון שלנו, נצטרך להשתמש בהגדרה בסיסית הרבה יותר עבור מחשב - מכונה כלשהי, שהרכבה הפנימי יכול להיות כל דבר, והיא מבצעת חישובים. המכונה הזו מוגבלת על ידי חוקי הפיזיקה - למשל, הרכיבים שלה לא יכולים להיות בשני מקומות בבת אחת או לקפוץ בין שתי נקודות מרוחקות בלי לעבור קודם בנקודות שביניהן.


יחידת העיבוד של המחשב כתובה בשפת המחשב - השפה הבינארית, שיש בה רק שתי אותיות - 0 ו - 1. האותיות האלו מיוצגות, במחשבים סטנדרטיים, על ידי מעגלים חשמליים, שאין בהם זרם (0) או שיש בהם זרם (1). עקרונית, האותיות היו יכולות להיות בנויות בדרך אחרת - אטומי מימן, מולקולות דנ"א, חרוזים על חוט - זה לא חשוב. העיקר שיהיו ליחידות המידע של המחשב שני מצבים מובחנים (או יותר), שקל להבדיל ביניהם, קל לשנות אותם אם נרצה וקל לשמור עליהם ללא שינוי אם נרצה. יחידות המידע האלו, שמייצגים את האותיות 0 ו - 1, נקראות ביטים. כל פעולות המחשב מבוצעות על ידי ייצוג של מילים או מספרים כלשהם באמצעות הביטים, ומניפולציות של המילים והמספרים האלו.


עכשיו נוכל להגדיר מה זה מחשב קוונטי - מחשב שיחידות המידע שלו, הביטים שלו, מורכבים ממערכת כלשהי שמושפעת מאד מאפקטים קוונטיים. כלומר, שהיכולת שלה להיות בסופרפוזציה היא משמעותית ולא זניחה, וניתן לייצר בה שזירה קוונטית. לביטים קוונטיים כאלו קוראים קיוביטים. מערכת כזו נתונה מוגבלת גם היא על ידי חוקי הטבע, אבל כמו שראינו, במכניקת הקוונטים חוקי הטבע הם קצת אחרים מהחוקים ששולטים בתהנהגות של רכיבים קלאסיים, כמו שיש במחשבים רגילים.


אז בשביל מה מחשב כזה יכול להיות שימושי? התשובה הטבעית ביותר לשאלה הזו היא לפתרון של בעיות קוונטיות - כלומר הדמייה של מערכות קוונטיות, כמו שכתבתי בפוסט הקודם. אבל באופן מפתיע, מתברר שיש גם משימות חישוביות שבמבט ראשון נראות כלל לא קשורות למכניקת הקוונטים, ובכל זאת צפויות להיות קלות בהרבה למחשב קוונטי מאשר למחשב רגיל. על דוגמה אחת, האלגוריתם של שור לשבירת צפנים, אפשר לקרוא בפוסט שכתבתי ל"מדע גדול, בקטנה". בפוסט הזה אמשיך קצת את מה שכתבתי שם.


לפני שנתחיל, ניזכר בתכונה חשובה של מערכות קוונטיות - ההתפלגות של המצב שלהם, כלומר, הצורה שבה כל תכונה שלהם 'מרוחה' על פני מרחב האפשרויות, מתנהגת כמו גל. כלומר, המיקום של חלקיקים מתנהג כמו גל על פני המרחב שבו החלקיק נמצא, אבל גם האנרגיה של החלקיקים מתנהגת כמו גל ביחס למרחב האנרגיות האפשריות, המהירות מתנהגת כמו גם ביחס למרחב המהירויות האפשריות, וכך גם כל התכונות האחרות.


(מי שזוכר, ההסתברות היא בעצם פונקציית הגל בריבוע, וכך היא תמיד חיובית. אבל זו לא נקודה שקריטי להתעכב עליה כדי להבין את הפוסט הזה).


אנחנו יכולים להיזכר בניסוי שני הסדקים: נשלח חלקיקים דרך מחיצה בעלת שני סדקים. במקרה אחד, נמדוד דרך איזה סדק עברו את החלקיקים - כך שהם יקרסו כבר במחיצה, ולמעשה יתנהגו באופן קלאסי - כלומר, כמו חלקיקים שאי-הודאות במיקום שלהם היא קטנה מאד. במקרה השני לא נמדוד דרך איזה סדק עברו החלקיקים, כך שהאפקטים הקוונטיים, כלומר, האפקטים הגליים שלהם, יהיו מאד משמעותיים. נציב מסך אחרי המחיצה, ונבדוק כמה חלקיקים הגיעו לכל נקודה במסך. התוצאות שיתקבלו ייראו כך:





אפשר לראות שכשהאפקטים הקוונטיים בפעולה, התבנית שמתקבלת מתאימה לעוצמה של גל. כל העניין הזה מוסבר באריכות בפוסט על פונקציית הגל. מה שניקח מכאן הפעם הוא שמערכות או מכשירים קוונטיים צפויים להיות טובים מאד בפעולות שקשורות לתכונות 'גליות' של הבעיות החישוביות.


ניצול של התכונות הטבעיות של מערכות הוא כלי חשוב בביצוע חישובים. לפעמים אנחנו יודעים להגדיר בעיה, ומה בדיוק צריך לעשות כדי לפתור אותה, אבל בצורה שתצריך כל כך הרבה חישובים כך שפשוט בלתי אפשרי לבצע אותם. למשל, נניח שאנחנו רוצים לגרום למחשב ללמוד לדבר עברית. אנחנו יכולים לתת למחשב ללמוד את כל המילים במילון, להגדיר את כל חוקי הדקדוק והפיסוק, להגדיר את כל היוצאים מן הכלל לחוקי הדקדוק, להגדיר את כל מילות הסלנג, להגדיר את השינויים שמגדירה האקדמיה ללשון... בקיצור, כמות אדירה של תנאים והגדרות. וגם אז, זה לא יספיק - כי נצטרך להסביר למחשב מה הקשר בין כל מילה ומילה, מה המשמעות של משפטים שהם תקינים תחבירית ובאיזה הקשר כל אחד מהם יכול לעלות. זו כבר פשוט כמות אינסופית של הגדרות, ואין סיכוי שנצליח להפוך את כולן לפקודות עבור המחשב. ובכל זאת - המחשבים מדברים עברית טובה יותר בכל שנה - איך זה קורה?

הדרך שבה היכולת הזאת הושגה היא על ידי חיקוי של הטבע. כבר יש מכונה שלומדת שפות שצורה מצוינת - המוח שלנו. בצעד מבריק מצד מדעני מחשב, מגדירים באמצעות המחשב מבנה שמזכיר את מבנה הנוירונים שלנו במוח. לתוך המבנה הזה מזינים דוגמאות של משפטים, שיחות וטקסטים, וכך הוא לומד לדבר. על ידי חיקוי של הטבע, אנחנו מצליחים לבצע את הפעולות שהטבע מבצע.



כך גם עם קוונטים וגלים. אם לבעיה שלנו יש תכונות שדומות לגל, כך נוכל לצפות שבאופן טבעי, יהיה קל יותר לפתור אותה באמצעות מחשב שיש לו תכונות קוונטיות, כלומר, תכונות גליות. גלים, כך מסתבר, משמעותיים בהרבה מאד סוגים של בעיות - לא רק בהבנה של מערכות קוונטיות אלא גם במערכות שאין בהם אפקטים קוונטיים חזקים. למשל, מערכות שיש בהן מחזוריות מתמטית או עיבוד אותות גליים. בפוסטים הבאים נעסוק בכמה משימות ספציפיות שיהיה, כנראה, ניתן לבצע באמצעות מחשב קוונטי.


לפני שנסיים, חשוב להגיד - העובדה שהכח של המחשב הקוונטי טמון בתכונות הגליות שלו זו סברה מקובלת יחסית, שמקובלת גם עלי. אבל האמת, מקור הכח של מחשבים קוונטיים הוא עדיין שאלה פתוחה. ההבדל המתמטי בין העולם הקוונטי עולם הקלאסי הוא חמקמק למדי, ואין עדיין הוכחה מסודרת לכך שנדרשת התנהגות גלית כדי להשיג יתרון על פני מחשבים קלאסיים (כלומר, התאבכות, כמו שראינו בפוסט על ניסוי שני הסדקים). כבר ראינו שלא רק התנהגות הדומה לגל מבדילה בין מערכות קוונטיות לקלאסיות, אלא גם מעבר בין בסיסים, ואפילו ראינו כיצד ניתן לנצל את עניין הבסיסים המוזר הזה כדי לנצח במשחקים. אז כנראה שחלק מהיתרון של מחשב קוונטי, או אולי אפילו כל היתרון, נמצא דווקא שם. המדע עדיין מחפש תשובות. יש למה לצפות...

0 views0 comments