MLW模型的matlab实现(已修复)

原作者:​​​​​​​(5条消息) 复杂网络多局域世界模型matlab算法实现_乾三连的博客-CSDN博客_多局域世界模型icon-default.png?t=M5H6https://blog.csdn.net/qq_36434958/article/details/102770052MLW模型,即复杂网络多局域世界模型(the Multi Local Worlds Model)是一个具有度指数分布特性的小世界模型。比起BA等其他小世界模型,MLW模型最大的优点是具有较高的聚类系数,而高聚类系数是多数现实小世界网络的特征。因此,MLW模型能较好地模拟现实中的小世界网络。

MLW模型的生成过程为数个步骤的迭代,最终生成数个互相有较少连接的局域世界,局域世界内的节点之间的连边则较多。具体的步骤可以参考上面贴出来的原作者的文章,这里不具体阐述。

原作者贴出的代码存在较多的bug,我已将其修复,现于此贴出以便诸位可直接使用。

这段代码需要一个matlab app的支持(具体哪个我不记得了,总之如果到时候报缺少xxx的错误直接下载那个就可以了)。如果仍有bug(下载该app后仍无法运行),请告知我,我尽可能及时修正代码!

clc,clear
    m=5;m0=8;e0=15;p=0.3;q=0.2;r=0.25;s=0.05;u=0.2;
    m1=3;m2=5;m3=4;m4=6;alpha=1;
    p=[p,q,r,s,u];n=m;
    pp=cumsum(p); %轮盘赌法选条件
    for i=1:m
        A{i}=generategraph(m0,e0); %产生初始的m个局域世界
    end
    num(1:m)=m0; %此处先声名一个num变量,num变量的1到m个元素都是m0,此处是为了存储各个局域世界的节点个数
    Tno=[];Tuv=[]; %返回值初始化
    for i=1:400 % 迭代2000次
    ind=find(pp>=rand); % 轮盘赌法,此处返回一个索引向量,即大于随机数rand的两个累计概率值
    switch ind(1) % 索引到第一个大于累计概率值的对应索引,共有五种可能1,2,3,4,5。分别对应我们的五种可能
        case 1 %如果上面返回1就执行这个操作
            n=n+1; %更新局域世界个数
            A{n}&#
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值