如何解决使用gnp_random_graph创建多个图
使用"resolutions": {
"glob/**/graceful-fs": "^4.2.4",},
包时,我的任务是创建多个具有给定n个节点和p个概率的随机图,这是我的代码:
NetworkX
但是,每次迭代都会创建相同的精确图形(即使边缘完全相同)
有人知道什么地方可能出问题了吗?
更新:
尝试使用不带“ seed”参数的函数后,图表是随机的,但是有办法在仍使用“ seed”参数的情况下对问题进行排序吗?
解决方法
当前,您使用相同的固定种子进行循环中的所有调用。根据{{3}}或更一般的gnp_random_graph
的文档,通过固定种子,请确保始终收到完全相同的随机图。
例如:
G_1=nx.gnp_random_graph(100,.5,42)
G_2=nx.gnp_random_graph(100,42)
G_3=nx.gnp_random_graph(100,43)
图G_1
和G_2
的边将完全相同,而G_3
的种子不同,并且极有可能不同(如本例所示)。>
您可以通过以下代码获得检索同一图列表(由初始种子确定)的理想行为:
def random_networks_generator(n,p,num_networks=1,directed=False,seed=30030390):
Graph_list=[]
for num in range (0,num_networks):
G=nx.gnp_random_graph(n,seed + num,directed)
Graph_list.append(G)
return Graph_list
更多关于种子的背景:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。