کد آماده متلب الگوریتم های فرا ابتکاریNRGA وNSGAIIو حل مدل زمانبندی چندهدفه ماشینهای موازی نامرتبط در محیط تولید بهنگام - دانلود فایل
دانلود فایل کد آماده الگوریتم های فرا ابتکاری NRGA و NSGAII برای مدل زمانبندی چندهدفه در کلاس ماشینهای موازی نامرتبط در محیط تولید بهنگام
دانلود فایل کد آماده متلب الگوریتم های فرا ابتکاریNRGA وNSGAIIو حل مدل زمانبندی چندهدفه ماشینهای موازی نامرتبط در محیط تولید بهنگام
کد آماده متلب الگوریتم های فرا ابتکاری NRGA و NSGAII برای حل مدل زمانبندی چندهدفه در کلاس ماشینهای موازی نامرتبط در محیط تولید بهنگام
فایل دانلودی شامل تمامی کدهای نوشته شده در نرم افزار متلب برای حل مدل زمانبندی چندهدفه در کلاس ماشینهای موازی نامرتبط در محیط تولید بهنگام به دو روش الگوریتم فرا ابتکاری NRGA و NSGAII میباشد و آماده اجرا در نرم افزار متلب میباشد. همچنین فایل word مدل مورد نظر برای مدل زمانبندی چندهدفه در کلاس ماشینهای موازی نامرتبط در محیط تولید بهنگام نیز به صورت کامل همراه با مفروضات و اندیس ها و پارامتر های مدل و همچنین توضیحات کامل الگوریتم های پیشنهادی و نحوه عملکرد آنها نیز توضیح داده شده است
به قسمت کوتاهی از شرح مدل بکار رفته توجه فرمایید
توضیحات مدل حل شده در این فایل
در این تحقیق، مسأله ی زمانبندی ماشین های موازی نامرتبط مورد بررسی قرار می گیرد. يک مجموعه از کار متمايز برروي مجموعه اي از m ماشين، ، که بصورت موازي کنار هم قرار گرفتند پردازش ميشوند بطوريکه هر کار تنها بر روي يک ماشين پردازش ميشود و هر ماشين در هر لحظه قادر به پردازش تنها يک کار ميباشد. زمان پردازش هر کار ممکن است روی ماشین های مختلف، متفاوت باشد. در واقع زمان پردازش کارها بر روي ماشينها نه تنها به نوع کار بلکه به نوع ماشين هم بستگي دارد و بين زمانهاي پردازش کارها بر روي ماشينهاي مختلف رابطه مشخصي وجود ندارد. زمان تنظیم وابسته به توالی کارها، بین کارها وجود دارد. هر کار متمایز از سایر کارها، زمان دسترسی و ضرایب هزینه ی مربوط به خود را دارد. هدف، زمانبندی این کارها روی m ماشین است به طوری که هزینه های مربوط به زودکرد و دیرکرد از یک طرف و مجموع زمان تکمیل کارها از طرف دیگر حداقل گردند(دو هدفه)
توضیحات مدل و الگوریتم های به کار رفته
الگوریتم های ژنتیک II به دلیل پتانسیل بالای آن ها به عنوان یک رویکرد جدید به مسایل بهینه سازی چندهدفه که تحت عنوان روش های تکاملی یا بهینه سازی چندهدفه ژنتیک شناخته می شود، توجه خاصی شده است. ویژگی های ذاتی الگوریتم های ژنتیک بیانگر دلایل مناسب بودن جستجوی ژنتیک در مسایل بهینه سازی چندهدفه هستند. ویژگی های اصلی الگوریتم ژنتیک چند جهته بودن و جستجوی سراسری با حفظ جمعیتی از حل های خوب از نسلی به نسل دیگر است. رویکرد نسل به نسل در زمان بررسی حل های پارتو مفید است.
الگوریتم ژنتیک رتبه بندی غیرمغلوب (NRGA)
در سال ۲۰۰۸ یک الگوریتم تکاملی چند هدفه با نام الگوریتم ژنتیک مبتنی بر رتبه بندی نامغلوبها (NRGA) به طور موفقیت آمیزی توسط عمرالجدان و همکارانش برای بهینه سازی توابع غیرمحدب، غیر خطی و گسسته توسعه داده شد. آنها الگوریتم های چند هدفهای را که براساس مرتب کردن غیر مغلوبها کار میکردند مورد بررسی قرار دادند. براساس مسائل موجود در رویکردهای قبلی، آنها رویکرد جدیدی را با ترکیب الگوریتم انتخاب چرخه رولت مبتنی بر رتبه بندی و الگوریتم رتبه بندی جمعیت براساس پارتو توسعه دادند. که الگوریتم ژنتیک رتبه بندی نامغلوب (NRGA) نامگذاری شد. در این ترکیب یک رتبهبندی دو لایهای براساس انتخاب عملگر انتخاب چرخه رولت ارائه میشود. که نسل جدید والد براساس انتخاب بهترین جوابها (باتوجه به برازش و گستردگی) به طور تصادفی انتخاب میکند. این الگوریتم در اکثر موارد قادر به دستیابی به گستردگی بهتری از جوابها در مرز پارتو و همچنین همگرایی زودتر به مرز بهینه پارتو، در مقایسه با سایر الگوریتمهای تکاملی چند هدفه میباشد
مفروضات مسأله
در مسئله ارائه شده در اين تحقيق فرضهاي زير در نظر گرفته ميشوند:
- ماشینها نامرتبط با سرعت های متفاوت میباشند و به صورت موازی قرار گرفتهاند.
- هر کار شامل یک عملیات بر روی ماشین می باشد.
- کارها دارای زمان دسترسی متفاوت هستند به عبارتی ممکن است همه ی کارها در لحظه ی صفر در دسترس نباشند.
- شکست یا وقفه در کارها مجاز نیست بدین معنی که اگر پردازش یک کار روی یک ماشین آغاز شد، پردازش آن بدون وقفه تا اتمام کار ادامه می یابد.
- از کار افتادگی و شکست برای ماشین آلات مجاز نیست، به عبارتیتمامي ماشينها به طور مستمر دسترس هستند و امکان خرابي ماشين وجود ندارد.
- در هر لحظه یک کار بر روی ماشین پردازش می شود (ماشین ها نمی توانند دو کار را به طور همزمان انجام دهند).
- کارها دارای زمان آماده سازی وابسته به توالی هستند.
- تمام پارامترهای مساله اعم اززمانهاي پردازش، نصب ماشين، موعد تحويل و ضرايب هزينه زودکرد و ديرکرد زماني مشخص و قطعی هستند.(هیچ پارامتر تصادفی وجود ندارد)
- بیکاری ماشینها مجاز میباشد.
- تابع هدف در سطر (3-1) مجموع هزینههای زودکرد و دیرکرد را حداقل میکند. در اين فرمول مقادير متغيرهاي تصميمگيري و براي کار نوع به ترتيب از روابط زیر بدست ميآيند:
- تابع هدف در سطر (3-2) مجموع زمان های تکمیل را حداقل می نماید.
- محدودیت (3-3) موجب میشود تا هر کار فقط روی یک ماشین انجام گیرد.
- محدودیت (3-4) اطمینان میدهد هر کار بعد از یک کار دیگر انجام گیرد، اولین کار بعد از کار فرضی صفر است.
- محدودیت (3-5) نشان میدهد که بعد از هر کار حداکثر یک کار وجود دارد.
- محدودیت(3-6) نشان می دهد که یک ماشین در صورتی می تواند کاری را انجام دهد که توانایی انجام آن کار را داشته باشد. همانطور که در بخش پارامترهاي ورودي مدل بيان شد، اگر امکان پردازش کار نوع بر روي ماشين نوع وجود داشته باشد، پارامتر مقدار يک و در غير اين صورت مقدار صفر را ميگيرد. امکان پردازش کار نوع بر روي ماشين نوع با توجه به مجموعه پردازشي کار نوع يعني مشخص ميشود. زيرمجموعهاي از مجموعه ماشينهامیباشد که شامل ماشينهايي ميباشد که ميتوانند کار نوع را پردازش کنند. به اين ترتيب اين محدوديت مدل را مقيد ميسازد که براي تخصيص ماشين نوع به کار نوع و به تبع آن تخصيص مقدار يک به متغير تصميمگيري ، مقدار را که جزء پارامترهاي ورودي مدل ميباشد را نيز بررسي نمايد و در صورتي اين تخصيص صورت مي پذيرد که که مقدار نيز همانند يک باشد.
- محدودیت (3-7) نشان می دهد که دو کار در صورتی می توانند پشت هم انجام گیرند که روی یک ماشین انجام شوند.
- محدودیت های (3-8) تا (3-9) زمان شروع کارها را مشخص میکنند.
- محدودیت (3-10) زمان تکمیل کارها را مشخص می نماید.
- محدودیت (3-11) زمان زودکرد و دیرکرد کارها را محاسبه مینماید. در واقع اين محدوديت بيانگر رابطه بين زمانهاي تکميل، زمانهاي زودکرد، زمانهاي ديرکرد و موعد تحويل کارها ميباشد و ارتباط تنگاتنگي با مقدار تابع هدف دارد. يکي از فرض هاي موجود در بخش مفروضات مدل مجاز بودن بيکاري ماشينهاست. طبق اين فرض و با در نظر گرفتن محدوديت ارائه شده در اين قسمت، زماني که پردازش يک کار بر روي يک ماشين به اتمام ميرسد ميتوان ماشين را بيکار نگه داشت و از پردازش کارهاي بعدي بر روي آن جلوگيري نمود مشروط بر اينکه بهبودي در مقدار تابع هدف حاصل شود. بيکار نگه داشتن يک ماشين موجب ميشود که زمان تکميل کاري که پردازش آن قبل از آغاز زمان بيکاري به اتمام رسيده به اندازه زمان بيکاري افزايش يابد. در نتيجه زمان زودکرد يا ديرکرد آن کار و کارهاي بعدي و به تبع آن مقدار تابع دستخوش تغيير ميشود. بدين ترتيب بيکاري اختياری ماشينها ميتواند موجب بهبود تابع هدف مدل شود.
- محدودیت (3-12) بیان کننده ی باینری بودن متغیرهای تصمیم است.