用語集 · ロボティクスと制御
ジッター
別名:Jitter、chatter、twitching、direction reversals、チャタリング、震え、方向反転
関節の小さく速い、行ったり来たりの震え。強化学習の方策によく見られ、ここでは関節1つあたり1秒あたりの方向反転回数として測ります。
強化学習の方策(ポリシー)は、追従のスコアは問題ないのに、見た目には震えているような、ごく小さく素早い修正をよく行います。実際のロボットでは、ジッターはエネルギーを無駄にし、モーターを熱くし、ギアをすり減らします。シミュレーションのファイターでは、単純におかしく見えます。震えている構えを認めるコーチはいません。
原因
- 報酬にそれを防ぐものがない。 素早く行ったり来たり修正してポーズを保っても、滑らかに保つのと同じスコアになるなら、方策には滑らかさを選ぶ理由がありません。
- 敏感なネットワーク。 入力のわずかな変化が、出力の大きな変化を生むことがあります。
- 学習中の探索ノイズが、決定的な方策にも一部残ってしまう。
- 硬い接触。 完全に硬い床の上の足は、接している状態と離れている状態の間でガタガタと揺れることがあります。
測り方
方向反転を数えます。関節の速度の符号が、関節1つあたり1秒あたり何回変わるかです。
ゆっくりした揺れでは、1拍に1回、つまり1秒に1回ほど反転します。震えでは1秒に何回も反転します。
対策
このプロジェクトでは
最初の構えの方策は、落ち着いて立っているときに関節1つあたり毎秒1.7回の反転を記録しました。参照モーションそのものは0.02です。何も変えていない方策をジムのフォームマットの上に置くだけで、0.15まで下がりました。バランスのゲート、適応フィルタ、滑らかさの報酬、CAPS を入れて再学習すると、0.01になりました。