ארכיון פוסטים שפורסמו בחודש דצמבר 2009

חידת מעטפות

חמישי, 31 בדצמבר 2009

לכבוד סוף השנה, חידה: אתם נמצאים בחדר שבו נמצאות שתי מעטפות, כל אחת עם סכום כסף שנבחר באקראי (לדקדקנים - נבחר מתוך התפלגות כלשהי על המספרים הממשיים - לא ידוע לכם איזו התפלגות). אתם בוחרים את אחת המעטפות, פותחים אותה ורואים את הסכום שבפנים. כעת מאתגרים אתכם - החליטו אם להחליף או לא. המטרה: למצוא שיטת החלטה שבה מובטח שבהסתברות של יותר מ-\frac{1}{2} תסיימו עם הסכום הגדול יותר מבין השניים. מה עושים?

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

למעשה, שיטת הפעולה של “תחליף תמיד” בבירור לא תיתן הסתברות גבוהה מחצי; אם מלכתחילה בחרנו את המעטפה בעלת הסכום הגבוה יותר (בהסתברות \frac{1}{2}), אז נפסיד, ואחרת (גם כן בהסתברות \frac{1}{2}) ננצח. אם כן, יש לנו כאן חידה ששונה מהותית מפרדוקס המעטפות - ועל פניו לא ברור אם היא פתירה בכלל. קחו עכשיו מספר דקות וחשבו על החידה - לאחר מכן אנסה להציג שני פתרונות שונים עבורה.

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

ובכן, כל מה שידוע לי הוא הערך שנמצא במעטפה שפתחתי, אותו אסמן ב-x. כלל ההחלטה שלי ניתן יהיה לתיאור באופן כללי בתור פונקציה f\left(x\right) שלכל x מתאימה את ההסתברות שאבחר לא להחליף. עד כאן פורמליסטיקה, וכעת נפנה לפתרון כלשהו. האינטואיציה הראשונה שלי בתרגיל הזה היא שככל ש-x גדול יותר, כך אני אתפתה פחות להחליף אותו. הדרך הפורמלית לבצע משהו כזה היא לבחור בתור f פונקציה שעולה תמיד (כלומר, אם x<y אז f\left(x\right)<f\left(y\right)) ועם זאת ערכיה נמצאים כל הזמן בתוך התחום \left[0,1\right] (אחרת היא לא מייצגת הסתברות). לא קשה לבנות פונקציות כאלו - למשל באמצעות מניפולציה על הפונקציה \arctan (הפונקציה ההופכית לטנגנס) - זוהי פונקציה עולה ממש שערכיה נעים בתחום \left[-\pi/2,\pi/2\right], כך שרק צריך “לכווץ” אותה מעט ו”להרים” אותה מעט כדי לקבל f כמו שרציתי. ברשותכם אפסח על הפרטים הטכניים הללו.

ובכן, מסתבר ש-f שכזו עובדת מצויין. בואו נחשב את ההסתברות שאנצח, אם אני נעזר ב-f הזו. ההסתברות שאנצח היא ההסתברות שאבחר בהתחלה את a (בהסתברות חצי) ואז בגלל f אבחר להחליף (בהסתברות 1-f\left(a\right)), ועוד ההסתברות שאבחר בהתחלה את b (שוב, בהסתברות חצי) ואז בגלל f אבחר דווקא לא להחליף (בהסתברות f\left(b\right)). מה ההסתברות שלי לנצח? \frac{1}{2}\cdot\left(1-f\left(a\right)\right)+\frac{1}{2}\cdot f\left(b\right)=\frac{1}{2}\left(1+f\left(b\right)-f\left(a\right)\right)=\frac{1}{2}+\frac{1}{2}\left(f\left(b\right)-f\left(a\right)\right), והסתברות זו גדולה ממש מחצי כאשר a<b, כי אז f\left(a\right)<f\left(b\right), כלומר f\left(b\right)-f\left(a\right)>0 (אם a=b אז אני מנצח תמיד, כי לא משנה מה אעשה - אסיים עם הסכום הגדול מבין השניים, שבמקרה זה הם שווים).

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

