برنامهنویس:
هزینه سفارش:
۲۴۸,۰۰۰ تومان قیمت اصلی: ۲۴۸,۰۰۰ تومان بود.۹۶,۰۰۰ تومانقیمت فعلی: ۹۶,۰۰۰ تومان.
تخصصی و منحصر به فرد بودن این اثر، تضمین کننده بهای محصول نسبت به آثار مشابه است.
در این پست سورس کد الگوریتم شبیه ساز حرارتی SA برای حل مسئله فروشنده دوره گرد TSP در متلب قرار داده شده است. این سورس کد با استفاده از ساز و کارهای الگوریتم شبیه ساز حرارتی SA برای حل مسئله فروشنده دوره گرد مورد استفاده قرار گرفته است. این سورس کد به صورت واضح و روان میتواند برای سایر مسائل استفاده گردد فقط بایستی تابع هزینه و مدل آن منطبق بر مسئله باشد. این سورس کد برای دانشجویان و محققان در زمینه الگوریتمهای فرا اکتشافی و حل مسائل NP-Hard مفید و سودمند است. در ادامه به تشریح الگوریتم و حل مسئله میپردازیم.
الگوریتم شبیهساز حرارتی (Simulated Annealing) (SA) یا تبرید شبیه سازی شده، یک الگوریتم بهینهسازی فرا ابتکاری ساده و اثربخش در حل مسائل بهینهسازی است. منشأ الگوریتم تبرید شبیهسازیشده، کارهای کریک پاتریک و کرنی و همکارانشان در سالهای ۱۹۸۳ و ۱۹۸۵ است.
این تکنیک شامل قرار دادن ماده در دمای بالا و سپس کم کردن تدریجی این دماست. در روش شبیهساز حرارتی (SA)، هر نقطه s در فضای جستجو مشابه یک حالت از یک سیستم فیزیکی است و تابع (E(s که باید کمینه شود، مشابه با انرژی داخلی سیستم در آن حالت است.
در این روش، هدف انتقال سیستم از حالت اولیه دلخواه، به حالتی است که سیستم در آن کمترین انرژی را داشته باشد. برای حل یک مسئله بهینهسازی، الگوریتم SA ابتدا از یک جواب اولیه شروع میکند و سپس در یک حلقه تکرار به جوابهای همسایه حرکت میکند. اگر جواب همسایه بهتر از جواب فعلی باشد، الگوریتم آن را بهعنوان جواب فعلی قرار میدهد (به آن حرکت میکند)، در غیر این صورت، الگوریتم آن جواب را با احتمال exp(-ΔE/T) بهعنوان جواب فعلی میپذیرد.
در این رابطه ΔE تفاوت بین تابع هدف جواب فعلی و جواب همسایه است و T یک پارامتر به نام دما است. در هر دما، چندین تکرار اجرا میشود و سپس دما بهآرامی کاهش داده میشود. در گامهای اولیه دما خیلی بالا قرار داده میشود تا احتمال بیشتری برای پذیرش جوابهای بدتر وجود داشته باشد.
با کاهش تدریجی دما، در گامهای پایانی احتمال کمتری برای پذیرش جوابهای بدتر وجود خواهد داشت و بنابراین الگوریتم به سمت یک جواب خوب همگرا میشود. فلوچارت زیر نحوه اجرای الگوریتم شبیه ساز حرارتی را نشان میدهد.

مساله فروشنده دوره گرد Travelling salesman problem یا به اختصار TSP مسالهاي است که شرح آن خيلي آسان ميباشد. تعريف آن بدين صورت است که تعداد متناهي شهر با هزينه پيمايش بين هر جفت از آنها داده ميشود و هدف مساله اين است که يک فروشنده دوره گرد تمامي اين شهرها را به گونهاي ملاقات کند که هر يک از اين شهرها را فقط يک بارملاقات کرده و دوباره به شهر آغازين برگردد با اين شرط که با کمترين هزينه پيمايش اين کار را انجام دهد.
به طور کلي هدف پيدا کردن کم هزينهترين تور براي ملاقات همه شهرها و بازگشت به شهر آغازين حرکت است. مساله فروشنده دوره گرد در شکل ساده و اختصاري با نام TSP شناخته ميشود. شکل زیر يک نمونه جواب از مساله فروشنده دوره گرد که در سال 1591 براي 15 شهر از کشور آمريکا مطرح شد را نشان ميدهد که با روش شاخه وحد حل شد.

در این قسمت سورس برنامه حل مسئله فروشنده دوره گرد TSP با الگوریتم شبیه ساز حرارتی SA در متلب آماده شده است این سورس کد شامل 10 فایل میباشد که عبارتند از:

| نام اثر: | الگوریتم شبیه ساز حرارتی SA برای حل مسئله فروشنده دوره گرد TSP در متلب |
| نوع اثر: | سورس کد |
| برنامهنویس: | تیم برنامهنویسی پیاستور |
| زبان برنامه نویسی: | Matlab |
| ویژگی: | قابل دانلود و ویرایش |

تیم برنامه نویسی پی استور یکی از اولین گروههای تشکیل شده در مجموعه آموزشی پی استور میباشد. این تیم از اساتید مجرب و فارغ التحصیلان رشتههای فنی و مهندسی تشکیل شده که در زمینههای مختلف برنامهنویسی و تهیه سورس کد فعال هستند.
هزینه سفارش:
۲۴۸,۰۰۰ تومان قیمت اصلی: ۲۴۸,۰۰۰ تومان بود.۹۶,۰۰۰ تومانقیمت فعلی: ۹۶,۰۰۰ تومان.
نظرات
فاطمه
روش نمایش جواب permutation هست؟
مدیریت و پشتیبانی
سلام
بله نمایش جواب (شهرها) در الگوریتم SA به صورت جایگشتی یا همان permutation هست.
پرسپولیس
من کد الگوریتم رو از چند سایت برداشته بودم ولی نمی دونم چرا اجرا نمی شد ولی بعد دانلود از سایت اجرا شد فقط کاش پولی نبود
سحر
خوب بود مرسی