用語集 · 強化学習
CAPS正則化
別名:CAPS、CAPS regularisation、Conditioning for Action Policy Smoothness、行動平滑化
方策の行動を滑らかにするために損失に加える項。ステップ間で行動が大きく変わらず、似た状態には似た行動を返すようにします。
CAPS(Conditioning for Action Policy Smoothness、Mysore et al. 2021)は、滑らかな制御のための正則化手法です。強化学習の方策はしばしばガタつきます。ネットワークの出力は近い入力どうしでも急に変わることがあり、実機のモーターやシミュレーション上の体では、それが目に見えるピクつきになります(ジッターを参照)。
CAPSは学習の損失に2つのペナルティを加えます。方策の平均行動を と書くと、次のようになります。
時間的な滑らかさ:連続する行動は近くあるべきです。
空間的な滑らかさ:ほとんど同じ状態には、ほとんど同じ行動を返すべきです。近くの状態 は、少しノイズを加えて作ります。
全体の損失は次のとおりです。
重み を大きくするほど、制御は滑らかになりますが、反応は鈍くなります。
行動をフィルタするだけではだめなのか?
出力にローパスフィルタをかけても滑らかにはなりますが、遅れが生じ、方策はその遅れを織り込んで学習しなければなりません。CAPSはネットワーク自体を滑らかにするので、強いフィルタが要りません。実際には、この2つを組み合わせるとうまくいきます。
このプロジェクトでは
どちらの項にも二乗距離を使い、 としています。 は、正規化した観測に のノイズを加えて作ります。CAPSは、静止時のジッターを関節1つあたり毎秒1.7回の向きの反転から0.01回まで下げた5つの変更のひとつです。残りの4つは、バランスのゲート、適応型の行動フィルタ、実際の関節の動きに対する滑らかさの報酬、そしてフォームの床でした。
ブロックの取り組みでは、CAPSは方策が自分で押す4つのブロックボタンまで滑らかにしてしまいました。ボタンを押すことは、まさに出力の急なジャンプなので、ボタンをCAPSの対象から外すまで、ファイターは一度も意図的にボタンを押しませんでした(ブロックを参照)。