برنامهنویس:
هزینه سفارش:
۲۲۴,۰۰۰ تومان قیمت اصلی: ۲۲۴,۰۰۰ تومان بود.۸۸,۰۰۰ تومانقیمت فعلی: ۸۸,۰۰۰ تومان.
تخصصی و منحصر به فرد بودن این اثر، تضمین کننده بهای محصول نسبت به آثار مشابه است.
سورس کد الگوریتم تکاملی تفاضلی برای TSP یا حل مسئله فروشنده دوره گرد عنوان موضوعی است که در این پست به آن پرداخته شده است. الگوریتم تکاملی تفاضلی (Differential Eevolution Algorithm) یا الگوریتم DE یک الگوریتم بهینه سازی است و مشابه اساس الگوی الگوریتم ژنتیک کار میکند. این الگوریتم یک الگوریتم تکاملی است که اولین بار در سال 1995 توسط Rainer Storn و Kenneth Price معرفی شد.
الگوریتم DE توانایی خوبی در بهینه سازی توابع غیرخطی مشتق ناپذیر دارد که بهعنوان روشی قدرتمند و سریع برای مسائل بهینه سازی در فضاهای پیوسته معرفی شده است. در ادامه توضیحات مختصری در رابطه با الگوریتم تکاملی تفاضلی و مسئله فروشنده دوره گرد ارائه میشود.
الگوریتم DE جهت غلبه بر عیب اصلی الگوریتم ژنتیک، یعنی نبود جستجوی محلی دراین الگوریتم ارائه شده است، تفاوت اصلی بین الگوریتمهای ژنتیک و الگوریتم DE در عملگر انتخاب Selection Operators است. در عملگر انتخاب الگوریتم GA ،شانس انتخاب یک جواب به عنوان یکی از والدین وابسته به مقدار شایستگی آن میباشد، اما در الگوریتم DE همه جوابها دارای شانس مساوی جهت انتخاب شدن میباشند.
یعنی شانس انتخاب شدن، وابسته به مقدار شایستگی آنها نمیباشد، پس از این که یک جواب جدید با استفاده از یک عملگر جهش mutation و عملگر crossover تولید شد، جواب جدید با مقدار قبلی مقایسه میشود و در صورت بهتر بودن جایگزین میگردد.
در الگوریتم تکاملی تفاضلی بر خلاف دیگر الگورتیمها که اول عملگر crossover و سپس عملگر mutation انجام میشود به گونهای که ابتدا عملگر جهش اعمال شده و سپس عملگر crossover اعمال میشود تا بدین وسیله نسل جدید ایجاد گردد. برای اعمال عملگر mutation از توزیع خاصی استفاده نمیشود بلکه طول گام جهش برابر با مقدار از فاصله میان اعضای فعلی تعیین میشود.
برای درک الگوریتم تکاملی تفاضلی توضیح کامل این الگوریتم را میتوانید در همین سایت از مقالهای کامل تحت عنوان الگوریتم تکاملی تفاضلی Differential Eevolution Algorithm مطالعه فرمایید.
مساله فروشنده دوره گرد Travelling salesman problem یا به اختصار TSP مسالهای است که شرح آن خيلی آسان میباشد. تعريف آن بدين صورت است که تعداد متناهی شهر با هزينه پيمايش بين هر جفت از آنها داده میشود و هدف مساله اين است که يک فروشنده دوره گرد تمامی اين شهرها را به گونهای ملاقات کند که هر يک از اين شهرها را فقط يک بارملاقات کرده و دوباره به شهر آغازين برگردد با اين شرط که با کمترين هزينه پيمايش اين کار را انجام دهد.
به طور کلی هدف پيدا کردن کم هزينهترين تور برای ملاقات همه شهرها و بازگشت به شهر آغازين حرکت است. مساله فروشنده دوره گرد در شکل ساده و اختصاری با نام TSP شناخته میشود. شکل زیر يک نمونه جواب از مساله فروشنده دوره گرد که در سال 1591 برای 15 شهر از کشور آمريکا مطرح شد را نشان میدهد که با روش شاخه و حد حل شد.

در این قسمت سورس برنامه حل مسئله فروشنده دوره گرد TSP با الگوریتم تکاملی تفاضلی DE در متلب آماده شده است این سورس کد شامل 4 فایل میباشد که عبارتند از:
قسمتی از سورس کد مربوط به DE.m در اینجا نوشته شده است.
clc;
clear;
close all;
%% Problem Definition
model=CreateModel(); % Create Problem Model
CostFunction=@(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 در متلب عنوان اثری است که در این پست به آن پرداخته شده است. این سورس کد در نرم افزار Matlab نوشته شده و بصورت کامل توسط گروه پشتیبانی پی استور تست و اجرا شده است. این اثر دارای نشان تضمین کیفیت پی استور میباشد. برای دانلود اثر مذکور آن را خریداری کنید بلافاصله پس از خرید لینک دانلود در دسترس خواهد بود.
| نام اثر: | الگوریتم تکاملی تفاضلی برای TSP – سورس کد الگوریتم تکاملی تفاضلی برای حل مسئله فروشنده دوره گرد TSP در متلب |
| نوع اثر: | سورس کد |
| برنامهنویس: | تیم برنامهنویسی پیاستور |
| زبان برنامه نویسی: | متلب MATLAB |
| ویژگی: | قابلیت ویرایش و دانلود سریع |
تیم برنامه نویسی پی استور یکی از اولین گروههای تشکیل شده در مجموعه آموزشی پی استور میباشد. این تیم از اساتید مجرب و فارغ التحصیلان رشتههای فنی و مهندسی تشکیل شده که در زمینههای مختلف برنامهنویسی و تهیه سورس کد فعال هستند.
هزینه سفارش:
۲۲۴,۰۰۰ تومان قیمت اصلی: ۲۲۴,۰۰۰ تومان بود.۸۸,۰۰۰ تومانقیمت فعلی: ۸۸,۰۰۰ تومان.
نظرات
مدیریت و پشتیبانی
نظرات و دیدگاه های خود را با ما در میان بگذارید.