社会网络,生态网络,贸易网络,复杂网络边介数蓄意和随机攻击

​边介数(Edge Betweenness)

# ”

边介数(Edge Betweenness)

1

边介数(Edge Betweenness)

Summer IS HERE

边介数(Edge Betweenness)是一种度量边在网络中重要性的指标。它定义为通过某条边的最短路径的数量与网络中所有最短路径数量的比值。具体来说,边介数表示在所有节点对之间的最短路径中,有多少条路径通过该边。边介数越高,表示该边在网络中越关键。

边介数的定义公式如下:

设  是一个图,其中  是节点集合, 是边集合。对于图中的每一条边 ,其边介数  定义为:

其中:

  •  表示节点  到节点 的所有最短路径的数量。

  •  表示节点 到节点  的所有最短路径中通过边 的路径数量。

边介数的计算步骤通常如下:

  1. 对于图中的每一对节点,找到它们之间的所有最短路径。

  2. 统计每条边在这些最短路径中出现的次数。

  3. 对每条边的出现次数进行归一化处理,以得到边介数值。

这种方法可以有效地识别网络中对信息流动或连通性至关重要的边。

2

边介数的计算步骤:

  1. 对于图中的每一对节点,找到它们之间的所有最短路径。

  2. 统计每条边在这些最短路径中出现的次数。

  3. 对每条边的出现次数进行归一化处理,以得到边介数值。

这种方法可以有效地识别网络中对信息流动或连通性至关重要的边。

针对网络中的边进行蓄意和随机攻击是研究网络韧性和稳定性的重要方法。边介数(Edge Betweenness)在这种分析中扮演了关键角色,因为它可以帮助识别网络中的关键边和潜在的脆弱点。以下是对边介数进行蓄意和随机攻击的意义:

蓄意攻击

蓄意攻击(Intentional Attack)是指有针对性地攻击网络中具有高边介数的边。这样做的目的是最大化对网络连通性的破坏。以下是蓄意攻击的意义:

  1. 识别关键边:通过移除具有高边介数的边,可以识别网络中对连通性和信息流动至关重要的边。

  2. 评估网络韧性:观察网络在蓄意攻击下的反应,可以评估网络的韧性和容错能力。如果移除少量高介数边就能导致网络分裂,说明网络韧性较差。

  3. 提高网络设计:通过识别和保护这些关键边,可以设计更健壮的网络结构,增强网络的抗攻击能力。

Summer

随机攻

随机攻击(Random Attack)是指随机选择网络中的边进行移除,而不考虑它们的边介数。随机攻击的意义包括:

01

测试网络的随机容错性:通过随机移除边,测试网络在面对非针对性攻击时的表现,评估网络的随机容错性。

02

对比蓄意攻击的影响:通过对比随机攻击和蓄意攻击的结果,可以更清晰地了解高介数边在网络中的重要性。

03

模拟现实场景:在实际应用中,网络可能会遭受随机故障或非恶意的边断裂。模拟这种情况可以帮助预测网络在实际运行中的表现。

Summer

实验步骤

  1. 计算边介数:首先计算网络中每条边的边介数。

  2. 蓄意攻击

    • 按边介数从高到低的顺序移除边。

    • 观察每次移除后的网络连通性变化,如巨量连通分量的大小和数量变化。

  3. 随机攻击

    • 随机选择并移除边。

    • 观察每次移除后的网络连通性变化,进行统计分析。

  4. 比较分析

    • 对比两种攻击方式下网络连通性的变化。

    • 评估网络的韧性和脆弱性。

3

实现

Summer IS HERE

求网络的边介数代码

Summer

代码

 
import pandas as pd
import networkx as nx# 文件名列表
file_names = ['11.xlsx', '22.xlsx', '33.xlsx', '44.xlsx', '55.xlsx', '66.xlsx', '77.xlsx', '88.xlsx']# 定义处理函数
def process_file(file_name):# 读取 Excel 文件file_path = f'{file_name}'df = pd.read_excel(file_path)# 从 DataFrame 构建无向图G = nx.from_pandas_edgelist(df, 'from', 'to')# 计算边介数中心性edge_betweenness = nx.edge_betweenness_centrality(G)# 将边作为无序对处理,以确保可以处理无向图的边df['edge_betweenness'] = df.apply(lambda row: edge_betweenness.get((row['from'], row['to']), edge_betweenness.get((row['to'], row['from']))), axis=1)# 保存修改后的 DataFrame 到新的 Excel 文件output_path = f'{file_name.split(".")[0]}_with_edge_betweenness.xlsx'df.to_excel(output_path, index=False)return output_path# 处理所有文件
output_files = [process_file(file_name) for file_name in file_names]# 输出处理后的文件路径列表
output_files
 
