作者popfish (Salvador Dali)
看板ChineseChess
标题Re: [问题] 各棋类对n次局面重覆的处理
时间Thu Sep 16 16:32:59 2010
谢谢回覆
┌─┬─┬-[士]-┬-[将]-┬─┬─┐
│ │ │ │\│/│ │ │ │
├─┼─┼─┼-[士]-┼─┼─┼─┤
│ │ │ │/│\│ │ │ │
├─┼─┼-(傌)-┼─┼─┼-(傌)[象]
│ │ │ │ │ │ │ │ │
├─┼─┼─┼─┼─┼─┼─┼─┤
│ │ │ │ │ │ │ │ │
├─┴─┴─┴─┴─┴─┴─┴─┤
│ │
├─┬─┬─┬─┬─┬─┬─┬─┤
│ │ │ │ │ │ │ │ │
├─┼─┼─┼─┼─┼─┼─┼─┤
│ │ │ │ │ │ │ │ │
├─┼─┼-[卒]-┼─┼─┼─┼─┤
│ │ │ │\│/│ │ │ │
[包]-┼-[卒]-┼─※─┼─┼─┼─┤
│ │ │ │/│\│ │ │ │
└-[卒]-┴-(帅)-┴-(炮)-┴-(砗)[包]
这盘一样是我乱排的
假设着法是靠二路马退将
然後到底线解开黑包牵制红车
然後再进车 过程中红方没有吃任何子
对人来说 能知道棋局其实是有进展的
这盘面一样 是随意排的 并且假设红的不会走马二进四
我没细算不知道有没有其他漏着
但我想顺着这样的讨论脉络
提出自己的感觉
要程式判断有无吃子作为棋局进展依据
是可以且简单的
可是如果没有吃子的情况
要怎麽用程式判定棋局有进展 似乎有一定难度?
我想法是可以看重复盘面出现次数:
l大进炮又退炮的例子, 起码会出现炮到底线将军的重覆盘面
一旦有子被吃 盘面一订就不同 所以棋局是发展中的
而上例棋子没被吃,但是马的位置不同了,也是有进展的.
如果按照这样说
是不是棋规可以改为看重复盘面就好
看循环着法太麻烦了呢?
谢谢
※ 引述《lunalina (牧羊人之月)》之铭言:
: ※ 引述《popfish (Salvador Dali)》之铭言:
: : 趁着有些空档发文
: : 回覆l大的棋例
: : 这个盘面,如果红车平中将藉炮抽子换位,我们不会说红方他长将败吧
: : <兵>─┬─┬-[士][将][车]-┬─┬─┐
: : │ │ │ │\│/│ │ │ │
: : ├─┼─┼─┼─※─┼─┼─┼─┤
: : │ │ │ │/│\│ │ │ │
: : ├─┼─┼─┼─┼─┼─┼─┼─┤
: : │ │ │ │ │ │ │ │ │
: : ├─┼─┼─┼─┼─┼─┼─┼─┤
: : │ │ │ │ │ │ │ │ │
: : ├-(傌)-┴─┴─┴─┴─┴─┴─┤
: : │ │
: : [包][车](砗)-┬─┬─┬-[卒][马][包]
: : │ │ │ │ │ │ │ │ │
: : <炮>─┼─┼─┼-(炮)-┼─┼─┼-( )
: : │ │ │ │ │ │ │ │ │
: : ├─┼─┼-[卒]-┼─┼─┼─┼─┤
: : │ │ │ │\│/│ │ │ │
: : ├─┼-[卒]-┼-[卒]-┼─┼─┼─┤
: : │ │ │ │/│\│ │ │ │
: : └-[卒]-┴-(帅)-┴─┴─┴─┴-(砗)
: : 可是l大下图那个例子,我们却是一定要判长将败,
: : 因为我们人脑知道下图那样将军对棋局没有推展.
: : 程式撰写则需要一个明确判准.
: : 对了,这个盘面是很快地想到就摆,若是讨论正确着法
: : 可能不是一个很好的排局,敬请见谅!
: 抽子後盘面上棋子减少了,局面有变化,当然不算长将。
: 盘面上棋子位置及数量有没有变化是一个很明确的依据了吧。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.117.66
1F:推 lunalina :棋规本来就是看局面循环的。 09/16 17:06
2F:→ lunalina :棋规的文字写着法,但其精神其实是局面循环 09/16 17:06
3F:→ lunalina :这在1351篇的推文就提到过了 09/16 17:06
4F:→ lunalina :这盘如前述,红方虽一直叫将但局面有变化,不算长将 09/16 17:08
5F:→ popfish :了解 感谢 09/16 17:40
6F:推 McuDrCat :争什麽啊,掺在一起做撒尿牛丸啊,笨蛋。 09/18 12:10