Skip to content

shanshili/GSRR

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GSRR: Graph Similarity and Resilience Ranking

论文引用
Li C, Du R, Wu J, et al. Resilient Optimization of Sensor Networks Deployment Based on Graph Similarity Learning and Node Resilience Prediction[C]//2025 6th International Conference on Computing, Networks and Internet of Things (CNIOT). IEEE, 2025: 1-5.
论文链接

摘要

网络弹性(Network Resilience)是指网络在面对故障或对抗性攻击时维持其功能的能力,是网络系统设计与部署中的关键因素。然而,传统的传感器网络优化部署方法往往忽略了这一重要因素。本文提出了一种结合图相似性学习与节点弹性预测的弹性优化方法,用于传感器网络部署,重点提升网络弹性性能。通过策略性地选择并引入最优备份节点,该方法显著增强了网络的整体弹性表现。实验结果表明,该方法在提升网络鲁棒性与能效方面具有显著优势,实现了更高效的备份节点分配。


工程结构说明

本项目为上述论文的源码实现,主要模块如下:

📁 utils

包含项目通用工具函数,分为以下子模块:

  • dataprocess: 数据预处理模块
  • GraphConstruct: 图构建相关函数
  • utils: 其他通用工具函数

📁 model

模型定义模块:

  • GAT: 基于图注意力网络(GAT)的模型实现
  • model_cuda: 支持 CUDA 加速的模型版本
  • model_cuda2: 改进版 GAT 模型,包含 NodeEmbeddingModule2

📁 MGC-RM

多粒度交叉表示与匹配模块(Multi-Granularity Cross Representation and Matching):

  • perturbation / perturbation2: 生成扰动图
  • MFC_RMF / MFC_RMF2 / MFC_RMF2cuda2: 图相似性训练与预测模块
  • plotpredictloss / plotscore: 可视化预测损失与相似度得分
  • PageRank2: 基于权重的 PageRank 算法
  • Perform: 性能评估模块
  • no-readout: 不含 readout 层的变体实验

📁 Resilience

网络弹性评估模块:

  • resilience-cpu / resilience_cuda: 基于 CPU 和 GPU 的弹性训练与评估
  • resilience_train_test / resilience_eval: 模型测试与评估模块
  • plotscore2 / plotscore-r / plotscore-y: 不同指标的可视化分析
  • R-Perform: 弹性评估指标计算

📊 可视化结果

部分实验可视化结果如下:

f2

f3

f4

f5


🧪 使用说明

请参考各模块下的脚本文件与注释,建议按以下顺序执行:

  1. 数据预处理与图构建
  2. 模型训练(MGC-RM)
  3. 弹性预测与评估(Resilience)

About

Graph Similarity and Resilience Ranking

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages