通用數學建模工作流:把賽題拆成可執行的建模流水線

前言

數學建模競賽(如華中杯、全國大學生數學建模競賽 CUMCM)往往是多小問、多數據文件、約束層層疊加。常見做法是直接讓 AI「寫個優化模型」,結果容易漏讀題面參數、目錄混亂、各小問之間無法複用代碼,調試時也難以定位約束違反來自哪一段邏輯。

下面介紹 SkillHub 上的社區 Skill「通用數學建模工作流」(@user_3937f0b6/math-modeling-solver)。它用標準 SKILL.md 把解題過程固定爲五個階段:理解題意、架構設計、實現求解器、校驗調試、結果分析,並附帶數據結構、代價函數與貪心插入等可複用模式,適合在 Cursor 等 Agent 裏作爲長期啓用的工作流說明。

這是什麼

一句話定位:面向數學建模競賽多小問賽題的系統化 Agent Skill,指導從讀題與探數到建模、編碼、驗證與交付的完整流程。

  • 座標:@user_3937f0b6/math-modeling-solver
  • 版本:1.0.0
  • 來源:SkillHub 社區(community),發佈者 user_3937f0b6
  • 分類:education
  • 標籤:requires_api_key=false(無需配置 API Key)
  • 官方頁面:SkillHub - 通用數學建模工作流

Skill 英文簡介與頁面一致:Solve math modeling competition problems (Huazhong Cup, CUMCM, etc.) with a systematic workflow — data exploration, model building, algorithm implementation, result analysis.

核心功能

以下內容均來自該 Skill 的 SKILL.md,安裝後 Agent 會按此文檔響應「解建模賽題」類請求。

五階段工作流

  1. Phase 1:理解問題 — 通讀各小問與數據文件;加載並檢查 Excel/CSV;從題面提取全部模型參數(速度、懲罰係數、排放因子等)。
  2. Phase 2:設計解法架構 — 約定目錄(如 problem_A/code、data、figures);選定建模方法(混合整數規劃、啓發式、動態規劃等);規劃求解管線(加載預處理、初解構造、局部搜索、約束檢查、多分量代價);約定 JSON + TXT 輸出。
  3. Phase 3:實現求解器 — 以 Python + pandas/numpy 爲主;實現時變速度、U 型能耗、載重修正、軟時間窗懲罰、碳價等代價項;貪心構造 + 2-opt;車隊規模約束;多小問可增量疊加約束。
  4. Phase 4:校驗與調試 — 檢查容量、時間窗等約束;針對具體違反寫修復邏輯而非通用補丁;與更簡單基線對比合理性。
  5. Phase 5:結果分析 — JSON 結構化結果、可讀摘要、彙總統計(總成本、里程、CO₂、車型數量、裝載率等);跨小問對比。

內嵌模式與交付物

Skill 文檔中給出了可照抄的代碼結構示例,包括:

  • 圖/路網類數據的 info 字典結構(節點、距離矩陣、時間窗、綠區客戶等)
  • route_cost 式多分量路徑代價計算
  • 按時間窗排序的貪心插入與違規掃描/修復思路
  • 多小問遞進:第 N+1 問在上問基線上加約束並對比

每個小問建議產出:problemX_solver.py、problemX_result.json、problemX_result.txt、figures/*.png;跨小問還可有對比報告與論文模板(DOCX/TXT)等,具體以你在對話中與 Agent 約定的賽題爲準。

安裝與啓用

安裝方式以 SkillHub 安裝文檔 爲準。先確認 CLI:

command -v skillhub && skillhub --version

未安裝時可執行完整安裝(文檔推薦):

curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash

安裝 Skill 時必須用 --dir 指向當前 Agent 的 skills 目錄,否則默認落在 ./skills/ 可能不會被識別:

skillhub install @user_3937f0b6/math-modeling-solver --dir <skills 目錄>

常用路徑(摘自 SkillHub 安裝文檔):

  • Cursor:~/.cursor/skills/
  • Claude Code:~/.claude/skills/
  • Codex:~/.codex/skills/ 或項目下的 .agents/skills/

也可按 SkillHub 頁面提示,讓 AI 根據 https://skillhub.cn/install/skillhub.md 安裝 @user_3937f0b6/math-modeling-solver。安裝後按你所用客戶端要求重啓或刷新 Agent,使 Skill 生效。

典型用法

Skill 在 description 中聲明:當用戶要求解數學建模競賽題(尤其華中杯、CUMCM 等多小問形式)時使用本 Skill。下面是可以直接復現的交互方式,不涉及虛構賽題數據。

  1. 在 Cursor 等環境中完成上述安裝,確保 math-modeling-solver 出現在 skills 目錄。
  2. 新建或打開賽題工作區,把官方數據文件放在約定目錄(如 problem_A/data/)。
  3. 用自然語言說明任務,例如:「這是 CUMCM 某年 A 題,共三問,請按通用數學建模工作流:先讀題並列出參數,再爲每問建 code/data/figures 目錄,用 Python 實現求解並輸出 JSON 和 TXT。」
  4. Agent 應按 Phase 1→5 推進:先探數與參數表,再選模型與管線,實現後跑約束檢查,最後彙總統計與跨問對比。

若賽題屬於路徑優化、車隊調度類,Skill 中的 info 結構、代價函數與貪心插入片段可作爲實現參考;其他題型仍適用階段劃分與交付物清單,具體模型需結合題面由 Agent 調整。

適用場景與注意

適合誰

  • 參加華中杯、CUMCM 等競賽,需要穩定目錄結構與可迭代的多小問求解流程的團隊或個人。
  • 希望 Agent 少跳步、先讀數據再寫模型,並輸出 JSON/圖表/報告等標準交付物的開發者。

限制與注意

  • 本 Skill 是工作流與模式說明,不自帶可執行 Python 包;實現質量仍依賴題面、數據與你在對話中的約束。
  • 文檔示例偏重組合優化、路徑與代價分解;非此類賽題需自行替換 Phase 2 的建模選型,但五階段順序仍可用。
  • 社區來源 Skill,使用前可在 SkillHub 頁面查看版本與說明;當前抓取信息爲評分 100000、下載 1825 次、安裝 5 次(以 SkillHub 展示爲準,會隨時間變化)。
  • requires_api_key=false 僅表示 Skill 本身不要求 Key;本地運行求解器仍可能需要 Python 環境與 pandas、numpy 等依賴,由你在項目中安裝。

結尾

「通用數學建模工作流」把競賽建模從「一次性生成代碼」改成可檢查的五階段流水線,並寫清目錄、代價函數與交付物格式,適合掛在 Cursor 的 skills 目錄里長期啓用。安裝與詳情見 SkillHub:https://www.skillhub.cn/skills/user_3937f0b6/math-modeling-solver,API 條目:https://api.skillhub.cn/user_3937f0b6/math-modeling-solver。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