• مقالات آموزشی
    • آموزش برنامه نویسی
    • آموزش الگوریتم
    • آموزش شبکه های کامپیوتری
    • آموزش های عمومی
  • ترجمه مقاله
    • لیست ترجمه کامل مقالات
    • لیست ترجمه مفهومی مقالات
  • تحقیق و پژوهش
    • لیست داکیومنت پایان‌نامه
    • لیست داکیومنت سمینار
  • پیاده سازی
    • سی پلاس پلاس ++C
    • برنامه نویسی OpenGL
    • سی شارپ #C
    • پایتون Python
    • اندروید Android
    • پی اچ پی PHP
    • متلب Matlab
  • پاورپوینت
    • پاورپوینت الگوریتم های بهینه سازی
    • پاورپوینت شبکه‌های کامپیوتری
    • پاورپوینت مهندسی کامپیوتر
    • پاورپوینت یادگیری ماشین
    • پاورپوینت درس و تحقیق
    • قالب آماده پاورپوینت
  • فیلم آموزشی
    • لیست فیلم های آموزشی
  • قالب آماده
    • لیست قالب آماده HTML
  • دانلود رایگان
  • مجله پی استور
  • آموزش برنامه نویسی
  • آموزش الگوریتم
  • آموزش شبکه
  • آموزش عمومی

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت
  • قوانین
  • تماس با ما
  • درباره ما
  • همکاری با ما
پی استور
0

ورود و ثبت نام

مقالات آموزشی
  • ترجمه مقاله
    • لیست ترجمه کامل مقالات
    • لیست ترجمه مفهومی مقالات
  • تحقیق و پژوهش
    • لیست داکیومنت پایان‌نامه
    • لیست داکیومنت سمینار
  • پیاده سازی
    • سی پلاس پلاس ++C
    • برنامه نویسی OpenGL
    • سی شارپ #C
    • پایتون Python
    • اندروید Android
    • پی اچ پی PHP
    • متلب Matlab
  • پاورپوینت
    • پاورپوینت الگوریتم های بهینه سازی
    • پاورپوینت شبکه‌های کامپیوتری
    • پاورپونت مهندسی کامپیوتر
    • پاورپوینت یادگیری ماشین
    • پاورپوینت درس و تحقیق
    • قالب آماده پاورپوینت
  • فیلم آموزشی
    • لیست فیلم های آموزشی
  • قالب آماده
    • قالب آماده HTML
  • مجله پی استور

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

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

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

سورس کد الگوریتم تکاملی تفاضلی برای TSP یا حل مسئله فروشنده دوره گرد عنوان موضوعی است که در این پست به آن پرداخته شده است. الگوریتم تکاملی تفاضلی (Differential Eevolution Algorithm) یا الگوریتم DE یک الگوریتم بهینه سازی است و مشابه اساس الگوی الگوریتم ژنتیک کار می کند. این الگوریتم یک الگوریتم تکاملی است که اولین بار در سال 1995 توسط Rainer Storn و Kenneth Price معرفی شد.

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

الگوریتم تکاملی تفاضلی Differential Eevolution Algorithm

الگوریتم DE جهت غلبه بر عیب اصلی الگوریتم ژنتیک، یعنی نبود جستجوی محلی دراین الگوریتم ارائه شده است، تفاوت اصلی بین الگوریتم های ژنتیک  و الگوریتم DE در عملگر انتخاب Selection Operators است. در عملگر انتخاب الگوریتم GA ،شانس انتخاب یک جواب به عنوان یکی از والدین وابسته به مقدار شایستگی آن می باشد، اما در الگوریتم DE همه جواب ها دارای شانس مساوی جهت انتخاب شدن می باشند.

یعنی شانس انتخاب شدن، وابسته به مقدار شایستگی آنها نمی باشد، پس از این که یک جواب جدید با استفاده از یک عملگر جهش mutation و عملگر crossover تولید شد، جواب جدید با مقدار قبلی مقایسه می شود و در صورت بهتر بودن جایگزین می گردد.

در الگوریتم تکاملی تفاضلی بر خلاف دیگر الگورتیم ها که اول عملگر crossover و سپس عملگر mutation انجام می شود به گونه ای که ابتدا عملگر جهش اعمال شده و سپس عملگر crossover اعمال می شود تا بدین وسیله نسل جدید ایجاد گردد. برای اعمال عملگر mutation از توزیع خاصی استفاده نمی شود بلکه طول گام جهش برابر با مقدار از فاصله میان اعضای فعلی تعیین می شود.

