西洋棋謎題(模仿者問題) - 西洋棋

Freda avatar
By Freda
at 2009-04-18T09:45

Table of Contents

該公布這題的答案了,因為沒有人做這題。

: 那麼接下來是問題了。棋盤的狀況如圖所示:
:
: 8 黑白
: 7 p  p pP = 小兵
: 6   p rR = 城堡
: 5 p nN = 騎士
: 4 bB = 主教
: 3 kP qQ = 皇后
: 2  PPPPPPP kK = 國王
: 1 n  r  ●
: ● = 模仿者
:   abcdefgh
:
: 1. 棋盤上的白王被拿掉了,請問它正確的位置在哪裡?
: 2. 黑方的兩個主教分別是在哪裡被吃掉的?

在這個局面中,乍看黑王面臨了不可能的將軍,
但是根據模仿者規則,由於模仿者接下來無法模仿 b2xa3 這個動作,
所以黑王在這邊不視為被將軍。這跟解這題沒什麼關係,
只是先回答某些人可能會有的疑惑。

首先注意到底下的黑騎士跟黑城堡,
它們總有一個必須是升變來的,
不然當騎士佔據 a1(那必須是在 axb3 之前)之後城堡就絕對無法來到它現在的位置。
可是易看出 a5 和 c6 的兵本來分別就是 b7 和 c7 的兵(也許有交換),
因此那個升變的黑至少是從 e 行走過來的,這至少需要斜移四次,
而 a5 那個兵至少也斜移了一次,於是黑方總共至少斜移五次,
但白方能夠用來幫助斜移的子力也就只有五個(兩個主教因為出不去、無法幫忙),
因此就可以得到結論:

a5 兵是本來的 b7 兵斜移一次之後變成、c6 兵是原本的 c7 兵,
而黑方的 e7 兵在連吃了四子之後來到 a 行,
通過白方打開的洞口升變成騎士
(注意,如果是升變成城堡,那至少還要再多用一次斜移,不合),
而城堡則是在那更早之前就進入第 1 列了。

由上述結論,就可以知道,白棋除了兩個主教都是死在原地之外,
其餘的五個子力有四個分別就是死於 a3, b4, c5, d6,
而最後一個可能是死於 a6 或 a5,現在暫時無法確定。

這邊我準備探討棋子被吃掉的位置有個很重要的理由,
那就是,模仿者從一開始到最後所移動的向量,
其實就是整盤棋黑白雙方所有移動的向量之和,
而這又等於每個棋子各自從開始到結束之間的向量之和,
換句話說判斷每個棋子死掉或者最終的位置,
再跟模仿者比較,這會是非常有用的一個方法。

而為了要讓這個方法有用,有一個很重要的關鍵:棋子的端點位置是可以交換的。

舉例來說,現在我有兩個棋子,一個整體來看是 a1-b4,
另一個是 b1-c6,因此兩者移動的向量分別是 (1,3) 和 (1,5),加起來是 (2,8)。
如果我把它們的終點交換,變成 a1-c6 以及 b1-b4 呢?
那麼向量會是 (2,5) 和 (0,3),加起來一樣是 (2,8)。
換句話說,我不需要精確地知道每個棋子各自死在哪裡,
我只要知道有哪些地方是曾經有棋子死掉,這樣就夠了。

以白棋來說,由剛才的結論,除了國王之外的所有棋子貢獻的向量應該是:

(1,1)+(0,2)+(0,3)+(-1,4)+(-3,5)+(-7,4 or 5) = (-10,19 or 20)

這邊我是擅自假定一種起始位置和終點位置的配對組合,
根據可交換性我們知道這樣隨便假定的結果算出來也會是正確的。

而黑棋方面,就棋盤上除了城堡以外的其他棋子的最終位置來說,貢獻的向量是

(-1,-2)+(0,-1)+(-4,-5)+(-4,-6) = (-9,-14)

於是到目前為止的總和是 (-19,5 or 6)。

根據模仿者的規則,模仿者一開始有可能在棋盤上的任何空白位置,
所以以模仿者在圖中的最後位置來說,
它的橫移量範圍是 [-1,6](我將以方刮號表示區間)、縱移量範圍是 [-2,-5],

因此,除了剛才討論的棋子之外其他的棋子必須提供 [18,25]
的橫移量和 [-11,-7] 的縱移量。

現在,稍早我們已經說過底下的城堡不能是升變來的,
所以它是 a8 或 h8 的城堡其中之一,
提供的向量分別是 (3,-7) 和 (-4,-7)。
不管是哪種情況,把這個城堡考慮進去之後,
剩下的其他棋子提供的縱移量都必須在 [-4,0] 之間。

這個時候還有一個棋子的負縱移沒有被考慮到:
就是在 b3 被白兵吃掉的棋子。
由於這個棋子不可能是黑兵,
因此這個被吃掉的棋子竟然提供了 -5 的縱移,
於是剩下的其他棋子的總縱移就必須是 [1,5]。

這個時候,如果從題目的局面開始追溯可能的棋步,
由於模仿者被卡在第 1 列,
會發現那將是無止盡的黑城堡與白王的橫向移動,
這將無法追溯到初始的佈局狀態──
除非,早先的某一步是白王吃掉了一個黑棋,
而且那個黑棋只能是騎士,否則一樣解決不了問題。

