WS小世界网络生成算法,一般小世界网络生成算法速度慢,节点度分布与数学推导不符,在网络仿真中造成不便,这里针对实际网络动力学仿真过程撰写了WS小世界网络的MATLAB生成算法,并考虑了矩阵化,具有较高的速度。
以下是対应的代码:
% The simulation of WS-smallworld network % the algorithm of WS-smallworld's generation has been improved in speed, % and tend to be easily understood % writen by winter-my-dream@hotmail.com % Example: % N = 100; %network size (number of nodes) % m = 6; %2*m is the average edges of each nodes % p = 0.1; %rewiring probability % matrix = small_world_WS_new(N,m,p); function matrix = small_world_WS_new(N,m,p) rng('default') rng('shuffle') matrix=zeros(N,N); % generate regular network for i=m+1:N-m matrix(i,i-m:i+m)=1; end for i=1:m matrix(i,1:i+m)=1; end for i=N-m+1:N matrix(i,i-m:N)=1;