機器人策略執行時的安全屏障會在致動器接收命令前,根據顯式狀態和動作約束進行檢查。安全屏障可以放行該動作,用附近的可接受命令替代,或在截止時間前無法安全修正時進入經過測試的備援流程。
安全防護機制處理的問題與策略不確定性不同。不確定性模組估計模型可能不知道哪些情況,而安全防護機制則在其狀態估計與動力學假設下強制執行操作約束。僅憑信心分數無法定義安全集合。
本指南應搭配 策略迴避指南 與 物理 AI 安全層指南 使用。軟體安全防護機制用來補充,而不是取代獨立保護功能與系統層級風險評估。
定義一個可執行約束集
將危害轉換為執行期可取得的量:關節與致動器限制、速度與力上限、最小距離、工作空間邊界、穩定裕度、載荷狀態、禁止接觸規則及人員區域規則。每項約束都需要明定單位、座標系、更新率與保守容差。
在控制器能從觀測狀態加以評估前,危害清單還不是可執行約束。標記依賴不可用或過時訊號的約束,並在這些情況下轉入備援流程。

將安全防護機制置於命令路徑中
實際命令路徑應依序包含策略輸出、單位與座標系驗證、狀態時效檢查、約束評估、獲准或修正後的命令、致動器介面及介入紀錄。測試並確認繞過、格式錯誤的輸入或程序故障都無法送出未經檢查的命令。
對於人員或可能造成嚴重後果的機械,應保留獨立停止或保護路徑,確保學習式策略或安全防護程序停滯時仍能動作。
| 安全防護方法 | 判定依據 | 優點 | 主要限制 |
|---|---|---|---|
| 硬性規則 | 當下狀態值與閾值 | 透明且快速 | 可能在邊界附近反覆切換 |
| 約束投影 | 最接近的可接受動作 | 修正幅度小 | 可能錯過未來風險 |
| 控制障礙函式 | 安全集合條件 | 連續約束 | 模型與可行性 |
| 預測濾波器 | 未來軌跡 | 納入停止路徑 | 計算與模型誤差 |
| 備援狀態機 | 復原序列 | 操作邏輯清楚 | 需依狀態個別設計 |
驗證狀態資料時效與不確定性
若狀態估計過時、配準錯誤或對自身精度過度樂觀,數學上安全的動作對目前機器人仍可能不安全。應將時間戳記、協方差或保守誤差界限,以及感測器健康狀態旗標納入約束計算。
隨著不確定性或延遲增加,應加大所需安全距離,並降低允許的速度或力上限。狀態資料時效超過限制時,應停止或降級運行,而不是把最後已知狀態當成目前狀態來評估。
在界限明確的地方使用硬性規則
硬性界限適合可直接檢查的絕對關節、電壓、速度或工作空間限制。應在邊界附近加入遲滯與變化率限制,避免通過與拒絕之間快速振盪。
測試等號邊界、數值容差、缺失值及同時發生的違規。拒絕後的反應必須符合物理情境;把每個無效命令都改成零值,可能使載荷掉落或讓腿式機器人失穩。
僅將動作投影到有充分依據的集合內
約束投影會在策略提出的命令附近搜尋可接受命令。應以任務相關單位定義距離度量並保留優先順序,因為向量空間中的小幅變化,可能造成末端執行器或接觸狀態的大幅變化。
記錄原始命令、生效中的約束、修正後的命令及求解器狀態。若找不到可行修正,應轉入經過測試的備援流程,而不是送出求解器最後一次迭代的結果。

