用語集 · 強化学習
行動クリッピング
別名:Action clipping、クリッピング、clipping、飽和、saturation、行動の上下限、action bound
許された範囲から外れた行動を切り詰めることです。安全のために必要ですが、方策の出力のずれを隠してしまうことがあります。
ガウス方策はどんな実数でも出力できますが、モーターには限界があります。そこで環境は、各行動を使う前にその範囲へクリップ(切り詰め)します。
隠れた問題
クリッピングは範囲の外では平らです。方策(ポリシー)の平均 が5までずれても、実際に使われる行動は1のままです。 を5から4に動かしても環境から見える変化は何もないので、それを引き戻す報酬の信号がありません。平均はどんどんずれていき、引き戻すものは何もなく、関節は限界に張り付いたままになります。その関節の学習は止まってしまいます。
対策
- 平均のうち範囲外の部分に対する、損失への上下限ペナルティ:
- スカッシング: 出力を に通し、 から決して出られないようにします。対数確率の計算が変わり、SAC など他のアルゴリズムでよく使われます。
このプロジェクトでは
ラン survive2 では、±1 でクリップされるのに対して、行動の平均の大きさが平均17までずれました。すべての関節が限界に張り付き、方策は崩壊しました(学習の発散を参照)。 に対する損失でこれが直り、それ以来ずっと学習に組み込まれています。