每年二月的清晨,当朋友圈开始刷屏“美赛开赛了”,无数数学建模人的神经就会骤然抽紧。这道MCM B题,通常在开赛第一天凌晨新鲜出炉,你和队友需要在96小时内拿出完整论文,还可能要附上能跑的源码。很多人看到题目的第一反应是“题都看不懂”,但几年国赛和美赛打下来,我越来越确信一件事:B题拼的不是智商,而是破题框架和执行速度。
我一个朋友第一次打美赛,光在“选A还是选B”上就耗了三个小时,结果B题读了三遍都没抓住关键约束,最后交上去一篇连摘要都没打磨的论文,自然与奖项无缘。这其实非常可惜。美赛B题表面上千变万化,内核却有很强的规律性,它考的是你用数学模型解决“真实世界开放问题”的能力,而不是比谁背的公式多。这套打法只要在赛前梳理清楚,拿到2026年的题目时,你完全可以在半小时内判断“这题能不能打”,然后在第一天就锁定模型框架。
这篇文章不押题、不猜题,而是给你一套拿来就能用的完整流水线:从选题决策、题目拆解、模型选型、源码模板到论文写作,全部用这些年我实测过的方法来梳理。我尽量用大白话讲,里面所有代码块都是可以直接复制改的,哪怕你前一天才开始学Python,也能照着拼出一篇像模像样的参赛论文。
1. 先搞懂B题到底在考什么
1.1 近十年B题的命题规律
很多人觉得美赛B题题目飘忽不定,其实翻一翻往年的题就能发现它的“性格”。近几年的MCM B题里,我印象最深的有三类的典型:一类是让无人机去扑救山火,涉及火势蔓延预测和资源调度;一类是水库群的水量分配与电价谈判,涉及多目标决策;还有一类是设计搜索策略去找失踪的潜水器,涉及概率模型、搜索路径优化和传感器决策。这些题目表面上是“物理题”“地理题”“工程题”,但真正要你交的东西,往往是“决策建议”和“优化方案”。
这就说明了B题的一个核心特质:它通常给一个真实场景,但不会把所有数学结构都告诉你,需要你自己抽象出一个可计算的问题。 它不像某些校内竞赛那样,题干里明明白白写着“请用层次分析法”;B题往往只给一堆背景描述、数据和零散条件,你要自己判断该用微分方程、优化模型、统计模拟,还是把几个方法串起来。这也是为什么很多队伍死在“不会定位问题”上——不是不会算,而是不知道算什么。
另一点值得注意:B题非常看重结果的“可解释性”。你建立的模型输出,不能只是一个数,评委更希望看到你这个数对现实决策有什么意义。比如水库调水问题,如果你只给出“最优放水量=1200万方”,远远不够;你得解释为什么是这个量、极端干旱年怎么办、上下游的冲突怎么平衡。这种“从数学到管理建议”的跳跃,是B题拿高分的关键。
1.2 拿到题目后前12小时要做什么
美赛的96小时听起来很长,但真正有效的时间不超过前48小时,因为后两天要给写论文和排版留足余量。我的习惯是,开赛后的第一个12小时只做三件事:读题、定位、定模型。
第一,逐句读题,并用不同颜色标注信息类型。我在Word里会用三种颜色:红色标已知条件(数据、参数、约束),蓝色标待求目标(要你回答什么问题),绿色标隐含场景信息(比如“社区有不同收入群体”“旱季降水量少”,这些暗示你的模型中要考虑异质性或极端情景)。这一步很多人嫌麻烦跳过,但它能帮你避开“漏条件”这个最大坑。
第二,把题目翻译成“母题”。也就是说,不要被外壳迷惑,去想“这本质上是什么问题”。搜索潜水器,本质是“目标可能在某区域按某概率分布,如何设计路径使发现概率最大”,这就是一个覆盖优化问题;水库调水,本质是“多个主体共享有限资源,如何分配使总收益最大且各方接受”,这就是资源分配博弈。只要你能把题目翻译成母题,脑子里马上就能浮现出可用的模型家族。
第三,判断团队是否适合做B题。如果你的团队擅长连续模型和数值求解,B题通常会比C题(大数据题)更友好;如果团队里没人会写复杂算法,B题也可能因为模型灵活而更容易“绕过去”。但要注意,B题几乎绕不开优化,哪怕你只是用穷举法做参数扫描,也得让评委看到你有“优化意识”。所以赛前至少要学会一种优化手段,退一万步,scipy.optimize里的differential_evolution也要会用。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 建模思路拆解:从问题到模型的四步走
2.1 先把“故事”翻译成数学陈述
很多队伍拿到题目就开始写方程,这是本末倒置。我推荐先做一个“翻译表”:把题干里的自然语言逐条翻译成数学语言。比如题干说“救援物资必须在24小时内送达”,这翻译过来就是一个时间约束$t_i \leq 24$;题干说“无人机续航不超过2小时”,这翻译过来就是能量约束$\sum_j E_{ij} \leq E_{max}$;题干说“希望成本尽量低”,这翻译过来就是目标函数$\min C$。
这个翻译步骤看似机械,但它能帮你把题目里所有隐藏的建模要素都“可视化”。我在实战中还会画一个简单的输入-变量-输出图:输入是已知数据,变量是你要决策的东西,输出是评价指标。拿2024年潜水器搜索题举例,输入是海流数据、潜水器失联位置、传感器性能;变量是搜索路径、传感器布点;输出是发现概率、搜索成本。这个图一旦画出来,整个模型的骨架就清楚了,接下来只是往骨架里填肉。
这里给新手一个忠告:不要一上来就用高大上的模型。你会发现B题里80%的问题,用微分方程加蒙特卡洛模拟,或者线性规划加灵敏度分析,就能做出漂亮的结果。评委更看重的是“你的模型能不能自圆其说”,而不是“你用了多偏门的算法”。我见过太多队伍堆了神经网络、强化学习,结果论文里连网络结构都没解释清楚,最后分数反而不如老老实实做优化建模的队伍。
2.2 模型选型清单:B题常见的六条主干道
根据我的参赛和指导经验,B题的模型需求基本逃不出这六个方向。我做了一个速查表,当你被某个“母题”卡住的时候,直接对着表格找方向就行。
| 场景信号 | 模型方向 | 求解工具 |
|---|
