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

התוצאה של המודל, בנוסף לרמות העומס על המכונות, היא רשימה של כל המק"טים עם המכונה המומלצת להם על מנת לייצר איזון בין המכונות העמוסות למכונות הפחות עמוסות.
האלגוריתם שאני מציג פה הוא מאד פשוט. התוצאה שלו טובה לכל השימושים שאני הייתי צריך. יש לשים לב שאלגוריתם זה לא מבצע אופטימיזציה.
ניתן לכתוב תוכנית אוטומטית שתעשה את החישוב כמו שאני עשיתי בקובץ המצורף או לעבוד בצורה ידנית שלוקחת קצת זמן, אבל תוביל לאותה התוצאה.
כאמור אני לא מציג את האלגוריתם האופטימלי אלא את האלגוריתם הפשוט.
אלגוריתם איזון
לפני שמתחילים:
- נחליט מהו עומס גבוה על מכונה שממנו אנחנו רוצים שיתבצע איזון. אני בחרתי ב 85% במודל מכיוון שזה משאיר מספיק מרווח להפתעות.
- נחליט מאיזה סוג מכונות אנחנו מעוניינים להתחיל את האיזון. במודל הקיבולת באקסל הגדרתי לכל סוג מכונה שדה עדיפות שאומר לאלגוריתם באיזה מכונות הייתי רוצה שהוא יטפל קודם כל.
התחלת האלגוריתם:
- מצא את המכונות שהעדיפות שלהם הכי גבוהה, התחל במכונה הכי עמוסה מאותו סט של מכונות. העומס על המכונה צריך להיות גבוה מפרמטר העומס המותר. בחרו מכונה לאיזון (להלן, המכונה הנותנת).
- מצא את המק"ט שתופס הכי הרבה שעות מכונה ושיש לו מכונה חלופית. נסה להעביר אותו למכונה החלופית (להלן המכונה המקבלת). האם העומס על המכונה המקבלת עבר את פרמטר העומס המותר? אם כן, תחזיר את המק"ט למכונה הנותנת ובחר את המק"ט הבא שצורך את זמן המכונה הרב ביותר (ושיש לו מכונה משנית).
- במידה והצלחנו להעביר מקט ממכונה נותנת למכונה מקבלת, בדוק האם המכונה שאותה אנחנו מנסים לאזן ירדה מפרמטר העומס. אם לא חזור לסעיף 2 עד שיגמרו המק"טים שניתן לאזן איתם.
- במידה והעומס על המכונה ירד מפרמטר העומס, המשך למכונה הבאה עד אשר יגמרו המכונות שיש צורך לאזן או שניסינו לאזן.
אני מצרף תאור גרפי יותר של האלגוריתם:
כדי להדגים את המודל קיבולת בניתי מודל קיבולת לדוגמה שניתן להוריד אותו ולהריץ אותו. שימו לב שמודל זה כולל קטע VBA ולכן עלול לבקש אישורים מסויימים לפי רמת האבטחה של המחשב שלכם. ניתן לפתוח אבל לא להריץ את הקוד על מכשירים שאינם מריצים חלונות ואופיס.
המודל בנוי בשפה האנגלית אבל כל הוראות ההפעלה בתוכו הם בעברית.

איך משתמשים במודל?
למודל יש 3 סוגים של גיליונות:
- קלט – שמות הגיליונות הללו צבועים בירוק. הקלט דומה לקלט של המודל הפשוט למעט גיליון הפרמטרים. בגיליון זה יש את הפרמטר של העומס המקסימלי שאנחנו מתכננים לפיו. נניח שאנחנו רוצים שהמכונות לא יעברו 85% מהעומס המקסימלי שלהם, אז זהו הפרמטר שאותו אנחנו רוצים לעדכן. פרמטר זה מאפשר לאלגוריתם לדעת מתי לעצור. באותו הגיליון יש גם את הפרמטר של תקופת הזמן שאותה אנחנו רוצים לאזן. לא ניתן לאזן את כל תקופות הזמן בבת אחת אלא כל תקופה בנפרד. ניתן לבחור את התקופה בגיליון הפרמטרים או בגיליון "Tools loading" שהוא הרבה יותר ידידותי.
- חישובים – שמות הגיליונות הללו צבועים בכתום. בגיליונות אלו מתבצעים החישובים של כמה שעות צריכה כל מכונה וכמה זמן צורך כל מק"ט. חלק מהגיליונות מוסתרים וניתן לעבור גם עליהם על ידי ביטול פעולת ההסתרה.
- פלט – שמות הגיליונות הללו צבועים בכחול. אלו הגיליונות החשובים שבמודל.
- גיליון Tools loading – בגיליון זה ניתן לראות את העומסים על המכונות לפי תקופות זמן לפני שאיזנו אותם, בצד שמאל. בגיליון זה ניתן לבחור תקופת זמן ואז ללחוץ על כפתור האיזון ולראות את התוצאה של האיזון בעמודת הפלט.
- גיליון What products need tool change – בגיליון זה אפשר לראות את כל המק"טים שהאלגוריתם ממליץ להעביר למכונה המשנית שלהם.
- גיליון After balance HoursPerProduct – גיליון זה מראה כמה שעות ייצור צריך להשקיע בכל אחד מהמק"טים בכל אחת מהמכונות, לאחר שלקחנו בחשבון את ההמלצות של אלגוריתם האיזון.
- גיליון Tools loading – בגיליון זה ניתן לראות את העומסים על המכונות לפי תקופות זמן לפני שאיזנו אותם, בצד שמאל. בגיליון זה ניתן לבחור תקופת זמן ואז ללחוץ על כפתור האיזון ולראות את התוצאה של האיזון בעמודת הפלט.
סיכום
בפוסט זה הגדרנו אלגוריתם שמאפשר לנו לאזן מודל קיבולת. הוספנו גם קובץ שמבצע אוטומטית את האלגוריתם הזה והסברנו את השימוש בקובץ.
אשמח מאד אם תשאירו לי תגובה
ניתן גם לשלוח במייל לגל מירום : theplanningmaster@gmail.com
הפוסט הזה הוא חלק מכלי העבודה האפשריים למהנדסי תעשיה וניהול
One comment