پروژه فروشنده دوره گرد با الگوریتم فاخته با MATLAB
در این پست پروژه فروشنده دوره گرد با الگوریتم فاخته با متلب به همراه داکیومنت را آماده کرده ایم که در ادامه به شرح این الگوریتم پرداخته و فیلم و تصویر خروجی این پروژه را نشان خواهیم داد.
الگوریتم بهینه سازی فاخته – Cuckoo optimization Algorithm :
الگوریتم فاخته یا COA الهام گرفته از روش زندگی پرنده ای بنام فاخته است که الگوریتمی جدید، به جهت پیدا کردن مینیمم کلی می باشد. فاخته یکی از هزاران پرندگانی است که از هر گونه لانه سازی خود را رها ساخته و پرورش جوجه های خود نیز به دیگر پرندگان واگذار می كند.
زندگی منحصر به فرد و رفتار خاص این پرنده در تخم گذاری، اساس ایجاد این الگوریتم بهینه سازی تکاملی می باشد. مانند دیگر الگوریتم های تکاملی از نظیر الگوریتم ژنتیک یا Genetic Algorithm – GA و الگوریتم ازدحام ذرات یا Particle swarm optimization – PSO آغاز آن با یک جمعیت اولیه می باشد.
توضیحات بیشتر، فیلم و تصویر خروجی پروژه فروشنده دوره گرد با الگوریتم فاخته با متلب در ادامه مطلب.
جمعیت الگوریتم فاخته به دو نوع فاخته ای بالغ و تخم ها تقسیم می شود. فاخته های ابتدایی بزرگ شده و در آشیانه میزبان تخم گذاری می کنند. فاخته ها به صورت تصادفی شروع به خوابیدن روی تخم ها در آشیانه میزبان می کند. تخم های فاخته بسیار مشابه تخم های پرنده میزبان است که این شباهت، فرصت خوبی جهت رشد و تبدیل به فاخته بالغ می باشد.
الگوریتم بهینه سازی فاخته ، قصد بهینه سازی دارد، بنابراین فاخته به سمت بهترین محل سکونت مهاجرت می کند. هنگامی که که تمامی فاخته ها به محل مقصد نهایی مهاجرت کردند، محل سکونت جدید مشخص خواهد شد. دوباره فرایند تخم گذاری جدید آغاز می شود.
گام های اصلی الگوریتم بهینه سازی فاخته به صورت زیر می باشد:
- مقدار دهی اولیه به صورت تصادفی برای هر محل سکونت.
- اختصاص برخی از تخم ها به هر فاخته.
- تخصیص ELR برای فاخته.
- تخم گذاری هر فاخته با توجه به گرفتن ELR متناظر با آن.
- شکستن تخم هایی که به وسیله پرنده میزبان تشخیص داده شده است.
- تخم ها به جوجه تبدیل شده و جوجه ها بزرگ شوند.
- ارزیابی محل سکونت برای هر فاخته بزرگ شده.
- محدود کردن بیشترین تعداد فاخته ها و از بین بردن ضعیف ترین ها در محدوده.
- کلاس بندی فاخته ها و بهترین گروه.
- مهاجرت جمعیت جدید به محل سکونت هدف.
- کلاس بندی فاخته ها و بهترین گروه.
- مهاجرت جمعیت جدید به محل سکونت هدف.
- اگر شرایط قابل قبول نبود از مرحله 2 دوباره شروع کند. اگر شرایط برآورده شده خروجی نمایش داده بشود.
شرح مسئله فروشنده دوره گرد با الگوریتم فاخته :
در نظر بگیرید تعدادی شهر داریم که هزینه رفتن به صورت مستقیم از یکی به دیگری را اطلاع داریم. حال کم هزینه ترین مسیری که از یک شهر شروع شود و از تمامی شهرها دقیقا یک بار عبور کرده و به شهر شروع باز گردد. مطلوب است این مسئله را با الگوریتم فاخته در محیط متلب حل نمائید.
تعداد کل راه حل ها برابر است با تعداد شهرها است.
تصویر خروجی 2:
تصویر خروجی 3:
سلام ، ببخشی کد حل tsp با الگوریتم فاخته رو لطف میکنید بفرستید؟
در همین صفحه که در سایت هستید، می تونید برای خرید اقدام و لینک دانلود دریافت نمائید.
فیلمش هم هست یا فقط pdf ؟
سورس کد متلب به همراه داکیومنت راهنما در فایل ورد هست.