欢迎来到博弈论的世界!
在本章中,我们将探索博弈论 (Game Theory),重点讨论零和博弈 (zero-sum games)。这听起来可能是一个复杂的主题,但其核心其实就是关于决策的数学研究。当你与另一个同样想赢的人进行竞争时,我们用它来找出最佳的应对策略。
为什么叫“零和”? 想像你和朋友打赌 5 英镑。如果你赢了,你获得 5 英镑 (+5),而你的朋友输掉 5 英镑 (-5)。如果你们将两者相加,总和就是零!在这些游戏中,一方的收益恰好等于另一方的损失。这里不存在“双赢”的情况!
1. 支付矩阵 (Pay-off Matrix)
每一场博弈都始于一个支付矩阵。这只是一张显示每种行动组合结果的表格。在 AQA Further Maths 中,我们通常有两名参与者:行玩家 (Row Player)(我们叫她 Rose)和列玩家 (Column Player)(我们叫他 Colin)。
重要规则:矩阵中的数字始终代表行玩家 (Rose) 的收益。
- 如果数字为正数,则行玩家赢得该金额。
- 如果数字为负数,则列玩家赢得该金额(即行玩家输掉该金额)。
Rose 在行动 A 和 B 之间选择;Colin 在行动 X 和 Y 之间选择。
\( \begin{pmatrix} & X & Y \\ A & 3 & -2 \\ B & -1 & 4 \end{pmatrix} \)如果 Rose 出 A 而 Colin 出 X,Rose 赢得 3 分。如果 Rose 出 A 而 Colin 出 Y,Colin 赢得 2 分(因为对 Rose 来说是 -2)。
快速复习:读取矩阵
Rose (行) 希望得到尽可能高的正数。Colin (列) 希望得到尽可能小的负数(因为这意味着他赢了!)。
2. 寻找“稳健”策略 (Play-Safe Strategy)
如果起初觉得有点棘手也不用担心;双方其实都只是在保护自己,以应对最坏的情况。这被称为稳健策略 (Play-Safe strategy)。
对于行玩家 (Rose):
- 观察每一行,找出最小值(Rose 在该行可能得到的最差结果)。
- 选择对应这些最小值中最大值的行动。
- 这被称为最大最小策略 (Maximin)。
对于列玩家 (Colin):
- 观察每一列,找出最大值(Colin 可能面临的最差情况,因为这些是 Rose 的收益)。
- 选择对应这些最大值中最小值的行动。
- 这被称为最小最大策略 (Minimax)。
关键点: Rose 想要最大化她的最小收益。Colin 想要最小化他的最大损失。
3. 稳定解与鞍点 (Saddle Points)
有时,Maximin 值等于 Minimax 值。当这种情况发生时,我们得到一个稳定解 (Stable Solution)(也称为鞍点 (Saddle Point))。
如果博弈是稳定的,双方都没有理由改变策略。他们相遇的值被称为博弈的值 (Value of the Game)。
如何证明存在稳定解:
- 找出各行的最小值,再找出其中的最大值 (Maximin)。
- 找出各列的最大值,再找出其中的最小值 (Minimax)。
- 如果 Maximin = Minimax,该博弈即为稳定。
4. 优势策略 (Dominated Strategies)
在求解大型矩阵之前,我们要检查是否有任何行动是“垃圾”。如果存在另一种行动,无论对手做什么,其结果总是更好或相等,那么该策略就是被支配的 (dominated)。
- 对于 Rose (行):如果 B 行中的每个元素都大于或等于 A 行的相应元素,则 A 行被 B 行支配。Rose 永远不会选 A,所以我们可以把它划掉!
- 对于 Colin (列):如果 Y 列中的每个元素都小于或等于 X 列的相应元素,则 X 列被 Y 列支配。记住,Colin 想要较小的数字!他永远不会选 X,所以把它划掉。
记忆技巧:Rose 喜欢大数字,Colin 喜欢小数字。如果一行比另一行小,删除它;如果一列比另一列大,删除它。
5. 最优混合策略 (图解法)
如果没有鞍点,Rose 不应该每次都选择同一个行动。相反,她应该以概率 \( p \) 选择行动 1,以概率 \( (1-p) \) 选择行动 2。这就是混合策略 (Mixed Strategy)。
2xN 博弈的逐步做法:
- 为 Rose 在 Colin 每种行动下的预期收益建立表达式。
示例:如果 Rose 以概率 \( p \) 出 A、概率 \( 1-p \) 出 B,且 Colin 出 X,预期收益可能是 \( 3p - 1(1-p) \)。 - 将其简化为 \( mp + c \) 的形式。
- 在图上将这些直线画出来,其中 x 轴为 \( p \) (从 0 到 1)。
- 找出所有线条的下边界 (Lower Boundary)(由这些线条构成的“底部”轮廓)。
- 找出这个下边界上的最高点。这就是 Maximin 点!
常见错误:学生经常寻找整个图表的最高点。记住:Rose 是在最大化她的最小收益,所以你要找的是底部线条的最高点。
6. 高阶博弈与线性规划
当矩阵大于 2x2(且不能通过优势策略简化)时,我们使用线性规划 (Linear Programming)。这与你在线性规划章节学到的单纯形法 (Simplex method) 有关。
如何将博弈转化为线性规划问题:
- 将所有值变为正数:如果矩阵有负数,给每个元素加上一个常数 \( k \) 使其全部 \( > 0 \)。这不会改变策略,只会改变最终的值。
- 设 Rose 选择各行动的概率为 \( p_1, p_2, p_3 \)。
- Rose 想要最大化博弈的值 \( V \)。
- 约束条件由列形成:\( (\text{Payoff}_1)p_1 + (\text{Payoff}_2)p_2 + ... \geq V \)。
- 我们还知道 \( p_1 + p_2 + ... = 1 \)。
为了使用单纯形法求解,我们通常会重新排列变量(令 \( x_i = \frac{p_i}{V} \)),将其转变为标准的最大化问题:最小化 \( \frac{1}{V} = x_1 + x_2 + x_3 \)。
总结检查清单
- 我能从应用题中构建矩阵吗?(DF1)
- 我能找出 Maximin 和 Minimax 来检查是否存在鞍点吗?(DF2 & DF3)
- 我是否检查过被支配的行和列来简化博弈?(DF4)
- 我能为 2xN 博弈画图并找出最优的 \( p \) 吗?(DF5)
- 我知道如何为 3x3 博弈设定线性规划约束吗?(DF6)
你一定能行的!记住:Rose 想要在底部轮廓中站得越高越好,而 Colin 想要在顶部轮廓中站得越低越好!