田忌赛马:孙膑如何用下等马赢下整场比赛
《史记》记载孙膑教田忌以下马对齐王上马、以上马对其中马、以中马对其下马,输一场赢两场获胜,是最早的对策(博弈)思想的经典案例。
适用前提与边界条件
- 会比较三个对象的大小顺序
- 本页为数学史内容,赛事细节以《史记》原文记载为准
背景
《史记·孙子吴起列传》记载:齐国将军田忌常与齐国诸公子(后世多传为齐威王)赛马,双方马分上、中、下三等,田忌每个等级的马都略逊一筹,屡战屡败。
孙膑观察后发现:三场比赛是分别对阵的,而对方的出场顺序固定按上、中、下——既然单场赢不了全部,就调整自己的出场安排,用全局最差的一场换全局最好的两场。
史料辨析
史实 《史记·孙子吴起列传》原文:「忌数与齐诸公子驰逐重射。孙子见其马足不甚相远,马有上、中、下辈。」孙膑教田忌「以君之下驷与彼上驷,取君上驷与彼中驷,取君中驷与彼下驷」,结果「一不胜而再胜,卒得王千金」。
史实 孙膑是战国军事家孙武后世子孙,因庞涓之害受膑刑,「孙膑」之名由此而来,后来任齐国军师。他的兵法竹简于 1972 年在山东临沂银雀山汉墓出土。
有争议 《史记》原文记对阵者为「齐诸公子」,与齐威王对阵是后世通行的讲法;史书也未记载对方三匹马的出场顺序是否恰为上、中、下。数学上可以证明:只要对方按固定顺序出马,田忌总能赢两场;若对方随机出马,胜负另当别论。
数学内核
把六匹马按实力编号:齐王上 、中 、下 ;田忌上 、中 、下 ,且
正面对阵田忌三场全输。孙膑的对阵方案:
| 场次 | 齐王 | 田忌 | 结果 |
|---|---|---|---|
| 1 | 上马 | 下马 | 输 |
| 2 | 中马 | 上马 | 赢 |
| 3 | 下马 | 中马 | 赢 |
三局两胜,总比分 2:1。这一方案的妙处在于: 赢 、 赢 是田忌仅有的两个必胜对局,孙膑把它们「兑换」成了两场胜利,代价只付出一场必然的输局。
在对策论里,双方各出一份「出场顺序」,胜负由对阵表决定——这正是现代博弈论研究的双人零和对策。田忌的方案是给定齐王策略下的最优反应;1944 年冯·诺依曼与摩根斯坦建立博弈论体系后,这类「安排与反安排」问题有了系统工具。
说法与史实
| 流传说法 | 史实 |
|---|---|
| 田忌的马整体跑得比齐王快 | 《史记》明言「马足不甚相远」,各等级都略逊一筹,靠排阵取胜 |
| 孙膑是凭空虚构的人物 | 《史记》有传,且 1972 年银雀山汉墓出土《孙膑兵法》竹简 |
| 这是单纯的历史故事 | 它被公认为对策论思想的最早案例,常出现在博弈论教科书开篇 |
| 田忌每一场都想赢 | 关键恰是主动输掉第一场,用下马消耗对方上马 |
正例与反例
✅ 正例
- 齐王出上马时,田忌出下马(必输);齐王出中马、下马时,田忌分别出上马、中马(必赢),2:1 获胜
❌ 反例
- 「田忌的上马也跑不过齐王的上马,所以没法赢」——单场打不过,换对阵顺序就能赢
高频误解与考试易错
- 以为田忌的马整体更强(实际是整体较弱,靠「错位对阵」取胜)
- 忘了先「下马对上马」这一步——先故意输掉一场,才能稳赢后两场
- 把对策问题当成单场比大小(关键在于全局安排,不在单场胜负)
常见问题
田忌赛马为什么能赢?
对方出马顺序固定,孙膑用「下对上、上对中、中对下」,牺牲一场必输的比赛换取两场必赢。
这和优化有什么关系?
在资源整体不占优时,通过安排出场(资源分配)顺序使总结果最优,这正是对策与统筹思想。
现代数学怎么研究这类问题?
对策论(博弈论)用矩阵刻画双方策略,1944 年冯·诺依曼与摩根斯坦把它系统化。
如果齐王也随机出马呢?
那就进入混合策略博弈,双方没有必胜策略,只能追求期望最优。
史料出处
- 《史记·孙子吴起列传》