کاملترین دکیومنت و شبیه سازی شبکه های اجتماعی

- کاملترین دکیومنت و شبیه سازی شبکه های اجتماعی

کاملترین دکیومنت و شبیه سازی شبکه های اجتماعی

کاملترین دکیومنت و شبیه سازی شبکه های اجتماعی

به زبان برنامه نویسی سی شارپ و متلب

شبیه سازی یک مرکز تک سرویس دهنده

 

 

گزارش پروژه ی درس مباحث ویژه

برنامه ی مربوط به رسم گراف های خواسته شده در فولدر methods قرار داده شده است. همچنین نتایج شامل مقدار فراوانی هر درجه به ازای هر یک از الگوریتم های خواسته شده در پروژه، معیارهای مورد نظر شامل مرکزیت میانوندی، فاصله ی ژئودزی، ضریب خوشیدگی،تعداد گروه های ایزوله و اتصال پذیری گره در فولدر result موجود می باشد. تولید گراف های خواسته شده توسط NetworkX 1.7 است.

نمودارهای خواسته شده در فایل excel به نام result-mabahes موجود می باشد. با توجه به نمدارهای رسم شده می توان نتایج زیر را گرفت:

1) طبق الگوریتم BA فراوانی بر حسب درجه ی ایجاد شده از power law پیروی می کند.

2) نمودار مربوطه برای الگوریتم ER از power law پیروی نکرده و از پواسون پیروی می کند.

3)نمودار مربوطه برای الگوریتم SW از پواسون پیروی می کند.

4) نمودار مربوط به الگوریتم KE از power law پیروی می کند.

5) همچنین گراف p,g را در حالتیکه p=1 و g=0 است رسم شده است ( که در واقع نقطه ی بهینه از لحاظ تغییرات قطر است  dd/df)

همچنین طبق خواسته ی مساله نمودار را در صورت خرابی تصادفی به ازای الگوریتم های موجود و با درصد های خرابی 10% ، 15% ، 20% و 30% رسم نموده ایم. به ازای کلیه ی حالات SW بدترین حالت را دارد و وضعیت گراف های p,g و BA در ازای درصد های خرابی متفاوت از سایر الگوریتم ها بهتر است.

نمودارها را در شکل زیر می توانید مشاهده نمایید ( معیار رسم نمودارها متوسط فاصله ی ژئودزی پس از حملات است).

 

 

ایجاد توپولوژی Watts and Strogatz:

از برنامه WSGraph.exe برای تولید گراف Watts an Strogatz استفاده شده است

برای تولید گراف WS با 1000  گره و متوسط درجه گراف 10 از فرمان زیر استفاده می شود:

C:\>WSGraph.exe -n 1000 -k 10 -b 0.5

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

Time: 0.003 seconds.

 

The graph:

0 — 531

0 — 2

0 — 53

0 — 612

0 — 5

0 — 195

0 — 525

0 — 671

0 — 954

 

1 — 2

1 — 737

1 — 912

1 — 5

1 — 785

1 — 258

1 — 407

1 — 485

1 – 506

برای تبدیل این قالب به فرمت ماتریس مجاورت از یک برنامه به زبان C# استفاده شده است. فابل تولید شده و نیز تبدیل شده آن به فایل ماتریس مجاورت به ترتیب WS.dat و WSadj.dat می باشند.

 

معیارهای اندازه گیری گراف Watts and Strogatz:

  • معیار تغییرات قطر شبکه در اثر ایجاد خرابی

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

برای این کار از الگوریتم دایکسترا برای محاسبه کوتاه ترین مسیر بین زوج گره ها استفاده می کنیم(کد این الگوریتم به نام simple_dijkstra.m در پوشه مربوط به شبکه Erdos-Reney آورده شده است):

 

 

کد محاسبه قطر شبکه:

 

کد محاسبه قطر شبکه:

 

function diam = diameter(adj)

diam=0;

for i=1:size(adj,1)

    d=simple_dijkstra(adj,i);

    diam = max ([max(d),diam]);

end

 

e=dlmread(C:\network eval\WS\WSadj(space)f20.dat);

d=diameter(e);

برای دانلود کلیک کنید