博弈论笔记[未完成]

<1> 分析博弈: 小红是个游戏迷,他和小蓝一起玩拿石子游戏。游戏规则为2个人轮流拿石子。一次可以拿1颗或3颗,规定谁取到最后一颗石子谁就胜出。最后决定由小红先取。两人都是游戏高手,该赢的绝不会输(表示不会失误)。问在知道石子总数的情况下,怎样快速预测谁将会胜出。

取石子分为3种情况:
①: (1, 1) 共取走2个石子
②: (1, 3) 共取走4个石子
③: (3, 1) 共取走4个石子
④: (3, 3) 共取走6个石子

则最后会剩下0, 1, 3三种情况的石子

设①共进行N1次, ②进行N2次, ③进行N3次, ④进行N4次 ,最后剩下的为K个

则总数 S = (1 + 1)*N1 + (1 + 3)*N2 + (3 + 1)*N3 + (3 + 3)*N4 + K
= 2*N1 + 4*N2 + 4*N3 + 6*N4 + K
= 2 * (N1 + 2*N2 + 2*N3 + 3*N3) + K
因为 2 * (N1 + 2*N2 + 2*N3 + 3*N3) 为偶数, 所以剩下 K 个的时候, 又该第一个人取了

当 K = 1 或者 3 时, 必胜;
当 K = 0 时, 必败;

可以写成:
K 为偶数时, 必败;
反之, 必胜;

又因为 S 的奇偶性取决于 K 的奇偶性, 所以 K 的奇偶性关系到整个游戏的成败
所以直接判断 S 奇偶就可以了
①: S 为奇数, 则 K 为1或3, 必胜
②: S 为偶数, 则 K 为0, 必败


<2> 威佐夫博弈: 两个人轮流从某一堆或同时从两堆中取同样多的物品,规定每次至少取一个,
多者不限,最后取光者得胜。

我们用(ak,bk)(ak ≤ bk ,k=0,1,2,……,n)表示两堆物品的数量并称其为局势,如果甲
面对(0,0),那么甲已经输了,这种局势我们称为奇异局势:
(0,0)、(1,2)、(3,5)、(4,7)、(6,10)、(8,13)、(9,15)、(11,18)、(12,20)..

可以看出,a0 = b0 = 0,ak是未在前面出现过的最小自然数,而 bk = ak + k,奇异局势有如下三条性质:

性质1: 任何自然数都包含在一个且仅有一个的奇异局势中
证:
因为ak 为未在前面出现过的最小自然数,那么ak > ak-1, 所以bk = ak + k > [ak-1 + (k - 1)] == bk-1
所以性质1成立

性质2: 任意操作都可以把奇异局势变为非奇异局势

若只修改(ak, bk)其中一个分量,则另一个分量不可能是另一个奇异局势的分量,必为非奇异局势
若把两个都减去同一个值,则两个分量的差值没有变,故必为非奇异局势

性质3: 进行适当的操作, 就可以将非奇异局势变为奇异局势

假设当前局势是(a, b)

If (a == b) 同时取走 a 个物品, 局势变为(0, 0)

If (a == ak && b > bk) 取走b - bk个物品, 局势变为(ak, bk)

If (a == ak && b < bk) 未完成

If (a > ak && b == ak + k) 取走a - ak个物品, 局势变为(ak, bk)

If(a < ak && b == ak + k) 未完成
If(a == aj (j < k)) 取走b - bj个物品, 局势变为(aj, bj)
If(a == bj (j < k)) 取走b - aj个物品, 局势变为(aj, bj)

故从上面的3个性质得到, 奇异局势可以变为非奇异局势, 非奇异局势可以变为奇异局势;
所以面对奇异局势, 先手必败, 反之必胜

判断奇异局势:
假如局势是(a, b), 有如下公式
     黄金分割数
       |
       |
ak = [k * (1 + √5) / 2] (方括号表示取整)
bk = ak + k
注:k 为 a 与 b 的差值
若满足上述条件, 则为奇异局势, 即先手必败


<3> 斐波那契博弈:
未完成


Nim:
证:
A1 ^ A2 ^ A3 ^… ^ AN = j

At ^ j < At && At ^ j < j

取石子使At => At ^ j

原式 = j ^ j = 0


阶梯Nim游戏:
有n个位置1…n, 每个位置上有ai个石子. 有两个人轮流操作。操作步骤是:
挑选1…n中任一一个存在石子的位置i, 将至少1个石子移动至i−1位置(也就是最
后所有石子都 堆在在0这个位置), 谁不能操作谁输。
求先手必胜还是必败。

只看奇数位的石子堆, 进行Nim游戏, 也就是计算奇数位石子数量的异或和若某个人想要破环造成
的Nim局势, 将偶数位的石子移到了奇数位, 那么另一个人就可以将移到i位置的石子移到i-1,
Nim局势仍然没变, 故只用看奇数位的Nim异或和即可了

后续点:是指按题目要求的走法可以一步达到的那一个点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值