68 lines
3.9 KiB
TeX
68 lines
3.9 KiB
TeX
\section{正式数据清单与复算说明}\label{app:data}
|
||
六份正式导出文件及其 SHA-256 校验值列于表~\ref{tab:packages}。
|
||
论文采用原项目模板,按2026年格式规范设置 A4 纸张、四边距 $2.5$ cm,
|
||
电子版从摘要页开始连续编号\cite{format}。
|
||
所给往届论文用于章节组织与版式参考。
|
||
|
||
\input{data/formal-file-list}
|
||
复算脚本 \pathtext{scripts/audit_paper_formal.py} 将正式导出、结果侧文件与
|
||
官方统计记录匹配,生成结构化数据、CSV 和 LaTeX 表格。
|
||
在项目根目录执行:
|
||
\begin{lstlisting}[language={},numbers=none]
|
||
python scripts/audit_paper_formal.py
|
||
python scripts/audit_paper_formal.py --snapshot docs/paper/data/formal-results.json
|
||
\end{lstlisting}
|
||
第一条命令完成来源匹配与统计计算;
|
||
第二条根据已有快照重新计算指标,并核对现有正式包的校验值。
|
||
耗时图与汇总量由同一统计快照生成。
|
||
|
||
第~\ref{sec:comparison} 节的配对对比表由 \pathtext{scripts/build_paper_support.py}
|
||
从 \pathtext{project/results/*.json} 生成,复跑对比框架本身执行
|
||
\texttt{uv run python -m project.run}。
|
||
正文插图由 \pathtext{scripts/build_figure_data.py} 准备数据、
|
||
\pathtext{scripts/matlab/run_all_figures.m} 出图,逐图来源与生成命令见
|
||
\pathtext{docs/figures/manifest.json}。
|
||
其中回放画布与实测计时两张插图取自评测机演练留档,
|
||
只用于说明机制与时间构成,不参与正式统计。
|
||
|
||
\section{支撑材料与运行方法}
|
||
\begin{table}[H]
|
||
\centering\small
|
||
\caption{支撑材料目录及用途}
|
||
\begin{tabularx}{\linewidth}{p{5.8cm}X}
|
||
\toprule
|
||
文件或目录 & 用途\\
|
||
\midrule
|
||
\pathtext{src/mcm26b/} & 四问几何、信念、覆盖、调度与串行通信实现\\
|
||
\pathtext{src/mcm26b/guarantee/plans/} & 第四问已实现的覆盖计划及验证参数\\
|
||
\pathtext{project/} & 最优与基线配对对比框架及其冻结基准集结果\\
|
||
\pathtext{scripts/audit_paper_formal.py} & 正式文件对应核对、匿名快照及表格复算\\
|
||
\pathtext{scripts/build_paper_support.py} & 对比表、矢量图、源码附录与支撑包生成\\
|
||
\pathtext{scripts/build_figure_data.py}、\pathtext{scripts/matlab/} & 插图数据准备与 MATLAB 出图脚本\\
|
||
\pathtext{docs/paper/data/} & 六个正式案例的可读统计、表格及校验值\\
|
||
\pathtext{docs/paper/sections/} & 分章论文源文件\\
|
||
\pathtext{docs/paper/figures/} & 正式累计耗时图的矢量源文件\\
|
||
\pathtext{docs/figures/} & 正文插图(PNG)及其数据清单与生成命令\\
|
||
\pathtext{Jammers-simulator-full/test/} & 六份原名官方正式日志\\
|
||
\pathtext{support-manifest.json} & 支撑包文件清单及逐文件 SHA-256\\
|
||
\bottomrule
|
||
\end{tabularx}
|
||
\end{table}
|
||
Python 运行时需要 \texttt{requests},\texttt{numpy} 提供可选加速。
|
||
将 \texttt{src} 加入 Python 模块路径后,可调用
|
||
\texttt{python -m mcm26b.geometry} 进行问题一几何分析,
|
||
或通过 \texttt{mcm26b.cli} 运行在线策略。
|
||
在线测试由模拟器界面启动,接口就绪后执行策略入口。
|
||
具体运行指令和编译步骤见支撑包的 \texttt{README.md}。
|
||
|
||
\section{核心程序代码}
|
||
四问的求解核心集中在约 $5000$ 行的单文件程序中,按\textbf{公共层、几何与集合估计层、
|
||
覆盖保证层、策略层}四层组织;评测机、命令行外壳、数据采集与绘图脚本、
|
||
单元测试以及未被采用的方案不属于求解核心,不在此列出。
|
||
完整可执行程序为支撑材料中的 \pathtext{mcm26b-核心代码.ipynb},
|
||
\pathtext{src/mcm26b/} 保留与之逐字对应的模块化版本,两者函数名一一对应。
|
||
下列代码为无改动的摘录:函数体与注释与程序一致,只按核心程度取舍。
|
||
未收录的部分包括独立评测机(按附件协议复现模拟器,与求解代码零耦合)、
|
||
命令行入口、数据采集与论文绘图脚本、单元测试,以及经实测未采用的候选方案。
|
||
\input{data/source-listings}
|