מה קורה כאן? צריך להבדיל בין שלושה מקרים אפשריים, לפי הזהות של המספר שהגרלתי, שאסמנו y. אם y\le a<b, אז לא משנה מה נמצא במעטפה שפתחתי, אני לא הולך להחליף; לכן ההסתברות שלי להצליח היא בדיוק חצי. באופן דומה, אם a<b<y אז לא משנה מה נמצא במעטפה שפתחתי, כן אחליף, ולכן שוב ההסתברות שלי להצליח היא חצי. האקשן מתחיל כאשר a<y\le b; במקרה זה תמיד אנצח. לא משנה אם ראיתי את a או b. אם ראיתי את a, אז ה-y שהגרלתי גדול יותר ממנו, ולכן אחליף ואנצח; ואם ראיתי את b אז ה-y שלי קטן יותר ממנו ולכן לא אחליף ואנצח.

הבה ונעשה כעת את החישוב הפורמלי. אנחנו צריכים להבדיל בין ההסתברות של שלושה מקרים: P\left(y\le a\right),P\left(y>b\right),P\left(a<y\le b\right). אלו שלושת המקרים האפשריים היחידים, ולכן סכום ההסתברויות שלהם הוא 1, וכדי לחשב את ההסתברות שאנצח צריך לכפול כל אחד מהם בהסתברות לנצח בהניתן שהוא קרה. נקבל את הסכום הבא:

\begin{eqnarray*}<br />
\frac{1}{2}P\left(y\le a\right)+\frac{1}{2}P\left(y>b\right)+P\left(a<y\le b\right) & =\\<br />
& = & \frac{1}{2}\left(P\left(y\le a\right)+P\left(y>b\right)+P\left(a<y\le b\right)\right)+\frac{1}{2}P\left(a<y\le b\right)\\<br />
& = & \frac{1}{2}+\frac{1}{2}P\left(a<y\le b\right)\end{eqnarray*}

אם כן, שוב קיבלתי הסתברות הצלחה של “חצי ועוד קצת”. כל מה שנדרש ממני הוא שההתפלגות שבה אני בוחר את y תהיה כזו שבה לכל a<b, ההסתברות שיתקיים a<y\le b תהיה חיובית. התפלגות נורמלית היא הדוגמה הקלאסית להתפלגות שבה זה מתקיים, אך כאמור - כל התפלגות עם פונקצית צפיפות הסתברות חיובית תמיד עובדת (ואין בעיה גם עם פונקציות מוגבלות יותר, עם נקודות אי רציפות סליקות - אבל למה לחפור בכך?)

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

איך לחזות את מזג האוויר בלי להסתכל בשמיים? (משפט המינימקס)

שבת, 19 בדצמבר 2009

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

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

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

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

זה אחד מהמקומות שבהם כתיבה פורמלית מסייעת להבין על מה מדובר. אם x מסמן אסטרטגיה כלשהי של אליס מתוך קבוצת אסטרטגיות X ו-y אסטרטגיה כלשהי של בוב מתוך קבוצת אסטרטגיות Y, אז \pi:X\times Y\to\mathbb{R} היא “פונקצית הרווח” של אליס: \pi\left(x,y\right) הוא הרווח של אליס מהמשחק אם היא נוקטת ב-x ובוב נוקט ב-y (וכזכור, מספר זה מתאר גם את ההפסד של בוב. שיכול להיות גם הרווח של בוב. ואז הוא ההפסד של אליס. לא מבלבל בכלל).

ניקח לדוגמה את משחק הזוג-או-פרט שדיברתי עליו לא מזמן. במשחק הזה האסטרטגיה היא בסך הכל מספר האצבעות שמוציאים. אם נניח שמוציאים בין 0 ל-5 אצבעות, שניצחון במשחק מסומן על ידי רווח בגודל 1, ושאליס היא השחקן של “זוג”, אז \pi היא פונקציה \pi:\left\{ 0,1,\dots,5\right\} ^{2}\to\mathbb{R} שמקיימת למשל \pi\left(2,2\right)=1 ו-\pi\left(3,2\right)=-1. כשמדברים על שחמט הסיטואציה מורכבת הרבה יותר, מבחינת איך שכל אסטרטגיה נראית, כי כל אסטרטגיה מכילה הוראות מהצורה “אם הגעת לפוזיציה כזו של הלוח, פעל כך…” (וזה אפילו מורכב עוד יותר, כי גם לאופן ההגעה לפוזיציה יש חשיבות, כי למשל טמון בו מידע מי כבר ביצע הצרחות, כמה מהלכים ללא תזוזת/הכאת רגלי בוצעו, וכדומה). עדיין, קבוצת הפלטים האפשריים של הפונקציה תהיה או 1, או מינוס 1, או 0 (שבא לציין תיקו), ומרגע שכל שחקן החליט מה האסטרטגיה שלו (לפני שהמשחק התחיל!), כל מה שנותר לעשות הוא לשבת ו”להריץ” את המשחק ולראות מה קרה כדי לחשב את \pi. אז אדגיש שוב - לא משנים אסטרטגיות “במהלך” המשחק, על בסיס מידע שצץ במהלך המשחק - האסטרטגיה מראש מתייחסת לכל מידע שעשוי לצוץ במהלך המשחק.

