コンパイル
root@root-PC ~/reversi
$ g++ rev.cpp search.cpp
引数
root@root-PC ~/reversi
$ rev.exe
argv[0]= C:\MinGW\msys\1.0\home\root\reversi\rev.exe
exp,
a.exe "log2/6x6_17/6x6_" "log2/6x6_17_10/6x6_" 1 600 10 20
第1 インプットフォルダ
第2 アウトプットフォルダ
第3 インプットフォルダの中の盤面の番号
から第5引数ステップまで探査
第4 インプットフォルダの中の盤面の番号まで処理する
第5 探査深度
第6 インプットフォルダ内のファイルのノードの長さ。
これで末端を知る。
root@root-PC ~/reversi
$ i=1; j=2; while [ $i -lt 589964 ]; do echo $i; rev.exe "log2/6x6_17/6x6_" "log2/6x6_17_10/6x6_" $i $j 14 20; i=`expr $j`; j=`expr $j + 1`; sleep 2; done;
1から、589964行まで1個ずつ実行
深度14こえるとメモリー不足になる。
メモリー使用状況は以下のようにノコギリ波のようになる。
こんなやり方しかなかったのかなあ・・・?。
ちなみに、
9ステップ log2/6x6_17/6x6_00000.log
+
7ステップ
=
16ステップ log2/6x6_000010_00000.log ~
9ステップの1局面で、平均6ファイル。1ファイル10万行できるとして。60万行。
9ステップの局面数が589964行。
×
60万。
いくらだ・・? 60万x60万 = 360000000000
3600億!?
なんか勘違いしてなければ、17ステップで約3600億通りの局面となる。
よく、20年くらい前に解析できたなあ・・・。
PR