复杂网络作业1——随机生成三种网络(小世界、无标度、ER随机)

主要是调用调用networkx和random库(可以直接构建网络、然后利用random随机生成相应数据)
plt.show()可以生成相应的图片
小世界网络中要注意邻接个数必须是偶数
版本1:直接生成型


import networkx as ne
import random
from matplotlib import pyplot as plt
from networkx import shell_layout
from networkx.generators import random_graphs

def efficiency(G):
    for u in G.nodes():  # 遍历流量图F的每个点
      sumeff = 0
    path = ne.shortest_path_length(ws,source=u)  # 在网络G中计算从u开始到其他所有节点(注意包含自身)的最短路径长度。如果两个点之间没有路径,那path里也不会存储这个目标节点(比前面的代码又省了判断是否has_path的过程)
    for v in path.keys():  # path是一个字典,里面存了所有目的地节点到u的最短路径长度
        if u != v:  # 如果起终点不同才累加计算效率
            sumeff += 1 / path[v]
            result = (2/(n*(n-1))) * sumeff  # 计算网络剩余效率
            return result

n=random.randint(8,200)#小世界网络中的节点数(随机生成的整数,(上限,下线))
k1=random.randint(2,20)#x先随机生成一个小于节点数的数
if k1%2 ==0:
    k=k1
else:
    k=k1-1
p=random.random()#小世界网络中的加边概率(随机生成0-1之间)
ws=random_graphs.watts_strogatz_graph(n,k,p)

print('小世界网络图中的节点总数:', n)
print('小世界网络图中要连的邻接个数:', k)
print('小世界网络的随机加边概率p为:{:.2f}'.format(p))
dws=ne.degree(ws)#获取小世界网络的度
bws=ne.betweenness_centrality(ws)#介数
cws=ne.core_number(ws)#K壳
ccws=ne.clustering(ws)#聚类系数
ccf=efficiency(ws)
print('输出的小世界网络度为:',dws)
print('输出的小世界网络介数为:',bws)
print('输出的小世界网络介数k壳为:',cws)
print('输出的小世界网络聚类系数为:',ccws)
print('小世界网络的网络效率:',ccf)
ne.draw(ws,pos=shell_layout(ws),with_labels=False,node_size=30)
plt.show()
ne.write_pajek(ws,'ws.net')


#无标度网路
x=random.randint(8,200)#小世界网络中的节点数(随机生成的整数,(上限,下线))
y=random.randint(2,20)#x先随机生成一个小于节点数的数
wbd=random_graphs.barabasi_albert_graph(x, y)
ne.draw(wbd,pos=shell_layout(wbd),with_labels=False,node_size=30)
print('无标度网络中的节点总数:', x)
print('无标度网络中,每次加入的边数是:', y)
plt.show()
ne.write_pajek(wbd,'wbd.net')



#随机网络
m=random.randint(8,200)#小世界网络中的节点数(随机生成的整数,(上限,下线))
z=random.random()
ER=ne.erdos_renyi_graph(m,z)
ne.draw(ER,pos=shell_layout(ER),with_labels=False,node_size=30)
print('ER随机网络图中的节点总数:', m)
print('随机网络中随机加边的概率是{:.2f}'.format(z))
plt.show()
ne.write_pajek(ER,'ER.net')

小世界网络在这里插入图片描述
无标度网络在这里插入图片描述
随机网络在这里插入图片描述
版本二:手动输入型

from random import random
import networkx as ne #导入建网络模型包,命名ne
import matplotlib.pyplot as plt #导入科学绘图包,命名mp
from networkx import shell_layout
from networkx.generators import random_graphs

#WS network graphy
print('请输入网络节点总数NETWORK_SIZE:')
NETWORK_SIZE=int(input())
print('请输入规则网络要连的邻接个数k:')
k=int(input())
print('请输入重连概率p:')
p=float(input())
ws=ne.watts_strogatz_graph(NETWORK_SIZE,k,p)
ps=ne.circular_layout(ws)#布置框架
ne.draw(ws,ps,with_labels=False,node_size=30)
plt.show()
ne.write_pajek(ws,'pajek.net')


print('请输入无标度网络节点总数x:')
x=int(input())
print('请输入规则网络要连的邻接个数t:')
y=int(input())
wbd=random_graphs.barabasi_albert_graph(x, y)
ne.draw(wbd,pos=shell_layout(wbd),with_labels=False,node_size=30)
ne.draw(wbd,ps,with_labels=False,node_size=30)
plt.show()

print('请输入随机网络节点总数m:')
m=int(input())
print('请输入随机网络节点总数z:')
z=int(input())
ER=ne.erdos_renyi_graph(m,z)
ne.draw(ER,pos=shell_layout(ER),with_labels=False,node_size=30)
plt.show()

