深層強化学習-評価指標としての平均Q
スペースインベーダーゲームの学習者向けにディープラーニングモデルを調整しています(下の画像)。状態は、プレーヤーと敵の間の相対的なユークリッド距離+プレーヤーとウィンドウの高さで正規化された6つの最も近い敵のレーザーの間の相対距離として定義されます(プレーヤーの位置が$(x_p,y_p)$ 敵の位置は $(x_e,y_e)$、相対的なユークリッド距離は $\frac{\sqrt{(x_p-x_e)^2+(y_p-y_e)^2}}{HEIGHT}$HEIGHTはウィンドウの高さです)。したがって、観測空間の次元は(10 + 6)であり、16ユニットのディープニューラルネットワークの入力になります。


学習者に関するいくつかの結果は次のとおりです。

回答
あなたの主な問題は、コア機能として相対距離を使用することだと思います。これには2つの大きな弱点があります。
オブジェクトまでの距離は、オブジェクトへの方向を示しません。最善の行動の選択はすべて、方向に決定的に依存しています。たとえば、プレイヤーの真上にある0.1ユニットの敵のレーザーボルトは回避行動を必要とする差し迫った危険ですが、左または右に0.1ユニットあるものは危険ではなく、ゲームウィンドウを離れようとしています。相対距離の特徴はこれらのシナリオを区別しませんが、それは重大な違いです。
少し重要ではありませんが、生の距離は動きの感覚を捉えていません。敵が順番に一貫して移動するが、常に正確に同じ方向または同じ速度であるとは限らない場合、それらの速度も状態の一部である必要があります。
機能を改善する1つの方法は、各アイテムに速度コンポーネントを追加して、プレーヤーからの接近または後退の速さを示すことです。これは少し役立つかもしれませんが、距離や速度よりも多くのデータが必要だと思います。
正規化を使用する必要があると思います $x, y$追跡されている各アイテムの特徴としての位置と正規化された速度$dx, dy$ 方向を変えることができるオブジェクトタイプの場合(敵のレーザーが常に真っ直ぐに落下している場合は、それらに何も必要ない場合があります)。
加えて:
ウィンドウの端が重要な場合は、少なくとも相対的なものを含める必要があります $x$そのうちの1つであるため、エージェントは画面上の絶対位置と操作する必要のあるスペースを把握しています。これは、プレーヤーがそれ以上左または右に移動するのをブロックされているかどうか、またはプレーヤーが画面の反対側に「ラップアラウンド」するかどうかに関係なく当てはまります。どちらのタイプの効果も、画面の端の近くでゲームをプレイする方法に大きく影響します。
予測値を追跡するには、プレイヤーのミサイルの位置を追跡する必要があります。発射するのに最適な時期をエージェントに予測させるだけでは不十分です。値関数を正確に追跡するには、数ステップ前に発射したミサイルがターゲットに命中するか、逃す可能性があるかどうかを「確認」する必要があります。
敵のレーザーとプレイヤーのミサイルの両方について、いくつかの基準(プレイヤーまでの距離など)でデータをフィルタリングおよびソートしても問題ありません。これが一貫している限り、そのような前処理を行うことは大いに役立つかもしれません。