Ex5_sol_copyright - ‫אוניברסיטת...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: ‫אוניברסיטת בן-גוריון בנגב‬ ‫הפקולטה להנדסה‬ ‫המחלקה להנדסת מערכות תקשורת‬ ‫מבוא לתורת המידע‬ ‫מספר קורס: 1081-1-173‬ ‫סמסטר ב', תשס"ט (9002)‬ ‫תרגיל 5 (קוד הפמן)‬ ‫ת.ז. ***********‬ ‫שם: יגורוב איוון‬ ‫איוון יגורוב, שנה ג', הנדסת מערכות תקשורת‬ ‫‪ f t t log t‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪D p || q p x log‬‬ ‫‪ q x‬‬ ‫‪log‬‬ ‫‪‬‬ ‫‪p x‬‬ ‫‪‬‬ ‫‪q x‬‬ ‫‪q x‬‬ ‫‪q x t ‬‬ ‫‪f t convex ‬‬ ‫‪x‬‬ ‫‪x‬‬ ‫‪ q x‬‬ ‫‪‬‬ ‫‪ Jensen ' s inequality with equality iff ‬‬ ‫‪ p x ‬‬ ‫‪‬‬ ‫‪p x‬‬ ‫‪ q x f ‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪ q x t ‬‬ ‫‪ const ‬‬ ‫‪p x q x ‬‬ ‫‪x‬‬ ‫‪‬‬ ‫‪ q x‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪p x ‬‬ ‫‪ f q x‬‬ ‫0 ‪ f 1 ‬‬ ‫‪‬‬ ‫‪q x ‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪p x‬‬ ‫‪p x‬‬ ‫‪p x‬‬ ‫ניתן לקצר קוד נתון ‪ 01,10‬ל- ‪ 0,1‬והוא יישאר קוד רישא ‪ ‬הקוד הנתון אינו קוד‬ ‫אופטימלי ‪ ‬אינו קוד הפמן.‬ ‫‪1 1 1 ‬‬ ‫הקוד הנתון הינו קוד הפמן עבור התפלגות ‪. , , ‬‬ ‫‪2 4 4‬‬ ‫ניתן לקצר קוד נתון ‪ 00,01,10,110‬ל- ‪ 00,01,10,11‬והוא יישאר קוד רישא ‪ ‬הקוד‬ ‫הנתון אינו קוד אופטימלי ‪ ‬אינו קוד הפמן.‬ ‫הקוד הנתון הינו קוד רישא.‬ ‫‪ ‬אי-שיווין ‪ Kraft‬מתקיים ‪ ‬האורכים מתאימים לקידוד‬ ‫שאלה 1‬ ‫שאלה 2‬ ‫א.‬ ‫ב.‬ ‫ג.‬ ‫ד.‬ ‫2‪‬‬ ‫1‪i ‬‬ ‫5‬ ‫‪i‬‬ ‫1 ‪ 25 ‬‬ ‫האופטימלי ‪ ‬הקוד הנתון יכול להיות קוד הפמן, למשל עבור התפלגות‬ ‫‪1 1 1 1 1 1 ‬‬ ‫‪. , , , , , ‬‬ ‫‪ 2 4 8 16 32 32 ‬‬ ‫ה. הקוד הנתון אינו קוד רישא ‪ ‬אינו יכול להיות קוד הפמן.‬ ‫איוון יגורוב, שנה ג', הנדסת מערכות תקשורת‬ ‫שאלה 3‬ ‫א.‬ ‫‪C X 0,10,110,11111,11110,11101,11100‬‬ ‫מכאן נקבל שקוד הפמן בינרי הוא :‬ ‫‪L C , X 0.49 1 0.26 2 0.12 3 0.13 5 2.02 bits ‬‬ ‫ב.‬ ‫‪C X 0,1, 20, 21, 220, 221, 222‬‬ ‫מכאן נקבל שקוד הפמן שלישוני הוא :‬ ‫‪L C , X 0.75 1 0.16 2 0.09 3 1.34 ternary bits ‬‬ ‫איוון יגורוב, שנה ג', הנדסת מערכות תקשורת‬ ‫שאלה 4‬ ‫א.‬ ‫ב.‬ ‫‪L C, X ‬‬ ‫2‬ ‫3‬ ‫21‬ ‫‪3 2 ‬‬ ‫נחשב תוחלת אורך מילת קוד עבור התפלגות מסעיף ב' :‬ ‫5‬ ‫5‬ ‫5‬ ‫בגלל שכל קודי הפמן הם אופטימליים לכולם תהיה תוחלת אורך הקוד זהה.‬ ‫א. ‪C X 11,10,01,00‬‬ ‫ב. בסעיף א' קיבלנו קוד הפמן המתאים לוקטור ‪. l1 , l2 , l3 , l4 2, 2, 2, 2 ‬‬ ‫נחשב תוחלת אורך מילת קוד : 2 ‪L C , X ‬‬ ‫נבדוק האם וקטור שני ‪ l1 , l2 , l3 , l4 1, 2,3,3‬מקיים את אי-שיוויון ‪ Kraft‬ונחשב‬ ‫תוחלת אורך מילת קוד :‬ ‫‪ li‬‬ ‫1‪‬‬ ‫2‪‬‬ ‫3‪‬‬ ‫1‪2 2 2 2 2 ‬‬ ‫‪i‬‬ ‫שאלה 5‬ ‫‪L C, X ‬‬ ‫4‬ ‫4‬ ‫4‬ ‫2 ‪1 2 3 ‬‬ ‫21‬ ‫21‬ ‫21‬ ‫‪‬‬ ‫שני הוקטורים אופטימליים‬ ‫ג. ניתן לקבל סטים שונים של אורכים מאלגוריתם הפמן כאשר במהלך האלגוריתם נוצר מצב‬ ‫שבו ניתן לבחור למטרת מיזוג כמה סימבולים עם אותה הסתברות.‬ ‫1‬ ‫ד. נקח לדוגמה סמבול בעל הסתברות .‬ ‫4‬ ‫לפי קוד הפמן הסמבול קיבל אורך מילת קוד 3 ‪. li ‬‬ ‫‪‬‬ ‫‪1‬‬ ‫לפי קוד שנון הסימבול היה מקבל אורך מילת קוד : 2 ‪. li log log 4 ‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪pi ‬‬ ‫‪‬‬ ‫מכאן נקבל שבקוד הפמן חלק ממילות הקוד יכולות להיות ארוגות מאלה של שנון, אך‬ ‫בממוצע קוד הפמן הוא קוד אופטימלי.‬ ‫איוון יגורוב, שנה ג', הנדסת מערכות תקשורת‬ ‫1‪H X L H X ‬‬ ‫1 ‪L H X ‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪ H X log 2 X‬‬ ‫‪‬‬ ‫‪L 1 log 2 X ‬‬ ‫2 ‪2 L 1 ‬‬ ‫‪log 2 X‬‬ ‫שאלה 6‬ ‫‪‬‬ ‫1 ‪L log 2 X ‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪2 L 1 X‬‬ ‫5.912 ‪X 220.51 ‬‬ ‫שאלה 7‬ ‫א.‬ ‫האסטרטגיה האופטימלית במקרה זה היא להתחיל לטעום מהבקבוק עם הסתברות לרעל הכי גדולה‬ ‫ולהמשיך הלאה בסדר יורד (לפי הסתברויות) .‬ ‫6‬ ‫7‬ ‫5‬ ‫4‬ ‫3‬ ‫3‬ ‫32‬ ‫88.2 ‪ pi li 1 26 2 26 3 26 5 26 5 26 2 26 ‬‬ ‫1‪i ‬‬ ‫‪last bottle‬‬ ‫ב.‬ ‫נבנה קוד הפמן עבור הבקבוקים :‬ ‫הטעימה הראשונה תהיה תערובת של הבקבוקים שהביט ה- ‪ msb‬שלהן "1".‬ ‫אם התערובת מקולקלת ‪ ‬ה- ‪ msb‬של הבקבוק המקולקל יהיה "1",‬ ‫אחרת ה- ‪ msb‬יהיה "0" וכך הלאה.‬ ‫6‬ ‫7‬ ‫5‬ ‫41‬ ‫45.2 ‪ pi li 2 26 2 26 3 26 ‬‬ ‫1‪i ‬‬ ‫איוון יגורוב, שנה ג', הנדסת מערכות תקשורת‬ ‫שאלה 8‬ ‫א.‬ ‫נבנה קוד הפמן לפי מספר הופעות של הפקודות :‬ ‫‪C I1 011, I 2 110, I3 010, I 4 00, I5 10, I 6 11111, I 7 11110, I8 1110‬‬ ‫אורך התוכנית :‬ ‫5872 ‪2 200 3 235 2 250 3 150 4 95 5 70 ‬‬ ‫ב.‬ ‫נחשב את האנטרופיה :‬ ‫001‬ ‫051 ‪ 100 ‬‬ ‫531 ‪ 150 ‬‬ ‫002 ‪ 135 ‬‬ ‫‪ 200 ‬‬ ‫‪H ‬‬ ‫‪log ‬‬ ‫‪log ‬‬ ‫‪log ‬‬ ‫‪log ‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫0001‬ ‫0001 ‪ 1000 ‬‬ ‫0001 ‪ 1000 ‬‬ ‫0001 ‪ 1000 ‬‬ ‫‪ 1000 ‬‬ ‫052‬ ‫01 ‪ 250 ‬‬ ‫06 ‪ 10 ‬‬ ‫59 ‪ 60 ‬‬ ‫‪ 95 ‬‬ ‫‪log ‬‬ ‫‪log ‬‬ ‫‪log ‬‬ ‫‪log ‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ 0001‬ ‫0001 ‪1000 ‬‬ ‫0001 ‪1000 ‬‬ ‫0001 ‪1000 ‬‬ ‫‪1000 ‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫‪‬‬ ‫27927.2 ‪‬‬ ‫לא ניתן לדחוס מעבר לאנטרופיה, לכן האורך המינימלי של התוכנית הוא :‬ ‫0372 ‪2.72972 1000 2729.72 ‬‬ ‫‪‬‬ ‫ג.‬ ‫הדבר נכון עבור כל קוד הפמן בינארי.‬ ‫קוד הפמן הינו קוד אופטימלי ‪ ‬אם נציג אותו בעזרת עץ בינארי נקבל שלכל עלה יהי אח (אחרת‬ ‫היה ניתן לקצר הת הקוד וזה סותר הגדרה של קוד אופטימלי – קוד הפמן).‬ ‫כעת נשאר לנו להראות שעץ בינארי מלא מקיים את שיוויון ‪: Kraft‬‬ ‫‪ li‬‬ ‫1‪‬‬ ‫2‪‬‬ ‫נראה שעץ בעל שני עלים בלבד מקיים את את שיוויון ‪ 2 2 2 1 : Kraft‬‬ ‫‪i‬‬ ‫נוסיף עוד עלה לעץ. אורכו יהיה גדול באחד מהעלה שעליו נרצה להוסיף. כמו כן העלה שעליו בנינו‬ ‫עלה חדש יהפוך להיות אח של העלה הנוסף. נראה שהעץ המתקבל גם כן מקיים את שיוויון ‪: Kraft‬‬ ‫1 ‪ 2li 21 22 22 ‬‬ ‫‪i‬‬ ‫קל לראות שאם נמשיך להוסיף עלים הסכום תמיד יישאר 1:‬ ‫2‬ ‫‪ lx‬‬ ‫2‪‬‬ ‫1‪ lx ‬‬ ‫2‪‬‬ ‫1‪ lx ‬‬ ‫‪leaf with‬‬ ‫‪old length‬‬ ‫‪leaf with‬‬ ‫‪new length‬‬ ‫‪new leaf‬‬ ‫איוון יגורוב, שנה ג', הנדסת מערכות תקשורת‬ ‫שאלה 9 (שאלת רשות)‬ ‫א.‬ ‫תחילה נראה שעבור מספר כוסות כחזקה של 2 נצטרך ‪ log X‬בדיקות כדי לגלות את הכוס המורעלת.‬ ‫נביא דוגמה פשוטה שמסבירה את הטענה :‬ ‫‪ ‬עבור 22 ‪ 4 ‬כוסות נצטרך 2 ‪ log 4 ‬בדיקות.‬ ‫‪ ‬עבור 32 ‪ 8 ‬כוסות נצטרך 3 ‪ log8 ‬בדיקות.‬ ‫מכיוון שפרופסור ביקש לבדוק כוס אחד נניח שזה הכוס שהפריע לו להגיע לחזקה של 2.‬ ‫השוטר אמר שכמות הכוסות היא בין 001 ל-002 ולכן נקבל כמות הכוסות המדויקת היא :‬ ‫7‬ ‫921 ‪2 1 128 1 ‬‬ ‫ב.‬ ‫הפרופסור טעה מכיוון שהוא הציג אסטרטגיה עבור ‪ worst case‬ולא עבור המקרה הממוצע.‬ ‫עבור ‪ worst case‬נדרש לעשות 8 ‪ 1 log128 1 7 ‬בדיקות. אף אסטרטגיה לא תצליח‬ ‫לגלות את הכוס המורעל בפחות בדיקות.‬ ‫עבור מקרה ממוצע ניתן לגלות את הכוס בפחות בדיקות בממוצע. נציג את האסטרטגיה ותוחלת מספר‬ ‫הבדיקות בסעיפים הבאים.‬ ‫ג.‬ ‫האסטרטגיה האופטימלית ניתנן לשימוש בעזרת קוד הפמן.‬ ‫הסבר מילולי : בשלב ראשון נערבב חצי מהכוסות ונבדוק את התערובת.‬ ‫בשלב הבא נערבב חצי מהכוסות מתוך קבוצה "הרעילה" שאותה גילינו בשלב הקודם‬ ‫ונבדוק את התערובת. וכך הלאה, עד שנגלה את הכוס המורעל.‬ ‫הסבר מתמטי : נבנה קוד הפמן עבור א"ב בעל 921 סימבולים (במקרה שלנו הם שווי הסתברות).‬ ‫לפי קוד הפמן 721‪ X1 , X 2 ,..., X‬יקבלו מילות קוד באורך 7 ביטים ו- 921‪X128 , X‬‬ ‫יקבלו מילות קוד באורך 8 ביטים.‬ ‫בשלב ראשון נערבב את הנוזל מכוסת שה- ‪ msb‬שלהן "1". אם התערובת רעילה‬ ‫אזי‬ ‫ה- ‪ msb‬של הכוס הרעיל הוא "1", אחרת "0". וכך הלאה עד למציאת הכוס.‬ ‫ד.‬ ‫תוחלת מספר הבדיקות לפי אסטרטגיה של פרופסור :‬ ‫‪pl‬‬ ‫1‬ ‫821‬ ‫‪ 1 log128 ‬‬ ‫7549.7 ‪‬‬ ‫921‬ ‫921‬ ‫1‪i ‬‬ ‫תוחלת מספר הבדיקות לפי אסטרטגיה האופטימלית :‬ ‫921‬ ‫721‬ ‫2‬ ‫5510.7 ‪ pi li 7 129 8 129 ‬‬ ‫1‪i ‬‬ ‫מכאן נקבל שאסטרטגיה של פרופסור פחות טובה בבדיקה אחת כמעט.‬ ‫‪ii‬‬ ‫921‬ ‫‪ 1‬‬ ‫איוון יגורוב, שנה ג', הנדסת מערכות תקשורת‬ ...
View Full Document

Ask a homework question - tutors are online