پیشنهاد میکنیم برای یادگیری موثر و کامل فیلم آموزش الگوریتم TLBO اصلاح شده MTLBO در متلب را تهیه و مطالعه فرمایید. که علاوه بر آموزش کامل الگوریتم TLBO مثالهای عملی برای یادگیری بهتر ارائه میدهد. در این آموزش نسخه بهبود داده شده الگوریتم یعنی MTLBO هم به طور کامل آموزش داده شده است.
مقدمه
الگوریتم بهینه سازی TLBO نیز مشابه سایر روشهای بهینه سازی موجود یک الگوریتم برگرفته از طبیعت و مبتنی بر جمعیت است و بر اساس تاثیر یک معلم بر روی یادگیری در کلاس درس کار میکند. این الگوریتم از یک جمعیتی از جوابها برای دستیابی به جواب کلی استفاده مینماید. جمعیت به عنوان گروهی از یادگیران یا دانش آموزان یک کلاس در نظر گرفته میشوند. یک معلم تلاش میکند تا با آموزش به دانش آموزان، سطح دانش کلاس را افزایش دهد و دانش آموز به نمره یا رتبه خوبی مطابق با توانایی خودش دست یابد. در حقیقت یک معلم خوب کسی است که دانش آموز خود را به سطح دانش خود یا نزدیک به خود برساند.
معلم یک شخص با دانش بالا در جامعه بوده که علم خود را با دانش آموزان خود تقسیم میکنند، به طوری که بهترین جواب ( بهترین عضو جمعیت ) در همان تکرار به عنوان معلم عمل میکند. اما لازم است به این نکته اشاره شود که دانش آموزان مطابق با کیفیت آموزش ارائه شده توسط معلم و وضعیت شاگردان حاضر در کلاس دانش کسب میکنند. علاوه بر این دانش آموزان از تعامل متقابل بین خودشان که به وضعیتشان کمک میکند آموزش میبینند.
الگوریتم TLBO
همان طور که پیشتر گفته شد الگوریتم بهینه سازی TLBO براساس تاثیر یک معلم بر روی خروجی دانش آموزان در یک کلاس است و به طور کلی در یک کلاس معلم فردی تعیین میشود که دارای مقدار بهتری از لحاظ تابع تناسب است و سطحی بالاتری نسبت به دانش آموزان دارد و میتواند دانش آموزان را با دانش خود سهیم نماید. یک معلم خوب، یک میانگین بهتر برای دانش آموزان تولید میکند. در هر مرحله و تکرار معلم کسی است، که بهترین فرد کلاس باشند و بهترین تابع هدف را دارد. البته در هر مرحله ممکن است معلم تغییر نماید.
این الگوریتم جهت استفاده در امور مهندسی گزینه بسیار مناسبی می باشد. در این الگوریتم از فرآیند آموزش و یادگیری که در کلاس درس اتفاق میافتد، الهام گرفته شده است. بدین ترتیب که وقتی معلم درس را ارائه میدهد، در نهایت ارزیابی کرده و دانش آموزان نیز نمره را کسب مینمایند. اگر نمودار شکل ۱ نمودار توزیع احتمال نمرات افراد باشند، نمودار سمت چپ مربوط به کلاس اول و نمودار سمت راست مربوط به کلاس دوم یا معلم دیگر میباشد. با مقایسه سطح نمرات این دو کلاس در مییابیم که معلم دوم موفقتر عمل کرده است چرا که میانگین سطح کلاس آن که 𝑀۲ میباشد، از میانگین کلاس اول 𝑀۱ بالاتر میباشد.
در این نمودار برای نمایش توزیع نمرات از توزیع گاوسی استفاده شده است اما می توان از هر توزیع دیگری نیز استفاده نمود. اما میتوان از هر توزیع دیگری نیز استفاده نمود. طبق رابطه چگالی احتمال توزیع گاوسی میانگین همان 𝑀۱ و 𝑀۲ می باشد. در این الگوریتم به پراکندگی نمرات یا واریانس پرداخته نمی شود و مهمترین نکته همان میانگین نمرات دانش آموزان کلاس است. برای آشنایی بیشتر شما با این موضوع و داشتن ارائه مفید در این زمینه پیشنهاد میکنیم که فایل آماده موجود در لینک را دانلود کنید.
مراحل الگوریتم بهینه سازی مبتنی بر یادگیری و آموزش TLBO
الگوریتم بهینه سازی TLBO دارای دو مرحله یا دو فاز اصلی است که عبارتند از:
- مرحله معلم یا فاز آموزش
- مرحله دانش آموز یا فاز یادگیری
مرحله معلم یا فاز آموزش
در فاز اول، معلم سعی میکند تا میانگین کلاس را به سطح خود برساند و سطح دانش آموزان در این مرحله به سمت معلم تغییر مینمایند (شکل ۲ ) در این الگوریتم معلم از بین دانش آموزان انتخاب میشود، یعنی کسی که اطلاعاتش از بقیه بیشتر باشد و بهتر باشند به عنوان معلم انتخاب خواهد شد.
در نمودار شکل ۲، T1 به عنوان معلم کلاس انتخاب شده و سعی میکند میانگین سطح کلاس یعنی 𝑀۱ را به سطح خودش برساند. اما در واقعیت این امر امکان پذیر نیست که همه دانش آموزان به سطح معلم برسند بلکه نهایت به سطح میانگین جدید 𝑀۲ خواهند رسید. در اینجا به یک جامعه آماری دیگر خواهیم رسید که دارای میانگین 𝑀۲ است و معلم جدید، همان بهترین فرد در جمعیت آماری جدید یا T2 انتخاب خواهد شد. در این مرحله معلم جدید یا همان T2 سعی خواهد کرد که میانگین سطح کلاس را به خودش برساند و این روال بدین صورت ادامه خواهد داشت تا جمعیت بهتر شود و به عنوان فاز اول الگوریتم مطرح میشود.
مدل ریاضی برای مرحله معلم
اندازه گام جابجایی برابر است با X teacher – Mean که در این رابطه X teacher همان میانگین مطلوب یا بهترین عضو کلاس میباشد و Mean نیز میانگین اعضای جمعیت در دور فعلی است. بنابراین رابطه ریاضی برای فاز معلم بدین صورت خواهد شد:
که در آن r یک بردار تصادفی بین صفر و یک بوده که میزان موفقیت یک دانش آموز در درک مطالب یاد داده شده توسط استاد یا معلم را نشان میدهد. بدین صورت که اگر r صفر باشد یعنی دانش آموز از مطالبی که معلم به او آموزش داده چیزی یاد نگرفته است و اگر r برابر یک باشد یعنی تمام مطالب معلم را فراگرفته است. البته مقدار r بین صفر و یک است و بسته به عدد تصادف ایجا شده میتواند یادگیری متفاوت باشد. برای درک بهتر r را میتوان ضریب هوشی دانش آمز نیز در نظر گرفت.
همچنین 𝑇𝑓 یا ضریب معلم نشان دهنده ضریب موفقیت معلم است که میتواند عدد ۱ یا ۲ باشد. اگر 𝑇𝑓 معلم یک باشد، یک یادگیری معمولی را خوهیم داشت ولی اگر این ضریب ۲ باشد شتاب یادگیری بیشتر خواهد گشت. 𝑇𝑓 قدرت بیان یک معلم در نظر گرفت. بطور کلی هدف از تزریق r و 𝑇𝑓 در رابطه بالا ایجاد تنوع جمعیتی است تا فضای جستجو به صورت تصادفی توسط افراد جمعیت جستجو شوند.
مرحله دانش آموز یا فاز یادگیری
فاز دانش آموز بعد از فاز معلم اجرا میشود و دانش آموزان میتوانند از یکدیگر نیز آموزش ببیند و بر روی یکدیگر تاثیر بگذارند و این تعامل باعث میشود که سطوح دانش آموزان ارتقا پیدا نماید. این فاز که نام دیگر آن فاز یادگیری میباشد همان طور که در شکل ۳ مشخص شده دانش آموزان با تعامل و بحث و گفتگو با یکدیگر سعی در افزایش سطح دانش هم دارند.
با توجه به شکل ۳ دو دانش آموز بصورت تصادفی از بین جمعیت انتخاب میشوند و و در آن دانش آموز اول یعنی xi میخواهد از دانش آموز دوم یعنی xj آموزش ببیند. بسته به میزان نمره این دو دانش آموز دو حالت برای اثر پذیری دانش دانش آموز xi و دانش آموز xj بوجود خواهد آمد:
- حالت اول: اگر نمرات دانش آموز در حال یادگیری از دانش آموز آموزش دهنده بدتر باشد.
- حالت دوم: اگر نمرات دانش آموز در حال یادگیری از آموزش دهنده بهتر باشد.
حالت اول: اگر نمرات دانش آموز در حال یادگیری از دانش آموز آموزش دهنده بدتر باشد
در این حالت یک دانش آموز ضعیف xi میخواهد از یک دانش آموز با نمرات بهتر آموزش xj ببیند یعنی تا حد ممکن میخواهد فاصله خودش را با همکلاسیاش کم کند. در نتیجه مشابه فاز معلم برای افزایش تنوع جمعیتی به این رابطه ایده آل یک ضریب تصادفی r اضافه مینماییم. رابطه این حالت بصورت زیر تعریف میشود:
حالت دوم: اگر نمرات دانش آموز در حال یادگیری از آموزش دهنده بهتر باشد
همان طور که در شکل ۳ مشخص است در این حالت دانش آموز در حال یادگیری که همان xi میباشد از دانش آموز در حال آموزش یعنی xj دارای نمرات بهتری میباشد. بدین منظور برای بهبود موقعیت xi باید تا جای ممکن از xj دور شود یا فاصله بگیرد. بنابراین عکس حالت قبلی اتفاق خواهد افتاد یعنی :
باید به این نکته اشاره کرد که در هر دو فاز معلم و دانش آموز با بدست آمدن دانش آموز جدید x مقدار تابع هدف محاسبه میشود و اگر این مقدار از مقدار تابع هدف دانش آموز قدیم بهتر باشد، دانش آموز جدید جایگزین دانش آموز قدیم میشود در غیر این صورت دانش آموز قدیم بدون تغییر میماند.
فلوچارت الگوریتم بهینه سازی TLBO
در این سایت همچنین یک ویدئوی آموزشی کامل در مورد الگوریتم TLBO و نسخه اصلاح شده آن یعنی MTLBO آماده شده است که برای مشاهده جزئیات آن به آموزش الگوریتم TLBO اصلاح شده MTLBO در متلب مراجعه فرمایید. در این بخش حل مسئله TSP با الگوریتم TLBO با بهینه سازی مبتنی بر آموزش و یادگیری در متلب قرار داده شده است که برای دسترسی میتوانید به لینک زیر مراجعه کنید.
مراجع
R.V. Rao, V.J. Savsani, D.P. Vakharia,”Teaching–learning-based optimization: A novel method for constrained mechanical design optimization problems”,Computer-Aided Design 43 (2011) 303–۳۱۵.
ابراهیم علیزاده ، علی ملکی، حمید امیری آرا، “الگوریتم مبتنی بر آموزش و یادگیری بهبود یافته”، کنگره بین المللی مطالعات میان رشته ای در علوم پایه و مهندسی، تهران آذرماه ۹۶.