Safety Filter
- カテゴリ: Control › Feedback control
- タグ: safety, safe-control, optimization, learning-based-control, runtime-assurance
ノミナルコントローラ、人間、学習済みポリシーからの各指令を確認し、システムを安全集合内に確実にとどめる最も近い指令に置き換える実行時のレイヤ。
定義
安全フィルタ(Safety filter)は、ノミナルコントローラとアクチュエータの間に置かれる。ノミナルコントローラは、手動調整した制御則、プランナ、テレオペレータ、学習済みポリシーのいずれでもよく、指令 u_nom を提案する。フィルタは、その指令を適用してもシステムが安全な状態の集合内にとどまるかを確認し、とどまらない場合は安全な指令、通常は u_nom に最も近いものに置き換える。提案された指令がもともと安全であれば、そのまま通過させる。この分離により、エンジニアはノミナルコントローラでは性能を追求して設計し、安全性は小さく解析可能な 1 つのコンポーネントで担保できる。
一般的な構成はいくつかある。制御バリア関数によるフィルタは、制御ステップごとに小さな二次計画問題を解く。すなわち、バリア関数が速く減少しすぎないようにする線形制約とアクチュエータの制限のもとで ‖u − u_nom‖² を最小化する。Hamilton-Jacobi 到達可能性によるフィルタは、安全を維持できる状態の集合をオフラインで計算し、状態がその境界に近づくと安全なコントローラに切り替えるか、それを混合する。予測型安全フィルタはモデル予測制御を用いる。提案された指令の後に、ホライズンにわたって安全なバックアップ軌道を続けられるかを確認し、続けられなければ指令を修正する。学習寄りの研究では、シールドや安全レイヤといった名前で密接に関連した考え方が使われている。
安全フィルタの良し悪しは、それが依存するモデルと状態推定の質で決まる。モデル誤差、遅延、アクチュエータの飽和、知覚の誤差はいずれも保証を崩しうるため、ロバストな派生手法ではこれらの誤差の上限に応じて制約を厳しくする。たとえば、学習ベースの知覚が出力する状態推定に対応するためである。フィルタは望ましくない挙動を引き起こすこともある。たとえば、ノミナルな目標が障害物の向こう側にあるときにロボットが障害物の近くで停止してしまう。フィルタは局所的に作用し、再計画しないからである。制御バリア関数の項目は証明書そのものを説明している。安全フィルタは、そうした証明書、到達可能集合、あるいは予測的なチェックを用いて指令を修正する、実行時のアーキテクチャである。
重要な理由
学習済みポリシーや人間のオペレータには安全保証がなく、あらゆる状況で安全になるよう再訓練するのは現実的でないことがほとんどである。安全フィルタは、ノミナルコントローラが何をしても衝突回避、関節制限、ジオフェンスなどの制限を強制する検証可能なレイヤを追加する。そのため、学習ベースの制御を実機ロボットに展開する際の一般的なパターンになっている。
主な用途
- 学習済みコントローラやテレオペレーションのコントローラに対する衝突回避
- ロボットアームへの関節、速度、作業空間の制限の強制
- ドローンのジオフェンスと障害物回避
- 実機での強化学習中の安全な探索
- 人間の指令を最小限だけ修正する共有自律
実際の使われ方
あるチームが、人のいる実験室で移動ロボットに強化学習ポリシーを展開する。ポリシーを CBF ベースの安全フィルタで包み、近くの各障害物について、距離からマージンを引いたものをバリア関数とする。制御周期で動く二次計画問題が、すべてのバリア制約とロボットの速度制限を満たし、かつポリシーの出力に最も近い速度指令を求める。障害物の位置は誤差の上限が既知の学習済み検出器から得られるため、その上限の分だけマージンを広げる。テスト中は、フィルタがどれくらいの頻度とどれくらいの強さで介入するかを記録し、ポリシー自体のどこにさらなる訓練が必要かを把握する。
よくある誤解
- 安全フィルタはどんなコントローラも安全にする — その保証はモデル、状態推定、アクチュエータの制限が正しいことに依存しており、これらの誤差は有界で、かつ考慮に入れられていなければならない
- 安全フィルタはプランニングの代わりになる — 指令を局所的に修正するだけで、ロボットが立ち往生したりデッドロックに陥ったりすることがある。目標に到達するには依然としてプランナが必要である
- 安全フィルタと制御バリア関数は同じ意味である — CBF は証明書の一種にすぎず、フィルタは到達可能集合や予測的なバックアップ軌道からも構築できる
知っておくべき人
- 学習ベースのコントローラを展開する制御エンジニア
- 移動ロボットやドローンの安全エンジニア
- 安全な探索に取り組む強化学習の研究者
- テレオペレーションと共有自律の開発者
関連技術
- 二次計画法(Quadratic Programming)
- OSQP
- Hamilton-Jacobi 到達可能性解析(Hamilton-Jacobi Reachability)
- 予測型安全フィルタ(Predictive Safety Filter)
- シールディング(Shielding)
関連用語
- Control Barrier Function
- Hamilton-Jacobi-Bellman Equation (HJB)
- Model Predictive Control
- Region of attraction
- Obstacle Avoidance
- Reinforcement Learning
関連プロジェクト
- Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
- GTSAM: Factor-graph optimization library powering many modern SLAM backends
- PyPose: PyTorch library for differentiable robotics with deep learning and Lie group optimization
- NeuPAN: Real-time end-to-end planner that maps raw lidar points directly to robot actions
- OpEn (Optimization Engine): Embedded nonconvex optimization solver in Rust for real-time MPC on robots
- ProxSuite: High-performance QP/LP solver for robotics control and optimization