مطالب پژوهشی درباره استفاده از الگوریتم بهینه سازی مبتنی ... - منابع مورد نیاز برای پایان نامه : دانلود پژوهش های پیشین |
هر کدام از A’i,j تولید شده متناظر یک فعالیت است. ماتریس جدید، خواص ماتریس Population را دارد. هر سطر مانند A’i درماتریس جدید را زمانبندی میکنیم و زمان اتمام آن را بدست میآوریم. اگر نتیجه کمتر از result(i) باشد، A’i جایگزین Ai درماتریس Population می شود. یعنی سطر i ام ماتریس حاوی ترتیبی از فعالیتها می شود که makespan کمتری دارد. پس از اینکه برای همه سطرهای ماتریس Population فاز معلم را اجرا کردیم، این ماتریس تغییر می کند. سپس وارد فاز فراگیر میشویم.
( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. )
-
- در فاز فراگیر، هر دانش آموز بصورت تصادفی با دانش آموزان دیگرتعامل می کند تا دانشش ارتقا یابد. دراین فاز نیز مانند فاز معلم ماتریس جدیدی با توجه به ماتریس Population میسازیم. برای هر سطر ماتریس Population مانند Ai یک سطر متمایز دیگر مانند Aj را به تصادف انتخاب میکنیم و طبق روابط (۳-۵) و (۳-۶) در فصل سوم، عناصر ماتریس جدید را میسازیم. در اینجا برای محاسبه هر سطر ماتریس جدید، میتوان رابطه ۴-۲ را نوشت.
(۴-۲)
هر سطر مانند A”i از ماتریس جدید در فاز فراگیر را زمانبندی میکنیم و زمان اتمام آن را بدست میآوریم. اگر نتیجه کمتر از result(i) باشد، A”i جایگزین Ai درماتریس Population می شود. بررسی میکنیم که سطرهای ماتریس تکراری نباشند. تکراری بودن سطرهای ماتریس به معنی تکراری بودن لیست فعالیت است. اگر تکراری بودن زیاد باشد در دام بهینه محلی میافتیم. بنابراین سطرهای تکراری را تغییر میدهیم. مثلا جایگشت جدیدی را جایگزین آن میکنیم و زمانبندی اولیه را روی آن اعمال میکنیم.
سپس ماتریس Population را براساس نتایج هر سطر که همان makespan ها هستند، بصورت صعودی مرتب میکنیم. حال لیستهای فعالیت نخبه را جایگزین سطرهای آخر ماتریس میکنیم. با اینکار پاسخهای بدتر را حذف مینماییم. حال ماتریس Population باز هم تغییر کرد. مجددا فازهای معلم و فراگیر را تکرار میکنیم. در پایان سطر اول ماتریس کمترین رمان تکمیل را دارد. تعداد تکرار (maxit)، اندازه جمعیت، تعداد موضوعات آموزش و اندازه نخبه، پارامترهای عمومی و ورودی الگوریتم هستند. در شکل ۴-۱۳، یک لیست شدنی،که از شکل ۴-۱۱ بدست آوردهایم، را نمایش میدهد که چگونه با اجرای الگوریتم ETLBO و تاثیر فازهای معلم و فراگیر، لیست جدیدی بدست می آید. makespan لیست اولیه ۱۶ است که در لیست جدید به ۱۳ بهبود مییابد.
شکل ۴-۱۳ بهبود زمان تکمیل فعالیتها با اجرای ETLBO
در شکل ۴-۱۴ فلوچارت حل مسئله زمانبندی پروژه با منابع محدود با الگوریتم بهینهسازی مبتنی بر آموزش-یادگیری آمدهاست.
شکل ۴-۱۴ فلوچارت حل مسئله RCPSPبا الگوریتم ETLBO
فصل پنجم
نتایج عددی و نتیجهگیری
۵-۱ مقدمه
در این فصل کارایی الگوریتم مبتنی بر آموزش-یادگیری را در حل مسئله RCPSP بررسی میکنیم و با دیگر الگوریتمهای فراابتکاری که در حل این مسئله بکار گرفته شده اند، مقایسه میکنیم. از نمونه مسائل کتابخانه PSPLIB[69] استفاده کردهایم. این کتابخانه شامل نمونه مسائل استانداردی برای مسئله RCPSP است. نمونه مسائل این کتابخانه ۴ نوع منبع دارند و شامل ۳۰، ۶۰، ۹۰ و ۱۲۰ فعالیت هستند. فعالیتها با اعداد طبیعی مشخص شده اند و طول زمان هر فعالیت عددی بین ۱ تا ۱۰ واحد زمانی است. در بخش بعد این کتابخانه بیشتر توضیح داده می شود. الگوریتم را با بهره گرفتن از نرمافزار MATLAB 2012 پیادهسازی کردهایم و مسائل را با ترکیبها و پیکربندیهای مختلف، براساس پارامترهای اندازه جمعیت، حداکثر زمانبندیها (تعداد تکرار) و اندازه نخبه حل کردهایم. تاثیر این پارامترها را بر الگوریتم تحلیل و بررسی نمودهایم. برای مقایسه با دیگر الگوریتمها، از معیارهای نرخ همگرایی و درصد انحراف میانگین از پاسخ بهینه یا از طول مسیر بحرانی استفاده شدهاست. از آنجا که برای مسائل J60 و J90 و J120 در کتابخانه مذکور پاسخ بهینه نداریم، از طول مسیر بحرانی در این مسائل برای محاسبه درصد انحراف میانگین استفاده شدهاست. در مورد مسائل J30 جواب بهینه را داریم. بنابراین از خود جواب بهینه استفاده مینماییم.
۵-۲ کتابخانه PSPLIB
گستردگی حالتهای مختلف مسئله زمانبندی پروژه با منابع محدود، فرضیات مختلف آن و روشهای مختلفی حل این مسئله که با توجه حالتهای متفاوت آن طراحی شده است، باعث ایجاد مسائل استاندارد برای این حالتهای متفاوت شدهاست. به کمک این مسائل استاندارد امکان مقایسه الگوریتمهای مختلف را تسهیل کردهاست. دیویس[۷۰] اولین بار ۸۳ نمونه استاندارد از مسئله زمانبندی پروژه با منابع محدود ایجاد نمود. پترسون[۷۱] و هیبر[۷۲]،۱۱ مثال نمونه ایجاد کردند. سپس تالبوت[۷۳] و پترسون ۱۰ مثال دیگر ایجاد کردند. پترسون، همه مثالهای گفته شده به همراه ۶ مثال دیگر را در یک دسته جمعآوری کرد و یک مجموعه شامل ۱۱۰ مثال استاندارد بوجود آورد. پترسون، پاسخ بهینه برای هر ۱۱۰ مثال را با تابع هدف کمترین زمان تکمیل پروژه، بدست آورد و به مجموعه استانداردش اضافه کرد. همه این مثالها، مسئله زمانبندی پروژه با منابع محدود تک حالتی[۷۴] بودند[۶۸]. نقطه ضعف نمونه مسائل مجموعه پترسون، نداشتن پارامترهایی بود که برای آزمایش الگوریتمها، استفاده شود. پارامترهایی را در طرح مسائل استاندارد باید تعیین نمود، تا بتوان به کمک این پارامترها، پیچیدگی مسئله را کنترل کرد. آلوارز[۷۵] و تاماریت[۷۶] مجموعه مسائل استاندارد دیگری با ۱۴۴ مثال را ارائه کردند و ۵ نوع پارامتر برای آنها در نظر گرفتند. در این مثالها مسائل با ۲۵ و ۴۹ و ۱۰۱ فعالیت تعریف شده اند[۶۸]. بعد از آنها کولیش[۷۷] ۴۸۰ مسئله نمونه با ۳۰ فعالیت برای مسئله زمانبندی پروژه با منابع محدود یک حالته و ۶۴۰ مسئله نمونه با ۱۰ فعالیت برای مسئله زمانبندی پروژه با منابع محدود چندحالته[۷۸] ایجاد کرد. کولیش و اسپرچر[۷۹] به مجموعه قبلی مثالهای جدید با ۶۰ و ۹۰ و ۱۲۰ فعالیت افزودند و ۱۰۰۰۰ مسئله نمونه ایجاد کردند[۶۸]. کولیش برنامه ProGen اولین، تولید کننده مسائل برنامه ریزی و تخصیص منابع را ایجاد کرد که از روش نمایش فعالیت روی گره[۸۰] برای تولید مسائل استفاده می کند. ProGen محققان را قادر میسازد که مثالهای مورد نظر خود را همراه با پارامترهای مختلف ایجاد کنند. سه پارامتر مهم NC[81] و RF[82] و RS[83] هستند که در کنترل پیچیدگی مسائل بکار میروند. NC متوسط تعداد روابط پیشنیازی در هر فعالیت است، RF متوسط درصد مقدار منابعی است که هر فعالیت لازم دارد و RS استحکام میزان منابع را نشان میدهد. اگر منبع مورد نظر به اندازهای باشد که معادل منبع نامحدود باشد RS صفر می شود. با بهره گرفتن از ProGen، کولیش و اسپرچر یک کتابخانه استاندارد برای مسئله زمانبندی پروژه با منابع محدود یک حالته ایجادکردند که طبق جدول ۵-۱ مقادیر پارامترهای NC و RF و RS انتخاب شده اند. این مثالها در کتابخانه موسوم به PSPLIB در سایت اینترنتی http://www.om-db.wi.tum.de/psplib موجود میباشد.
جدول ۵-۱ مقادیر پارامترهای مسائل نمونه در کتابخانه PSPLIB
با توجه به جدول ۳*۴*۴=۴۸ ترکیب مختلف برای سه پارامتر داریم. برای هر یک از ۴۸ حالت، بطور جداگانه برای مسائل با ۳۰ و ۶۰ و ۹۰ فعالیت، ۱۰ مسئله تولید شده است که جمعا ۴۸۰ مسئله برای هرکدام از مسائل با ۳۰و ۶۰ و ۹۰ فعالیت ایجاد گردیدهاست. همچنین ۶۰۰ مسئله با ۱۲۰ فعالیت نیز ایجاد شده است. هر کدام از مسائل در فایلی جداگانه در کتابخانه PSPLIB تعریف گردیدهاند. برای مثال فایل j3015_4.SM یعنی مسئله ۳۰ فعالیت ( با دو فعالیت مجازی ابتدایی و انتهایی ۳۲ فعالیت) دارد و مسئله شماره ۴ برای ترکیب پارامترها با شماره ۱۵ است. پسوند SM نیز مشخص می کند که فعالیتها تک وضعیتی هستند، یعنی یک روش اجرا دارند. شماره ترکیب پارامترها در فایل j30PAR.SM قرار دارند.
برای نمونه مسائل با ۳۰ فعالیت، جواب بهینه با الگوریتمهای دقیق بدست آمدهاست که در فایل j30OPT.SM موجود است. نمونه مسائل با ۶۰ و ۹۰ و ۱۲۰ فعالیت بهعلت پچیدگی زیاد، با روشهای دقیق حل نشدهاند. نمونه مسائل با ۶۰ و ۹۰ و ۱۲۰ فعالیت موجود در کتابخانه را بدون در نظر گرفتن محدودیت منابع حل کرده اند و پاسخهای بدست آمده را بعنوان حد پایین برای نمونه مسائل مذکور با محدودیت منابع، در نظر گرفتهاند. در فایلهای j60lb.txt و j90lb.txt و j120lb.txt از کتابخانه PSPLIB، این حدهای پایین ذخیره شده اند. برای این مسائل، بهترین پاسخهای بدست آمده با الگوریتمهای ابتکاری، در فایلهای j60HRS.SM و j90HRS.SM و j120HRS.SM در دسترس هستند. این فایلها دایما بهروز میگردند. از آنجا که این کتابخانه در اینترنت در دسترس است، برای مسائلی که جواب بهینه آنها بدست نیامدهاست، هر فردی می تواند در صورتیکه جواب بهینه یا بهتر برای آن مسائل بدست آورد به کتابخانه اضافه کند. پروژه های تعریف شده در کتابخانه پروژه ها با ۳۰ و ۶۰ و ۹۰ و۱۲۰ فعالیت، به ترتیب با نامهای J30 و J60 و J90 وJ120 مشخص میشوند.
۵-۳ نتایج آزمایش اجرای الگوریتم با پیکربندیهای مختلف
در این قسمت تاثیر پارامترهای اندازه جمعیت، حداکثر زمانبندیها (تعداد تکرار) و اندازه نخبه را بر الگوریتم TLBO بررسی کردهایم. معیارهای کارایی را نرخ همگرایی (موفقیت) و درصد انحراف میانگین از پاسخ بهینه برای J30 و از طول مسیر بحرانی برای J60 و J90 و J120 در نظر گرفتهایم. بصورت پیشفرض منظور از کارایی را نرخ همگرایی در نظر گرفتهایم. نرخ همگرایی از رابطه زیر بدست می آید:
Success Rate = * 100 (5-1)
در این رابطه M تعداد کل مسائل نمونه است وS تعداد مسائل نمونه ای است که با موفقیت حل شده اند. Success Rate، درصد موفقیت در، یافتن پاسخ بهینه است.
درصد انحراف میانگین از رابطه زیر بدست می آید:
Average percent deviations = * 100 (5-2)
در این رابطه E پاسخ بدست آمده از الگوریتم و CPM طول مسیر بحرانی در گراف فعالیتهاست. Instances نیز تعداد مسائل نمونه است.
۵-۳-۱ تاثیر اندازه جمعیت با تعداد تکرار ثابت
در اولین آزمایش تاثیر اندازه جمعیت را بر کارایی الگوریتم TLBO بررسی کردهایم. اندازه نخبه را ۴ فرض کردهایم. تعداد تکرار را دو حالت ۱۰۰ و ۱۰۰۰ در نظر گرفتهایم. منظور از تعداد تکرار، حداکثر تعداد زمانبندیهای انجام گرفته برای هر نمونه مسئله میباشد. در صورتیکه پاسخ بهینه یا حد پایین، زودتر از رسیدن به حداکثر زمانبندی، بدست آید، اجرای برنامه خاتمه مییابد. در این جا نرخ همگرایی، معیار کارایی میباشد.
در حالت با تعداد تکرار ۱۰۰، اندازه جمعیت را از ۱۰ تا ۱۰۰ با طول گامهای ۱۰ تغییر دادهایم. نتایج بدست آمده در جدول ۵-۲ و شکل ۵-۱ نمایش داده شدهاست.
فرم در حال بارگذاری ...
[چهارشنبه 1401-04-15] [ 05:33:00 ب.ظ ]
|