R7.7 アピール文書 2013-01-31初版 2013-03-31第2版 R7.7は、以下の工夫を自力で施したコンピュータ将棋プログラムです。(※一部予定) アピール点その1:極力CPUを遊ばせない並列探索 αβ探索のトラバース中にいきあたった任意個のノードについて、当該ノード以下の部分木群のαβ探索を、全体の探索木からそれらを除いた木のαβ探索とは別のCPUに割り当てて並列に行い、あとで可能な限り探索をやり直すことなくまとめ直すテクニックと実装を確立しました。 アピール点その2:局面の妥当な類別 局面ごとの合法手を相手の動向を制約する度合い別に4種類に分け、度合いの大きい順に生成することで探索の効率化を図りました。 普通のオーダリングと何が違うのかというと、上記4種類の類別をヒューリスティックに頼らず定理ベースで行っている点です。調整パラメータはありません。 (※ 3/31現在計算速度を改善中。論理的には特に問題なく動作。) アピール点その3: 連続攻撃優先評価 アピール点2の類別を利用して、中盤においては相手より先に攻撃が尽きる手の分岐をさっさと刈ります。 アピール点その4: 打たれ強い駒組みの自動生成 アピール点3の評価方法を駒組みに使います。序盤においてはこちらから仕掛けず、相手の連続攻撃成立を極力遅延させつつ自陣を強化します。 その他: アピール点2の処理がかなり計算量を要するのと特殊な合法手生成手順のため効果が帳消しになった感がありますが、記憶管理を工夫したKiller move(Killer moveが反則手になってもただちに消さず、2軍に落とし点数を減ずる)と、コルーチン的手法による分割差し手生成(分割毎生成順序の適応的オーダリング機能付き)も一応実現しています。 以上