Chomp遊戲(必勝策略分析)

2022-05-02 11:18:07 字數 2112 閱讀 1043

遊戲簡介

chomp是乙個雙人遊戲,有m x n塊曲奇餅排成乙個矩形格狀,稱作棋盤。

----兩個玩家輪流自選一塊還剩下的曲奇餅,而且還要把它右邊和下邊所有的曲奇餅都取走(如果存在)

----先吃到左上角(1,1)那塊曲奇餅的玩家為失敗

如圖所示

------紅方選擇(3,3)--->

------藍方選擇(1,4)---->

----紅方選擇(1,2)--->

-----藍方選擇(2,1)-->

------------>紅方玩家只能選左上角那一塊,失敗

分析

首先介紹乙個重要定理——策梅洛定理(zermelo)

策梅洛定理,表明在二人參與的遊戲/博弈中,如果滿足:

--------遊戲的步驟數有限

--------資訊完備(二人都了解遊戲規則,了解遊戲曾經所發生過的資訊)

--------不會產生平局

--------確定性(遊戲中不會加入隨機因素)

則先行一方有必勝策略,或者後行一方有必勝策略。

下面證明:除去 1 x 1大小的棋盤外,其他大小的棋盤,先手存在必勝策略。

證明:(反證法)

假設棋盤規模為m x n。

首先,遊戲不可能產生平局。

其次,由於每一步移動至少吃掉1塊曲奇餅幹,因此不超過 mn 步後遊戲必定結束。

由策梅洛定理,這個確定性二人有限遊戲資訊完備,且不存在平局,則或者先行一方有必勝策略,或者後行一方有必勝策略。

如果後手有必勝

策略,使得無論先手第一次取哪個石子,後手都能獲得最後的勝利。

那麼現在假設先手取最右下角的石子(m,n) ,接下來後手可以取某塊曲奇(a,b) 使得自己進入必勝的局面。

事實上,先手在第一次取的時候就可以取曲奇 (a,b) ,之後完全模仿後手的必勝步驟,迫使後手失敗。

於是產生矛盾。因此不存在後手必勝策略,先手存在必勝策略。

注意:這個證明是非構造性存在性證明,也即只是證明了先手必勝策略的存在性,但沒有構造出具體必勝策略。而且目前還沒有人給出chomp一般性的必勝策略。

其中一些簡單的情況,可以找到必勝策略:

1、棋盤只有一行,但多於一格

-------先手拿去除左上角的全部即可

2、棋盤是正方形,但多於一格

-------先手選取(2,2),之後無論後手做什麼,先手只要模仿即可(即關於對角線對稱選取)

3、棋盤只有兩行

------先手取第二行最後乙個,之後無論後手選什麼,先手總能採取合適的選擇,使得第一行比第二行多乙個

類似問題

1、三維chomp遊戲

將曲奇排成 p x q x r 的立方體,兩個玩家輪流自選吃掉一塊剩下的曲奇餅,若取走的曲奇餅為 (i,j,k) ,則也要取走所有滿足 i ≤ a ≤ p,j ≤ b ≤ q , k ≤ c ≤ r 的曲奇餅(a,b,c)(如果存在)。

可以類似地將chomp遊戲擴充套件到任意維,並可以類似地證明,先手都存在必勝策略。

2、有限偏序集上的chomp遊戲

chomp遊戲可以推廣到在任意乙個存在最小元 a 的有限偏序集(s,≤)上:兩名遊戲者輪流選擇s中的元素 x ,移走 x 以及所有 s 中比 x 大的元素。失敗者是被迫選擇最小元 a 的玩家。

如果  (s,≤) 有最大元素 b ,那麼在偏序集上的chomp遊戲存在乙個獲勝策略.

3、約數遊戲

給定乙個大於1的自然數 n ,兩個遊戲參與者輪流選擇n的大於1的正約數,但不可選擇之前被選擇過的因子的倍數(例如 n = 72,有一方之前選擇了4,則之後任一方都不可以再選擇36)

4、刪數遊戲

給定整數集合 ,兩個人輪流從中選擇乙個數字,並將它和它的約數從集合中刪除,刪除最後乙個數的人獲勝。

以上幾個遊戲,類似chomp遊戲,得到結論就是無論 n 是幾,都是先手必勝。

**自:liu言雜記

nim遊戲的必勝策略

假設有n堆石子,每堆石子的個數分別如下 a1,a2,a3,an 定義nim sum為a1 a2 a3.an 可以證明 1.若a1 a2 a3.an 0 則經過一次合法的移動之後必定可變成 a1 a2.an 0 此時留下的局面為必勝。2.若a1 a2 a3.an 0 則經過一次合法的移動,局面必定成為...

Chomp 博弈 巧克力遊戲

有乙個n m的棋盤,每次可以取走乙個方格並拿掉它右邊和上面的所有方格。拿到左下角的格仔 1,1 者輸,如下圖是8 3的 棋盤中拿掉 6,2 和 2,3 後的狀態。結論 答案是除了1 1的棋盤,對於其他大小的棋盤,先手總能贏。分析 有乙個很巧妙的證明可以保證先手存在必勝策略,可惜這個證明不是構造性的,...

筆試題中的必勝策略

比如,題目是這樣的 現在有兩堆石子,小今與小條玩遊戲,2個人都足夠聰明,兩個人規定 每次每人只能從其中一堆中取走1個或2個或3個石子,最後將石子全部取完的人勝利.現在兩堆石子的個數為8和9,請問如何安排才能讓小今必勝?答案是 讓小今先取。其實這裡是有規律可循的,可歸結為 取餘制勝 詳解如下 一 取餘...