主要内容

构建Watts-Strogatz小世界图模型

这个例子展示了如何构建和分析Watts-Strogatz小世界图。Watts-Strogatz模型是一个具有小世界网络属性的随机图,例如聚类和较短的平均路径长度。

算法描述

创建Watts-Strogatz图有两个基本步骤:

  1. 用。创建一个环状格子N美元平均度节点2 k美元.每个节点都连接到它的K美元两边的最近邻居。

  2. 对于图表中的每个边,具有概率的目标节点β\美元.重新连接的边缘不能是重复或自循环。

在第一步之后,图是一个完美的环格。所以,当$ \ beta = 0 $,没有边被重新连接,模型返回一个环晶格。相反,当\β= 1美元,所有的边被重新布线,环格被转换成一个随机图。

该文件WattsStrogatz.m实现此图算法以获取无向图形。输入参数是NK, 和bet根据上述算法描述。

查看文件WattsStrogatz.m

%版权所有2015 Mathworks,Inc。功能h = WattsStrogatz (N, K,β)% H = WattsStrogatz(N,K,beta)返回带有N的WattsStrogatz模型图%节点,n * k边,平均节点2 * k和重新加热概率β。%beta = 0是环格,并且BETA = 1是随机图。%将每个节点连接到下一个和以前的邻居。这个构造环格的%指数。s = repelem((1:n)',1,k);t = s + repmat(1:k,n,1);t = mod(t-1,n)+1;%重新绕每个边缘的目标节点,概率βsource = 1:n switchedge = rand(k,1)“下”);t(source, switchEdge) = ind(1:nnz(switchEdge));结束h =图(s,t);结束

环格

构造一个有500个节点的环格Wattsstrogatz.功能。什么时候bet为0时,函数返回一个节点都具有度的环晶格2 k

h = WattsStrogatz(0) 500年25日;情节(h,“NodeColor”'K'“布局”“圆”);标题('Watts-Strogatz Graph with $N = 500$ nodes, $K = 25$, and $\beta = 0$'...'口译员'“乳胶”

一些随机边缘

通过提高增加图表中的随机性量bet0.150.50

H2 = Wattsstrogatz(500,25,0.15);绘图(H2,“NodeColor”'K'“EdgeAlpha”, 0.1);标题('Watts-strogatz图形以$ n = 500 $ nodes,$ k = 25 $,$ \ beta = 0.15 $'...'口译员'“乳胶”

h3 = WattsStrogatz(500年,25岁,0.50);情节(h3,“NodeColor”'K'“EdgeAlpha”, 0.1);标题('Watts-Strogatz Graph with $N = 500$ nodes, $K = 25$, and $\beta = 0.50$'...'口译员'“乳胶”

随机图

通过增加来生成完全随机图bet到它的最大值1.0.这将重新束所有边缘。

H4 = WATTSSTROGATZ(500,25,1);绘图(H4,“NodeColor”'K'“EdgeAlpha”, 0.1);标题('Watts-Strogatz Graph with $N = 500$ nodes, $K = 25$, and $\beta = 1$'...'口译员'“乳胶”

程度分布

不同瓦特 - Strogatz图中节点的度分布变化。什么时候bet是0,节点都具有相同程度,2 k,所以度分布只是一个狄拉克函数的中心2 k\δ(x-2K)美元.然而,随着bet增加,度分布改变。

这张图显示了的非零值的度分布bet

直方图(学位(h2),“BinMethod”“整数”“FaceAlpha”, 0.9);持有直方图(学位(h3),“BinMethod”“整数”“FaceAlpha”, 0.9);直方图(学位(h4),“BinMethod”“整数”“FaceAlpha”, 0.8);持有离开标题(瓦茨- strogatz模型图的节点度分布)Xlabel(节点的度)ylabel('节点数量')传说(‘\β= 1.0‘\β= 0.50‘\β= 0.15'地点'“西北”

中心的形成

Watts-Strogatz图具有较高的聚类系数,因此节点倾向于形成小团体,即紧密相连的节点组成的小团体。作为bet增加到最大值1.0,您会看到越来越多的轮毂节点,或相对程度高的节点。枢纽是图中其他节点和派系之间的公共连接。集线器的存在允许小团体的形成,同时保持较短的平均路径长度。

计算每个值的平均路径长度和轮毂节点数bet.对于本例来说,中心节点是度数大于或等于55的节点。这些节点的度都比原来的环点阵增加了10%或更多。

n = 55;d = [意思(平均值(距离(h))),nnz(度(h)> = n);...平均值(平均值(距离(H2))),NNZ(度(H2)> = N);...平均(平均(距离(h3))), nnz(学位(h3) > = n);平均(平均(距离(h4))), nnz(学位(h4) > = n)];T = table([0 0.15 0.50 1]', d(:,1), d(:,2),...“VariableNames”,{“β”“AvgPathLength”'numberofhubs'})
T = 4x3 table Beta AvgPathLength NumberOfHubs ____ _____________ ____________ 0 5.48 0 0.15 2.0715 20 0.5 1.9101 85 1 1.9008 92

作为bet增加,图中的平均路径长度迅速降至其限制值。这是由于形成高度连接的轮毂节点,这变得更加多bet增加。

绘图\β= 0.15美元Watts-Strogatz模型图,使每个节点的大小和颜色成比例到其学位。这是可视化集线器的形成的有效方法。

COLOROMAP.hsvDEG =度(H2);NSIZE = 2 * SQRT(DEG-MIN(DEG)+0.2);ncolors = deg;绘图(H2,'Markersize',nsizes,“NodeCData”nColors,“EdgeAlpha”, 0.1)标题('Watts-strogatz图形以$ n = 500 $ nodes,$ k = 25 $,$ \ beta = 0.15 $'...'口译员'“乳胶”)彩色栏

另请参阅

|