אם המשחק עצמו הוא סופי באופיו (משחק סופי של בחירות, ובכל שלב ניתן לבחור רק במספר סופי של אפשרויות) אז גם מספר האסטרטגיות האפשריות בו יהיה סופי. אני רוצה לדבר רק על הסיטואציה הזו, כי אם המשחק אינו סופי כל מה שאגיד הוא פשוט שגוי. השאלה שמעניינת אותנו כאן היא זו - בהינתן משחק, כמה אליס מסוגלת להרוויח בו ללא תלות במעשיו של בוב? הרי אליס אינה יכולה לדעת איזו אסטרטגיה בוב יבחר, ולהתחיל לנתח אילו אסטרטגיות “סביר” שהוא יבחר כבר יגרור אותנו לניתוחים מסובכים למדי - לכן הבעיה הראשונה שיש לפתור היא את שאלת הרווח-ללא-תלות-בבוב. אחרי שנגמור איתה אפשר יהיה לעבור לדברים מסובכים יותר (אך לא נזדקק להם כאן, ולכן לא אדבר עליהם).לכל אסטרטגיה x\in X שאליס נוקטת בה, יש לבוב מגוון אסטרטגיות y\in Y שהוא יכול לנקוט בהן. אחת מהאסטרטגיות הללו - נאמר, y_{0} - היא הגרועה ביותר מבחינת אליס, במובן זה שהרווח שאליס תקבל אם בוב ישחק את y_{0} (בהינתן שאליס שיחקה את x) הוא המינימלי: \pi\left(x,y_{0}\right)\le\pi\left(x,y\right) לכל y\in Y. מכיוון שלאליס אין שליטה על מעשיו של בוב ומכיוון שהיא רוצה לדבר על הרווח הגדול ביותר שהיא תוכל לקבל בלי תלות במעשיו של בוב, \pi\left(x,y_{0}\right) הוא בדיוק הרווח הזה. סימון קצת יותר פשוט לכל זה הוא \min_{y}\pi\left(x,y\right): המינימום על פני כל הערכים של \pi\left(x,y\right) כאשר אנחנו משאירים את x קבוע ומשנים את y.

אם כן, מה הרווח הגדול ביותר שאליס מסוגלת לקבל במשחק ללא תלות במעשיו של בוב? אם לכל x נקבע לנו ערך \min_{y}\pi\left(x,y\right) שאותו x מביא, אנחנו נרצה את ה-x שעבורו הרווח הזה מקסימלי - ואז נסמן את התוצאה כ-\max_{x}\min_{y}\pi\left(x,y\right).

מן העבר השני, המצב אצל בוב הפוך. מכיוון שהוא מעוניין להרוויח כמה שיותר במשחק, הוא מעוניין לקבל ערך קטן ככל האפשר של \pi\left(x,y\right). לכן הרווח האופטימלי של בוב הוא \min_{y}\max_{x}\pi\left(x,y\right). אם תצליחו להצדיק לעצמכם את הנוסחה הזו - כנראה שהבנתם את מה שהלך כאן עד כה.

מה המקסמין של אליס במשחק זוג או פרט? לכל x שלה קיים y של בוב כך ש-\pi\left(x,y\right)=-1, ולכן קל לראות שהערך הזה הוא מינוס 1. בדומה, הערך עבור בוב הוא 1. כלומר, אף אחד משני השחקנים לא מסוגל להבטיח לעצמו משהו שאיננו תבוסה מחפירה. זה מלמד אותנו שני דברים: ראשית, שתמיד מתקיים \min_{y}\max_{x}\pi\left(x,y\right)\le\max_{x}\min_{y}\pi\left(x,y\right) (נסו להוכיח זאת לעצמכם) ושנית - שבינתיים כל הסיפור עם המקסמין והמינמקס לא ממש שיפר משמעותית את מה שאפשר לומר על המשחק.