也就是說,白王必定在稍早吃了一個黑騎士,
那是抵達題目的局面之前最後一個「有意義」的棋步。

而且那個黑騎士在被吃掉之前正好做了一個往下跳的動作(使得模仿者來到第 1 列),
然後立刻就被白王橫向吃掉。這件事會是發生在哪一列?
顯然頂多是第 6 列,但是也至少是第 5 列,
不然白王的正縱移無法補足該黑騎士的負縱移。
於是,白王最終的可能位置已經被縮小到兩列之間了。

但是這麼一來,白王跟黑騎士的縱移抵銷後是 1 或 3。
如果是 1,那黑棋就再也不能有任何負縱移,
如此一來剩下的四個黑兵都不曾動過,因而 f8 的主教沒有動過。
在這個前提之下,我們來計算橫移量。
不失一般性我先假設在 b3 被吃掉的棋子是 a8 的城堡,
於是兩個黑城堡的橫移量和是 -3。國王頂多提供 3,
兩個黑騎士頂多提供 7,黑主教因為有一個不能動頂多提供 5,
最後黑皇后頂多提供 4。這加起來頂多是 16,跟範圍還差了2,不可能。

換句話說,白王跟那個被它吃掉的黑騎士的縱移量之抵銷應該是3,
以及黑騎士是在第 6 列被吃的;上面的計算也意味著,
為了把橫移量補足,黑方除了在 b3 被吃掉的棋子之外,
所有的棋子都必須是在 h 行被吃,而且白王最終也必須是在 h 行,
以及模仿者必須是初始在 h 行。

因此第一個問題的答案揭曉了:白王的正確位置在 h6。

接下來,黑棋只剩下 -2 的負縱移可以用,
但是如果 f8 主教是在 h6 以下的格子被吃
(因為顏色的關係它顯然並非是在 b3 被吃掉的棋子),
那麼它就已經把這負縱移都用完了,
但這樣一來其餘的黑兵就不能動,它根本無法出來,矛盾,
因此 f8 主教只能是在 h8 被吃掉。

最後,如果 c8 主教不是那個在 b3 被吃掉的棋子,
那它為了在 h 行被吃,它至少用掉了 -2 的負縱移
(它自己要 -1、而 h7 小兵要讓開也要 -1),
可是剛才為了讓 f8 主教在 h8 被吃,已經移動了 g7 的小兵、
用掉了 -1 的負縱移,根本沒有多餘的 -2 負縱移可以給它用,
因此它只能是在 b3 被吃掉的那個棋子。

於是解到這邊答案終於出來了:兩個黑主教分別是在 b3 和 h8 被吃的。

全部解決完畢。

注意到一直解到最後我都無法確定縱移量到底是怎麼分配的,
因為黑方還有一個 -1 縱移量可以給某個小兵使用,
我們無從確定黑方有沒有把它用掉。但是這並不影響解題就是了。

--

All Comments

西洋棋謎題(棋譜重建小品)

Charlotte avatar
By Charlotte
at 2009-04-17T21:15
這題真的魅力十足。 據說當年連前世界棋王 Garry Kasparov(跟深藍大戰的那位) 看到這題都傷腦筋了好一陣子才想到答案, 明明就是那麼短的一道題目卻能弄得那麼難(對人腦而言), 真的是非常了不起的設計。 T. Orban(1976): 8 rnbqkbnr  黑白 7 pp   ppp  pP ...

西洋棋謎題(棋子放回)

Hedy avatar
By Hedy
at 2009-04-17T13:04
回憶起來,這題可能是我這輩子第一個做出來的逆向分析領域題目, 當然當時我還沒聽過逆向分析這個詞。題目不龐大,但是很有啟發性。 這是 Raymond Smullyan(1957)的題目: 8           黑白 7           pP = 小兵 6           rR = 城堡 5  r  ...

西洋棋謎題(直接將死)

Damian avatar
By Damian
at 2009-04-17T12:46
有感於最近好像越來越多人喜歡把解謎這回事交給電腦處理, 這邊是一題專門獻給這種人的題目。 這題是直接將死問題,也就是所有西洋棋謎題當中最傳統的一類, 要求解謎者從給定的局面開始在一定的步數之內將死對方、無論對方怎麼回應。 因此答案必須列出對方所有可能的回應棋步之後續變化。 這題是 J. Nunn 精選 5 ...

西洋棋謎題(棋譜重建)

Enid avatar
By Enid
at 2009-04-13T06:50
結果還是要回到老本行的逆向分析領域才是我比較拿手的。 這是 Kornilov andamp; Frolkin(1988)的題目: 8  n  k     黑白 7 ppp n  p  pP = 小兵 6     p     rR = 城堡 5       pq  nN = 騎士 4   r       bB ...

西洋棋謎題(合作將死)

Hedwig avatar
By Hedwig
at 2009-04-12T20:51
可能是雷. 最後結果? 8 R      k  黑白 7        q  pP = 小兵 6           rR = 城堡 5     B     nN = 騎士 4    K      bB = 主教 3           qQ = 皇后 2           ...