בעיית כיסוי קבוצות


יש קבוצה של פריטים שנקראת U. יש גם אוסף של קבוצות קטנות שנקרא S. כל קבוצה ב־S מכילה חלק מהפריטים ב־U. כיסוי הוא בחירה של קבוצות מ־S כך שכל הפריטים ב־U יהיו כלולים לפחות בקבוצה אחת.

נניח U = {1,2,3,4,5}. הקבוצות ב־S הן: {1,2,3}, {2,4}, {3,4} ו־{4,5}. אם בוחרים את {1,2,3} ואת {4,5}, אז כל המספרים מ־U כלולים. זו בחירה קטנה וטובה.

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

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

תגובות גולשים

התגובה תפורסם באתר לאחר אישור המערכת

עדיין אין תגובות. היה הראשון להגיב!