توضیحات
A genetic algorithm for community detection in complex networks
الگوریتم PINS
clc
clear
close all
ابتدا ماتریس A را ایجاد کرده و در محل برنامه ذخیره کنید. با استفاده از دستور load ماتریس A فراخوانی می شود.
load A
[n,~]=size(A);
popsize=100;
maxiter=100;
پس از فراخوانی A با استفاده از این دستور میزان شباهت بین نود ها به دست می آید. این تابع را بعدا توضیح خواهیم داد.
S=Similarity(A);
احتمالات عملگر کراس اور و جهش طبق مقاله مقداردهی می شود.
pc=0.8;
ncross=2*round((popsize*pc)/2);
pm=0.2;
nmut=round(popsize*pm);
…
به همین شکل کد های متلب در گزارش کار توضیح داده شده اند.
******
تابع fitness برای محاسبه Q_function استفاده می شود. مقدار delta با توجه به کلاسه بندی های M به دست آمده است. با توجه به مقاله
ci and cj represent the communities to which vi and vj belong, respectively; if ci=cj, then δ(ci,cj)=1, or δ(ci, cj)=0;
یعنی اگه دو گره متفاوت به یک کلاس یکسان متعلق باشد مقدار delta=1 ودر غیر اینصورت مقدار 0 خواهد بود.
function Q=fitness(A,M)
[n,~]=size(A);
%[~,t]=size(M);
delta=zeros(n,n);
for i=1:n
k= find(M(i,:)>0);
delta(i,:)=M(:,k);
end
…
برای عمل Fusion مانند مثال مقاله
در ستون سوم دو تا مقدار یک می بینیم. نود سوم و پنجم.
حال نگاه میکنیم به همسایه های نود 3 و 5. همانطور که در شکل
می بینیم. گره 3 در مجاورت گره های 1 و 6 قرار دارد پس در کلاس 1 و گره 5 در مجاورت گره های 2 و 4 و 6 قرار دارد که تعداد بیشتری از ان در کلاس دوم قرار دارد پس گره 5 به کلاس دوم تعلق می گیرد.
ما در اینجا از قاعده بیشترین همسایگی بهره می بریم که تابع آن به صورت neighbor_most برنامه نویسی شده است. در انتها ستون آخر حذف می شود.
در بالا فقط بخشی از گزارش کار آمده است.
نتایج به دست آمده از شبیه سازی با متلب:
ans =
1 0 0 0 0 0
0 0 0 1 0 0
0 0 0 0 0 1
0 1 0 0 0 0
0 0 0 0 1 0
0 0 1 0 0 0
Best = -1.2143
Time = 4.4944
کلید واژه : الگوریتم PINS,پروژه متلب,شبیه سازی با متلب,matlab project,پروژه matlab,پروژه های آماده متلب,
Complex networks, community detection, genetic algorithm, matrix encoding, nodes similarity
شبیه سازی مقاله
A genetic algorithm for community detection in complex networks
به تعداد محدودی قابل فروش می باشد.
سفارش انجام پروژه مشابه
درصورتیکه این محصول دقیقا مطابق خواسته شما نمی باشد،. با کلیک بر روی کلید زیر پروژه دلخواه خود را سفارش دهید.