在模型限制下套用控制障礙函式
控制障礙函式表示安全集合,並約束控制輸入,使系統在既定動力學假設下維持於該集合內。二次規劃可在滿足屏障條件的同時,選擇接近策略命令的動作。
Safe Reinforcement Learning via Shielding 和 Control Barrier Function Based Quadratic Programs for Safety Critical Systems 描述了各自評估環境中的研究方法。真實機器人仍需驗證可行性、離散化、致動器飽和、模型誤差及求解器執行時間。
使用預測濾波器評估停止距離
只檢查目前狀態,可能會核准一個沒有留下安全未來煞停軌跡的動作。預測濾波器會模擬預測時域內的候選運動,並驗證其能否持續滿足約束或到達終端安全集合。
預測安全濾波論文提出了基於模型的表述。應依速度、延遲及煞車物理選擇預測時域與模型保守度,再針對模型不匹配測試穩健性。
將備援設計成可恢復的序列
備援不是一條通用的停止命令。依接觸狀態、載荷、平衡及地形而定,機器人可能需要受控制動、保持、收回、放置物件、採取安全姿態、隔離動力或交由人員接管。
為每個狀態指定進入條件、完成條件、逾時及升級處置。反覆違規不應造成無限重試迴圈;系統應進入需要明確恢復決策的穩定狀態。
保持保護獨立於策略學習之外
安全防護介入可成為有用的訓練範例,但學習過程不得在未察覺的情況下削弱保護邊界。約束邏輯應獨立版本化;任何閾值或動力學模型變更,也都必須接受同等的獨立安全審查。
持續依賴修正的策略可能與任務不相配。只有在保留原始動作為何遭阻擋,以及之後發生何種結果的紀錄後,才能用介入情境進行訓練。
測量最壞情況執行時間與逾時行為
控制迴路必須保證在截止時間前回應,而不能只看良好的平均延遲。應在 CPU、記憶體及網路壓力下,以高百分位數測量感測器擷取、狀態估計、碰撞查詢、求解器、命令傳輸及排程延遲。
針對逾時、無可行解、數值錯誤及過時輸入,定義故障安全行為。透過故障注入演練這些路徑,並驗證獨立停止功能仍可使用。
評估介入成效,但不要誇大成功率
報告約束違規、最小裕度、介入率、修正幅度、錯誤介入、遺漏危害、備援完成率、任務成功率及週期時間。阻止一次不安全動作是保護成效的證據,不等於完成一次任務。
高介入率可能表示危害攔截良好,也可能表示規則過度保守、狀態估計不佳或策略品質不良。使用 機器人 VLA 評估指南 區分自主策略品質、安全防護貢獻及受防護輔助後的結果。
| 驗證層 | 度量 | 故障注入 | 通過證據 |
|---|---|---|---|
| 約束 | 最小裕度 | 邊界誤差與模型誤差 | 未發生違規 |
| 時序 | 最壞情況延遲 | 負載和網路延遲 | 符合截止時間,否則進入備援 |
| 求解器 | 狀態與可行性 | 逾時與 NaN | 安全升級處置 |
| 介入 | 比率與修正量 | 接近邊界的命令 | 符合預期的回應 |
| 恢復 | 備援完成 | 載荷與接觸情境 | 穩定終態 |
發布安全防護與策略相容性合約
封裝約束版本、座標系、單位、狀態有效性限制、動力學假設、求解器設定、截止時間、備援狀態機、獨立停止介面、策略與機器人識別碼、校正資料及稽核結構。在啟用運動前,重播完全相同的套件。
以以下檢查完成發布審查。
評估“機器人策略執行時安全屏障”時,還應儲存模型版本、機器人設定、校正檔案、測試日期和全部試驗記錄。
- 將危害轉換為執行期可檢查的約束。
- 保守地拒絕過時或不確定的狀態。
- 測試修正、無可行解及逾時路徑。
- 驗證可恢復的備援及獨立停止功能。
- 將介入資料與任務成功分開報告。
常見問題
安全防護機制能讓學習式策略變得安全嗎?
不能。它只在既定假設下限制指定動作;既無法涵蓋未知危害,也不能認證整個系統。
策略不確定性與安全防護機制相同嗎?
不同。不確定性用來估計模型有多不確定,安全防護機制則強制執行明確的操作約束。
每個被拒絕的指令都應該變成零速度嗎?
不應如此。安全備援取決於載荷、接觸、平衡、地形及致動器行為。
安全防護機制應在何處執行?
應位於已驗證的命令路徑中,並足夠靠近致動器,才能在截止時間內強制執行;必要時還應另設獨立保護路徑。
高介入率能證明安全防護機制有效嗎?
不能單憑高介入率證明;它也可能反映規則過度保守、狀態過時、誤報,或策略與約束不相配。
可執行約束與備援邊界
執行期安全防護是一個可執行的約束與備援層。其安全主張受感測能力、動力學假設、時序、約束涵蓋範圍及獨立保護設計所限。