wuxinbo-bo/math-model-skills/model-formulation
Claude Code and agent skill by wuxinbo-bo/math-model-skills
- community
Checking that the SKILL.md file is still in the repository.
Meta-model-agent 基于问题契约建立数学机制、公式体系、求解路线与校验方案。适用于数学机制构造与算法规划。
Install
npx vskill@latest install wuxinbo-bo/math-model-skills/model-formulationSKILL.md
数学机制系统构造
统一机理、模型语义与逐问增量
开始建模前必须读取 参考资料/model-quality-contracts.md。先建立跨问题复用的机制内核,再决定每问是新建、扩展、比较、验证还是应用;不得把逐问算法列表当作论文主线。
new_model/model_extension 在 建模报告.md 中同时登记 模型定义、模型结构、模型语义 和 论文表达。多目标名称必须由两个以上实际优化目标及其冲突、聚合或 Pareto 证据支持;多资源、高维变量和多个输出指标均不能替代该证据。model_extension 还必须登记 模型增量,说明继承方程、新增变量、新增/修改约束、目标、求解与验证变化。
物理、几何、覆盖和连续时间问题优先检查“统一状态/坐标 -> 对象演化 -> 相互作用或事件判据 -> 边界精化 -> 指标/外层优化”是否闭合。多资源问题检查区间并集、重叠和边际贡献;混合决策问题区分离散结构层与连续控制层。
预处理合同
有数据时,在 建模报告.md 单列“预处理合同”,定义原始文件、缺失值/异常值/编码/单位或标准化策略、处理前后质量指标、唯一 数据/processed/ 输出,以及数据泄漏边界。预测或学习任务必须先划分再拟合,变换参数只从训练数据估计;不适用时必须说明理由。具体处理方法根据题目数据和模型需求确定,禁止把通用脚本当作固定答案。无数据时保留明确跳过记录。
稳定执行契约
- 执行目标:依据问题契约形成可计算、可验证的数学机制、公式体系和求解路线。
- 调用参数:[problem-analysis-or-topic]。
- 权威输入:问题分析.md、用户数据、适用知识库与用户约束。
- 允许交付:建模报告.md,以及必要的当前工作与状态记录。
- 禁止写入:不得越权修改已冻结的上游事实、用户原始文件或本协议未授权的目录。
- 可用工具边界:Bash(*), Read, Write, Edit, Grep, Glob, WebSearch, WebFetch, Agent。
- 最小交付:统一机制内核、逐问模型语义与增量、符号定义、假设、推导、算法、基线、差异化验证方案与回退条件。
- 恢复入口:优先读取当前工作、状态记录和已有产物,从最近一次通过门禁的位置继续。
- 失败回退:模型无法闭合时先退回补齐变量、约束或数据;不得用文字包装不可计算的方案。
- 收口顺序:先核对输入,再完成产物,再运行本环节门禁,最后登记状态;门禁未通过不得宣告完成。
基于问题情境解构开展数学建模与求解:$ARGUMENTS
常量
- COMPETITION / PROBLEM_ID — 从 Additional Parameters 查阅
- TOOLS — 默认
python
- CUSTOM_REQUIREMENTS — 用户自定义要求
输入
- 问题分析.md — 问题情境解构报告(务必出现)
- 用户数据/ — 赛题附件数据
⛔⛔⛔ 完成铁律(最高优先级,违反则当前环节失败)
当前环节务必产出 `建模报告.md`(≥ 1.5KB,完整的建模与求解报告)。
⛔ 结束前必跑产出校验:
工作过程
工作节点 1:查阅分析报告 + 方法对照 + 防错复核
提取子问题列表、推荐方法、变量定义、数据特征。
⛔ 对照 问题分析.md 的推荐方法: 若选取了不同于推荐的方法,务必在 建模报告.md 中清晰标明阐明理由(为什么推荐方法不适用、替代方法的优势)。不可无声地忽略推荐方法。
⛔⛔⛔ 强制审视问题情境解构的"经典问题升级"结论(防止升级被忽略):
关键要求:先完整审视问题情境解构的升级推荐 → 尽可能在建模中满足 → 如有异议务必给出充分理由。
问题情境解构阶段(Phase 5.6)会交付以下表格,建模阶段务必逐条审视:
- 覆盖度核验表(标注 ⚠️/❌ 的句子是需额外建模的机制)
- 反向对照核验(题目某句子指出需升级到某变体)
- 经典问题升级确认表(清晰标明标注"初步映射 X → 终版模型 Y")
⛔ 实施环节:
⛔ 三段式决策过程(各个升级推荐都务必走完):
第一段:审视
- 逐条查阅问题情境解构的升级推荐(如 "Orienteering → Multi-Trip OP")
- 理解升级的触发缘由(如 ASSURANCE"可充电"→多架次飞行)
- 判定升级对终版结果的影响(如不用 Multi-Trip 会导致覆盖数被严重低估)
第二段:尽可能满足(默认行为)
- 若升级在技术上可实现 → 务必采用问题情境解构推荐的变体
- 若升级增加复杂度但不超出求解能力 → 务必采用
- 若升级是题目清晰标明要求的机制(如"可充电")→ 无论如何务必采用
第三段:有异议给理由(特殊情况)
若建模阶段认为某个升级不应采用,务必在 建模报告.md 中给出充分理由:
- 物理/业务不可行:如"题目说可充电但物理上无法实现(如太阳能电池)"
- 数据不支撑:如"题目没给充电时间参数" → ⛔ 这不是跳过升级的合法理由!务必做合理假设(如假设充电瞬时/固定X分钟/等于飞行时间的X%),随后继续建模升级版
- 超出求解能力:如"完整 Multi-Trip Stochastic OP 是 PSPACE-hard,简化为序贯单趟 OP,误差预计 < 15%"
- 评审标准考虑:如"简化后仍能回答题目的关键问题,且提升求解效率"
⛔⛔⛔ 尤其警告:以下理由不是跳过升级的合法理由(等同于无声忽略):
- ❌ "题目未给 XXX 参数" → 应做合理假设继续建模,不是跳过
- ❌ "子问题1可简化,留给子问题2/3扩展" → 子问题1也要考虑完整机制
- ❌ "通过其他方式实现类似效果"(如"多机接力代替充电")→ 这不等同于题目给定的机制
- ❌ "避免增加模型复杂度" → 复杂度本身不是跳过的理由
- ❌ "短续航无人机覆盖有限,就让它覆盖少" → 这恰恰是升级要解决的问题
⛔ 缺参数的无误处理过程:
- 识别缺失的参数(如充电时间)
- 做合理假设,假设值基于常识/文献/类似赛题
- 在假设列表中清晰标明声明"假设 XXX = Y,依据是 Z"
- 灵敏度分析中扰动该假设参数
- 用假设值完整建模升级版,而不是跳过全部机制
⛔ 禁止行为:
- ❌ 无声忽略升级推荐(连"审视"都没做,直接用简单模型)
- ❌ 不读问题情境解构的 7.2/7.3 节就启动建模
- ❌ 有异议但不写理由 → 等同于无声忽略
- ❌ 用"单次XXX作为基线,后续扩展"作为借口跳过升级
- ❌ 用"题目未给参数"作为借口跳过升级
⛔ 若采用了升级的简化版本(如"简化的 Multi-Trip OP"),务必在模型中不少于保留升级的关键机制:
- Multi-Trip → 务必建模"多次访问同一 base 点"
- 带时间窗 → 务必建模"访问时刻 ∈ [a, b]"
- 随机/鲁棒 → 务必建模不少于 2 个场景并对比
- 多阶段 → 务必建模不少于 2 个阶段的转移
不可"简化"为名把升级完全去掉。
⛔ 防错复核(必做): 查阅 参考资料/error_prevention.md,依据本题涉及的题型(优化/微分方程/统计/评价/图论/几何/动态规划),对照相应章节的"务必做"和"禁止做"条目。在 建模报告.md 末尾写一行:本题涉及题型:[X, Y, Z],已对照防错手册审查。
工作节点 2:模型假设
各个假设务必有合理性阐明。假设要合理且必要,不做不切真实的简化。
⛔ 假设参数化原则: 关键假设务必在代码层面做成可切换的参数,而不是硬编码到逻辑里。这样发现假设错误时,改一个参数就能修正,不需重写全部求解逻辑。
在 建模报告.md 中,各个假设旁边务必写明:
示例:
⛔ 若某个假设写不出有力的理由,阐明这个假设需再推敲。 回到 问题分析.md 的假设预检结果重新审视。
工作节点 3:逐子问题建模
各个子问题:
- 方法调研 — 用 WebSearch 搜索"[问题类别] 数学建模 方法"或"[problem type] optimization method",了解这类问题的主流求解方法。避免只凭训练知识选方法——同一类问题在不同规模下最优方法可能完全不同(如 TSP 小规模用精确求解,大规模用 LKH 启发式)
- 模型选取与理由 — 为什么选这个模型,与候选模型的优势对比,引用调研到的文献支撑
- 数学公式推导 — 完整严谨,采用 LaTeX 数学环境(目标函数+约束条件)
- 求解算法设计 — 伪代码或过程描述
⛔ 审计身份与论文表达卡(写入同一份 `建模报告.md`):
若问题角色为 model_extension,紧接着增加:
正式名称必须让评委直接识别标准数学结构。推荐“考虑维护约束的机组承诺混合整数线性规划模型”“基于季节项与滞后项的动态回归模型”“带时间窗的取送货车辆路径模型”;禁止只写“聚合承诺模型”“超边修复模型”“优化模型”“决策模型”或“综合模型”。
论文展示名称不是审计名称的机械缩写。它应保留主要数学结构,删除运行模式、验证器、预算、冻结合同和过细约束清单,中文通常控制在 8--24 个汉字。核心方法 只登记摘要需要出现的主要求解算法;初始化、修复、加速和独立校验方法留在算法与验证章节。
先判定子问题角色:
new_model:新建数学模型,三行卡均必填;model_extension:扩展上游模型,三行卡均必填并写明继承模型;comparison、validation、application:不得为满足格式强造新模型,只写论文表达卡,展示名称改为“基于前述模型的方案比较/稳健性检验/情景应用”,并登记继承模型: Q1,Q2等真实依赖。
模型、机制和算法必须分层:混合整数线性规划、动态回归、车辆路径、状态空间等是模型族;维护约束、预算平衡、滚动时域、超边修复是定制机制;HiGHS、Gurobi、分支定界、遗传算法、粒子群、匈牙利算法等是求解算法。DARP、VRP 等问题类别不得单独替代数学表达结构;多指标决策方法可登记为标准模型族时,必须同时写出指标、权重、归一化和聚合/排序关系,不能只报方法名称。
MCM/ICM 另写:PAPER EXPRESSION Q1 | DISPLAY NAME: ... | QUESTION ROLE: new_model | INHERITS FROM: none | CORE METHOD: ...。审计身份仍使用 MODEL DEFINITION 与 MODEL STRUCTURE 两行。
方法选取参考 参考资料/methods_table.md。
工作节点 4:符号阐明表
保证全部公式中的符号都有定义:
工作节点 5:模型检验与灵敏度分析设计
- 模型检验:回代检验、交叉校验、残差分析
- 灵敏度分析:关键参数的变化界限和影响
- 鲁棒性检验:数据扰动下的稳定性
工作节点 5.5:⛔ 合理性预校验 + 结果预期界限表(建模完成后必做)
关键原则:物理约束 > 数据忠实度 > 计算正确性
编码阶段是纯实施者,遇到"结果不对"仅可按建模阶段的预案操作,严禁自行发明修正方法。由此建模阶段务必把全部决策做完。
实施环节:
- 对照防错手册复核模型:重新查阅
参考资料/error_prevention.md中本题相应题型的"务必做"和"禁止做"条目,逐条确认模型是否满足。不满足的当场调整模型。
- 交付建模报告的 5 项必备内容(在 建模报告.md 末尾,computational-realization 务必对照实施):
① 结果约束清单(硬边界,超出即判定代码有误):
② 预期行为描述(定性描述合理结果的"形状"):
③ 异常处理预案(每种异常只给一种修正方法,不留选取空间):
④ 方法唯一性声明(各个计算环节指定唯一方法,涵盖预处理/后处理/插值/滤波):
⑤ 验证检查点(编码阶段务必实施的 pass/fail checklist):
⑥ 优化结果结构性校验输入(优化类子问题务必给出,编码阶段的 structural_validation() 依赖这些信息):
⛔⛔⛔ 建模阶段强制修复原则(不可跳过):
复核中发现任何问题,务必当场修复模型再继续,不可留给 computational-realization 阶段:
- 模型缺少约束 → 立即补充约束条件
- 开环积分可能漂移 → 立即加入反馈/阻尼/去漂移机制
- 守恒律不满足 → 立即补充遗漏项
- 极端输入导致发散 → 立即加入饱和/截断/正则化
⛔ 禁止的做法:
- ❌ 发现问题但写"留给 computational-realization 阶段处理"
- ❌ 在预期界限表里写了修正方案但不调整模型本身
- ❌ 只在文字中提到"需注意XXX"但模型公式没变
⛔ 检测到问题 = 务必修复。解释缘由 ≠ 处理完毕。当前环节不准许带着已知问题交付 建模报告.md。
工作节点 6:交付
留存到 建模报告.md:模型假设、符号阐明、各个子问题的模型/公式/算法、检验方案、灵敏度分析方案、计算实验实现要点。
⛔ 务必将 问题分析.md 中的图形与表格预规划带入 建模报告.md。 在报告末尾附上图形与表格预规划章节(从 问题分析.md 复制或更新),保证 evidence-visualization 能读到完整的图形与表格清单。若建模过程中发现需额外的图形与表格(如灵敏度分析曲线、模型对比热力图),在此处补充。
⛔ MANDATORY: 交付前自检(写完 建模报告.md 后务必按项核验):
若有 ❌ 项,务必补充后再结束当前环节。⚠ 项推荐补充但不强制。
关键准则
- 公式务必严谨:各个变量定义,各个等式有推导依据
- ⛔ Markdown 中的 LaTeX 公式格式标准(保证前端能无误渲染):
- 块级公式:
$$务必独立占一行,前后各空一行
- 行内公式:用
$...$,内部避免用_做下标时与 markdown 斜体冲突,复杂公式用块级
\begin{aligned}等多行环境必须放在$$...$$块级公式中,不要放在行内$...$中
- 避免在公式中使用
\text{}包裹中文(KaTeX 对中文支持有限),中文说明放在公式外面
- 模型假设是评审重点:合理、必要、有说服力
- 符号阐明表务必完整
- 灵敏度分析不可省(评审加分项)
- 计算实验实现要点要具体:算法、库、输入交付格式
- ⛔ 主交付文件:
建模报告.md。避免在根目录写额外报告
- ⛔ 当前环节只交付 建模报告.md,避免写 Python/MATLAB 代码文件。 代码实现是下一步
computational-realization的工作项。当前环节只需在报告中描述算法伪代码、求解思路、计算实验实现要点即可。若需校验某个公式或做简单计算,可用 Bash 内联 Python 一次性脚本,但避免建立程序/*.py文件
- ⛔ 分段写入:每一次 Bash heredoc < 150 行。 建模报告.md 一般情况下很长,务必分 3-4 段追加写入(
cat << 'EOF' >> 建模报告.md),避免一次性写完整个文件
⛔⛔ 建模阶段通用禁止声明
详细条目见 参考资料/error_prevention.md,以下为最高优先级的两条硬性禁止:
- 禁止未声明的几何/物理简化 — 务必用实体完整几何作为约束判据,禁止降维简化(矩形→线段、实体→质心点)。若确需简化务必明示声明适用条件和误差上界。
- 禁止约束遗漏 — 题目中各个"不超过/不少于/务必满足"都务必相应一个数学约束表达式。物理接触约束(不可穿透/重叠/超出边界)务必明示建模为不等式约束。
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingreferences/stage_protocols/model-formulation/SKILL.md
Popularity
- Repository stars
- 90
- Repository forks
- 2
- 7-day trend score
- 23
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/wuxinbo-bo/math-model-skills/model-formulation)