برای درک الگوریتم تکاملی تفاضلی توضیح کامل این الگوریتم را می توانید در همین سایت از مقاله ای کامل تحت عنوان الگوریتم تکاملی تفاضلی Differential Eevolution Algorithm مطالعه فرمایید.

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

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

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

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

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

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

  • DE.m: فایل اصلی برای اجرای الگوریتم می باشد و بقیه فراخوانی ها از این قسمت انجام می شود.
  • CreateModel.m: مختصات شهرها و تعداد و فاصله آنها در این تابع تعریف و ایجاد می شود.
  • PlotSolution.m: رسم چگونگی اتصال شهرها یا نشان دادن جواب مسئله در این تابع انجام می شود.
  • TourLength.m: تابع هزینه یا Cost Function می باشد و عبارت است از طول مسیرهای یک جواب.

قسمتی از سورس کد مربوط به DE.m در اینجا نوشته شده است.

clc;
clear;
close all;

%% Problem Definition
model=CreateModel();    % Create Problem Model

[email protected](tour) TourLength(tour,model); 


nVar=model.n;            % Number of Decision Variables

VarSize=[1 nVar];   % Decision Variables Matrix Size

VarMin=-5;          % Lower Bound of Decision Variables
VarMax= 5;          % Upper Bound of Decision Variables

%% DE Parameters

MaxIt=1000;      % Maximum Number of Iterations

nPop=100;        % Population Size

beta_min=0.3;   % Lower Bound of Scaling Factor
beta_max=0.7;   % Upper Bound of Scaling Factor

pCR=0.3;        % Crossover Probability

%% Initialization

empty_individual.Position=[];
empty_individual.Cost=[];

BestSol.Cost=inf;

pop=repmat(empty_individual,nPop,1);

for i=1:nPop

    pop(i).Position=unifrnd(VarMin,VarMax,VarSize);
    [~,sol]=sort(pop(i).Position);
    
    pop(i).Cost=CostFunction(sol);
    
    if pop(i).Cost<BestSol.Cost
        BestSol=pop(i);
    end
    
end

تصاویر خروجی الگوریتم تکاملی تفاضلی برای TSP

خروجی الگوریتم DE برای TSP

همگرایی الگوریتم DE برای TSP

ویدئوی معرفی محصول

درباره الگوریتم تکاملی تفاضلی برای TSP

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

امتیاز
5.00 از 1 رأی
5.00 1 رای
29,000 تومان
تعداد دانلود : 89
تاریخ انتشار: 15 فروردین 1398
تاریخ بروزرسانی: 8 شهریور 1398
حجم فایل: 2.2 کیلوبایت
فرمت فایل m. در قالب متلب
نسخه: 1.0
لایسنس: ندارد
هماهنگی با: Matlab 2009 و بالاتر
نظرات و دیدگاه ها
  • programstore
    15 فروردین 1398
    نمره 5 از 5
    پاسخ

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

قوانین ثبت دیدگاه

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

لغو پاسخ

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

قیمت 29,000 تومان

افزودن به علاقه مندی ها

سورس برنامه در نرم افزار Matlab نوشته شده و بلافاصله پس از خرید، لینک دانلود محصول در اختیار شما قرار خواهد گرفت.

با خرید این محصول از مزایای زیر بهره‌مند می‌شوید:

  • دسترسی به فایل محصول به صورت مادام‌العمر
  • ۶ ماه پشتیبانی کاملا رایگان و تضمین شده
امتیاز
5.00 از 1 رأی
5.00 1 رای
29,000 تومان

تاریخ انتشار: 15 فروردین 1398
تاریخ بروزرسانی: 8 شهریور 1398
حجم فایل: 2.2 کیلوبایت
فرمت فایل m. در قالب متلب
نسخه: 1.0
لایسنس: ندارد
هماهنگی با: Matlab 2009 و بالاتر
تعداد دانلود : 89

قیمت: 29,000 تومان

تماس با ما
  • دفتر پشتیبانی: 04144225175
  • دسترسی سریع: 09227367942
  • واتساپ پشتیبانی: 09208501946
  • [email protected]
درباره پی استور

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

مجوز های اخذ شده

نشان ملی  

  • قوانین
  • تماس با ما
  • درباره ما
  • همکاری با ما
پی استور
  • آموزش برنامه نویسی
  • آموزش الگوریتم
  • آموزش شبکه
  • آموزش عمومی
تمامی حقوق برای پی استور محفوظ است.
keyboard_arrow_up