GA将?開発日記~王理のその先へ~

ネタ勢最強を目指して絶賛開発中。

調子に乗ってGA + UCB1-TUNEDでメタ強化学習開始

とりあえず多碗バンディット問題をεグリーディーで解くエージェントの、εを設定させてみました。

ちなみに腕は10本で各腕ごとに固定の閾値を設定、乱数が閾値以下なら報酬1.0、閾値より大きければ報酬0.0って条件です。

メタエージェントに与える報酬は、εグリーディーエージェントが1000回プレイして(腕を試して)得た報酬の平均値。メタエージェントの行動はεの選択です。

んで、結果。とりあえず上手く行ったッポイです。

細かい注意点は2つ。

  • UCB1-TUNEDの式中の1/4を問題に応じた値にしないと上手く学習しない*1
  • 設定するメタパラメータの取り得る値の範囲が0〜1の場合は、遺伝子の持っている値をそのまま使うよりも、シグモイド関数で0〜1の値に変換してからメタパラメータに設定した方が収束が速い

*1:最初はメタエージェントの報酬をエージェントの報酬の合計にしていて、その影響で変な挙動をした