捕獲先読み講座  レベル3  探索空間を絞る  (2000-08-27)
対局囲碁ソフトに用いられる捕獲探索ルーチンについて解説します。
トップに戻る  捕獲先読み講座に戻る  前へ  次へ

レベル2まで達成できれば、次に挑戦するのはレベル3です。しかし、レベル3を
達成しないでレベル4以上のことをやろうとするのは無謀です。

縦形探索では
  追う側と逃げる側がまるで協調するかのように長手順を展開したり、同一局面を
  繰り返すことがあります。
  同一局面を2度読みしないようにする必要がありますがそれよりも絞り込みのほ
  うがとりあえず重要のようです。

これらに対する対策は
  同一局面を2度読みしないようにするにはハッシュを使うなどします。
  長手順を展開させない方法としては
    有効そうな枝から調べること。
    意味のない枝は調べないこと。
    調べる深さを制限すること。

第1にトライすべきことは調べる深さを制限してしまうことです。
例えば、無制限に読ませる方式だと正解が3手の深さにあっても、その枝を調べる
チャンスがこなかったりする。しかし、5手の深さに制限すると、正解ではない枝
はことごとく5手で打ち切られ、短手数で正解の枝に到達します。

ただし、シチョウという特殊な状況は良く発生するので、制限手数に達してもシチ
ョウ条件になっている限り探索を延長したほうが良いです。他にも延長するべき条
件はあるのですが、ここでは置いておきます。

第2には有効そうな枝から調べることでありますが、これはなかなか奥が深く、簡
単なことから実装していくべきであろうと思われます。

【逃げの基本】

   空き3点の場合

       ┼      ダメが2つ増えるかもしれない。1石取るよりも優先かな。
     ┼◆●    
       ┼      

   空き2点・追う石1点の場合

       ○      ダメが1つ増えるかもしれない。ダメ2連のアタリ以上かな。
     ┼◆●    
       ┼      

   空き1点・追う石2点の場合

       ○      ダメは減るかもしれない。周囲の石が取れない場合は最後にまわ
     ○◆●    してよいかもしれない。
       ┼      

   空き0点・追う石3点の場合

       ○      周囲の石が取れない場合はダメが1つ減ります。着手禁止ですら
     ○◆●    ありえます。これも最後にまわすべきです。
       ○      

   空き2点・逃げ石1点の場合

       ●      異なる連の連結の場合、ダメが増えるかもしれない。
     ┼◆●    連同士の共有するダメも考慮に入れる必要があります。
       ┼      

   空き1点・逃げ石2点の場合

       ●      
     ●◆●    
       ┼      

   空き0点・逃げ石3点の場合

       ●      
     ●◆●    
       ●      

   空き1点・追う石1点・逃げ石1点の場合

       ●      
     ○◆●    
       ┼      

   追う石2点・逃げ石1点の場合

       ●      
     ○◆●    
       ○      

   追う石1点・逃げ石2点の場合

       ●      
     ○◆●    
       ●      

【逃げ候補「パス」】

  群レベルの捕獲探索があれば、連レベルの捕獲探索では不必要かもしれないです
  が逃げる候補にパスを入れておくとわざわざ自滅するような手順を省くことがで
  きます。

   ABCDEFGHJKLMNOPQRST  
 01┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓  
 02┠┼┼┼●●●●●●●┼┼┼┼┼┼┼┨  
 03┠┼┼┼●◇◇◇◇◇●┼┼┼┼┼┼┼┨  
 04┠┼┼・●◇┼◇┼◇●┼┼┼┼・┼┼┨  
 05┠┼┼┼●◇◇◇◇◇●┼┼┼┼┼┼┼┨  
 06┠┼┼┼●●A●●●●┼┼┼┼┼┼┼┨  
 07┠┼┼┼┼●●●┼┼┼┼┼┼┼┼┼┼┨  

  黒Aときたとき、白はパスをすれば「取れない」となりますが、逃げる候補にパ
  スがないと、すべての逃げる手で「取られる」となり、黒から「取れる」と判定
  されることになります。とすると、黒Aの評価値は高い事になってしまいます。

【中央へ逃げる優先】

  ノビる手が2個所ある場合、中央へノビると枝刈りが早くなる傾向があります。
  辺へノビると延々と読んでしまいます。
  たとえ辺へノビる手がアテる手を兼ねていても、中央へノビた方が包囲網をたや
  すく突破できることが多くて、その先少しぐらい深く読むことになっても、それ
  だけで済んでしまうために、全体として読む局面数が激減することになるようで
  す。

  トル手やアテる手などで同順位に扱っていたものも中央に近いほうから並び替え
  ると読む局面数が減る傾向にあります。

  正確に言えば、「広い方」へ逃げるということでありますが、これはレベルが高
  いです。

【追う候補の並び替え】

  捕獲連のダメ詰めは追う基本です。
  その候補点に逃げる側の石を置いてみたときの捕獲連のダメが大きくなるほうか
  ら並べ直します。

 ┼┼┼┼┼┼   追う側が黒とする
 ┼┼●●┼┼   白をAに置いてみた場合、ダメは4
 ┼●○B┼┼   白をBに置いてみた場合、ダメは2
 ┼●A●┼┼   捕獲連の呼吸点に限定すると、追う候補の優先順位は
 ┼┼○┼┼┼     黒A > 黒B
 ┼┼┼┼┼┼

第3には、意味のない枝は調べないことでありますが、厳密には難しいようです。
勝手な判定をしたほうが実践的には有用性が高くなりますが、致命的な読み間違い
をすることもでてきます。

   ○●○┼┼  Aの地点にほうり込んだら   ○●○┼┼   ○●○┼┼
   ●○A○┼  白のダメが詰まっていない   ●○○○┼   ●○○○┼
   ●B┼┼┼  ので無意味                 ●●○┼┼   ●●┼┼┼
   ┼●┼┼┼  または不利が明らか         ┼●┼┼┼   ┼●┼┼┼

   ○●○┼┼  Aの地点にほうり込んだら   ○●○┼┼   ○●○┼┼
   ●○A○┼  白のダメが詰まっているの   ●○○○┼   ●○○○┼
   ●B┼┼┼  で意味があるかもしれない   ●●○┼┼   ●●┼┼┼
   ┼●●┼┼                             ┼●●┼┼   ┼●●┼┼

死活や攻め合いなどではまた違った様相を呈するので油断が出来ません。

トップに戻る  捕獲先読み講座に戻る  前へ  次へ