SBM模型的GML指数用matlab测算

Python023

SBM模型的GML指数用matlab测算,第1张

这个数据没有 logistic 规律吧~

下面程序你参考一下:

% curvefitLogistic.m

% 在实际应用时, 只有在确认所得的生物数据具有 logistic 曲线规律, 拟合的结果才

% 有意义,下面这组数据具有 logistic 曲线规律!

N=[3929 5308 7240 9638 12866 17069 23192 31443 38558 50156 62948 ...

75995 91972 105711 122775 131669 150697 179323 203185 226500]

t=1790:10:1980

% 画原始数据图

plot(t,N,t,N,'r*')

hold on

% Logistic 函数的构造

func = @(beta,x) beta(1)./(1+(beta(1)/N(1)-1)*exp(-beta(2)*(x-1790)))

% 关键:寻优初值的选取:beta0(1)为函数的最大值,beta0(1)尽可能小,这里直接取 0

% 因为:现在在计算机上进行 logistic 曲线拟合, 多采用 Guass一Newton 算法和 Guass-

% Newton 的改进算法 Marquardt 法, 这两种算法只有在选取一组与实际值较接近的初

% 值K, a, b 时, 迭代过程的收敛性才好, 即找到的K 、a 、b 的值能使 R 值最小!

beta0 = [max(N) 0]

% lsqcurvefit 调用

[beta,resnorm,residual,exitflag,output]= lsqcurvefit(func,beta0,t,N)

邻接表(Adjacency List):是图的一种链式存储结构。

在邻接表中,对图中每个顶点建立一个单链表,第i个单链表中的结点表示依附于顶点vi的邻接表由两部分构成:表头结头、表结点组成的单链表。

邻接表的表示意义为:对于图G=(V,E),若(i,j)∈E,则第i个表头结点的单链表上有一个adjvex为j的表结头。