# Cumcm Paper Writer

> 把已定稿的赛题、建模方案、代码结果与图表写成一篇可提交的全国大学生数学建模竞赛论文：按国赛格式规范组织摘要页、正文、参考文献与附录（含全部源码），遵守匿名与篇幅要求，并用真实获奖论文语料的风格基线把“AI 味”压到人类水平，最后跑格式、风格与数字一致性三重校验。当用户要求“写论文/成文/按国赛格式整理成论文/把结果写成论文/补附录/降低 AI 味”时使用；不负责建模选型、不写求解代码、不做代码检测，也不给奖项位次。

- Skill: `star1342354/cumcm-paper-writer` (Agent Skill, multi-file: 19 files)
- Install (CLI): `npx skillmds@latest add star1342354/cumcm-paper-writer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/star1342354/cumcm-paper-writer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: star1342354 (https://skillmd.com/u/star1342354)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/star1342354/cumcm-paper-writer

---


# 数模论文写作

把已经定稿并跑出结果的材料，写成一篇**能提交**的国赛论文。写作的上游是模型与真实结果，本技能不产生模型、不产生数据、不替代码背锅。

## 边界

- 只写论文与附录；建模选型走 `数学模型建立`/`cumcm-model-review`，写码与检测走 `cumcm-code-writer`/`cumcm-code-reviewer`。
- 论文里每个数值都必须能追到结果表或代码输出；**对不上时改代码或改口径说明，绝不改论文数字凑**。
- 不编造文献、数据、结论；未能核实的内容标“未核实”。不给奖项位次。

## 三段式流程（由总指挥派发三个独立子代理）

| 段 | 执行者 | 输入 | 产出 |
|---|---|---|---|
| S5a 起草 | 全新子代理 | 赛题、建模方案、结果表/图件、论文口径 | `05_论文/论文正文.md`（初稿）、DOCX/PDF |
| S5b 改写 | 独立子代理 | **仅**初稿 + 风格基线 + 降 AI 味改写手册 + 风格体检报告 | 改写稿（只改表达，不改数字/公式/结论） |
| S5c 校验 | 独立子代理 | 改写稿、结果表、风格基线 | 《格式自检表》《风格体检报告》与数字集合比对 |

- 每轮改写后重跑风格检查，≤3 轮；仍不达标即停下报告偏差表。
- 数字一致性用脚本比对改写前后数字多重集合，必须完全一致。

## 开工前核对输入

| 输入 | 用途 | 缺失时 |
|---|---|---|
| 赛题原文（含附件说明） | 对齐小问、红线、提交格式要求 | 索要，不要凭题号猜 |
| 建模方案（假设、符号表、逐问模型与公式） | 正文五、六两章的骨架 | 停下，先补方案 |
| 结果文档/结果表与图表（PNG/PDF） | 正文结果与图表来源 | 停下，先补运行结果 |
| 论文口径清单（论文要出现的数值） | 数值可追溯性 | 停下，先补口径 |
| 附录与源码、支撑材料文件列表 | 附录章节 | 停下，先补附录材料 |

## 论文结构

严格按下列顺序成文，**不要目录**：

| 位置 | 内容 |
|---|---|
| 第 1–2 页 | 承诺书页、编号专用页（按当届官方模板，不自行改动版式） |
| 第 3 页 | 摘要页：论文标题 + 摘要正文 + 关键词（3–5 个） |
| 第 4 页起 | 正文：一、问题重述；二、问题分析；三、模型假设；四、符号说明；五、模型建立与求解；六、模型检验；七、模型评价与推广 |
| 正文之后 | 参考文献 |
| 最后 | 附录：支撑材料文件列表 + **全部完整可运行源码** + 数据说明 |

正文从第四页开始、**不超过 30 页**；附录页数不限。版式要求见 [references/国赛论文格式与结构规范.md](references/国赛论文格式与结构规范.md)。

## 写作与风格要求

- **逐问闭环**：每问写全“问题 → 思路 → 模型 → 求解 → 结果 → 检验”。
- **公式与推导**：每式按“文字引入 → 列式编号 → 逐符号解释（其中，… 为 …） → 推导衔接（将式(2)代入式(3)…） → 收束解读（即…）”；连续推导不得跳步，新符号当场定义；每条假设都要在后文被真正使用。语料实证与写法见 `references/获奖论文写作骨架.md` 第八节。
- **公式**：编号连续、正文必须引用；符号在符号表中出现且全文一致。
- **图表（硬）**：题面要求的**每一张表都必须出现在正文**，且严格按题面给定的时刻×位置网格、四位小数、三线表（表题在表上方，"表 n ×××"）；表 5/表 6 这类"过程表"要带题面规定的"烘干结束时间"行，表 6 末列必须是"药材表面"。**图必须有**：用上游脚本生成的成品图（300 dpi，PNG/PDF），图题在图下方（"图 n ×××"），正文逐张引用；每问至少 1 张结果图 + 1 张组合主图，检验与灵敏度章节用 V 系列图。导出 DOCX 后自查 `word/media/` **确实嵌入图片**（数量 ≥ 正文引用图数）——"禁止图片"只针对把公式做成截图，数据图必须正常嵌入。
- **摘要**：背景一句 → 每问方法与关键数 → 特色与边界；数字必须与正文一致。
- **参考文献**：GB/T 7714 顺序编码制，正文引用与文末条目一一对应，禁止未被引用的条目。
- **低 AI 味**：以 `数据集/` 真实获奖论文（有效 442 篇）统计出的风格基线 `references/风格基线_数据集.json` 为准（句长与起伏、连接词、人称、列表化、空泛词、段首重复、标点习惯）；`风格基线.json`（训练语料 193 篇）作交叉核对。
  - 严格目标：14 项指标全部落在基线 p25–p75；交付下限：越界 ≤3 项且不超 p05–p95。
  - 改写操作见 [references/降AI味改写手册.md](references/降AI味改写手册.md)，真实段落锚点见 [references/语料写法锚点.md](references/语料写法锚点.md)，外部规则来源见 [references/风格来源.md](references/风格来源.md)。
  - 允许自然使用“我们”，但密度须落在语料区间内。

## 输出与自检

```text
05_论文/
├── 论文正文.md               # 源稿（含附录源码）
├── <年><题>_论文.docx / .pdf # 提交件
├── 格式自检表.md             # check_paper.py
├── 风格体检报告.md           # check_paper_style.py
└── 数字一致性报告.md         # 改写前后数字集合比对
```

```bash
python scripts/check_paper.py 05_论文/论文正文.md --docx … --pdf … --out 05_论文/格式自检表.md
python scripts/check_paper_style.py 05_论文/论文正文.md --out 05_论文/风格体检报告.md
python scripts/compare_numbers.py 改写前.md 改写后.md --out 05_论文/数字一致性报告.md
```

脚本只做机械核对；未通过项要么修正，要么在报告中写明理由，不得静默放行。

## 硬规则

- 摘要、正文、附录**任何位置**都不得出现姓名、学校、赛区、队号等身份信息，页眉页脚与文档属性一并检查。
- 电子版论文为单个 PDF 或 Word 文件、不超过 20MB；支撑材料压缩包不超过 20MB。
- 附录必须直接排入全部完整可运行源码；确实没有程序时写明“本论文没有用到程序”。
- 论文（含附录）必须与提交的电子版完全一致；改了代码结果就要同步改论文。

## 导出约定：查看版 vs 提交版

- **查看/编辑版 DOCX（默认交付）**：数学公式一律转为 **Word 原生公式（OMML）**——打开即为公式样式，点入可在公式编辑器中直接修改；
  **禁止**公式图片，**禁止**把 LaTeX 源码当正文。工具：`工具\md2docx_native.py <输入.md> <输出.docx>`
  （路径相对技能目录的上一级，安装后即 `<skills>\工具\md2docx_native.py`；基于 pypandoc，`\tag{n}` 自动改写为 `\qquad (n)`，表格转 Word 原生表格）。
  **首次使用先运行一次 `工具\setup-md2docx.ps1`** 建立带 pypandoc 的 venv；缺 pypandoc/pandoc 时按脚本提示处理，不得改用公式图片顶替。
- **提交版**：按当届格式规范排版，另行生成，不与查看版混用。
- 结果文档、附录与其中的公式表同样遵循"原生公式、零图片、零裸 LaTeX"的约定。

## 赛题要求逐条对照（强制交付物，写完论文必做）

论文成稿后，必须产出 `05_论文/赛题要求对照表.md`：**从赛题原文逐条提取要求**，逐条定位到论文与结果文件中的落点。

| 列 | 要求 |
|---|---|
| 要求编号 | R1、R2…（按赛题出现顺序，不重排、不合并） |
| 原文摘录 | 照抄赛题原句（可截取关键要求句），并标注位置（第几页/第几问/附表几） |
| 要求类型 | 模型/数值输出/表格式/文件与模板/精度/其它红线 |
| 论文落点 | 章节号 + 表号/图号/公式号（无落点写"缺失"） |
| 结果文件落点 | 文件名 + 工作表 + 行列范围（如 `result1.xlsx`/温度!B2:V1801） |
| 核验证据 | 脚本路径 + 抽查值（论文里的数值、结果文件里的数值、两者是否一致） |
| 状态 | 满足 / 部分满足（写清缺口）/ 未满足（写清原因与影响） |

规则：
- 要求条目**只能来自赛题原文**，不得用作者自己的摘要替代；摘录要能在原文中找到（附页码/位置）。
- 每条都必须同时给出**论文落点**与**结果文件落点**；任一缺失即视为未闭环。
- 四位小数、模板结构、指定时刻/距离网格、文件命名等硬性要求逐条单列。
- **交付前"未满足"必须为 0**；确有个别项无法满足时，必须写明影响并获得用户确认。

论文写作完成 ≠ 交付完成；还要有独立复核（见下）。

## 样式红线（与格式规范同级，违反即不得交付）

1. **样式严格依据国赛论文**：结构、页数、匿名与附录条款以 `references/国赛论文格式与结构规范.md`（官方 2026 修订稿 + 工作区模板实测版式）为准；语言与版面风格对照 `数据集/`（544 篇真实获奖论文，有效 444 篇）与 `训练语料/papers_text`（243 篇，交叉核对），配套 `references/数据集风格统计.md`、`风格基线_数据集.json`、`语料写法锚点.md` 与 `获奖论文写作骨架.md`（章节骨架、摘要规格、编号与公式写法口径）；版式模板可直接取用 `数据集\算法写作模板\03_写作模板(Word+LaTeX+AI披露)\`。
2. **正文禁止任何 Markdown 残留**：不得出现 `**`、`##`、`|---|`、`$$…$$`、`\tag{}`、`![`、反引号、`](http…)` 等标记；导出后它们必须是真正的加粗、标题、原生表格、公式对象与图片。
3. **禁止 AI 痕迹与符号特征**：条形分隔符堆砌、满屏列表、每段同构起笔、连接词滥用、破折号癖、表情与感叹号、中英夹杂抽象名词堆叠，按 `references/降AI味改写手册.md` 处理。
4. 导出后必须跑 `scripts/check_paper.py`（含排版残留检查）与 `scripts/check_paper_style.py`，两项全绿方可交付。
> 结构、编号层级、符号说明与逐式推导的写法见 `references/获奖论文写作骨架.md`（含 5.x.1–5.x.4 的逐问四段式、符号表规则与公式五拍写法）。

## 推进节奏与结构弹性（数据集实证）

- **推进节奏**：每段按“模型/方法是什么 → 公式长什么样（编号 + 逐符号解释） → 本题怎么用（参数取值、数据来源、算法步骤） → 得到什么、意味着什么”四拍写；结果要回扣问题（数据集 444 篇中 94.4% 最终落到预测/决策/建议，50.7% 明确写参数估计或标定）。详见 `references/获奖论文写作骨架.md` 第八、九节。
- **骨架是下限，不是上限**：按题目需要可以增减小节——数据来源与预处理、参数估计与标定、算法设计与流程、模型对比与选型、误差与灵敏度分析、模型的优缺点与推广，都是获奖论文的常见增补（骨架第十节给适用场合）。硬约束只有三条：七章要素齐全、每问闭环、数字与图表可追溯；既不为填骨架堆空章节，也不为省事砍掉检验与评价。
- **允许写法变体**：不必照抄任何句式；骨架给的是顺序与要素，单双栏、图表位置、小节命名可按内容自然调整，只要格式规范与匿名要求不破。

