|
(((soldierwj))) Adaptive-Nullmove是DarkTought的用法,靠近根节点R为3,靠近叶子节点R为2,感觉并不容易控制好。
Verify-Nullmove可以检测出ZugsWang的情况,Poor先生,您对中国象棋中ZugsWang有过什么考虑吗?
我觉得中国象棋中的困毙似乎类似这种情况,而且在残局是非常常见的情况。 许峰雄说过,深蓝只允许同一方循环使用nullmove,而且是>=beta+fudge,fudge为控制危险的参数。
(((Poor))) Nullmove這玩意在中象上發生ZugsWang的危險性相當大。(誰教教我怎麼念這個英文字),比如:
┌--┬--┬-[士][將][車]-┬-(車)-┐ │ │ │ │ │ │ │ │ │ ├--┼--┼--┼-[士]-┼-(兵)-┼--┤ │ │ │ │ │ │ │ │ │ ├--┼--┼--┼--┼--┼--┼--┼--┤ │ │ │ │ │ │ │ │ │ ├--┼--┼--┼--┼--┼--┼--┼--┤ │ │ │ │ │ │ │ │ │ ├--┴--┴--┴--┴--┴--┴--┴--┤ │ 楚 河 漢 界 │ ├--┬--┬--┬--┬--┬--┬--┬--┤ │ │ │ │ │ │ │ │ │ ├--┼--┼--┼--┼--┼--┼--┼--┤ │ │ │ │ │ │ │ │ │ ├--┼--┼--┼--┼--┼--┼--┼--┤ │ │ │ │ │ │ │ │ │ ├--┼--┼--┼--※--┼--┼--┼--┤ │ │ │ │ │ │ │ │ │ └--┴--┴--┴-(帥)-┴--┴--┴--┘
車二平三後,黑車只能吃紅車,紅方再兵三進一就困斃黑方。 這局一下就能試出 null-move 的毛病。
同樣的,大家都有不同的方法來處理類似的盤面,像ELP就是個完全不採用null-move還能在一分鐘穩上12層的「怪物」,從本質上分析,null-move就是讓部份的變化,在某盤面讓一方連走2步,且用少R層的方式,來切割棋樹,在中象上,使用要比西洋棋更小心,比如大手數的棄子,在中象上比比皆是,即使連走2步,但在一些停著殺的盤面,你連走兩步也救不到,若後面再接連將殺,更不是少算R層的深度就能算出。
所以正確的觀念應是:一個切割的算法,尤其是一些「危險」的算法,速度與準確度很難得兼,有時只是能在多少盤面,多解出多少,快上多少這樣的數字遊戲。 目前只在剩餘棋子數上下工夫,殘局階段不呼叫Null-move |