לכן השלב הבא הוא להכניס הסתברות לתמונה. עד כה דיברנו רק על אסטרטגיות “טהורות”, שחובה עלינו לבחור באחת מהן, וזהו. אבל למה, בעצם? האם מי שמשחק זוג או פרט לא מבצע הגרלה כלשהי כדי להחליט באיזו אסטרטגיה לנקוט, אפילו אם באופן בלתי מודע? האם שחקן שחמט משחק תמיד באותו האופן? במציאות כל אחד מאיתנו נוקט בתערובת של אסטרטגיות טהורות, כשהבחירה מה לעשות היא הסתברותית. אם כן, מבלי להיכנס יותר מדי לפרטים הטכניים, הרעיון הוא שאנחנו מרחיבים את מאגר האסטרטגיות שלנו, כך שכל אסטרטגיה כעת מייצגת ראשית כל הגרלה על פי התפלגות כלשהי של אחת מהאסטרטגיות ה”טהורות”, ואז משחק על פי האסטרטגיה שנבחרה. כדי לא לסבך את החיים עדיין אשתמש ב-x וב-X כדי לתאר אסטרטגיות “מעורבות” שכאלה. את מושג הרווח - \pi\left(x,y\right) - צריך גם כן לתקן קצת כדי שיתאר את הרווח שמתקבל בתוחלת (כלומר, מה יקרה בממוצע אם נשחק הרבה משחקים עם אותה אסטרטגיה מעורבת).

ועכשיו נכנס לתמונה משפט המינימקס: אם האסטרטגיות המותרות במשחק הן מעורבות, אז מתקיים \min_{y}\max_{x}\pi\left(x,y\right)=\max_{x}\min_{y}\pi\left(x,y\right). כלומר, אם אפשר להגריל אסטרטגיות, הדבר הטוב ביותר שאליס יכולה להבטיח לעצמה הוא בדיוק הדבר הטוב ביותר שבוב יכול להבטיח לעצמו. במשחק הזוג או פרט קל לראות שהדבר הזה הוא בדיוק 0 (שמשמעותו המעשית היא שכשמשחקים הרבה משחקים, בוב ואליס ינצחו בערך אותה כמות פעמים, אם שניהם משתמשים באסטרטגיה המעורבת האופטימלית שעליה דיברתי בפוסט המתאים).

אלא שיש עוד דרך להציג את המשפט - דרך מעט יותר מעניינת, לטעמי, וכזו ששופכת אור על עניין החזאים שלנו. לצורך כך, שאלה פשוטה: האם הטענה “לכל y קיים x כך שמתקיים P\left(x,y\right)” כש-P זו איזו שהיא תכונה של x,y (שמתקיימת או שאינה מתקיימת) גוררת את הטענה “קיים x כך שלכל y מתקיים P\left(x,y\right)”? עצרו וחשבו על כך רגע. נסו דוגמאות קונקרטיות של P, וחזרו לקרוא עם המסקנה.

ובכן? התשובה היא - כמובן שלא! נניח ש-P\left(x,y\right) פירושו x<y (כש-x,y שניהם מספרים טבעיים, למשל). אז “לכל y קיים x כך ש-y<x” היא טענה שנכונה באופן טריוויאלי - בהינתן y, ניקח את x להיות y+1. לכל מספר קיים מספר שגדול ממנו. לעומת זאת, “קיים x כך שלכל y מתקיים y<x” היא בבירור לא טענה נכונה - לא קיים מספר טבעי x שגדול מכל המספרים הטבעיים. הטענה השניה היא חזקה הרבה יותר, במובן זה שהיא מבטיחה קיום של x ספציפי שטוב לכל y, להבדיל מהטענה הראשונה שלכל y קיים x ספציפי עבורו. לסטודנטים לחדו”א מביניכם שמתקשים בהבנת המושג של רציפות במידה שווה (מושג שגרם לי קשיים רבים בשעתו): רציפות “רגילה” היא טענה מהסוג הראשון, ורציפות במידה שווה היא טענה מן הסוג השני.

אז מה הקשר למשפט המינימקס? שמשפט המינימקס הוא דוגמה לסיטואציה שבה טענה מהסוג הראשון כן גוררת טענה מהסוג השני! במקרה הזה x,y הן אסטרטגיות ו-P\left(x,y\right) היא (למשל) התכונה “\pi\left(x,y\right) הוא לפחות הרווח האופטימלי של אליס”. הרי ברור שלכל y של בוב קיים x של אליס כך שהרווח של אליס הוא לפחות הרווח האופטימלי שלה - אחרת, אם יש y שעבורו אין לאליס מענה הולם, בוב ישחק את y הזה ואז אליס תהיה חייבת לקבל רווח שהוא נמוך מהרווח האופטימלי שלה - סתירה להגדרתו של הרווח האופטימלי (כזכור - הרווח הגדול ביותר שאליס יכולה לקבל בלי תלות בבוב).

