麻雀AIを書くときに気をつけること
あくまで自分の経験上のアレなので、参考程度...
最初から全部やらない
役判定とか、ものすごく退屈な割に得られるものが少ないので、最初から全部やろうとしてはいけない。
タンヤオとリーチと役牌、シャンテン数くらいで結構まともなのは作れる。
手牌が1234sの状態で14sはチーできない、みたいなコーナーケースが無数に存在するけど、後回しにする。
まずは動くものを完成させるのが、モチベーション上重要。
同様に、高速化を頑張ってはいけない。オーダーが違うなら頑張ってもいいけど、間違っても定数倍の高速化なんてしてはいけない。
1週間で作る
最長でも1週間くらいのスパンで作らないとモチベーションが消え去る。
データを取る
既存のAIと戦わせるなどして、データを取る。そしてどや顔する。
テストをする
シャンテン数などは、単体テストをする。
入力をローカルのファイルから読み込んで動くモードを作ってテストをする。
(麻雀は、なかなか出ない局面が多い。例えば、暗槓をするロジックを組み込んだ時にそういう局面が来るまで実際に回すのは凄く時間の無駄。)