שאלת מבחן באלגוריתמים - האוניברסיטה הפתוחה 2022 - זרימה ברשתות
נתונה רשת-זרימה: גרף מכוון עם מקור ויעד , ועם קיבולות חיוביות על הצלעות. מובטח שלכל זוג קדקודים , לכל היותר אחת מבין הצלעות נמצאת בגרף. בשאלה זו "זרימה-חוקית" היא פונקציה המקיימת: (א) לכל קדקוד מתקיים (חוק שימור-הזרימה, כרגיל); (ב) לכל צלע מתקיים (הקיבולת חוסמת מלמטה את הזרימה בשאלה זו, ולא מלמעלה כרגיל). נניח שנתונה לכם זרימה-חוקית (המקיימת את הדרישות א' וגם ב'). הציגו אלגוריתם למציאת זרימה-חוקית שגודלה מזערי.
העתק שאלה
שתף שאלה
סמן כחשוב
סמן כבוצע
האוניברסיטה הפתוחהמועד 94 · 2022 · סמסטר א
★★★★★
זרימה ברשתותרדוקציה
הקיבולת כאן חוסמת מלמטה, ואין חסם עליון כלל. שאלו את עצמכם: בכל צלע בנפרד, כמה בדיוק אפשר להוריד מ- מבלי להפר את החוקיות? שימו לב שההורדה עצמה חייבת לכבד את שימור-הזרימה — לאיזו בעיה מוכרת זה מתורגם?
רעיון: בהינתן זרימה-חוקית , כל צלע יכולה "לוותר" על עד יחידות זרימה מבלי להפר את החסם התחתון . נמקסם את הכמות שנוריד מ- (כזרימת ) באמצעות זרימה מרבית ברשת מתאימה.
האלגוריתם:
1. בנה גרף עם אותם קדקודים וצלעות, אך עם קיבולות (עליונות, רגילות) לכל צלע.
2. הרֵץ אדמונדס-קארפ על ומצא זרימה מרבית .
3. החזר לכל צלע .
נכונות.
*ראשית, חוקית.* שימור-זרימה: ו- שתיהן מקיימות שימור בכל קדקוד , ולכן גם הפרשן :
חסם תחתון: , ולכן . אז מקיימת את שני התנאים.
*שנית, מזערית.* תהי זרימה-חוקית כלשהי המקיימת , ונסמן . אז , ו- משמרת זרימה בכל כהפרש שתי פונקציות משמרות — כלומר היא זרימה חוקית ב-. ממקסימליותה של נובע , ולכן
נותר להיווכח שההנחה אינה מגבילה: תוספת זרימה נכנסת לקדקוד מחייבת תוספת זהה של זרימה יוצאת, ומעגל תורם באותה מידה לכניסה וליציאה — ולכן כל תוספת נטו ברשת מקורה ב- ורק מגדילה את גודל הזרימה. מכאן ש- מזערית.
זמן ריצה: בניית ב- והרצת אדמונדס-קארפ — סה"כ כזמן ריצת אדמונדס-קארפ.
האלגוריתם:
1. בנה גרף עם אותם קדקודים וצלעות, אך עם קיבולות (עליונות, רגילות) לכל צלע.
2. הרֵץ אדמונדס-קארפ על ומצא זרימה מרבית .
3. החזר לכל צלע .
נכונות.
*ראשית, חוקית.* שימור-זרימה: ו- שתיהן מקיימות שימור בכל קדקוד , ולכן גם הפרשן :
חסם תחתון: , ולכן . אז מקיימת את שני התנאים.
*שנית, מזערית.* תהי זרימה-חוקית כלשהי המקיימת , ונסמן . אז , ו- משמרת זרימה בכל כהפרש שתי פונקציות משמרות — כלומר היא זרימה חוקית ב-. ממקסימליותה של נובע , ולכן
נותר להיווכח שההנחה אינה מגבילה: תוספת זרימה נכנסת לקדקוד מחייבת תוספת זהה של זרימה יוצאת, ומעגל תורם באותה מידה לכניסה וליציאה — ולכן כל תוספת נטו ברשת מקורה ב- ורק מגדילה את גודל הזרימה. מכאן ש- מזערית.
זמן ריצה: בניית ב- והרצת אדמונדס-קארפ — סה"כ כזמן ריצת אדמונדס-קארפ.