تخفیف نوروزی پی استور

کد تخفیف: PR1404

شامل تمامی آثار
روز
ساعت
دقیقه
ثانیه

با خرید اشتراک ویژه ، با هزینه بسیار کمتر به فایل های پاورپوینت دسترسی داشته باشید!

حل فروشنده دوره گرد با الگوریتم جهش قورباغه SFLA در متلب

هزینه سفارش:

تخفیف ویژه 60 درصدی

قیمت اصلی: ۲۶۹,۰۰۰ تومان بود.قیمت فعلی: ۱۰۷,۶۰۰ تومان.

روز
ساعت
دقیقه
ثانیه
دریافت کد تخفیف با گردونه شانس %
تعداد فراگیر
280 نفر
امتیاز کاربران
امتیاز 5.00 از 5

در این پست کد حل مسئله فروشنده دوره گرد TSP با الگوریتم جهش قورباغه SFLA در متلب قرار داده شده است. الگوریتم بهینه سازی جهش قورباغه یا Shuffled Frog Leaping Algorithm  (به اختصار SFLA)، یکی از الگوریتم‌های بهینه سازی فرا ابتکاری است که از رفتار اجتماعی قورباغه‌ها در طبیعت الهام گرفته شده است در ادامه به تشریح حل مسئله فروشنده دوره گرد TSP با الگوریتم جهش قورباغه SFLA در متلب پرداخته خواهد شد.

در این پست کد فروشنده دوره گرد با الگوریتم جهش قورباغه SFLA در متلب قرار داده شده است. الگوریتم بهینه سازی جهش قورباغه یا Shuffled Frog Leaping Algorithm  (به اختصار SFLA)، یکی از الگوریتم‌های بهینه سازی فرا ابتکاری است که از رفتار اجتماعی قورباغه‌ها در طبیعت الهام گرفته شده است، و از نظر دسته بندی، در میان الگوریتم‌های رفتاری یا الگوریتم‌های ممتیک (Memetic Algorithms) قرار می‌گیرد.

از نام‌های دیگر الگوریتم بهینه سازی جهش قورباغه، می‌توان به الگوریتم قورباغه و الگوریتم جهش قورباغه و الگوریتم SFLA اشاره نمود. در ادامه به تشریح حل مسئله فروشنده دوره گرد TSP با الگوریتم جهش قورباغه SFLA در متلب پرداخته خواهد شد.

الگوریتم بهینه سازی جهش قورباغه یا SFLA

الگوریتم SFLA یک الگوریتم مبتنی بر ممتیک متأهیوریستیک است. الگوریتم ممتیک، یک الگوریتم مبتنی بر جمعیت است که برای مسائل بهینه‌سازی پیچیده و بزرگ مورداستفاده قرار می‌گیرد. ایده اصلی این الگوریتم، به کارگیری یک روش جستجوی محلی در درون ساختار الگوریتم ژنتیک برای بهبود کار آبی فرآیند تشدید هنگام جستجو است.

الگوریتم ممتیک در ابتدا مجموع جواب‌های اولیه را رمزگذاری می‌کند، آنگاه این الگوریتم میزان مطلوبیت هر یک از جواب‌ها را بر اساس یک تابع برازندگی را محاسبه کرده و جواب‌های جدیدی را تولید می‌کند.

الگوریتم SFLA از نحوه جستجوی غذای گروه قورباغه‌ها الهام می‌گیرد. این الگوریتم برای جستجوی محلی میان زیر گروه قورباغه‌ها از روش نموممتیک استفاده می‌کند. الگوریتم جهش ترکیبی قورباغه از استراتژی ترکیب استفاده می‌کند و امکان مبادله پیام در جستجوی محلی را فراهم می‌سازد. این الگوریتم مزایای الگوریتم نموممتیک و بهینه سازی گروه ذرات را ترکیب می‌کند.

در الگوریتم جهش ترکیبی قورباغه نه تنها در جستجوی محلی بلکه در جستجوی سراسری نیز پیام‌ها مبادله می‌شوند. بدین ترتیب جستجوی محلی و سراسری به خوبی در این الگوریتم ترکیب می‌شوند. الگوریتم جهش ترکیبی قورباغه قابلیت بالایی برای جستجوی سراسری دارد و پیاده سازی آن آسان است. الگوریتم جهش ترکیبی قورباغه می‌تواند بسیاری از مسائل غیر خطی، غیرقابل تشخیص و چند حالته را حل کند.

مسئله فروشنده دورگرد TSP در حل فروشنده دوره گرد با الگوریتم جهش قورباغه

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

به طور کلی هدف پیدا کردن کم هزینه‌ترین تور برای ملاقات همه شهرها و بازگشت به شهر آغازین حرکت است. مساله فروشنده دوره گرد در شکل ساده و اختصاری با نام TSP شناخته می‌شود. شکل ۳- ۱ یک نمونه جواب از مساله فروشنده دوره گرد که در سال ۱۵۹۱ برای ۱۵ شهر از کشور آمریکا مطرح شد را نشان می‌دهد که با روش شاخه وحد حل شد.

الگوریتم رقابت استعماری فروشنده دوره گرد

سورس کد فروشنده دوره گرد با الگوریتم جهش قورباغه

در این قسمت سورس برنامه حل فروشنده دوره گرد با الگوریتم جهش قورباغه SFLA در متلب آماده شده است این سورس کد شامل ۸ فایل می‌باشد که عبارتند از:

  • main.m: فایل اصلی برنامه است و فراخوانی دیگر توابع و مقادیر پارامترها و الگوریتم SFLA در داخل این فایل قرار دارد.
  • CreateModel.m: برای ایجاد شهرهای فاصله و مختصات هر یک از شهرها از این تابع استفاده می‌شود.
function model=CreateModel()

    x=[82 91 12 92 63 9 28 55 96 97 15 98 96 49 12 92 63 9 28 55 96 97 15 98 80 14 42 92 80 96];
    
    y=[12 92 63 9 28 55 96 97 15 98 66 3 85 94 68 76 75 39 66 17 71 3 27 4 9 83 70 32 95 3];
    
    n=numel(x);
    
    D=zeros(n,n);
    
    for i=1:n-1
        for j=i+1:n
            
            D(i,j)=sqrt((x(i)-x(j))^2+(y(i)-y(j))^2);
            
            D(j,i)=D(i,j);
            
        end
    end
    
    model.n=n;
    model.x=x;
    model.y=y;
    model.D=D;

end
  • PlotSolution.m: برای رسم مسیرهای بین شهرها از این تابع استفاده می‌شود.
function PlotSolution(tour,model)

    tour=[tour tour(1)];
    
    plot(model.x(tour),model.y(tour),'k-s',...
        'MarkerSize',12,...
        'MarkerFaceColor','y',...
        'LineWidth',2);

end
  • TourLength.m: این تابع برای محاسبه طول مسیرهای یک تور یا یک پیمایش کامل شهرها بکار می‌رود.
function [z sol]=MyCost(s,model) 
 
    d=model.d; 
 
    [~, tour]=sort(s); 
    sol.tour=tour; 
     
    n=numel(tour); 
     
    tour=[tour tour(1)]; 
     
    L=0; 
    for i=1:n 
        L=L+d(tour(i),tour(i+1)); 
    end 
     
    sol.L=L; 
     
    z=L; 
 
end
  • SortPopulation.m: این تابع برای مرتب سازی جمعیت قورباغه‌ها بکار می‌رود.
function [pop, SortOrder] = SortPopulation(pop)

    % Get Costs
    Costs = [pop.Cost];
    
    % Sort the Costs Vector
    [~, SortOrder]=sort(Costs);
    
    % Apply the Sort Order to Population
    pop = pop(SortOrder);

end
  • RunFLA.m
  • RandSample.m
  • IsInRange.m

برای دریافت سورس کامل حل فروشنده دوره گرد با الگوریتم جهش قورباغه SFLA در متلب لطفا آن را خریداری کنید.

تصاویر خروجی

SFLA for TSP in Matlab graph

SFLA for TSP in Matlab graph 2

درباره سورس کد فروشنده دوره گرد با الگوریتم جهش قورباغه

سورس برنامه حل مسئله فروشنده دوره گرد TSP با الگوریتم جهش قورباغه SFLA در متلب عنوان اثری است که در این پست به آن پرداخته شده است. فایل در نرم افزار متلب نوشته شده و بصورت کامل توسط گروه پشتیبانی پی استور تست و اجرا شده است. اثر مذکور دارای نشان تضمین کیفیت پی استور می باشد. برای دانلود اثر آن را خریداری کنید.

معرفی و نحوه اجرا

ویدئوی نحوه اجرا


برنامه‌نویس:  تیم برنامه‌نویسی پی‌استور

متشکل از اساتید و فارغ التحصیلان رشته‌های فنی - مهندسی

تیم برنامه نویسی پی استور یکی از اولین گروه‌های تشکیل شده در مجموعه آموزشی پی استور می‌باشد. این تیم از اساتید مجرب و فارغ التحصیلان رشته‌های فنی و مهندسی تشکیل شده که در زمینه‌های مختلف برنامه‌نویسی و تهیه سورس کد فعال هستند.

مشخصات تکمیلی سورس کد

نام اثر: حل فروشنده دوره گرد با الگوریتم جهش قورباغه SFLA در متلب
نوع اثر: سورس کد
برنامه‌نویس: تیم برنامه‌نویسی پی‌استور
زبان برنامه نویسی: MATLAB
ویژگی: قابل دانلود و ویرایش

راهنمای خرید و ثبت سفارش

تصویر مراحل خرید از پی استور

اگر در مورد این اثر یا نحوه تهیه آن سوالی دارید؟
  • با شماره تلفن واحد مخاطبین 44225175 (پیش شماره 041) تماس بگیرید. – تمام ساعات اداری
  • با ما مکاتبه ایمیلی داشته باشید (این لینک). – تمام ساعات

توجه: کیفیت این محصول توسط پی استور تضمین شده و در صورت عدم رضایت از محصول، به انتخاب شما:

تصویر و لوگوی گارانتی

نظرات

1 نظر|5.00 (میانگین امتیاز کاربران)

  1. Avatar of مدیریت و پشتیبانی

    مدیریت و پشتیبانی

    نظرات و پیشنهادات خود را با ما در میان بگذارید.

دیدگاه خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

شناسه اثر: 6973 دسته‌بندی موضوعی: برچسب ,

هزینه سفارش:

تخفیف ویژه 60 درصدی

قیمت اصلی: ۲۶۹,۰۰۰ تومان بود.قیمت فعلی: ۱۰۷,۶۰۰ تومان.

دریافت کد تخفیف %