bocch 获胜攻略
把AI“最强”最看重的要点,以及从3万局AI对局中统计出的“容易获胜的形状”,用棋盘图整理在这里。棋子上的数字就是它能移动的距离。
YouTube“bocch 定式研究”也用视频讲解战法与定式(日语)
先亲手试试规则机制
能移动的距离是“周围8格里的棋子数(不分颜色)”。放下一颗棋子,旁边棋子的数字也会跟着变。这是这个游戏最重要的地方。
“放棋子”:每点一次格子,就按 黑 → 白 → 空 变化。
“查看去处”:点一颗棋子,它能去的格子会显示为绿色。最上一行是黑方的终点,最下一行是白方的终点。
强势形状
在AI对局中,“该形状比对方多的一方”最终获胜的比例。中间的线是50%,越往右越容易获胜。
黑方第1手(定式)
这是让变强后的“最强”(v1.7)对14种第1手各读15秒(15〜18手深)得出的评价(左右对称的手合并取平均)。只有用边上棋子的依偎、守角这两手是均势,把中间棋子走出两格的手都略亏。白方第2手不管黑方怎么走,“并肩”(把边上的棋子斜着靠拢)都是最佳。这些计算作为游戏的定式内置在“最强”里。
到第3手为止的定式
对前2手的全部196种组合,用最新的“最强”把黑方第3手读到15〜18手深。另外又把第3手所有能走的手全部(3,006种)各读4秒(11〜14手深),分成强手和弱手。评价是从黑方看的分数,0是均势,+是黑方有利(100分约等于胜率78%)。
- 黑方第3手的基本是“另一侧的边也靠拢”:196种中有159种(81%)的最佳手,是把边上的棋子往内靠一行。第1手靠拢了一侧的边,第3手就把另一侧的边也靠拢,让两边的棋子都发挥作用。
- 白方第2手走并肩以外的手会大亏:对黑方的依偎,白方只要走并肩以外的手,黑方就能领先+77〜+148分。白方第2手只有并肩一个选择。
- 第3手“阵地的棋子只走一行”最安全:比较3,006种手,阵地棋子只走一行的手与最佳手平均只差43分,几乎没有坏棋。阵地棋子一口气走两行平均亏77分,走三行平均亏90分,坏棋比例也跳到8%、18%。开局就跳远的手,往往只是给对方送上跳板和时间。
- 最佳级的手很少:3,006种中,最佳和好手(差距20分以内)只占16%。将近一半是疑问手(差60〜120分)。到第3手就已经开始拉开差距。
- 主线是均势:黑方依偎 → 白方并肩(与黑方相反的一侧)→ 黑方把另一侧的边也靠拢,评价为0分。真正的胜负从这里开始。
在棋盘上看(含变化)
点候补手,棋盘就会走到那一手。每手右边的数字,是走完那一手后黑方胜率的估计(最新AI的评价)。左边的标记表示与最佳手的差距:最佳、好手、普通、疑问手、坏棋。第3手列出了所有能走的手。
棋盘最上一行是白方阵地(黑方的终点),最下一行是黑方阵地。碰到候补手时,那一手的走法会显示在棋盘上。从第4手起没有定式,“最强”也是当场计算后再走。
战法(开局作战)
让最新的“最强”自己对弈26,000局,把双方第8手时的形状按相似程度归类,结果分成了5种类型。图是该类型第8手时最常见的己方棋子排列,用6颗棋子画出的典型形(省略对方棋子;己方阵地在下,进攻一侧统一放在左边)。
相克关系
行的战法战胜列的战法的比例。
变强后的AI怎么下
每次把AI变强,下法的流行都会改变。以下是最新26,000局中的变化。
- 总攻消失,双层阵出现:把阵地棋子几乎全部推出、横向铺开的“总攻”,强AI几乎不再下了。取而代之的是在阵地留2〜3颗、其余在中段竖着排开的“双层阵”,现在约占全部的2成。
- 中央橹与边攻的差距拉大:中央橹对边攻胜率74%(以前是67%)。AI越强,越能发挥中间棋块的力量,也越会抓住边路的弱点。
- 半橹成为主流:强AI会在阵地留下2〜3颗,同时在中间组橹。把阵地棋子几乎全用掉的全橹变少了,半橹的胜率高出4个百分点。
- 边攻和守城变少:在学习到的价值里,己方阵地边上的棋子是大大的减分,己方阵地中间的棋子是加分。强AI会尽早把边上的棋子往内靠,把中间的棋子留在阵地。
- 留在阵地的棋子就是防守:留下的棋子会堵住对方的落点(手筋“阵地之墙”),同时也让你有余裕把橹建在离对方一格的位置。
每种类型约6,000〜12,000人次(一局中双方都计入)。第8手的形状也受对方下法影响,所以并不代表“选了这种类型就一定有这个胜率”。
从最新AI之间的26,000局看对局
让变强后的最新“最强”(v1.7)互相对弈26,000局统计的结果(开头2〜6手为了让形状分散而随机)。最新AI对变强前的AI约胜6成。
- 越强对局越长:双方都会尽早挡住听牌,所以不容易抵达。一半的对局在31〜48手之间结束。
- 第1颗非常重要:先有1颗抵达的一方约胜3分之2(66.5%)。从防守严密的对手那里抢下1颗,就是这么大的事。
- 和棋也有6.5%:计算深的话,双方都避开危险的手,容易反复出现同一局面。
一局的长度
按双方合计手数统计的对局数(60手以上合并)。
先有1颗抵达的一方的胜率(按抵达时期)
无论何时抵达都能胜6成以上,但越到终盘价值越高,第24手以后先抵达的一方胜率近8成(77.6%)。守方棋子变少的终盘,这1颗几乎就是决定胜负的一手。
要害格
第12手时该格上有己方棋子的一方的胜率(己方阵地在下,左右合并取平均)。越绿越容易赢,越红越容易输。
- 抵达对方阵地正中最强:在3a、4a的一方胜率63%。在边上(1a、6a)也有55%。
- 中路是要害:3d、4d是55%,3c、4c是53%。从中间通过的棋子会带来胜利。
- 边路是输棋的路:在1c、1d、6c、6d的一方胜率40〜41%。靠在边上的棋子发挥不了作用。
- 留在阵地角落的棋子也弱:1f、6f是40%。往往一动不动地留到最后。
- 终点前一行(b行)是输棋的位置:在2b〜5b的一方胜率34〜42%,是棋盘上最差的一行(26,000局中新发现的事实)。b行的棋子离终点只有1行,所以只有数字正好是1时才能抵达。旁边棋子一多就会跳过头,也容易被对方挡住,成了“看似能到却到不了”的棋子。只有在下一手能确定抵达时才上到b行。
挡住对方听牌的方法
黑方的棋子(数字2)能抵达往上2格的终点。往上、右上、左上3个方向都能到,所以落点最多有3处。
进阶:手筋体系
强者看的不是自己棋子的数字,而是双方棋子的“偏差”。所有手筋都是从这个思路构建的。
偏差为0的棋子能抵达终点(听牌)。因为不论往上还是斜上,一次上升的行数都等于数字。数字太大会跳出棋盘,同样到不了。
走一步时,落下的格子旁边的棋子偏差减1,离开的格子旁边的棋子偏差加1。
图为整个棋盘(最上一行是黑方终点,最下一行是白方终点)。棋子数字、听牌、能到的格子,全部按规则自动计算。
不能走的手
在最新AI之间的26,000局(约89万手)中,统计了走某种手的一方最后获胜的比例。整体平均约50%。即使是强AI,走了这些手胜率也会明显下降。
- 自己替对方造出致命一击(胜率0%):对方已有1颗抵达时,自己的手改变了对方棋子的数字,让它能抵达第2颗的手(引爆)。26,000局中出现2,047次,走出这手的一方一局也没赢。对方有1颗抵达后,移动前一定要看“落点旁和出发点旁有没有对方的棋子”。
- 留着对方的致命一击去走别的手(胜率0%):对方已有1颗抵达,下一手又有能抵达第2颗的棋子,却不去挡的手。其中也包括无法阻挡的局面,但在变成那样之前,先掐掉对方第2个听牌的苗头才是要务。
- 走完后棋子成了孤子(胜率37%):旁边没有棋子的“0”棋子动不了。走出让移动的棋子成为孤子的手的一方,胜率比平均低13个百分点。让留下的棋子成为孤子的手也只有41%。一次造出2颗以上孤子会掉到27%。
- 停在终点前一行(胜率46%):走上b行(从自己看是终点前一行)的手,胜率偏低。b行的棋子只有数字正好是1时才能抵达,旁边棋子一多就会跳过头。除非下一手能确定抵达,不进b行、在c行等待更划算。
- 开局把阵地的棋子跳得很远:在第3手全部候补的计算中,阵地棋子一口气走出2〜3行的手,比只走1行的手平均差34〜47分,容易成为坏棋(详见“形状·定式”的到第3手为止的定式)。
思路:被迫防守时已经快输了
- 走挡棋的一方胜率34%:挡住对方听牌是必要的手,但被迫去挡的时候,主动权已经在对方手里。对方抵达1颗后去挡致命一击的一方胜率是27%。
- 所以要“边挡边造”:只挡的手,等于把思考下一波进攻的时间交给对方。选择挡法时,要先找能不能在那个落点同时造出自己的听牌(手筋“攻防一体”)。
- 自己也有听牌时,有时可以放着对方的听牌不管:留着对方的听牌、但自己也有听牌的一方胜率60%。被对方抵达1颗也不会立刻输。比较“对方抵达1颗”和“自己抵达1颗”,选更划算的那边。
对方听牌,挡还是放?
当对方下一手就能抵达时,最强AI怎么判断,我们在26,000局中做了统计。
- 对方的第2颗一定要挡:对方已有1颗抵达时,能挡却放过的手一次也没有。第2颗就是当场输。
- 对方的第1颗,有时可以放过:能挡却故意放过的一方胜率69.8%。特别是自己已经有1颗抵达时是95.9%,自己也有听牌时是72.3%。如果自己会先凑齐2颗,就把挡的那一手用在进攻上。
- 两者都不是时,“边挡边造”:自己0颗也没有听牌时,挡的同时造出自己听牌的一方胜率51.7%。只挡是39.6%,不挡只造听牌是46.9%,两者都不做是34.1%。
挡法也有优先顺序
- 1. 顶起(胜率49.7%):在对方听牌棋子旁放上自己的棋子,让数字变大。能到的行改变,就会跳过终点。
- 2. 抽走(43.7%):把对方听牌棋子旁边的棋子抽走,让数字变小。
- 3. 堵住落点(33.8%):看起来最直接,却是最差的挡法。对方棋子的数字不变,会去找别的落点。
把已抵达的棋子移出来
- 把抵达对方阵地的自己的棋子移出来,是最后的防守:走出这手的一方胜率4.6%(7,969次)。其中62%是为了挡住对方的致命一击而放弃自己第1颗的手。AI走出这一手时,形势已经很苦了。
- 在终点行内横向移动是普通的手:不减少已抵达的数量,改变旁边的数字来挡住对方,或让自己的下一颗通过(胜率50.4%)。
每一手都按这个顺序确认
- 对方有没有偏差0(听牌)?有就挡。用顶起或抽走,让偏差离开0。
- 这一手会不会引爆?看落点旁边有没有对方偏差+1的棋子,出发点旁边有没有对方偏差−1的棋子。
- 能不能边挡边造出自己的听牌?在落点旁边找自己偏差+1的棋子(攻防一体)。
- 能不能在相隔的2处造出听牌?挤在同一处的双听牌一手就会被破解。真正的双听牌是相隔的2处。
- 自己的棋子会不会变成孤子?旁边只有0〜1颗的棋子多的一方,胜率会掉到45%左右。
统计来源:形状的胜率来自让AI对弈2,000局,在约4.8万个局面中比较双方的结果。定式的评价是最新“最强”读到15〜18手深的结果,并非彻底解开。5%左右的差距可能因计算时间而互换。