שאלת מבחן באלגוריתמים - האוניברסיטה הפתוחה 2020 - עץ פורש מינימלי
נתון גרף קשיר ולא-מכוון עם משקלי צלעות ייחודיים. נתבונן בוריאנט הבא של Kruskal למציאת עפ"מ, שבו שלב הבחירה משתנה:
> בכל איטרציה בוחרים באקראי בהתפלגות אחידה את אחד העצים ביער, ואז מוסיפים ליער את הצלע בעלת המשקל המזערי מבין כל הצלעות המחברות את ליתר הגרף.
(שאר האלגוריתם כמו Kruskal המקורי: מתחילים ביער של קדקודים בודדים, ומסתיימים כשנותר עץ יחיד.)
הפריכו או הוכיחו את נכונות הווריאנט. שימו לב שהאלגוריתם הסתברותי: אם שגוי — הציגו קלט וסדרת בחירות אקראיות שעבורן הפלט שגוי; אם נכון — הוכיחו שלכל קלט ולכל סדרת בחירות הפלט נכון.
> בכל איטרציה בוחרים באקראי בהתפלגות אחידה את אחד העצים ביער, ואז מוסיפים ליער את הצלע בעלת המשקל המזערי מבין כל הצלעות המחברות את ליתר הגרף.
(שאר האלגוריתם כמו Kruskal המקורי: מתחילים ביער של קדקודים בודדים, ומסתיימים כשנותר עץ יחיד.)
הפריכו או הוכיחו את נכונות הווריאנט. שימו לב שהאלגוריתם הסתברותי: אם שגוי — הציגו קלט וסדרת בחירות אקראיות שעבורן הפלט שגוי; אם נכון — הוכיחו שלכל קלט ולכל סדרת בחירות הפלט נכון.
העתק שאלה
שתף שאלה
סמן כחשוב
סמן כבוצע
האוניברסיטה הפתוחהמועד 85 · 2020 · סמסטר א
★★★★★
עץ פורש מינימליקרוסקלהוכחת נכונותגרפים
בחירת עץ כלשהו והוספת הצלע הקלה ביותר היוצאת ממנו היא יישום ישיר של תכונת החתך על החתך — ולכן בטוחה תמיד, לא משנה איזה עץ נבחר.
הווריאנט נכון — לכל קלט ולכל סדרת בחירות אקראיות. הסיבה: בחירת עץ שלם והוספת הצלע המזערית היוצאת ממנו היא בדיוק יישום של תכונת החתך.
נוכיח באינדוקציה שהיער נשאר תת-יער של עפ"מ.
בסיס. יער הקדקודים הבודדים (0 צלעות) הוא תת-יער של כל עפ"מ.
הנחה. נניח שאחרי איטרציה כלשהי היער הוא תת-יער של עפ"מ.
צעד. נבחר (באקראי) עץ ביער. נתבונן בחתך . הצלע שהאלגוריתם מוסיף היא הצלע המזערית מבין כל הצלעות החוצות חתך זה. לפי תכונת החתך, ומכיוון שהמשקלים ייחודיים, שייכת לכל עפ"מ; בפרט לעפ"מ המכיל את . לכן עדיין תת-יער של עפ"מ, והשמורה נשמרת — ללא תלות בעץ שנבחר.
בסיום מתקבל עץ פורש שהוא תת-יער של עפ"מ, כלומר עפ"מ בעצמו.
> הבחנה: בניגוד לוריאנט שבו בוחרים את הצלע המזערית היוצאת מקדקוד בודד (שגוי), כאן בוחרים את המזערית היוצאת מעץ שלם — וזוהי בדיוק הצלע המזערית החוצה את החתך, ולכן בטוחה.
נוכיח באינדוקציה שהיער נשאר תת-יער של עפ"מ.
בסיס. יער הקדקודים הבודדים (0 צלעות) הוא תת-יער של כל עפ"מ.
הנחה. נניח שאחרי איטרציה כלשהי היער הוא תת-יער של עפ"מ.
צעד. נבחר (באקראי) עץ ביער. נתבונן בחתך . הצלע שהאלגוריתם מוסיף היא הצלע המזערית מבין כל הצלעות החוצות חתך זה. לפי תכונת החתך, ומכיוון שהמשקלים ייחודיים, שייכת לכל עפ"מ; בפרט לעפ"מ המכיל את . לכן עדיין תת-יער של עפ"מ, והשמורה נשמרת — ללא תלות בעץ שנבחר.
בסיום מתקבל עץ פורש שהוא תת-יער של עפ"מ, כלומר עפ"מ בעצמו.
> הבחנה: בניגוד לוריאנט שבו בוחרים את הצלע המזערית היוצאת מקדקוד בודד (שגוי), כאן בוחרים את המזערית היוצאת מעץ שלם — וזוהי בדיוק הצלע המזערית החוצה את החתך, ולכן בטוחה.