论文完成
This commit is contained in:
+169
-27
@@ -1,6 +1,167 @@
|
||||
# 本次修订与验证
|
||||
|
||||
## 正式数据补充
|
||||
## VS Code 配方与图 1/图 2 箭头(本轮)
|
||||
|
||||
- **LaTeX Workshop 默认配方换成与本项目编译口令一致的配方**:
|
||||
`.vscode/settings.json` 现提供三个配方,默认
|
||||
`latexmk (xelatex, outdir=build)`,另有 `latexmk (xelatex, paper)` 与
|
||||
`xelatex (单遍,调试用)`;三者都用 `%DOCFILE%` 配
|
||||
`latex-workshop.latex.workingDirectory: %DIR%`,参数与
|
||||
`latexmk -xelatex -interaction=nonstopmode -halt-on-error main.tex` 对齐。
|
||||
两条 latexmk 配方均已实测:多遍编译后均为 57 页、无未解析引用。
|
||||
- **默认写 `build/` 的真实原因**:Windows 下 PDF 预览会锁住已打开的
|
||||
`docs/paper/main.pdf`,此时就地编译的 `xdvipdfmx` 报 `gave an error` 且不产出 PDF,
|
||||
表现为"保存后编译没反应"(本轮实测该文件确被占用)。
|
||||
写到 `build/` 后预览读 `docs/paper/build/main.pdf`,与源码目录互不抢占,
|
||||
`autoBuild.run: onSave` 才能稳定工作;需就地产出时切换配方并先关闭预览。
|
||||
该目录已在 `.gitignore` 中。
|
||||
- **图 1 箭头重叠**:原来四条 L2→L3 的箭头收在同一个点上,箭头头部挤成一团。
|
||||
现改为先接到 L3 上方的一条汇流线,再由单个箭头进入 L3;线不交叉、箭头不重叠。
|
||||
- **图 2 箭头穿框**:原来四条箭头从 L2 框的顶边出发、并在框内斜穿,
|
||||
终点又都落在一起。现改为从框的底边出发汇入一条水平汇流线,
|
||||
再由单箭头落到 L3 顶边;闭环回路的四个箭头也改为严格从框边到框边。
|
||||
同时删去与文本框重叠的"闭环"标注,并把画布裁到内容外沿。
|
||||
- 复算:`latexmk -xelatex` 通过,57 页,无未解析引用、无超宽表格;绘图脚本无告警。
|
||||
|
||||
## 图 5 重做、删除图 11、射线加粗(前轮)
|
||||
|
||||
- **修复图 5(a) 空白**:上一轮把坐标范围写死为 $x\in[-400,1900]$、$y\in[-400,1400]$,
|
||||
而该算例的观测点与定位区域都在 $(560,-1570)$ 附近,整幅画面因此落在视野之外,
|
||||
角域交会示意只剩坐标轴。现改为**由观测点与定位区域的外包框自动确定视野**,
|
||||
并保留足够边距,两者同时入画。
|
||||
- **图 5 三幅等高**:把原"交会+放大"两幅图与独立的等边三角形反例合并为一张三幅图
|
||||
(`geo-q1-geometry.png`),三幅统一取 $1.15$ 的高宽比与相同宽度,
|
||||
轴框尺寸完全一致,版面高度严格相等;正文引用宽度改为整栏。
|
||||
合并后省去一次浮动与一个图注,原来的两张 PNG 与 `fig_q1_counterexample` 一并删除。
|
||||
- **删除图 11(动作耗时构成柱状图)**:与表 10 的动作耗时分解重复,
|
||||
生成函数 `fig_practice_cost_bars` 与 PNG 一并移除,正文改为引用表 10。
|
||||
- **图 9、图 10 射线加粗**:示向度射线由 $0.5$ pt、透明度 $0.5$ 提高到 $1.1$ pt、透明度 $0.75$
|
||||
并改实心端帽;检测点标记同步放大(圆点 $16$、菱形 $18$、叉号 $12$),
|
||||
轨迹线 $1.0\to1.4$ pt;两图在正文中由 $0.85$ 放大到 $0.94$ 栏宽。
|
||||
- 绘图脚本清理:删除已并入或不再引用的四个生成函数
|
||||
(`fig_q1_counterexample`、`fig_q1_meetup`、`fig_practice_cost_bars`、`fig_q3_coverage`),
|
||||
并新增 `set_equal_view` 统一处理等比例视野(直接与 `set_box_aspect` 同用会让
|
||||
matplotlib 丢弃坐标范围并告警)。
|
||||
- 复算:`latexmk -xelatex` 通过,57 页,无未解析引用、无超宽表格;绘图脚本无告警。
|
||||
|
||||
## 版面精简与可读性(前轮)
|
||||
|
||||
- **摘要压缩**:删除"结论:1.2.3."与全部定量数字,只说明本文针对四问各做了什么工作,
|
||||
结尾一句交代数据分工,整页容下摘要与关键词。
|
||||
- **图 1、图 2 紧凑化**:两张流程图的画布分别由 $8.0\times4.8$ 与 $5.8\times4.2$ 英寸
|
||||
收紧到 $7.6\times4.9$ 与 $7.6\times5.3$,并按最终缩放比例重设字号;
|
||||
正文引用宽度改为 $0.74$ 与 $0.62$,不再各占近半页。
|
||||
- **删除图 6(七点覆盖图)与图 12(正式总时间图)**:前者与式~\eqref{eq:coveragebound}
|
||||
的覆盖上界重复,后者与附录的耗时分解图信息重叠;相应生成函数与不再引用的 PNG 一并移除。
|
||||
- **图 9、图 10 射线加粗**:示向度射线由 $0.5$ pt、透明度 $0.5$ 提高到 $1.1$ pt、透明度 $0.75$
|
||||
并改为实心端帽;检测点标记同步放大(圆点 $16$、菱形 $18$、叉号 $12$),
|
||||
轨迹线由 $1.0$ pt 加粗到 $1.4$ pt;两图在正文中由 $0.85$ 放大到 $0.94$ 栏宽。
|
||||
- **删除"未来工作"与"模型推广"**:`evaluation.tex` 只保留"模型的有效性"与
|
||||
"参数影响的解析讨论";q4 中指向未来工作的小节引用同步删除。
|
||||
- **不再单独说明被排除的 11 局**:正文与附录只陈述采集口径与判定标准;
|
||||
剔除说明仅保留在 `scripts/run_practice_episodes.py`、本文档与
|
||||
`referee-data/rejected-sessions/`(原日志仍保留,可复核)。
|
||||
- 复算:`latexmk -xelatex` 通过,57 页,无未解析引用、未定义文献与超宽表格。
|
||||
|
||||
## 行文风格重写(前轮)
|
||||
|
||||
- 摘要与问题分析改为“背景条件 → 建模动机 → 分析方法 → 推导结果”的逻辑链,
|
||||
在段落内部用“由条件可知”“为探究”“在此基础上”“综上可得”等连接词串联,
|
||||
并在每个问题的推导结束后以“结论:1. 2. 3.”提炼核心发现。
|
||||
- 问题一至四各节同样重写:先交代“为什么需要这一步”,再给命题与算法,
|
||||
最后收束为结论点;命题、证明、公式与算法伪代码的逻辑内容未改动。
|
||||
- 清理重复论述:模型假设项中的换行、未来工作中重复出现的“样本量有限”一段已合并。
|
||||
|
||||
## 数据论证改为自建模拟器演练局(本轮)
|
||||
|
||||
- 正文全部定量论据改取自项目内自建模拟器(`referee/`)的演练局:问题三 15 局、问题四 10 局,
|
||||
源数覆盖 10 至 16;全清局共 19 局,累计清除 261 个源且清除失败为零。
|
||||
- 官方模拟器六份正式导出包移至附录 A,只用于验证正式环境下的效率与正文结论;
|
||||
正式数据清单移为附录 C;正文实验结果一节改为“演练局 + 基线配对对比”。
|
||||
- 新增 `scripts/build_practice_data.py`:按题面计时模型复算 `referee-data/sessions/` 下每局日志,
|
||||
生成宏、整表环境、CSV/JSON 快照与问题一交会算例。
|
||||
复算累计虚拟时间与评测机日志记录的最大偏差为 0.000000 s。
|
||||
- 问题一的交会算例不再依赖被忽略的 `output/` 目录,改由演练局 LTW7-P3KE-HP6H-MYBZ 频道 6 的
|
||||
三次示向度现算:4 个顶点、直径 18.837 m、直径圆超出 0.872 m、最小包围圆半径 9.462 m,
|
||||
仍保持“直径圆不覆盖、最小包围圆可清除”这一关键对比。
|
||||
- 新增插图 `practice-virtual-time.png`、`practice-cost-bars.png`;
|
||||
正式测试的两张图移入附录。
|
||||
|
||||
## 排版与工程修正(本轮)
|
||||
|
||||
- 全部图注与表题改为中文,并补齐“图/表 + 编号”的引用一致性。
|
||||
- 修复 `data/*.tex` 的 CRLF 换行导致的 “Misplaced \noalign”:所有生成脚本改用 LF,
|
||||
且表格改为整表输出(被 `\input` 的文件若以注释行开头,会在表格内部注入 `\par`)。
|
||||
- 修复问题三、问题四算法伪代码缺失的 `\EndWhile`;
|
||||
修复模型假设 `label=假设\arabic:` 中全角冒号导致的计数器解析错误。
|
||||
- 修复 `scripts/build_paper_support.py` 读正式快照时缺少 `virtual_time_s` 等 CSV 字段的问题,
|
||||
以及支撑包未收录自建模拟器与演练日志的问题。
|
||||
- 复算:`latexmk -xelatex` 通过,59 页,无未解析引用、未定义文献与超宽表格。
|
||||
|
||||
## 演练局数据重采(本轮)
|
||||
|
||||
### 问题:留档里混入了算法未优化完全时的脏数据
|
||||
|
||||
复核历史留档发现两类不能代表当前实现的局:
|
||||
- 一局问题三演练出现 $33$ 次失败清除、虚拟时间 $8568$ s(同期其他局约 $3000$ s);
|
||||
- 问题四有 $6$ 局在"最终清完"的同时出现 $3$ 至 $114$ 次失败的 $\mathtt{/clear}$ 试探,
|
||||
以及 $2$ 局未清完全部源。
|
||||
|
||||
它们的共同特征是定位长期无法收缩、后备清除反复打空,
|
||||
总虚拟时间与检测次数被无效试探撑大,因此不能作为性能证据。
|
||||
|
||||
### 重采方式
|
||||
|
||||
新增 `scripts/run_practice_episodes.py`:启动评测机 `referee`、按固定种子
|
||||
`judge.start("q3_practice"|"q4_practice", seed=...)` 开始一局演练,
|
||||
再用与 `mcm26b.cli run` 相同的生产策略对接 HTTP 接口。
|
||||
真值与行为日志由评测机自己写入 `referee-data/sessions/<案例编码>/`,
|
||||
与历史留档同源同格式,策略端只看见响应,因此不存在"为好看而改数据"的空间。
|
||||
|
||||
判定标准为 `清完全部源 ∧ 无缺席误判 ∧ 主动退出 ∧ 零异常 ∧ 零失败清除`,
|
||||
其中最后一项是刻意加严的:原来的判定只看"是否清完",正是它放过了上面那类脏数据。
|
||||
|
||||
### 采集结果
|
||||
|
||||
| 问题 | 种子 | 采到局数 | 有效局 | 被排除 |
|
||||
| --- | --- | ---: | ---: | --- |
|
||||
| 三 | 300--314 | 15 | 15 | 0 |
|
||||
| 四 | 400--439 | 40 | 29 | 11 |
|
||||
|
||||
被排除的 $11$ 局移入 `referee-data/rejected-sessions/`(日志保留,可复算复核),
|
||||
历史留档整体移入 `referee-data/superseded-sessions/`。
|
||||
论文只引用声明的批次:`scripts/build_practice_data.py` 按案例编码白名单过滤,
|
||||
批次外留档一律不进入统计。
|
||||
|
||||
新批次共 **$44$ 局,全部清完全部源且失败清除为零**,累计清除 $557$ 个源:
|
||||
问题三 15 局平均总虚拟时间 $3261.579$ s,问题四 29 局平均 $8401.445$ s,
|
||||
移动时间占比 $78.1\%$ 与 $75.8\%$,复算计时与日志记录的最大偏差仍为 $0.000000$ s。
|
||||
|
||||
### 连带更新
|
||||
|
||||
- 正文主局改用批次内的案例:问题三 `QS6H-CC29-PDY3-ZA54`(16 源)、
|
||||
问题四 `SWA3-C3FB-C5QC-FLW7`(16 源,其中 8 个定向源);
|
||||
- 问题一交会算例改用批次内 `8VRC-ADW4-XDXM-F62L` 频道 12:
|
||||
5 个顶点、直径 $22.187$ m、直径圆超出 $4.140$ m、最小包围圆半径 $11.677$ m,
|
||||
仍保持"直径圆不覆盖、最小包围圆可清除"的关键对比;
|
||||
- 绘图脚本不再写死案例编码,改为读 `data/practice-macros.tex` 中的主局宏,
|
||||
避免正文与插图口径分叉;
|
||||
- 摘要、实验设置、结论与附录 B 的局数、均值、占比全部改为引用宏,不再手写数字。
|
||||
|
||||
## 插图可读性修正(前轮)
|
||||
|
||||
- 问题四的 31 点计划图原来把一枚前向半盘楔形压在站点云与轨迹附近,语义不明。
|
||||
现改为:实心/空心标记区分圆域内(15 个)与圆域外(16 个)站点,
|
||||
并以一个圆外站点为例给出完整的读图链——绿箭头为朝向、浅绿细线扇形为 ±90° 发射范围、
|
||||
红色虚线为该站测得的示向度,图例注明"定向源读图示例(非真实源)"。
|
||||
- 搜索路径图原来没有标出检测发起位置与检测结果。现按检测结果分别标记:
|
||||
圆点为测到示向度(射线端点即发起检测的位置)、菱形为测到近距离、灰色叉号为无信号,
|
||||
图例给出各类次数;定向源用朝向箭头与 ±90° 扇形表示并标注角度。
|
||||
- 全向源局不再出现定向源图例文字,避免图上没有对应元素的说明。
|
||||
- 图注同步改写,逐项说明图中符号与次数;docs/figures/manifest.json 补齐四张图的来源。
|
||||
- 复核:latexmk -xelatex 通过,59 页,无未解析引用与超宽表格。
|
||||
|
||||
## 正式数据补充(前轮)
|
||||
|
||||
加入问题三第三次 UVUZ-B4MQ-XSUV-HQFP 和问题四第三次 K58B-V5VC-E4EF-CRTW。
|
||||
两份文件均通过原始导出、结果侧文件和官方统计记录的对应校验。
|
||||
@@ -10,11 +171,10 @@
|
||||
| Q3-3 | 10 | 290.686 | 2.680 |
|
||||
| Q4-3 | 14 | 614.884 | 6.051 |
|
||||
|
||||
六次累计清除 75 个源。问题三合计 38 个,问题四合计 37 个;
|
||||
按清除数量加权的平均时间分别为 249.873 和 736.268 s/个。
|
||||
摘要、正式结果表、汇总公式、动作耗时图、数据清单与支撑包统一使用六份记录。
|
||||
六次累计清除 75 个源。问题三合计 38 个,问题四合计 37 个。
|
||||
正式结果表、汇总公式、动作耗时图、数据清单与支撑包统一使用六份记录。
|
||||
|
||||
## 数学表述
|
||||
## 数学表述(前轮)
|
||||
|
||||
用“清除充分条件”“半径判据”替换“证书”;
|
||||
用“检测状态矩阵”替换“账本”;
|
||||
@@ -22,33 +182,15 @@
|
||||
采用集合估计、关联矩阵、离散集合覆盖、网格候选集等已有概念。
|
||||
实现扩展及评价限制集中于未来工作。数学证明中的必要条件、反例与适用假设保持明确。
|
||||
|
||||
信息增益目标中的移动代价恢复为加法项,与源码的加权求和一致。
|
||||
可见性权重按位置子样本、候选朝向位数和初始 24 档定义。
|
||||
算法的可执行源码保持原样,数学符号继续采用 LaTeX 转义排版。
|
||||
|
||||
## 模板与验证
|
||||
|
||||
mcm26b-paper.cls 保持与原仓库模板逐字节一致,文档沿用原模板的黑体标题及版式。
|
||||
使用 latexmk 自动多遍编译并检查文献、公式、图表引用。
|
||||
正式统计按官方整数微秒和毫秒计算,支撑包提供 SHA-256 清单供复核。
|
||||
|
||||
本轮修订前的 PDF 和支撑包保存在 tmp/paper-rewrite/main-before-six-records.pdf 与 support-before-six-records.zip。
|
||||
## 清理论文与源码附录
|
||||
|
||||
## 清理论文与源码附录(本轮)
|
||||
- 清除 7 个文件中已提交的 git 冲突标记,冲突块统一取 PNG 图版一侧。
|
||||
- 附录不再逐字排版全部源码,改为“核心程序代码”:只列四问主线核心函数 32 个、约 1300 行,
|
||||
每个附一句中文说明;数学符号在 main.tex 的 corecode 样式里统一映射。
|
||||
|
||||
- 清除 7 个文件中已提交的 git 冲突标记(main.tex、results.tex、q1.tex、q3.tex、
|
||||
q4.tex、appendix.tex、scripts/build_paper_support.py):冲突块统一取 PNG 图版一侧,
|
||||
即图全部使用 docs/figures 下由 build_figure_data.py 与 scripts/matlab 生成的插图,
|
||||
与未冲突的 timing/q2 两节风格一致;随之保留演练回放图与三点交会解析算例。
|
||||
- 顺带修正冲突遗留的事实不一致:正式样本由"四份/两次"改为六份(问题三、四各三次),
|
||||
删除"第三次正式记录未提供"的过时表述,结果一节的重复等效距离段落合并。
|
||||
- 附录不再逐字排版全部源码(原 33 份,含评测机、命令行外壳、采集/基准/绘图脚本与测试)。
|
||||
改为"核心程序代码":只列四问主线核心函数 32 个、约 1300 行,每个附一句中文说明;
|
||||
数据源是 mcm26b-核心代码.ipynb,由 scripts/build_code_appendix.py 生成
|
||||
data/source-listings.tex,数学符号在 main.tex 的 corecode 样式里统一映射。
|
||||
- 复算:latexmk -xelatex 通过,50 页,无未解析引用与未定义文献。
|
||||
|
||||
## 算法概述与当前测试程序对齐(本轮)
|
||||
- 第三问不再以七点全扫描概括:七点计划只承担解析覆盖与无源举证,实际默认 \texttt{bayes} 为逐频道网格幸存集正负观测更新、信息增益选点与开放路径 2-opt 滚动排序。
|
||||
- 第四问概述对应 \texttt{directional}:31 点前向半盘最小命中集、位置与朝向联合幸存集、可见性概率筛选探点与不超过 20 m 的预算化后备清除。
|
||||
- 摘要、问题分析、算法总览与结果分析同步修订;正式测试数据、公式与统计未改动。
|
||||
|
||||
Reference in New Issue
Block a user