作者terrorlone (终於摆脱忧郁)
看板puzzle
标题[问题] 浅谈西洋棋谜题当中的记号使用
时间Sun May 10 03:34:08 2009
之前的贴的各篇文章当中或多或少都使用到了一些通用的记号,
虽然这些记号在别的地方也能够查得到,
但是我想在这边重新单独写一篇文章来介绍这些记号也好。
(1) Algebraic Notation
代数记号是目前西洋棋界最普遍使用的符号系统,
它取代了前一代的描述记号(Descriptive Notation),
具有简短、容易阅读、方便排除歧义等等的优点。
现时 FIDE(国际棋联)以此记号作为标准,因而世界通用。
要解释这个记号,要先从棋盘开始说起。
8
7
6
5
4
3
2
1
abcdefgh
这是一个标准的西洋棋盘,
棋盘的座标以执白一方看去的左下角为起点,
横列由靠近白方到远离白方分别以数字 1~8 标示,
直行则由左到右分别用小写英文字母 a~h 标示。
当要描述一个特定的格子的时候,先写其行、再写其列,
例如以初始配置来说白王的位置会在 e1,而不是写成 1e。
当题目附上的插图有标示出座标的时候,
就可以百分之百确定第 1 列所对应的一侧必为白方。
至於没有标示的情况,则依照不成文惯例以图片下方当作白方阵营。
了解了棋盘的描述之後,接下来是棋子的记号,这个对应关系很简单:
P = 小兵(Pawn)
R = 城堡(Rook)
N = 骑士(kNight,之所以用 N 是因为 K 被国王用去了)
B = 主教(Bishop)
Q = 皇后(Queen)
K = 国王(King)
当然这是以英文的系统来记,如果看德国的杂志的话记号可能会完全不同,
PRNBQK 会变成是 BTSLDK,或者即使是英文杂志可能有些也会有特别的习惯,
例如 The Problemist 杂志习惯把骑士记作 S、
而把 N 保留给夜骑(Nightrider,一种幻想西洋棋当中的棋子)使用,
这个可能要看参考各个杂志的习惯。不过 PRNBQK 的系统还是最普遍的。
接下来是记录棋步的方法,我们先从短式代数记号说起。
在短式代数记号当中,
记录棋步的时候首先写出子力种类(其中小兵的 P 省略不写),
然後再写出棋子的目的地,例如:
e4 Nf6 Ke2
注意在记录棋步的时候棋子的种类永远是以大写表示,无论黑白。
小写的字母在这边永远是表示棋盘的行。
如果这一步是一个吃子动作,
则在种类跟目的地中间写一个「x」表示之,例如:
Nxf6 Kxe2
而小兵的吃子则在 x 前面以小写字母表示是哪一行的兵在进行吃子,例如:
axb3 dxc5
虽然小兵吃子的时候常常就算不把起点的行写出也不会造成歧义,
但是一般的习惯还是都一律写出来。如果是一个吃过路兵的动作,
必须在後面空一格之後标注「e.p.」表示之,例如:
axb6 e.p.
城堡护王的动作以 0-0 和 0-0-0 分别表示王侧城堡护王和后侧城堡护王。
升变的场合中,以「=?」的方式标示出升变成什麽东西,例如:
f8=Q
这样就表示位於 f7 的白兵往前走了一步後升变成皇后。
如果是将军,在棋步後面(但在 e.p. 记号之前)写上「+」表示,例如:
Nd5+ Bxf4+ c1=R+ dxe3+ e.p.
如果这个棋步导致将死,则把「+」改成「#」即可。
虽然 FIDE 规则中说将死也可以用「++」表示,
但建议最好避免这样用,因为很多书是把「++」当作双将军的记号。
如果其中一方下完之後提议和棋,则加上「(=)」的记号。
了解这些之後剩下的就是歧义的处理了。
假设今天有一步的记号写成 Nc4,
可是棋盘上却不止一个该方的骑士可以走到 c4 的话,
这样写就会导致歧义。为了厘清,此时必须加以标注。
假设所有可以走到 c4 的骑士能够用所在的行来区分的话,
就优先以行区分之,例如:
Nbc4 Ndc4
这样的写法就分别表示「把位於 b 行的骑士移到 c4」
和「把位於 d 行的骑士移到 c4」之意。
如果无法以行区分,那其次就试着以列区分:
N2c4 N6c4
最後如果单以行列都无法唯一界定一个棋子(在升变之後就有这个可能),
那麽就同时写出行列以标示之,例如:
Nb2c4 Nd2c4 Nb6c4
以上就是记录单一棋步的记号。
最後,如果你想在特定一步後面表达你的看法,
可以使用附注记号,常用的如下:
!! 这步酷毙了
! 这步赞
!? 这步也许不错
?! 这步可能有问题
? 这步不好
?? 这步根本是囧rz
附注记号还有很多,不过看得懂这些应该就够了。
(2) 记录棋谱
了解了单一棋步的写法之後,接着就是了解整个棋谱的写法。
其方法很简单,就是在每一步的前面写上数字然後一点,
空格之後先写上白棋所走的棋步、然後再一个空格之後写上黑棋的棋步,
依此类推。一个 FIDE 给的范例如下:
1. e4 e5 2. Nf3 Nf6 3. d4 exd4 4. e5 Ne4 5. Qxd4 d5 6. exd6 e.p. Nxd6
7. Bg5 Nc6 8. Qe3+ Be7 9. Nbd2 0-0 10. 0-0-0 Re8 11. Kb1(=)
如果棋谱写到一半为了解说目的而暂时中断,
之後要接续下去的时候不是由白方先开始的话,
那麽从黑棋开始的写法是先写数字、然後三个点、再直接写上黑棋的棋步,
例如(接续上面的棋谱):
11...Nd4 12. Qxd4 Bxg5
当棋局结束的时候,可以在棋谱的最後写上结果,
写「1-0」表示白胜,写「0-1」表示黑胜,而「1/2-1/2」则为和棋。
如果阅读棋谱的时候发现还没将死就出现了结果的记号,
可能就表示其中一方投降、或者提议和棋被对方接受等等。
(3) Algebraic Notation 的变形
接少完基本的短式代数记号(又叫标准代数记号,SAN)之後,
稍微来讲几种有关的变形。
长式代数记号(LAN)是一种无论有没有必要、
都永远把棋子的起点位置写出来的记号,
如果没有吃子的话会用一杠「-」连接起点和终点。例如:
Ng1-f3 c3xd4 Qb2xe5+
而可逆代数记号(RAN),
则是更进一步地把吃掉了什麽(如果有的话)也写了出来,例如:
Ra2xBb2
可逆代数记号是最完整的,
它同时可以让读者从最终局面开始倒过来沿着棋谱回到初始局面,
因此在做逆向分析问题的时候,如果问的是倒退棋步或者过去的单一棋步,
都应该要以可逆代数记号回答。
不过,近来也开始有人在回答倒退问题的时候改采用另一种记号,
这种记号好像还没有一个标准的名称,姑且称为倒退代数记号好了。
这种记号的概念是专门为了倒退问题而设计的,
可以形容成是专门用来写「倒退谱」的短式代数记号,
为了举例,考虑下面的着名倒退问题:
Eric Angelini(1995):
这个局面是黑先,求白棋最後一个单步。
r
K
kqpb
事实上这个问题可以求出不止一步,
但这个问题为了误导解谜者故意只问一步。
在继续说明之前稍微解一下这题好了。
白最後一步只能移动白王,然而不管它是从哪里来的,
它在前一步的位置上都面临了双将军,而其中只有一种是有可能做到的,
就是它来自 f5。在那里它被皇后跟主教双将军,
而诚如很多人已经看出的,这个双将军是可以藉由黑兵吃过路兵做到,
所以急於回答的解谜者可能就会回答:最後一步是 Kf5-e5。
这样回答的话就中计了。
理由是,如果我们继续试着往前继续分析的话,
再前一步是黑兵 f4xg3 e.p.,而再前一步就必定是 g2-g4,
可是这麽一来在这一步之前黑主教一样以诡异的方式将军了白王,
这个将军唯一的合理解释只有一个黑骑士从 g4 移动到 e5(也许有吃子)进行闪击,
所以这题的正确答案是 Kf5xNe5 才对。
於是,实际上这个问题可以完整地求出前三个单步,
至於第四步则因为无法判断是否有吃子而无法继续倒退。
不过为了范例起见,底下我们姑且假设这个黑骑士当时吃了一个白城堡好了。
在这个假设下,如果采用可逆代数记号来记录棋谱,就会写成:
-1. Kf5xNe5 f4xg3+ e.p. -2. g2-g4 Ng4xRe5+
而改用倒退倒数记号的话会写成这样:
-1. Kf5:N f4:Pep -2. g2 Ng4:R
这种倒退记号的读法是这样:
「Kf5:N」的意思是请你把国王移到 f5、并同时「吐」一个黑骑士出来,
类似地「f4:Pep」就是把一个黑兵斜退回 f4(也只有 g3 的兵可以这样退),
并同时吐一个白兵在 g4 的位置(因为後面的 ep 标示出这是「吐过路兵」)。
「g2」就是要你把一个白兵退回 g2(由此可见那个兵一次走了两步),
最後「Ng4:R」就是把黑骑士移回 g4、并同时吐一个城堡出来。
在倒退代数记号当中「+」不用写出来,因为那不会造成歧义。
如果是要倒退升变的棋步,
本来在可逆倒数记号中写「a7-a8=Q」的棋步会变成是「Q=a7」,
而「b7xNc8=R」会写成「R=b7:N」。
城堡护王的棋步写法不变,一样是「0-0」或「0-0-0」。
倒退代数记号我目前看到使用最多的人是 Henrik Juel,
但这是否是他发明的我就不确定了。
(4) PGN 格式
PGN 格式是在电脑当中使用的棋谱格式,
它大致上也是采用标准代数记号来记录棋谱,
不过有几个地方有小差异:
1. 类似倒退倒数记号,吃过路兵不是空格後写「e.p.」,
而是不加空格直接写「ep」,
获着乾脆不写(反正其实不会造成歧义)。例如:
exd6ep
2. 城堡护王是写成「O-O」或「O-O-O」(英文字母 O),
而非 FIDE 标准中的「0-0」和「0-0-0」(数字 0)。
当然其实现在的电脑程式通常两种写法都看得懂。
3. 通常棋谱前面还会加上各种讯息,例如对奕者的名字、
棋局的日期时间、采用的计时制度等等,
或者如果这个棋谱是从中途开始纪录的,
也会把开始的局面写出来(使用 FEN 记号,底下解释)。
当然这些资讯除了最後一点之外都不需要附上也可以被电脑接受。
(5) FEN 记号
FEN 记号是用来描述一个棋盘状态的记号,
把所有当前局面的资料用一行的文字来表示。
它包含了两大部分,第一部份记录了棋盘上看得到的资讯,
也就是每一个棋子的位置,第二部分则是棋盘上看不到的资讯(待会解释)。
记录棋子位置的记号,是从棋盘的最左上角开始,
先由左到、再由上到下记录,
每遇到一个有棋子的格子就把棋子写出来(此时白方采大写、黑方采小写),
而遇到空格的时候就把连续有多少个空格一次用数字写出,
最後遇到该换列的地方则写一个「/」表示。例如:
r1bqr1k1/ppp1bppp/2nn4/6B1/8/4QN2/PPPN1PPP/1K1R1B1R
这一串记号画成图片就会是:
r bqr k
ppp bppp
nn
B
QN
PPPN PPP
K R B R
而 FEN 的第二个部分,则记录了五个资讯,
分别以空格隔开如下:
1. 现在该谁走:写「w」表示该白,「b」表示该黑。
2. 双方还保有哪些城堡护王的权利:
如果双方都没得护了,就写「-」,
不然如果白方可以王侧城堡护王就写个「K」,
可以后侧城堡护王就加写个「Q」,黑方也依样办理(但是写小写)。
3. 有没有过路兵可以吃:
如果没有就写个「-」,但如果有,则写出该过路兵「背後一格」的位置。
4. 单步数:
写出自从上一次吃子或移动小兵以来经过的单步数目,
这个资讯是为了帮助往後判断是否可以宣告五十步规则和局。
5. 总步数:
写出从棋局初到现在为止经过的步数。
这个数字从 1 开始,并於每次黑棋走完之後增加 1。
於是一个完整的 FEN 例子如下:
r1bq1rk1/ppp1bppp/2nn4/6B1/8/4QN2/PPPN1PPP/R3KB1R w KQ - 6 10
当然,对於很多西洋棋谜题来说,
写出第二部分的资讯是没有必要的,
或者说其实第二部分的资讯正是要交给你来判断,所以更不应该写出。
谜题往往只要把第一部份、也就是棋子位置的资料写出就可以简单传达了。
除了上述的标准 FEN 之外,
还有人发明的所谓的幻想 FEN(FFEN),
可以用记号表示出更多的棋盘图片,包括幻想西洋棋棋子,
格子当中的文字或数字、画圈或打叉的格子等等,
不过 FFEN 各位应该是用不到,这边就先不详细介绍了。
(6) 谜题的简略记号
最後要介绍的记号就是跟谜题相关的记号。
大抵我在这边贴谜题文章的时候是不会写得那麽简略的,
我好歹也还是会用文字描述问题,
但是如果各位往後有机会直接读谜题杂志的话,
会发现里面多得是用这些记号简述问题的情况。
这些记号主要有几种:
1. 直接将死:以「#n」表示在 n 步内将死对方。
2. 合作将死:以「h#n」表示在 n 步内合作将死。
3. 自我将死:以「s#n」表示在 n 步内自我将死。
4. 反射将死:以「r#n」表示在 n 步内反射将死,「sr#n」表示半反射将死。
5. 连续合作将死:以「ser-h#n」表示在 n 步内连续合作将死。
6. 残局研究:以「+」表示目标为胜,「=」表示目标为和。
以上是非逆向分析领域的题型(或者顶多是隐藏了逆向分析成分)常用的记号。
至於逆向分析领域的题目,大多数都会用文字叙述,
除了棋谱重建之外。在棋谱重建问题中,
如果看到写「PG in 18.5」,表示写出一个题目图示对应的棋谱、
是要在走完 18.5 步之後(也就是白棋走完第 19 步)。
如果是写「SPG in 27.0」,则也是表示要写出图示对应的棋谱、
是在走完 27.0 步之後(也就是黑棋走完第 27 步)的、
但是写「SPG」是同时暗示你这是构成该图局面所需的最少步数,
如果写「PG」则没有这样的意涵。
以上就是在玩西洋棋谜题时大致需要懂得的各种基本记号,
希望对大家有帮助。
--
▄▄▄▄
▄ Terrorlone 西洋棋谜题专栏 为您献上优值的精选谜题
▄▄▄▄▄
▄▄▄▄
▄ 欢迎寄站内信过来对答案;推文请小心不要泄漏关键字。
▄▄▄▄
▄ 若觉得题意不清请尽量来信或水球询问。
▄▄▄▄▄ 刚入门者可先阅读
#19x4xedc 和
#19y39PSk 两篇文章。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.230.169.226
※ 编辑: terrorlone 来自: 61.230.169.226 (05/10 12:49)
※ 编辑: terrorlone 来自: 173.161.119.46 (06/09 03:04)