学習(3)

03/20の表で示したように、KPP/KKPの各値は大半が±1の範囲にある。
このことから、KKP/KPPの各要素ごとの学習機会数は、やはり大半が0回なのではないかと予想していた。今動かしているボナンザは、各要素ごとの学習機会数をカウントするように改造しているので、この出力を調べてみる。
ここで学習機会数と呼んでいるものは、学習する全ゲームの全局面に対して、実際に指した手と、実際に差した手との評価値の差が±FV_WINDOW以内である全ての合法手について、指した後の局面に含まれているKPP/KKP要素を全て1回づつインクリメントしたものである。(もう少し正確に言うと、指した後の局面から、1手先読み+静止探索した局面)

KPPの結果を以下に示す。(1回目のiterationと、6回目のiteration)

KPP learning count ratio
count#1 elements#1 ratio#6 elements#6 ratio
03309922737.53522639839.9
1 6516591 7.4 7013351 7.9
2 3911622 4.4 4101770 4.6
3 2737841 3.1 2831898 3.2
4 2099030 2.4 2132006 2.4
5 1672086 1.9 1681098 1.9
6 1389679 1.6 1382577 1.6
7 1176528 1.3 1157460 1.3
8 1011837 1.1 990819 1.1
9 883159 1.0 858492 1.0
10 782422 0.9 757646 0.9
11 699767 0.8 674592 0.8
12 632773 0.7 605578 0.7
13 574604 0.7 547954 0.6
14 523684 0.6 502197 0.6
15 481223 0.5 461116 0.5

最初の行は、学習機会数が0回だったKPP要素の数が一回目のiterationで33099227個、これはKPP全体の中で37.5%の割合、6回目のiterationで35226398個、39.9%の割合。
学習機会数5回までは、iterationが進むと増えているが、6回以上は減っていることがわかる。iterationが進むにつれて±FV_WINDOW以内の合法手が減っていくので、この結果は当然ではあるが。

同様に、KKPの結果を以下に示す。

KKP learning count ratio
count#1 elements#1 ratio#6 elements#6 ratio
0 246052250.8 253172052.3
1 324942 6.7 335553 6.9
2 188196 3.9 190561 3.9
3 127252 2.6 129134 2.7
4 96968 2.0 95907 2.0
5 75687 1.6 74500 1.5
6 62325 1.3 60354 1.2
7 51769 1.1 50386 1.0
8 44010 0.9 42763 0.9
9 37408 0.8 36959 0.8
10 32957 0.7 32069 0.7
11 28959 0.6 28775 0.6
12 25992 0.5 25597 0.5
13 23614 0.5 23247 0.5
14 20859 0.4 21115 0.4
15 19532 0.4 19171 0.4


学習機会数の最大値は、KPP: 71132444回(#1), 43556948回(#6)、KKP: 13742691回(#1), 8545789回(#6)。