第三章、 研究方法
3.5 DB-TSS 的方法
3.5.3 擋反手
接著,將討論反手的議題。在六子棋的 VCDT 中,一旦防守方在防守 的過程中產生防守方的迫著,就稱作反手(Inversion)。此時攻擊方頇花費額 外的棋子去擋住反手,同時頇造成雙迫著以便繼續攻擊。否則,攻擊即因 反手的產生而終止。
INV:Inversion,形成反手的盤面。
INV:Inversion,反手已被之前的攻擊 Moves 擋住的盤面。
𝑀𝑖 𝑀𝑗:表示𝑀𝑖𝐴擋住了𝑀𝑗𝐷造成的反手。
依照反手造成的方式,可以將擋反手分為兩類:
1. Post-Block:擋住上一手造成的反手,如圖29。
2. Pre-Block:擋住未來可能形成的反手,如圖30。
圖 29. Post-Block 圖 30. Pre-Block
以 Post-Block 而言,𝑀𝑖 𝑀𝑖−1表示𝑀𝑖−1𝐷 形成了防守方的迫著,而攻 擊方在下一步𝑀𝑖𝐴阻擋了這個迫著。在圖 31 中,T(𝑀1𝐷)造成了一個單迫著,
但是黑方仍能靠著𝑀2𝐴擋住這個反手。以定義而言,𝑀2𝐴 𝑀1𝐷表示𝑀2𝐴擋 住𝑀1𝐷造成的反手。因此可以針對𝜓 ∈ CTSS定義一個 Post-Block 的 Set:
𝕄post-block:{𝑀𝑖 | 𝑀𝑖 𝑀𝑖−1}
以 Pre-Block 而言,𝑀𝑖 𝑀𝑗雖表示𝑀𝑖可以擋住之後𝑀𝑗造成的反手,
但是在𝑀𝑗下完的盤面中,是不存在迫著的,因為迫著已經被𝑀𝑖𝐴擋住。若 將 P(𝑀𝑖𝐴)從盤面上取下,則對方至少會存在一個迫著。
圖 31. Post-Block 反手範例
以圖 32 為例, 𝜓 ∈ CTSS,𝜓 = <𝑀1, 𝑀2, 𝑀3>,雖然𝑀1𝐷、𝑀2𝐷和𝑀3𝐷都 沒有形成防守方的迫著,但若攻擊方在初始盤面先下 P(𝑀3𝐴),則防守方下 了 P(𝑀3𝐷)之後,就會產生防守方的迫著。此時攻擊方再去下 P(𝑀1𝐴)想要擋 住反手便已經來不及,因為攻擊方要擋住反手必頇下到 P(𝑀2𝐴)的位置,也 就是要兩手後,而防守方只要再一手便可因攻擊方未擋反手而形成連六獲 勝。唯有照圖 32 的順序攻擊,才有可能在 VCDT 的攻擊中擋住這個反手。
圖 32. Pre-Block 反手範例
對於 Pre-Block 的 Move Set 定義較為複雜,需先對存在的𝜓 ∈ CTSS 定 義以下兩種連續反手的 Move Set:
𝐼pre(𝑀𝑖):{𝑀𝑖−𝑘 | 對於每個𝑀𝑖−𝑛,2 ≤ n ≤ k,T(𝑀𝑖−𝑛𝐷 ) ≠∅} ∪ {𝑀𝑖−1}。
𝐼post(𝑀𝑖):{𝑀𝑖+𝑘 | 存在𝜓′ ∈ CTSS,對於每個𝑀𝑗+𝑛′ ∈ 𝜓′,0 ≤ n ≤ k,
T(𝑀𝑖+𝑛′𝐷 ) ≠∅且P(𝑀𝑖+𝑛) = P(𝑀𝑗+𝑛′ )}。
圖 33. 之前的連續反手 圖 34. 未來的連續反手
𝐼pre(𝑀𝑖)表示𝑀𝑖之前形成反手的連續 Moves,如圖 33。假設目前位置在 𝑀4下完之後的盤面,而𝑀3之前連續兩步𝑀2𝐷和𝑀1𝐷都形成反手,則𝐼pre(𝑀4) = {𝑀1, 𝑀2, 𝑀3},代表攻擊方在𝑀3之前無法自由選擇要從何處攻擊,被反手 所限制攻擊的位置,直到𝑀4才有機會自由選擇要攻擊的位置。
𝐼post(𝑀𝑖)表示𝑀𝑖之後形成反手的連續 Moves,如圖 34。假設目前位置 在𝑀1下完之後的盤面,𝑀1𝐷和𝑀2𝐷都將形成反手,則𝐼pre(𝑀1) = {𝑀1, 𝑀2}。
針對𝜓 ∈ CTSS 定義一個 Pre-Block 的 Set:
𝕄pre-block:{𝑀𝑖 | ∃ 𝑀𝑗 ∈ Ipre(𝑀𝑖),𝑀𝑘 ∈ Ipost(𝑀𝑖)且𝑀𝑗 𝑀𝑘}。
簡單來講,假設目前是 Move 𝑀𝑖(圖 35),若𝑀𝑖之前為連續的反手,則 攻擊方別無選擇,只能一邊阻擋反手一邊進攻,且這些攻擊方的 Move 不 一定是互相相關的。只要其中某一步有可能擋住𝑀𝑖之後連續反手的其中一 個反手,因此即使𝑀𝑖與其前一手並無相關,𝑀𝑖仍是一個合理的攻擊步。
圖 35. Pre-Block 概念圖
雖然 Pre-Block 與 Post-Block 考慮了大部分的反手問題,但是要完整解 決反手問題,需要相當大的複雜度,且設計極為複雜。因此本論文仍有一 些反手情形沒有被考慮。
3.5.4 2ST 搭配
以目前的 TSS 搜尋,只要是在同一個盤面中的 ST 都能被互相搭配而 形成攻擊方的候選步(Candidate Moves)。在大部分的情形,這些候選步已 足夠找到必勝路徑,不需要特別到其他區域尋找額外的 ST 來搭配,但是 在極少的情形下,只靠同一個盤面的 ST 來搭配是無法必勝的。必勝路徑 內的 ST 無法在同一個盤面找到合適的 ST 來搭配的原因有:
1. 目前盤面只有一個死三。
2. 其餘搭配的ST將使得防守方造成無法阻擋的反手。
3. 其餘搭配的ST將使得防守方擋住必勝路徑。
以上的三項原因使得要完整解決2ST搭配問題,需要相當大的複雜度,且
3.6.1 Dependency
要判斷一個 Move 𝑀𝑖 ∈ 𝕄D,只需利用 3.3.2 定義的 Related Piece 性 質檢查𝑀𝑖是否相依於前一手即可。
3.6.2 Combination
由 於 NCTU6 的 TSS 是 Iteration Deepening 的 方 式 , 即 使 沒 有