['11_with_edge_betweenness.xlsx','22_with_edge_betweenness.xlsx','33_with_edge_betweenness.xlsx','44_with_edge_betweenness.xlsx','55_with_edge_betweenness.xlsx','66_with_edge_betweenness.xlsx','77_with_edge_betweenness.xlsx','88_with_edge_betweenness.xlsx']

Summer

网络格式

| from | to   |
| ---- | ---- |
| 1    | 2    |
| 1    | 4    |
| 1    | 5    |
| 1    | 7    |
| 2    | 4    |
| 2    | 7    |
| 2    | 12   |
| 2    | 16   |
| 3    | 61   |

输出的结果

 
| from | to   | edge_betweenness |
| ---- | ---- | ---------------- |
| 1    | 2    | 0.001700281      |
| 1    | 4    | 0.026619318      |
| 1    | 5    | 0.008927579      |
| 1    | 7    | 0.011732577      |
| 2    | 4    | 0.01920632       |
| 2    | 7    | 0.011669551      |
| 2    | 12   | 0.005642587      |
| 2    | 16   | 0.005974664      |
| 3    | 61   | 0.011695906      |
| 4    | 6    | 0.000565324      |
| 4    | 9    | 0.059238643      |

社会网络、生态网络、复杂网络指定节点蓄意攻击客户端

社会网络、生态网络、复杂网络脆弱性分析(随机、蓄意攻击)工具-指标公式

社会网络、生态网络、复杂网络脆弱性分析(随机、蓄意攻击)工具(增加了边攻击策略)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/841567.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenStack平台Nova管理

1. 规划节点 使用OpenStack平台节点规划 IP主机名节点192.168.100.10controller控制节点192.168.100.20compute计算节点 2. 基础准备 部署的OpenStack平台 1. Nova运维命令 (1)Nova管理安全组规划 安全组(security group)是…

设计模式八股文

什么是设计模式? 设计模式是软件开发过程中经常遇到的问题的通用解决方案。类似于前人总结的经验,遇到相似问题的时候有个参考。 设计模式七大基本原则? 单一职责:一个类应该只作一件事情。将功能分为小的独立的单元。开放封闭…

CTF之Web_python_block_chain

这种题对于我来说只能看大佬的wp(但是这一题是wp都看不懂,只能表达一下我的理解了) (最后有简单方法,前面一种没看懂没关系) 下面这一部分是首页的有用部分 访问/source_code,得到源码: # -*-…

宁夏银川、山东济南、中国最厉害的改名大师的老师颜廷利教授的前沿思想观点

在当代社会,一个响亮的声音穿越了传统的迷雾,它来自东方哲学的殿堂,由一位现代学者颜廷利教授所发出。他的话语,如同一股清泉,在混沌的世界里激荡着思考的波澜:"有‘智’不在年高,无‘智’…

太空几乎没有阻力,飞船理论上能一直加速,为何还说星际旅行很难

太空几乎没有阻力,飞船理论上能一直加速,为何还说星际旅行很难? 答案 现代科学认为,我们的地球诞生于46亿年前,也就是太阳系诞生初期,在太阳系中一共有八大行星,而地球是唯一一颗诞生了生命的…

起保停电路工作原理

一、电路组成 起保停电路由电源保护设备(空气开关)、交流接触器、启动按钮、停止按钮和用电设备组成。 起保停电路的组成部分通常可分为四个部分: 保护部分:(空气开关)在电流或电压超出一定范围时自动切断…

异步获取线程执行结果,JDK中的Future、Netty中的Future和Promise对比

JDK中的Future和Netty中的Future、Promise的关系 三者源头追溯 Netty中的Future与JDK中的Future同名,但是是两个不同的接口。Netty中的Future继承自JDK的Future,而Promise又对Netty中的Future进行了扩展。 JDK中的Future源自JUC并发包: Net…

电商API接口(api商品数据)【电商商品实时数据采集API接口】

众多品牌选择电商API实时数据采集接口进行采购,主要是出于以下几个重要原因: 第一,高效便捷。比价工具通过自动化的方式获取价格信息,避免了繁琐的人工操作,大大节省了时间和精力。 第二,精准比较。API比价…

如何使用ssh将vscode 连接到服务器上,手把手指导

一、背景 我们在开发时,经常是window上安装一个vscode编辑器,去连接一个虚拟机上的linux,这里常用的是SSH协议,了解其中的操作非常必要。 二、SSH协议 SSH(Secure Shell)是一种安全协议,用于…