אם כן, השאלה היא למה קיים לאליס x בודד שעבורו לכל y של בוב, \pi\left(x,y\right) הוא לפחות הרווח האופטימלי של אליס. נניח לרגע שלא קיים כזה - מה זה אומר? שלכל x של אליס, קיים y של בוב כך ש-\pi\left(x,y\right) קטן מהרווח האופטימלי של אליס. אבל זה אומר שהרווח האופטימלי של בוב הוא קטן מהרווח האופטימלי של אליס (זכרו - עבור בוב, קטן יותר זה טוב יותר) וזו סתירה לטענה של משפט המינימקס לפיו הם שווים. מסקנה - קיים לאליס x שעבורו לא משנה איזה y בוב יבחר, הרווח של אליס יהיה לפחות \pi\left(x,y\right).

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

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

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

אלא שהמשחק הזה אינו סימטרי כלל ועיקר. התפקיד של מוריד הגשם הוא להוריד גשם, והתפקיד של החזאי הוא לחזות איך מוריד הגשם יתנהג. מכאן נובע שאם החזאי יודע “מראש” מה האסטרטגיה המעורבת שמוריד הגשם בחר, החזאי מסוגל לתת תחזיות מדוייקות מאוד, כאלו שיעברו את המבחן בקלות (שוב - נימוק של זה דורש קצת פורמליסטיקה ועבודה טכנית, אבל הרעיון ברור). במילים אחרות - לכל y של מוריד הגשם, קיים x של החזאי כך ש-\pi\left(x,y\right)\ge1 - זהו בדיוק ה-x ש”תפור” לאסטרטגיה y של מוריד הגשם.

אבל עכשיו נכנס משפט המינימקס לתמונה… אם לכל y קיים x כך ש-\pi\left(x,y\right)\ge1, אז נובע מכך שקיים x כך שלכל y מתקיים \pi\left(x,y\right)\ge1. כלומר - יש לחזאי אסטרטגיה x שמבטיחה לו נצחון במשחק, בלי תלות במעשיו של מוריד הגשם! כל מה שהחזאי צריך לעשות הוא לדווח על התחזיות על פי x, ואין זה משנה בכלל איך מוריד הגשם יתנהג, החזאי ינצח!

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

משפט הנישואים היציבים

שני, 07 בדצמבר 2009

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

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

רוס: רייצ’ל, פיבי, מוניקה.

צ’נדלר: מוניקה, פיבי, רייצ’ל.

ג’ואי: רייצ’ל,מוניקה, פיבי.

רייצ’ל: רוס, ג’ואי, צ’נדלר.

מוניקה: צ’נדלר, ג’ואי, רוס.

פיבי: ג’ואי, רוס, צ’נדלר.

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

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

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

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

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

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

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

אם כן, למה המשחק נגמר תמיד בשידוך לכולם ומדוע הוא יציב? ההוכחות הן יפות מאוד, לטעמי, בגלל הפשטות והאלגנטיות שלהן. נתחיל מכך שהמשחק חייב להיגמר בשידוך לכולם. האבחנה המרכזית היא שמרגע שבו לאישה יש לפחות מחזר אחד, יהיה לה תמיד בסוף היום מחזר אחד, פשוט כי היא תמיד שומרת אצלה מחזר אחד כשהיא מעיפה את היתר. לכן כל מה שצריך להשתכנע בו הוא שמתישהו כל אישה תקבל מחזר. מכיוון שכל אישה נמצאת במקום כלשהו ברשימה של כל גבר, בהכרח יגיע אליה מתישהו כל גבר אלא אם הוא “נלכד” קודם על ידי בחורה אחרת שלא מוותרת עליו יותר; אבל יש n-1 בחורות (פרט לזו שאנו עוסקים בה) ו-n גברים, ולא ייתכן שכולם יילכדו על ידי n-1 הבחורות (אחרת הייתה בחורה שלוכדת 2 גברים, מעקרון שובך היונים; אבל כל בחורה מותירה אצלה רק גבר אחד) - סוף פסוק.

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

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

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

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

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

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

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

מבלבל? מצד אחד כן - מצד שני, אפשר לחשוב ש”חברים” המקורי היה פחות מבלבל.

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

אני חושב שהמסקנות ברורות.