仙女不认输鸭
关注 关注
  • 4
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
复杂网络建模】——通过图神经网络来建模分析复杂网络
lingxw的博客
05-18 7209
复杂网络是指由大量节点和连接组成的网络结构,它在许多领域中都有应用,包括社交网络、生物网络、信息网络等。复杂网络的研究主要关注网络的拓扑结构、动力学行为和功能特性。复杂网络的拓扑结构通常呈现出非常复杂的特征,例如小世界效应和无标度性。小世界效应指的是网络中的节点之间具有较短的平均路径长度,使得节点之间的距离变得更短。无标度性表示网络的度分布呈幂律分布,即只有少数节点具有非常高的连接度,而大部分节点的连接度较低。这些特性使得复杂网络在信息传播、灾难传播、社交影响等方面表现出独特的性质。
networkx学习(三) 随机网络
May the Force be with you
01-13 1527
规则网络随机网络
使用python networkx构建随机网络、规则网络
sweet_tea_的博客
01-03 1324
使用python networkx构建随机网络、规则网络
ER随机图构造算法
热门推荐
XuShuai
05-19 2万+
/******************************************************************************************************** * ER随机图G(N,p)构造算法 * * (1)初始化:给定N个节点以及连边概率p~[0,1] * * (2)随机连边:
使用networkx构建随机网络
Kp0fS的草稿纸
05-19 2345
使用networkx构建随机网络 有两种方法: 也可以直接调用库函数来生成这两种网络 n, m, p = 20,40,0.2 #节点数、边数、连边概率; g1 = nx.gnm_random_graph(n, m) #根据连边数,确定随机网络 g2 = nx.gnp_random_graph(n, p) #根据连边概率,确定随机网络。 ...
复杂网络matlab经典算法_matlab_随机网络_小世界网络_无标度网络_复杂网络_
10-01
随机网络,小世界网络,无标度网络等经典网络的生成源代码,下载打开后直接运行即可。
模拟具有不同模型(NW小世界、无标度随机)复杂网络以及估计其鲁棒性+代码仿真操作视频
07-08
2.内容:模拟具有不同模型(小世界、无标度随机)复杂网络以及估计其鲁棒性+代码仿真操作视频 3.用处:用于小世界、无标度随机算法编程学习 4.指向人群:本硕博等教研学习使用 5.运行注意事项: 使用matlab...
复杂网络.zip_matlab_复杂网络 绘图_复杂网络MATLAB_小世界_随机网络
07-15
实现matlab上复杂网络中无标度网络,度分布,随机网络,NW及WS小世界网络实现及绘图
复杂网络之无标度网络与小世界网络生成程序_复杂网络模型的实现程序_无标度网络_
10-03
用来生成各种复杂网络模型的程序,比如无标度网络随机网络以及所属的各种测量指标。
生成随机网络:生成任意大小的随机网络。-matlab开发
06-01
用于生成任意大小的随机网络。 必要的参数只有节点数、最大外弧数、相邻节点之间的最大间隔(节点数)以及β分布的两个参数,输出到Excel文件
标度网路的生成.rar_matlab_复杂网络、无标度网络
07-14
复杂网络上无标度网络的生成,用MATLAB实现
python实现小世界网络生成
m0_52588744的博客
11-08 835
python世界网络生成
复杂网络学习笔记】2:无标度网络的建立
LauZyHou的笔记
05-07 1万+
scale - free network, 现实世界网络大部分都不是随机网络,少数的节点往往拥有大量的连接,而大部分节点却很少,一般而言他们符合二八定律。将度分布符合幂律分布的复杂网络称为无标度网络。 如互联网,大型软件的结构特性都属于无标度网络: 只要攻击那些度数很多的关键节点就能引起最大的攻击效益。 这也正体现了无标度网络对蓄意攻击的脆弱性(李青老师用了一个有趣的阿喀琉斯踵的故事)...
复杂网络建模的实现(哈工大深圳复杂网络建模课程Project)
不积跬步无以至千里
10-28 1万+
咳咳,复杂网络建模project,哈工大深圳课程的项目作业
陈关荣老师整理的复杂网络的…
nuoline的专栏
02-25 3600
原文地址:陈关荣老师整理的复杂网络的资源作者:zhengw789http://www.ee.cityu.edu.hk/~gchen/ComplexNetworks.htm http://mrvar.fdv.uni-lj.si/sola/info4/programe.htm
标度网络生成算法之简单轮盘算法
weixin_43723393的博客
05-21 1414
本文介绍了无标度网络生成的基本方法:简单轮盘算法。 简单轮盘算法以轮盘赌模型为基本雏形,加之以累计概率决策。 本文最后提出了一种对概率更新方法的一种改进方案。
复杂网络ER随机网络的构建、度分布计算、可视化实现(python实现)
三月和九月的博客
04-18 1万+
实验环境 我用的是Anaconda 自带的Spyder编辑器,python3.8 此算法在上一篇算法复杂网络——随机网络ER的构造C++实现及测试的基础上用python重写了,在编写过程中发现python对数组的初始化非常方便,仅用np.zeros()函数就可以生成,而C++要用双层for循环才可以。在这里我默认系统资源非常充足,就未对内存申请失败进行判断,实际上在测试时节点数1000就报错...
er随机网络,小世界网络和无标度网络的区别
最新发布
12-22
er随机网络、小世界网络和无标度网络属于复杂网络三种典型模型,它们在结构上有明显的区别。 首先,er随机网络是最简单的一种网络模型,其中节点之间的连接是完全随机的,节点的度分布服从泊松分布。这意味着...

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 《ptyhon语言程序设计基础》 崇天著课后习题代码 第五章 4864
  • 复杂网络作业1——随机生成三种网络(小世界、无标度、ER随机) 2354
  • 《ptyhon语言程序设计基础》 崇天著课后习题代码4.6——羊车门问题 1498
  • 《python程序设计》崇天版 4.3答案——求最大公约数与最小公倍数 1173
  • 复杂网络2——IEEE118网络相关知识 938

最新评论

  • 投稿须知1

    CSDN-Ada助手: 恭喜博主撰写了第8篇博客!标题为“投稿须知1”,看来博主非常重视分享自己的经验和知识。在这个博客中,我相信博主一定给我们提供了一些有关投稿的有用建议。希望博主能够继续保持这样的创作热情,为我们带来更多有价值的内容。同时,我建议博主在下一篇博客中可以探讨一下如何选择合适的投稿平台或者如何撰写一篇有吸引力的投稿。谢谢博主的分享,期待更多精彩内容的呈现!

  • 复杂网络作业1——随机生成三种网络(小世界、无标度、ER随机)

    风吹过的路依然远: 请问怎么设置随机网络的连边数呢?

  • 复杂网络作业1——随机生成三种网络(小世界、无标度、ER随机)

    Math-Z: 是北师大的师姐吗?

  • 《ptyhon语言程序设计基础》 崇天著课后习题代码4.6——羊车门问题

    CSDN-Ada助手: 推荐 Python入门 技能树:https://edu.csdn.net/skill/python?utm_source=AI_act_python

大家在看

  • IDEA 中的奇技淫巧 686
  • Python学习笔记8:入门知识(八) 803
  • 114.网络游戏逆向分析与漏洞攻防-邮件系统数据分析-处理结构体类型数据的创建
  • 自动驾驶 毫米波雷达radar-速度估计 385
  • 【NOI】C++程序结构入门之循环结构三——break、continue 2825

最新文章

  • 投稿须知1
  • 复杂网络2——IEEE118网络相关知识
  • 《ptyhon语言程序设计基础》 崇天著课后习题代码 第五章
2023年2篇
2022年6篇

目录

目录

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

哆哆女性网慕残三更半夜鬼敲门2021属牛宝宝起名民间故事三百篇古龙升阳是什么意思家庭群起名字大全姓氏雷的男孩子起名怡宝矿泉水加盟透视软件刘敏养殖有限企业起名大全装饰品牌起名给起公司名字的软件起名子的意思姓莫的女孩起名大全西安限号2021最新限号10月袜子商标起名女娃起名字叫什么好新材料公司起名爱在哈佛剧情介绍秦华国学起名网邓起名大全男孩求2021没封的良心网站带沐字典故起名给小孩子起名的网站企业起名咨询企业四个人一起改游戏名字星座月份表12星座八字成语起名保健食品经营制度淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻不负春光新的一天从800个哈欠开始有个姐真把千机伞做出来了国产伟哥去年销售近13亿充个话费竟沦为间接洗钱工具重庆警方辟谣“男子杀人焚尸”男子给前妻转账 现任妻子起诉要回春分繁花正当时呼北高速交通事故已致14人死亡杨洋拄拐现身医院月嫂回应掌掴婴儿是在赶虫子男孩疑遭霸凌 家长讨说法被踢出群因自嘲式简历走红的教授更新简介网友建议重庆地铁不准乘客携带菜筐清明节放假3天调休1天郑州一火锅店爆改成麻辣烫店19岁小伙救下5人后溺亡 多方发声两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#青海通报栏杆断裂小学生跌落住进ICU代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了当地回应沈阳致3死车祸车主疑毒驾武汉大学樱花即将进入盛花期张立群任西安交通大学校长为江西彩礼“减负”的“试婚人”网友洛杉矶偶遇贾玲倪萍分享减重40斤方法男孩8年未见母亲被告知被遗忘小米汽车超级工厂正式揭幕周杰伦一审败诉网易特朗普谈“凯特王妃P图照”考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼恒大被罚41.75亿到底怎么缴男子持台球杆殴打2名女店员被抓校方回应护栏损坏小学生课间坠楼外国人感慨凌晨的中国很安全火箭最近9战8胜1负王树国3次鞠躬告别西交大师生房客欠租失踪 房东直发愁萧美琴窜访捷克 外交部回应山西省委原副书记商黎光被逮捕阿根廷将发行1万与2万面值的纸币英国王室又一合照被质疑P图男子被猫抓伤后确诊“猫抓病”

哆哆女性网 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化