Professional Documents
Culture Documents
Maman 14
Maman 14
ממ"ן 14
נסתכל על קודקוד vכלשהו ב V-שאינו ב( W-בהנחה שקיים – אם לא קיים אז W=Vואין מה להוכיח)
אם קודקוד זה אינו ב W-אז בהכרח אחד השכנים שלו נמצא ב( W-אחרת היינו יכולים להוסיף אותו לW-
בסתירה למקסימליות של הקבוצה)
בגלל האי תלות החסומה – מספר השכנים הבלתי תלויים של vחסום ע"י קבוע
קרי מספר השכנים של vשנמצאים ב W-חסום ע"י קבוע (כיוון שהקודקודים ב W-חייבים להיות בלתי תלויים)
cשל האי תלות חסומה
נראה שאם הוא המסלול התחיל מקודקוד בקבוצה עם צבע iאז הוא בהכרח אחרי d+1צעדים לא מכוונים
ואופטמליים נעבור לקבוצה עם צבע קטן מ( i-בהנחה שיש קבוצה כזו)
נניח בשלילה שזה לא נכון
כיוון שכל הקשתות היוצאות מקבוצה iאינן מכוונות כלפי קבוצות עם צבע גדול מ – i-המסלול לא יכול להגיע
לקבוצות אלו
כמו כן אין קבוצה שכנה עם צבע iאחרת לא היה מתקבל פירוק רשת תקין
לכן בהכרח זה אומר שאי אפשר להגיע תוך dצעדים לא מכוונים אל הקודקוד המקשר לקבוצה עם צבע קון
יותר – וזה בסתירה למרחק המינימאלי בין שני קודקודים בקבוצה
לכן נקבל שאין מסלול לא מכוון ארוך יותר מ c*(d+1)-כי מכל קבוצה כלשהי – נעבור לקבוצה עם צבע נמוך
יותר אחרי d+1צעדים לא מכוונים לכל היותר ויש לכל היותר cצבעים
לכן מתקבלת ישיגות חסומה ע"י קבוע
סיבוכיות זמן:
זמן ריצה:
הריצה לוקחת ) O(1סיבובים
סיבוב של הודעה אחת של צבע ואחר חישוב מקומי של כל קודקוד של אוריינטציה
)3בניתוב הירככי עם 3רמות
נסמן את
גודל הרמה הראשונה (קלאסטרים) כx-
גודל הרמה השנייה (תת-קלאסטרים) כy-
גודל הרמה השלישית (קודקודים בודדים) כz-
(אני מניח שראש קלאסטר לא מחשיב את עצמו כחלק מ z-או yוראש תת קלאסטר אינו חלק מ)z-
קודקוד שאינו ראש קלאסטר או תת-קלאסטר צריך לשמור בטבלה שלו את כל הקודקודים שאיתו בתת-
קלאסטר ( )z-1את כל ראשי תתי הקלאסטרים בקלאסטר בו הוא נמצא ( (yוכמו כן את ראשי כל הקלאסטרים
()x
סה"כ x+y+z-1שורות
(אפשר גם לבצע בנייה כך שמספר השורות לא מכיל ניתוב לקודקודים באותו תת-קלאסטר אלא ינותבו דרך
ראש תת-הקלאסטר אבל זה לא משפיע על גודל הגרף הסופי בגלל מספר השורות הנדרשות אצל ראשי תת
קלאסטרים)
קודקוד שהוא ראש תת-קלאסטר צריך לשמור בטבלה שלו את כל הקודקודים בתת-קלאסטר שלו ( )zאת כל
שאר ראשי תתי-הקלאסטרים ( (y-1ואת כל ראשי הקלאסטרים ()x
סה"כ x+y+z-1שורות
קודקוד שהוא ראש קלאסטר צריך לשמור בטבלה שלו את כל ראשי תתי הקלאסטרים שלו ( )yואת כל שאר
ראשי הקלאסטרים ()x-1
סה"כ x+y-1שורות
סה"כ מספר הקודקודים הבודדים הוא xyzמספר הקודקודים שהם ראשי תת-קלאסטרים הוא xyומספר
הקודקודים שהם ראשי קלאסטרים הוא x
סה"כ x+xy+xyzקודקודים
המגבלה שלנו היא 256שורות בטבלת ניתוב לכן האילוץ היחיד שלנו הוא ( 𝑥 + 𝑦 + 𝑧 − 1 ≤ 256אני
מתעלם מאפשרות של z=0,1כיוון שאפשר לקבל גרפים יותר גדולים די בבירור עם zגדול יותר)
כלומר 𝑥 + 𝑦 + 𝑧 = 257
אם אפשר לבנות את הגרף כך שראש הקלאסטר הוא גם ראש תת קלאסטר בעצמו (אבל לא נכנס לספירה
של yלטובת נוחות החישוב)
זה אומר שהוא צריך לשמור את כל הקודקודים בתת הקלאסטר שלו ( )zאת כל ראשי תתי הקלאסטרים שלו
( )yואת כל שאר ראשי הקלאסטרים ()x-1
סה"כ x+y+z-1שורות
נקבל אילוצים זהים בכל סוגי הקודקודים
נכונות:
Δ
שכנים ,הקודקוד יפסיק להיות פעיל אם הוא או אחד שכניו ייכנסו 2
נסתכל על קודקוד כלשהו שיש לו לפחות
לMIS-
𝜖′
1− ההסתברות שקודקוד בודד יחליט לא לשדר היא
Δ
וההסתברות שאף אחד מהשכנים לא ישדר בסיבוב בודד היא לכל היותר
Δ
𝜖′ 2
) (1 −
Δ
לכן ההסברות שלפחות קודקוד אחד ינסה לשדר בסיבוב אחד היא
Δ
𝜖′ 2
) 1 − (1 −
Δ
כלומר עבור a=2לפחות הסיכוי שכל הקודקודים לא יסיימו הוא שואף לאפס
חישוב זה נכון לכל הקודקודים עם לפחות חצי דלתא שכנים
כיוון שבכל איטרציה של האלגוריתם מקטינים את דלתא פי חצי – יוצא שאנו מבצעים מספיק ריצות לכל
הקודקודים עם כל כמות שכנים אפשרית (גם אם במות השכנים קטנה תוך כדי ריצה – בגלל ששכנים שלהם
נכנסו ל MIS-בהמשך הריצה נגיע לאיטרציה עם Δקטן מספיק למספר השכנים ה'עדכני')
כמו שהסברתי ברעיון של האלגוריתם
אם כל הקודקודים סיימו זה אומר שנוצרה קבוצה של – MISאם קודקוד סיים בהכרח או הוא או שכן שלו
הצטרפו לMIS-
אם הוא לא סיים אז לא הוא ולא אחד השכנים שלו הצטרפו ל – MIS-ולכן עדיין יש לו פוטנציאל להיכנס ל-
MIS
ואין אפשרות ששני קודקודים שכנים ייכנסו לקבוצה – אם אחד נכנס ל MIS-השני יהפוך באותו סיבוב לבלתי
פעיל בתור שכן ולא ינסה להיכנס ל ,MISואם שניהם שידרו באותו סיבוב – השידור של שניהם לא יצליח
ושניהם לא ייכנסו ל MIS-בסיבוב זה
כיוון שמדובר במודל SINRכמו בספר הוא גרף עם אי תלות חסומה ולכן (ע"פ שאלה 1בממ"ן זה) הוא קירוב
של הגודל המקסימלי של קבוצה בלתי תלויה בגרף עד כדי קבוע (שהוא הקבוע cשנבחר לצרכי השאלה)
סיבוכיות
זמן ריצה:
מספר האיטרציות הוא ) log(Δובכל איטרציה רצים ) O(lognסיבובים
סה"כ נקבל:
))𝑛(𝑔𝑜𝑙 ) 𝑂(log(Δסיבובים
סיבוכיות ביטים:
ההודעות אינן נדרשות להכיל מידע (חוץ מביט של נכנסתי ל MIS-ומה שנדרש להודעה גנרית של שידור
מקומי) לכן סיבוכיות זו היא )O(1
סיבוכיות הודעות:
כל קודקוד שולח הודעות לכל שכניו בכל סיבוב (לכל היותר )Δ
נקבל סה"כ מספר הודעות החסום ע"י
))𝑛(𝑔𝑜𝑙 )𝑂(Δ𝑛 log(Δ