هر کدام از 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 بررسی کرده­ایم. اندازه نخبه را ۴ فرض کرده­ایم. تعداد تکرار را دو حالت ۱۰۰ و ۱۰۰۰ در نظر گرفته­ایم. منظور از تعداد تکرار، حداکثر تعداد زمانبندی­های انجام گرفته­ برای هر نمونه مسئله می­باشد. در صورتیکه پاسخ بهینه یا حد پایین، زودتر از رسیدن به حداکثر زمانبندی، بدست آید، اجرای برنامه خاتمه می­یابد. در این جا نرخ همگرایی، معیار کارایی می­باشد.
در حالت با تعداد تکرار ۱۰۰، اندازه جمعیت را از ۱۰ تا ۱۰۰ با طول گام­های ۱۰ تغییر داده­ایم. نتایج بدست آمده در جدول ۵-۲ و شکل ۵-۱ نمایش داده شده­است.

موضوعات: بدون موضوع  لینک ثابت


فرم در حال بارگذاری ...