[仏教の最適化プログラムの続き。] lsth がうまくいかなかったのは、…
jrf> [仏教の最適化プログラムの続き。]
lsth がうまくいかなかったのは、 VirtualHating に対する「感度」が弱いから…だろう。「感度」の自動調節ができないか?
10年ぐらい VirtualHating の記録しておき、その変化が少ないなら、その少ない変化で犯罪量を大きく動かすようなことがしたい。
記録の平均を mu、標準偏差を sigma として、この期の VirtualHating が v1 のとき、((v1 - mu) / sigma) * 0.4 から犯罪量 c1 を決定してみてはどうだろう?
しかし、この場合、相対評価ということになるが、高い VirturalHating が続いた場合、mu が増えることで、だんだん c1 が小さくなってしまう。これは違うんじゃないか?
そこで前の VirtualHating が v1 で犯罪量が c1、次のものが v2 と c2 とするとき、c2 = c1 + k * ((v2 - v1) / sigma) * 0.3 としてみてはどうだろう? mu のかわりに前の値 v1 を使うのである。
しかし、そうすると犯罪量が大きくなり過ぎたり、小さくなり過ぎたりするのではないか? 前の値 v1 でなく mu を使ったほうが素直か?
……。
ちょっとテストしてみた。
《test_of_mean_amplifier_2.py: 平均付近の増幅》
https://gist.github.com/JRF-2018/ee1bfe8b3cc676a5389ed5f81c6f544f
表示されるグラフも↑に貼り付けた。
上のグラフが時系列の元のデータで、これが VirtualHating だと思いねい。
そして、下のグラフの青い y2 が、mu を使った場合で、黄色い y3 が、前の値 v1 を使った値。そして、折衷的に、(y2 + y3) / 2 したのが y4。
このグラフを見る限り、y4 がいい感じだが、simbd の実験に組み込んでもうまくいくのかどうか…。