C#屏蔽基类成员

可以用与积累成员名称相同的成员来屏蔽 要让编译器知道你在故意屏蔽继承的成员,可以用new修饰符。否则程序可以成功编译,但是编译器会警告你隐藏了一个继承的成员 using System;class someClass {public string F1 "Someclass F1";public v…

YOLOv10 | 手把手教你利用yolov10训练自己数据集(含环境搭建 + 参数解析 + 数据集查找 + 模型训练、推理、导出)

一、前言 本文内含YOLOv10网络结构图 各个创新模块手撕结构图 训练教程 推理教程 参数解析 环境搭建 数据集获取等一些有关YOLOv10的内容! 目录 一、 前言 二、整体网络结构图 三、空间-通道分离下采样 3.1 SCDown介绍 3.2 C2fUIB介绍 3.3 PSA介绍 …

微服务下认证授权框架的探讨

前言 市面上关于认证授权的框架已经比较丰富了,大都是关于单体应用的认证授权,在分布式架构下,使用比较多的方案是--<应用网关>,网关里集中认证,将认证通过的请求再转发给代理的服务,这种中心化的方式并不适用于微服务,这里讨论另一种方案--<认证中心>,利用jwt去中…

【数据库基础-mysql详解之索引的魅力(N叉树)】

索引的魅力目录 &#x1f308;索引的概念&#x1f308;使用场景&#x1f308;索引的使用&#x1f31e;&#x1f31e;&#x1f31e;查看MySQL中的默认索引&#x1f31e;&#x1f31e;&#x1f31e;创建索引&#x1f31e;&#x1f31e;&#x1f31e;删除索引 站在索引背后的那个男…

sheng的学习笔记-docker部署Greenplum

目录 docker安装gp数据库 mac版本 搭建gp数据库 连接数据库 windows版本 搭建gp数据库 连接数据库 docker安装gp数据库 mac版本 搭建gp数据库 打开终端&#xff0c;输入代码&#xff0c;查看版本 ocker search greenplum docker pull projectairws/greenplum docker…

Virtual Box安装Ubuntu及设置

Virtual Box安装Ubuntu及设置 本文包含以下内容&#xff1a; 使用Virtual Box安装Ubuntu Desktop。设置虚拟机中的Ubuntu&#xff0c;使之可访问互联网并可通过SSH访问。 Ubuntu Desktop下载 从官网下载&#xff0c;地址为&#xff1a;Download Ubuntu Desktop | Ubuntu U…

HTTP交互导致ECONNABORTED的原因之一

背景&#xff1a; 本次记录的&#xff0c;是一次使用HTTP交互过程中遇到的问题&#xff0c;问题不大&#xff0c;就是给题目上这个报错补充一种可能的解决方案。 程序大致流程&#xff1a; 1. 设备向服务器A请求信息 2. 拿到回复记录下回复内容中的数据包下载地址等信息 3…

games 101 作业4

games 101 作业4 题目题解作业答案 题目 Bzier 曲线是一种用于计算机图形学的参数曲线。在本次作业中&#xff0c;你需要实 现 de Casteljau 算法来绘制由 4 个控制点表示的 Bzier 曲线 (当你正确实现该 算法时&#xff0c;你可以支持绘制由更多点来控制的 Bzier 曲线)。 你需…

IntelliJ IDEA实用插件:轻松生成时序图和类图

IntelliJ IDEA生成时序图、类图 一、SequenceDiagram1.1 插件安装1.2 插件设置1.3 生成时序图 二、PlantUML Integration2.1 插件安装2.2 插件设置2.3 生成类图 在软件建模课程的学习中&#xff0c;大家学习过多种图形表示方法&#xff0c;这些图形主要用于软件产品设计。在传统…

C++实现定长内存池

项目介绍 本项目实现的是一个高并发的内存池&#xff0c;它的原型是Google的一个开源项目tcmalloc&#xff0c;tcmalloc全称Thread-Caching Malloc&#xff0c;即线程缓存的malloc&#xff0c;实现了高效的多线程内存管理&#xff0c;用于替换系统的内存分配相关函数malloc和fr…

Java面向对象知识总结+思维导图

&#x1f516;面向对象 &#x1f4d6; Java作为面向对象的编程语言&#xff0c;我们首先必须要了解类和对象的概念&#xff0c;本章的所有内容和知识都是围绕类和对象展开的&#xff01; ▐ 思维导图1 ▐ 类和对象的概念 • 简单来说&#xff0c;类就是对具有相同特征的一类事…