幂律分布:
连续型:以f(x)表示某一数量指标的发生次数,若
f(x)=f(x)-a
,就称为幂律分布。
离散型:若p(k)为离散型随机变量的概率分布,若p(k)~ck-(a+1)
,则称p(k)为幂律分布。
p(k)=c/k-a
, logp(k)=logc-alogk
在双对数坐标系下,该分部呈现为一条斜率为负幂指数的直线。
基本规律总结起来:只有少数节点才会被经常使用,大部分的节点很少被使用。
一个网络的度分布服从幂律分布,直观上看就是少部分节点度极大,与许多节点相连,而大部分节点度都比较小,这种网络就叫做无标度网络。
复杂网络MATLAB工具包:
http://www.levmuchnik.net/常用的一些关于复杂网络的MATLAB程序。
教程1:
展示了如何生成一个随机无标度网络图,基本结构分析,包括度分布、聚类系数等。观察两种类型的攻击对网络的影响:随机攻击(所有的几点有相同的概率从网络中删除)、有目标地选择连接度最大的节点(节点度最大的节点从网络中删除)。
第二中情况下,网络几乎很快崩溃,第一种情况好一些。
教程1的相关MATLAB程序:
%% Tutorial 01
% The following scripts is a first phase of the Complex Networks Package tutorial.
% It demonstrates genration of random scale-free network and some basic analysis of it.
%%
Genrate the network:生成一个网络
NumberOfNodes = 10000; % Number of nodes节点的个数
Alpha = -2.2; % Alpha of the scale-free graph
无标度网络的幂律指数
%define node degree distribution:
定义节点度分布
XAxis = unique(round(logspace(0,log10(NumberOfNodes),25)));
YAxis = unique(round(logspace(0,log10(NumberOfNodes),25))).^(Alpha+1);
% create the graph with the required node degree distribution:
根据所需节点度分布创建
图
Graph = mexGraphCreateRandomGraph(NumberOfNodes,XAxis,YAxis,1);
%%
Some basic statistics:一些基本特性