Skills Development Ensuring Communications Research Reproducibility

Ensuring Communications Research Reproducibility

v20260724
jonc-reproducibility
A comprehensive guide for ensuring the reproducibility of communications simulations for journal submissions. It details critical steps, such as fixing random seeds, channel models, simulation parameters, software versions, and organizing a complete reproduction package. This ensures that research results can be accurately and credibly verified by external reviewers in high-impact scientific journals.
Get Skill
94 downloads
Overview

《通信学报》可复现性与实验可重复

本技能帮助让《通信学报》(Journal on Communications, JOC) 稿件的实验可被复现。JOC 由中国通信 学会主办,虽无独立制品徽章制度(见 jonc-artifact-evaluation),但通信仿真结果的可复现性是外审 判断可信度的核心。以下与 2026-07-09 核验的本刊定位一致(见 resources/official-source-map.md)。

一、可复现性三层

层次 含义 通信语境
可重复 (repeatable) 同环境同参数复跑得同结果 固定种子与信道实现
可复现 (reproducible) 他人按说明能复现主结论 提供 config + 脚本 + 数据
可推广 (replicable) 换场景仍成立 多信道/多拓扑验证

二、必须固定的要素

要素 做法
随机种子 全局固定;报告种子值或种子集
信道实现 固定信道模型与其随机实现;给参数
蒙特卡洛次数 明确独立仿真次数;据此给置信区间
参数表 每个实验一份 config(SNR、码率、天线数、节点数等)
数据集划分 训练/验证/测试固定;防泄漏
软件版本 MATLAB/NS-3/Python 及关键库版本

三、复现包组织

参照 resources/code/README.md

repo/
├── README.md      # 环境 + 一键复现主图命令
├── env/           # requirements.txt / environment.yml / 工具版本
├── src/           # 信道、方法、基线、指标
├── configs/       # 每图一 config,含种子
├── data/          # 数据或生成脚本 + 校验和
└── scripts/       # run_figX.* 与论文图号对应

四、防范数据泄漏与挑参

  • 泄漏防范:测试信道/数据不得参与训练或调参;时序数据防未来信息泄漏。
  • 挑参防范:报告参数选取依据;给敏感性分析,避免只报最优点。
  • 信道复用陷阱:训练与评测用同一批信道实现会高估性能,须分离。

五、受限数据/私有测量

  • 公开数据:给来源、版本、许可。
  • 自建数据:给生成脚本与统计描述。
  • 私有/受限测量:说明获取方式、脱敏处理与待核实的许可限制,尽量给可公开的替代验证。

六、写入正文

  • 实验设置节:列信道模型、参数表、种子、仿真次数、平台版本。
  • 数据可用性/致谢:说明代码与数据的开放程度与获取方式。
  • 匿名评审阶段用匿名仓库链接(若适用)。

七、复现自查清单

  • 随机种子、信道实现、蒙特卡洛次数已固定并报告。
  • 每张主图有对应 config 与运行命令。
  • 数据划分固定、无泄漏;训练/评测信道分离。
  • 软件与库版本记录完整。
  • 参数选取有依据、附敏感性分析。
  • 受限数据的获取与许可已说明(待核实 项标注)。
  • 正文实验设置与数据可用性声明齐备。

八、常见问题与修法

问题 后果 修法
未报种子/仿真次数 无法复现、统计存疑 补种子与次数、给置信区间
训练评测信道复用 性能高估 分离信道实现
参数无来源 挑参嫌疑 说明依据 + 敏感性
库版本缺失 环境不可重建 固定并记录版本
数据不可获取且无说明 可信度下降 给获取方式或替代验证

九、通信仿真的可复现性陷阱(专项)

通信仿真有一些区别于通用机器学习的复现陷阱,外审专家尤为敏感:

陷阱 表现 规避
信道实现未固定 每次运行信道不同,曲线抖动难比 固定信道随机实现或报告足够多次平均
蒙特卡洛次数不足 低误码率区间置信区间过宽 按目标 BER 量级设定足够仿真比特数
定点/浮点差异 硬件实现与仿真不一致 说明数值精度与量化设置
归一化口径不一 SNR/Eb/N0 定义混用 明确 SNR 定义(每比特/每符号/每天线)
基线实现差异 复现他人方法与原文不符 注明复现来源与差异、可给原作者代码

十、复现包 README 最小内容

# 环境
- OS / MATLAB(或 Python) 版本 / 关键库版本
# 一键复现
- bash scripts/run_fig3.sh   # 生成正文图 3(SNR-BER)
- bash scripts/run_fig5.sh   # 生成正文图 5(吞吐-负载)
# 参数
- configs/fig3.yaml(含 seed、SNR 范围、蒙特卡洛次数)
# 数据
- data/ 下载脚本 + 校验和(md5)
# 预计运行时间与硬件
- 图 3 约 ___ 分钟(CPU/GPU ___)

十一、与其它技能衔接

  • jonc-experiments 配套:实验设计定稿即固化复现要素。
  • jonc-supplementary 配套:把冗长参数表、额外场景放附录。
  • jonc-submission 配套:投稿时附复现包链接与数据可用性声明。
  • jonc-artifact-evaluation 配套:以复现包达到 L3 及以上可用性成熟度。

十二、要点回顾

  • 可复现性分三层:可重复、可复现、可推广;通信实证至少做到可复现。
  • 必须固定并报告:随机种子、信道实现、蒙特卡洛次数、参数表、数据划分、软件版本。
  • 警惕通信专项陷阱:信道未固定、仿真次数不足、SNR 定义混用、训练评测信道复用。
  • 复现包给 README + configs + scripts + 数据校验和,实现主图一键复现。
  • 把复现信息写入实验设置节与数据可用性声明;受限数据说明获取方式(待核实 许可)。

目标:让《通信学报》/Journal on Communications (JOC) 的外审可以按 README 在声明环境下复现主图主表, 这是通信类实证长文可信度的底线,也是三审制下加分的稳妥做法。

Info
Category Development
Name jonc-reproducibility
Version v20260724
Size 6.52KB
Updated At 2026-07-28
Language