گردونه رو بچرخون و شانس خودت رو برای گرفتن کد تخفیف امتحان کن!

روز
ساعت
دقیقه
ثانیه

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

الگوریتم CMAES فروشنده دوره گرد – سورس کد الگوریتم CMAES برای حل مسئله فروشنده دوره گرد TSP در متلب

(دیدگاه کاربر 1)
امتیاز 5.00 از 5

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

هزینه سفارش:

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

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

تخصصی و منحصر به فرد بودن این اثر، تضمین کننده بهای محصول نسبت به آثار مشابه است.

الگوریتم CMAES فروشنده دوره گرد یکی از الگوریتم های بهینه سازی برای حل مسائل سخت در علوم کامپیوتر مختلف می‌باشد که در این پست به تشریح و چگونگی عملکرد این الگوریتم برای حل مسئله فروشنده دوره گرد پرداخته می‌شود. الگوریتم CMA-ES از یک توزیع نرمال، نمونه‌گیری کرده و جمعیت جدید را به وجود می‌آورد.

این الگوریتم تکاملی یک ماتریس کواریانس و یک بردار میانگین را از جمعیت تخمین می‌زند. قوانین مختلف به روز‌رسانی، ماتریس کواریانس تطبیق یافته‌ای را در هر نسل ایجاد می‌کند که در کیفیت جمعیت جدید و در نتیجه هدایت تکامل نقش مهمی دارد.

الگوریتم CMAES

این الگوریتم مخفف Covariance Matrix Adaptation Evolution Strategy به معنای استراتژی تکاملی انطباق ماتریس کوواریانس می‌باشد. دو اصل اصلی برای سازگاری پارامترهای توزیع جستجو در الگوریتم CMA-ES مورد استفاده قرار می‌گیرند.

ابتدا، یک اصل حداکثر احتمال maximum-likelihood، برای افزایش احتمال موفقیت راه حل‌های کاندید شده و مراحل جستجو در نظر گرفته می‌شود. متوسط توزیع به روز می‌شود به طوری که احتمال موفقیت پیشین موفق به راه حل‌های حداکثر می‌شود.

ماتریس کوواریانس توزیع (به طور تدریجی) به روز می‌شود به طوری که احتمال مراحل پیشین موفق جستجو افزایش می‌یابد. هر دو به روز رسانی را می‌توان به عنوان یک شیب طبیعی شناخت. همچنین، در نتیجه، CMA یک مولفه اصلی تکرار شده برای تجزیه و تحلیل مراحل جستجو موفق را در حالی که تمام محورهای اصلی را نگه می‌دارد انجام می‌دهد.

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

به طور خاص، اگر مراحل متوالی در جهت مشابهی گرفته شود، مسیرهای تکاملی بلند می‌شوند. مسیرهای تکاملی از دو راه بهره برداری می‌شوند. یک راه برای روش انطباق ماتریس کوواریانس به جای مراحل موفقیت آمیز موفقیت آمیز استفاده می‌شود و باعث افزایش احتمال واریانس بسیار بیشتر  جهت مطلوب می‌شود. مسیر دیگر مورد استفاده برای کنترل اضافی اندازه گام است.

مسئله فروشنده دورگرد TSP

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

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

فروشنده دوره گرد TSP

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

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

  • الگوریتمcmaes.m: فایل اصلی برنامه است و فراخوانی دیگر توابع و مقادیر پارامترها و  الگوریتم CMAES در داخل این فایل قرار دارد.
  • 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 L=TourLength(tour,model)

    n=numel(tour);

    tour=[tour tour(1)];
    
    L=0;
    for i=1:n
        L=L+model.D(tour(i),tour(i+1));
    end

end

برای دریافت سورس کامل محصول لطفا آن را خریداری کنید.

تصاویر خروجی فروشنده دوره گرد با CMAES

الگوریتم CMAES فروشنده دوره گرد

الگوریتم CMAES فروشنده دوره گرد


درباره الگوریتم CMAES برای TSP

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

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

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

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

نام اثر: الگوریتم CMAES فروشنده دوره گرد – سورس کد الگوریتم CMAES برای حل مسئله فروشنده دوره گرد TSP در متلب
نوع اثر: سورس کد
برنامه‌نویس: تیم برنامه‌نویسی پی‌استور
زبان برنامه نویسی: MATLAB
ویژگی: قابل دانلود و ویرایش

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

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

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

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

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

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

نظرات

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

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

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

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

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

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

شناسه اثر: 5772 دسته‌بندی موضوعی: برچسب , ,
هوش مصنوعی پاسخگوی شماست ...
avatar
دستیار هوش مصنوعی پی استور
پاسخگوی سوالات شما هستیم...

هزینه سفارش:

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

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