威佐夫博弈

像是尼姆博弈的一种变体

参见百度[https://baike.baidu.com/item/威佐夫博弈/19858256]

描述:威佐夫博弈(Wythoff's game):有两堆各若干个物品,两个人轮流从任一堆取至少一个或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。

结论

两个人如果都采用正确操作,那么面对非奇异局势,先拿者必胜;反之,则后拿者取胜。
那么任给一个局势(a,b),怎样判断它是不是奇异局势呢?
我们有如下公式:
ak =[k(1+√5)/2],bk= ak + k (k=0,1,2,...n 方括号表示取整函数)
奇妙的是其中出现了黄金分割数(1+√5)/2 = 1.618...因此,由ak,bk组成的矩形近似为黄金矩形,由于2/(1+√5)=(√5-1)/2,可以先求出j=[a(√5-1)/2],若a=[j(1+√5)/2],那么a = aj,bj = aj + j,若不等于,那么a = aj+1,b = aj + j + 1,若都不是,那么就不是奇异局势。然后再按照上述法则进行,一定会遇到奇异局势。

写在证明前

我们用(a[k],b[k])表示两堆物品的数量并称其为局势,如果甲面对(0,0),那么甲已经输了,这种局势我们称为奇异局势。可以看出,a[0]=b[0]=0,a[k]是未在前面出现过的最小自然数,而 b[k]= a[k] + k。这里我有点疑问

奇数局势的性质

1。任何自然数都包含在一个且仅有一个奇异局势中。
由于a[k]是未在前面出现过的最小自然数保证每一个自然数都能包括在内),所以有a[k] > a[k-1] ,而 b[k]= a[k] + k > a[k-1] + k > a[k-1] + k - 1 = b[k-1] > a[k-1] 。所以性质1成立。a[k]和b[k] 都是单调递增的函数(保证每一个自然数只存在一次)
2。任意操作都可将奇异局势变为非奇异局势。
事实上,若只改变奇异局势(a[k],b[k])的某一个分量,那么另一个分量不可能在其他奇异局势中,所以必然是非奇异局势。如果使(a[k],b[k])的两个分量同时减少,则由于其差不变,且不可能是其他奇异局势的差(差值为k),因此也是非奇异局势。
3。采用适当的方法,可以将非奇异局势变为奇异局势。需要强调的是a[k]和b[k]互换位置没有关系,因为两者在一开始就是没有顺序的关系,而且无论我们怎么对两个数取值,都会落在一个确定的a[k]或b[k]中,因为a[k]和b[k]就是全体自然数
假设面对的局势是(a,b),若 b = a,则同时从两堆中取走 a 个物体,就变为了奇异局势(0,0);如果a = a[k] ,b > b[k] 那么,取走b - b[k]个物体,即变为奇异局势;如果 a = a[k] , b < b[k] 则同时从两堆中拿走a-a[b-a](注:这里b-a是a的下标, 不是a*(b-a)) 个物体变为奇异局势( a[b-a], b-a+a[b-a]);如果a > a[k] ,b= a[k] + k 则从第一堆中拿走多余的数量a - a[k] 即可;如果a < a[k] ,b= b[k],分两种情况,第一种,a=a[n] (n< k)从第二堆里面拿走 b - b[n] 即可;第二种,a=b[n] (n < k)从第二堆里面拿走 b - a[n] 即可。

证明

  1. (0,0)是奇数局势,不包括在非奇数局势的集合中,对于先手而言,如果面对的是非奇数局势,就一定可以变成奇数局势(方法如上),等对手移动,无论怎么移动都会使先手进入非奇数局势,(证明如上),反复循环,数字只会越来越小,先手永远不会进入奇数局势的集合中,而后手一定离不开奇数局势的集合到最后(0,0) 的状态,后手失败,同理,开始是奇数局势,则后手永远不会进入奇数局势的集合中,而先手一定离不开奇数局势的集合到最后(0,0) 的状态,先手失败。
posted @ 2022-10-29 20:41  MITE's_BKY  阅读(42)  评论(0)    收藏  举报