Skip to main content

math-modeling-workflow

通用数学建模竞赛(CUMCM / MCM-ICM / 各类数模赛)端到端工作流。适用于拿到赛题后, 从问题分析、数据处理、模型构建、算法实现、结果验证到论文交付的完整流程。触发词包括 "数学建模""建模比赛""数模赛题""开始建模""solve modeling problem"等。

الانتقال إلى التثبيت

معلومات المصدر

المستودع
Nance-Mike/container-damage-detection
آخر نشاط في المصدر
٢١ أغسطس ٢٠٢٦ في ٠٣:١١
لغة SKILL.md المكتشفة
الصينية
النجوم
٤
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
4 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
math-modeling-workflow
description
通用数学建模竞赛(CUMCM / MCM-ICM / 各类数模赛)端到端工作流。适用于拿到赛题后, 从问题分析、数据处理、模型构建、算法实现、结果验证到论文交付的完整流程。触发词包括 "数学建模""建模比赛""数模赛题""开始建模""solve modeling problem"等。
# 数学建模竞赛通用工作流 从赛题拆解到论文交付的六阶段端到端 Workflow。每个阶段标注输入/输出/依赖/可复用步骤,可适配计算机视觉、统计推断、优化、预测等不同赛题类型。 --- ## 阶段零:赛前准备(5 分钟) 1. 在项目根目录下创建标准目录结构: ``` 项目名/ ├── data/ ← 原始赛题数据(只读,不修改) ├── src/ ← 所有源代码 ├── results/ ← 实验输出(模型权重、日志、预测结果) ├── figures/ ← 可视化图表 ├── 论文/ ← LaTeX 论文工程(阶段六创建) └── 解题方案.md ← 问题分析与技术路线(阶段一产出) ``` 2. 确认计算环境:GPU 型号、Python 版本、关键库版本。 3. 若项目下有 `cumcm-paper-writing` skill,后续阶段六直接沿用其 LaTeX 模板。 --- ## 阶段一:问题分析与假设 **输入**:赛题 PDF、附件数据 **输出**:`解题方案.md`(含问题分类、假设、技术路线图) **依赖**:无 ### 步骤 1. **通读赛题**,逐问题标注数学类型: | 类型 | 常见问法 | 典型方法 | |:--|:--|:--| | 分类/判别 | "判断是否…""分为几类…" | 统计检验、机器学习分类器、EVT | | 检测/定位 | "找出位置…""标注…" | YOLO / Faster R-CNN / 语义分割 | | 回归/预测 | "预测未来…""估算…" | 时序模型、回归分析、神经网络 | | 优化 | "最优方案…""最小化…" | 线性规划、遗传算法、模拟退火 | | 评估/排序 | "评价…""排名…" | AHP / TOPSIS / 熵权法 / DEA | 2. **识别核心困难**:数据缺失?类别不平衡?无标注?多目标冲突? 3. **建立假设体系**(5–7 条),每条假设对应一个模型前提,引用文献支撑。 4. **画技术路线图**(TikZ 或 Mermaid): ``` 赛题 → 数据EDA → [问题二模型] → [问题一推断] → [问题三评估] → 论文 ``` - 先确定问题间的依赖关系,再决定解题顺序。 - 常用策略:「先检测后推断」「先建模后评估」。 ### 适配提示 - **优化类赛题**:阶段一重点在约束条件形式化和目标函数定义。 - **预测类赛题**:阶段一重点在时间粒度选择和外部变量筛选。 --- ## 阶段二:数据预处理与导入 **输入**:原始数据、阶段一的问题分析 **输出**:清洗后数据集、EDA 报告、`dataset.yaml`(如适用) **依赖**:阶段一 ### 步骤 1. **探索性数据分析(EDA)** - 统计样本量、类别/特征分布、缺失率、异常值。 - 建立 **「真实数字清单」**:数据规模、类别占比、不平衡比、尺度分布等——后续论文中的所有数字必须从此清单取用。 - 输出可视化:类别柱状图、相关性热力图、分布直方图。 2. **数据划分** - 使用 **分层抽样**(`StratifiedShuffleSplit`)按类别/标签等比例划分训练集与验证集(常用 85:15)。 - 固定随机种子 `seed=42`,确保可复现。 - 测试集由赛题提供,不参与任何训练/调参。 3. **数据增强与特殊处理**(按需) | 场景 | 策略 | 实现 | |:--|:--|:--| | 类别不平衡 | 过采样 / Copy-Paste / SMOTE | 增加少数类有效样本 | | 缺乏负样本 | 从无标注区域裁剪纯背景图 | 生成 hard negative | | 多尺度目标 | Mosaic / 多尺度训练 | 扩展尺度覆盖范围 | | 数据量不足 | 翻转、旋转、色彩抖动 | 标准数据增强 | | 时序数据 | 滑动窗口、差分、归一化 | 时序特征工程 | 4. **格式转换**:将数据转为模型所需格式(YOLO txt / COCO JSON / CSV 等)。 ### 适配提示 - **表格/数值类赛题**:重点在特征工程(缺失值填充、编码、降维)。 - **图像类赛题**:重点在增强策略和标注格式转换。 --- ## 阶段三:模型构建 **输入**:阶段一的问题类型、阶段二的 EDA 结论 **输出**:模型架构定义、损失函数公式、数学推导文档 **依赖**:阶段一 + 阶段二 ### 步骤 1. **选择基线模型** | 问题类型 | 推荐基线 | |:--|:--| | 目标检测 | YOLOv8 / YOLOv11 / RT-DETR | | 图像分类 | ResNet / EfficientNet / ViT | | 时序预测 | LSTM / Transformer / Prophet | | 回归分析 | XGBoost / LightGBM / 线性回归 | | 组合优化 | Gurobi / OR-Tools / 遗传算法 | | 多准则评价 | AHP + TOPSIS / 熵权法 | | 统计推断 | 极值理论 / 贝叶斯推断 / 假设检验 | 2. **设计创新点**(论文核心加分项) 遵循「缺陷—改进—验证」链条: ``` 传统方法的已知缺陷(文献引用) ↓ 数学分析证明缺陷存在 ↓ 引入新的数学工具弥补 ↓ 推导统一公式(boxed) ↓ 实验验证改进幅度(消融表) ``` > 原则:优先选择有严格数学推导支撑的改进,而非纯工程 trick。 3. **数学推导文档化** 每个核心公式必须包含: - 符号定义(写入符号说明表) - 推导过程(定义 → 引理 → 定理 → 证明) - 物理/几何直觉解释 - 公式编号(`\eqref` 引用) ### 适配提示 - **优化类赛题**:模型构建 = 目标函数 + 约束条件 + 松弛/对偶变换。 - **评价类赛题**:模型构建 = 指标体系 + 权重确定方法 + 综合评分函数。 --- ## 阶段四:模型求解与算法实现 **输入**:阶段二的数据集、阶段三的模型设计 **输出**:模型权重、训练日志、测试集预测结果 **依赖**:阶段二 + 阶段三 ### 步骤 1. **编写训练/求解脚本** - 使用 `argparse` 管理超参数,便于消融实验切换。 - 固定所有随机种子 `seed=42`。 - 记录完整训练日志(逐 epoch 指标、损失曲线)。 2. **设计消融实验** | 实验 | 改变的变量 | 控制变量 | 目的 | |:--|:--|:--|:--| | Exp-A (Baseline) | 基础模型/默认参数 | — | 性能下限 | | Exp-B (改进 1) | 模型容量/数据增强 | 同数据划分 | 量化单一改进 | | Exp-C (改进 2) | 叠加新策略 | 同上 | 验证增量贡献 | > **铁律**:每次只改变一个变量。 3. **执行训练并管理产物** ``` results/ ├── exp_a/weights/best.pt, results.csv, args.yaml ├── exp_b/... └── exp_c/... ``` 4. **生成测试集提交文件** - 格式严格对齐赛题要求(列名、顺序、是否含扩展名)。 - 提交前人工抽查若干样本。 ### 适配提示 - **优化类赛题**:此阶段 = 调用求解器(Gurobi/OR-Tools)或实现元启发式算法。 - **统计类赛题**:此阶段 = 参数估计 + 假设检验 + 置信区间计算。 --- ## 阶段五:结果验证与敏感性分析 **输入**:阶段四的模型输出 **输出**:评估指标汇总表、消融分析、鲁棒性报告 **依赖**:阶段四 ### 步骤 1. **多维度评估** | 维度 | 常用指标 | |:--|:--| | 精度 | mAP / Accuracy / RMSE / R² | | 分类 | Precision / Recall / F1 / AUC-ROC | | 效率 | FPS / 参数量 / FLOPs / 求解时间 | | 稳定性 | 多次运行的均值 ± 标准差 | 2. **消融实验分析** - 制作对比表格(含 Δ 列),量化每个改进的贡献。 - 按类别/场景做细粒度分析(如逐类 mAP)。 3. **跨配置一致性验证**(统计推断类) - 用不同模型/参数重复实验,验证结论的模型无关性。 - 合格标准:核心结论的变异系数 < 15%。 4. **鲁棒性/敏感性分析** - 对关键参数做扰动实验(±10%、±20%),观察输出变化。 - 若有真实退化数据则量化,否则写「增强覆盖分析 + 建议协议」。 ### 适配提示 - **优化类赛题**:敏感性分析 = 对约束参数做松弛,观察目标函数变化。 - **预测类赛题**:验证 = 回测历史数据 + 滚动预测误差分析。 --- ## 阶段六:可视化与报告生成 **输入**:阶段一~五全部产物 **输出**:`main.pdf`(论文)+ `支撑材料.zip` **依赖**:阶段一~五 ### 步骤 1. **可视化生成** ```python import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False plt.rcParams['figure.dpi'] = 300 ``` 必出图表:类别分布图、技术路线图、训练曲线、消融对比表、结果可视化。 2. **论文工程搭建** - 若有 `cumcm-paper-writing` skill,执行其步骤3(复制 `assets/latex-template/` 为论文目录)。 - 若无模板,手动搭建 `ctexart` + `geometry` + `booktabs` + `fancyhdr` 结构。 3. **论文章节对照** | 章节 | 内容来源 | 写作要点 | |:--|:--|:--| | 摘要 | 全文精华 | 单页,700-900字,每个问题一段(方法+关键数字) | | 问题重述 | 阶段一 | 用自己的语言复述,不抄原题 | | 问题分析 | 阶段一 | 技术路线图 + 各问题建模切入点 | | 模型假设 | 阶段一 | 5-7 条,每条有文献支撑 | | 符号说明 | 阶段三 | longtable 两列格式 | | 数据处理 | 阶段二 | EDA 图表 + 数字清单 | | 问题 N 求解 | 阶段三+四 | 建模 → 公式 → 算法 → 结果 | | 模型评估 | 阶段五 | 多维指标 + 消融 + 鲁棒性 | | 模型评价 | 全文总结 | 优点/缺点/推广(如实) | | 参考文献 | 全文引用 | GB/T 7714 著录,`\cite` 一一对应 | | 附录 | 阶段四 | 全部可运行源代码 | 4. **自检清单** - [ ] 摘要单页,数字与正文一致 - [ ] 每张图/表在正文被引用,图下表上 - [ ] 公式编号连续,`\eqref` 引用 - [ ] 参考文献 `\cite` 与文末一一对应 - [ ] 无身份/学校信息 - [ ] 电子版不含承诺书/编号页 - [ ] 附录含全部可运行源程序 - [ ] 提交文件格式与赛题要求一致 5. **编译**:`xelatex main.tex` × 2 遍。 --- ## 时间分配建议 ### 72 小时赛制(CUMCM 国赛) | 阶段 | 时间 | 占比 | 说明 | |:--|:--|:--|:--| | 阶段一 | 4-6h | 7% | 不要急于写代码 | | 阶段二 | 6-8h | 10% | EDA 决定后续方向 | | 阶段三 | 8-12h | 15% | 创新点是灵魂 | | 阶段四 | 16-20h | 25% | 并行跑实验 | | 阶段五 | 8-10h | 13% | 消融实验不可省 | | 阶段六 | 20-24h | 30% | 论文质量 = 获奖概率 | ### 4 天赛制(MCM/ICM 美赛) 时间更充裕,可在阶段三加厚数学推导、阶段五做更多灵敏度分析,阶段六补充英文摘要。 --- ## 参考文件(按需读取) - `references/stage-checklist.md`:每个阶段的详细检查清单。 - `references/innovation-patterns.md`:常见创新模式与数学工具速查。 - `references/paper-structure.md`:论文各章节的写作模板与范例。
عرض على GitHub