Safety Filter
- 카테고리: Control › Feedback control
- 태그: safety, safe-control, optimization, learning-based-control, runtime-assurance
명목 제어기, 사람, 또는 학습된 정책이 내는 각 명령을 검사하여, 시스템이 증명 가능하게 안전 집합 안에 머물게 하는 가장 가까운 명령으로 대체하는 실행 시간 계층.
정의
안전 필터(safety filter)는 명목 제어기와 액추에이터 사이에 놓인다. 손으로 조정한 제어 법칙, 계획기, 원격 조작자, 또는 학습된 정책일 수 있는 명목 제어기가 명령 u_nom을 제안한다. 필터는 그 명령을 적용해도 시스템이 안전 상태 집합 안에 머무는지 검사하고, 그렇지 않으면 안전한 명령, 보통 u_nom에 가장 가까운 명령으로 대체한다. 제안된 명령이 이미 안전하면 바뀌지 않고 그대로 통과한다. 이런 분리 덕분에 엔지니어는 명목 제어기에서는 성능을 위해 설계하고, 안전은 작고 분석 가능한 하나의 구성 요소에서 강제할 수 있다.
흔히 쓰이는 구성은 여러 가지이다. 제어 장벽 함수(control barrier function) 필터는 제어 단계마다 작은 이차 계획 문제를 푼다. 장벽 함수가 너무 빨리 감소하지 않게 하는 선형 제약과 액추에이터 한계를 조건으로 ‖u − u_nom‖²를 최소화하는 것이다. 해밀턴-야코비 도달 가능성(Hamilton-Jacobi reachability) 필터는 안전을 유지할 수 있는 상태 집합을 오프라인으로 계산하고, 상태가 그 경계에 가까워지면 안전 제어기로 전환하거나 안전 제어기를 섞어 넣는다. 예측 안전 필터(predictive safety filter)는 모델 예측 제어를 사용한다. 제안된 명령 뒤에 하나의 구간에 걸친 안전한 백업 궤적이 이어질 수 있는지 검사하고, 그렇지 않으면 명령을 수정한다. 학습 지향 연구에서는 실드(shield)나 안전 계층(safety layer) 같은 이름으로 밀접하게 관련된 아이디어를 사용한다.
안전 필터는 그것이 의존하는 모델과 상태 추정만큼만 좋다. 모델 오차, 지연, 액추에이터 포화, 인식 오차는 모두 보장을 깨뜨릴 수 있으므로, 강인한 변형들은 예를 들어 학습된 인식이 만든 상태 추정을 고려하기 위해 이런 오차의 한계만큼 제약을 강화한다. 필터는 국소적으로 작동하고 재계획하지 않기 때문에, 명목 목표가 장애물 뒤에 있을 때 로봇이 장애물 근처에서 멈추는 것처럼 원치 않는 거동을 일으킬 수도 있다. 제어 장벽 함수 항목은 인증서 자체를 설명한다. 안전 필터는 그런 인증서, 또는 도달 가능 집합이나 예측 검사를 이용해 명령을 수정하는 실행 시간 아키텍처이다.
중요한 이유
학습된 정책과 사람 조작자에게는 안전 보장이 따라오지 않으며, 모든 상황에서 안전하도록 다시 학습시키는 것은 실용적인 경우가 드물다. 안전 필터는 명목 제어기가 무엇을 하든 충돌 회피, 관절 한계, 지오펜스 같은 한계를 강제하는 검증 가능한 계층을 추가하며, 그래서 실제 로봇에 학습 기반 제어를 배치할 때 흔히 쓰이는 패턴이다.
주요 응용
- 학습된 제어기나 원격 조작 제어기 주변의 충돌 회피
- 로봇 암의 관절, 속도, 작업 공간 한계 강제
- 드론의 지오펜싱과 장애물 회피
- 하드웨어에서의 강화 학습 중 안전한 탐색
- 사람의 명령을 최소한으로 수정하는 공유 자율성
실제 사례
한 팀이 사람들이 있는 실험실에서 모바일 로봇에 강화 학습 정책을 배치한다. 팀은 정책을 CBF 기반 안전 필터로 감싼다. 근처의 각 장애물에 대해 장벽 함수는 거리에서 여유를 뺀 값이며, 제어 주기로 실행되는 이차 계획 문제가 모든 장벽 제약과 로봇의 속도 한계를 만족하면서 정책 출력에 가장 가까운 속도 명령을 찾는다. 장애물 위치는 오차 한계가 알려진 학습된 검출기에서 오므로, 팀은 그 한계만큼 여유를 늘린다. 시험 중에는 필터가 얼마나 자주, 얼마나 강하게 개입하는지 기록하며, 이를 통해 정책 자체에 추가 학습이 필요한 곳이 드러난다.
흔한 오해
- 안전 필터는 어떤 제어기든 안전하게 만든다 — 그 보장은 모델, 상태 추정, 액추에이터 한계가 정확하다는 데 달려 있으며, 이들의 오차는 한계를 정하고 반영해야 한다
- 안전 필터는 계획을 대신한다 — 안전 필터는 명령을 국소적으로 수정하며 로봇을 갇히거나 교착 상태에 빠지게 할 수 있다. 목표에 도달하려면 여전히 계획기가 필요하다
- 안전 필터와 제어 장벽 함수는 같은 뜻이다 — CBF는 인증서의 한 종류이며, 필터는 도달 가능 집합이나 예측적 백업 궤적으로도 만들 수 있다
알아야 할 사람
- 학습 기반 제어기를 배치하는 제어 엔지니어
- 모바일 로봇과 드론의 안전 엔지니어
- 안전한 탐색을 연구하는 강화 학습 연구자
- 원격 조작 및 공유 자율성 개발자
관련 기술
- 이차 계획법(Quadratic Programming)
- OSQP
- 해밀턴-야코비 도달 가능성 분석(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