5.8 장애물 회피(Obstacle Avoidance)
1. 정의
장애물 회피(Obstacle Avoidance)는 동작 계획에서 정적 및 동적 장애물과의 충돌을 방지하면서 안전한 궤적을 생성하는 과업이다. 장애물 회피는 자율주행 시스템의 안전성을 보장하는 가장 기본적인 기능이며, 인지 모듈이 감지한 객체 정보와 예측 모듈이 추정한 미래 궤적을 기반으로 수행된다.
2. 정적 장애물 회피
정적 장애물은 시간에 따라 위치가 변하지 않는 객체로, 주차된 차량, 도로 위 낙하물, 공사 바리케이드, 연석, 가드레일 등이 해당한다. 정적 장애물 회피는 공간적(Spatial) 충돌 검사만으로 수행할 수 있다.
2.1 충돌 검사 방법
- 원형 근사(Circle Approximation): 차량과 장애물을 원으로 근사하고, 두 원 사이의 거리가 반지름 합보다 큰지를 검사한다. 계산이 빠르나 정확도가 낮다.
- 직사각형 근사(Rectangle Approximation): 차량과 장애물을 방향이 있는 경계 상자(Oriented Bounding Box, OBB)로 표현하고, 분리 축 정리(Separating Axis Theorem, SAT)를 이용하여 겹침을 검사한다.
- 다각형 충돌 검사: 차량과 장애물의 형상을 다각형으로 표현하여 정밀한 충돌 검사를 수행한다. GJK(Gilbert-Johnson-Keerthi) 알고리즘이 대표적이다.
3. 동적 장애물 회피
동적 장애물은 시간에 따라 위치와 속도가 변화하는 객체로, 다른 차량, 보행자, 자전거 등이 해당한다. 동적 장애물 회피는 시공간(Spatiotemporal) 충돌 검사를 필요로 하며, 예측 모듈이 추정한 미래 궤적을 기반으로 수행된다.
3.1 시공간 충돌 검사
궤적 \boldsymbol{\tau}의 각 시점 t에서 차량의 예상 위치와 동적 장애물의 예측 위치 사이의 거리를 검사한다. 예측 궤적의 불확실성을 고려하여 안전 마진(Safety Margin)을 추가한다.
d(\boldsymbol{\tau}(t), \hat{\mathbf{o}}_k(t)) > d_{\text{safe}} + \epsilon_k(t) \quad \forall t, \forall k
여기서 \hat{\mathbf{o}}_k(t)는 k번째 장애물의 시점 t에서의 예측 위치, d_{\text{safe}}는 기본 안전 거리, \epsilon_k(t)는 예측 불확실성에 기반한 추가 안전 마진이다.
4. 회피 전략
4.1 속도 조절 (Speed Adjustment)
전방 장애물에 대해 감속 또는 정지하여 충돌을 회피하는 전략이다. 가장 보수적이고 안전한 회피 방법이며, 종방향 제어만으로 구현 가능하다.
4.2 경로 편향 (Path Deviation)
횡방향으로 경로를 편향시켜 장애물을 회피하는 전략이다. 인접 차선으로의 차선 변경이나 현재 차선 내에서의 횡방향 이동이 해당한다.
4.3 비상 기동 (Emergency Maneuver)
일반적인 회피 전략으로 충돌을 방지할 수 없는 긴급 상황에서의 비상 기동이다. 최대 감속 제동(Full Braking), 긴급 조향(Emergency Steering), 또는 이들의 조합이 해당한다. 비상 기동의 기준은 차량의 물리적 한계(최대 감속도, 최대 횡가속도)에 의해 결정된다.
5. RSS (Responsibility-Sensitive Safety)
RSS(Responsibility-Sensitive Safety)는 Mobileye(Intel)가 제안한 안전 프레임워크로, 자율주행 차량이 사고에 대한 책임이 없도록 보장하는 수학적 안전 규칙을 정의한다(Shalev-Shwartz et al., 2017). RSS는 종방향 및 횡방향 안전 거리를 수학적으로 정의하고, 이 거리를 항시 유지하는 것을 안전 제약으로 설정한다.
종방향 안전 거리:
d_{\text{safe,lon}} = v_r \cdot \rho + \frac{v_r^2}{2a_{\text{min,brake}}} - \frac{v_f^2}{2a_{\text{max,brake}}} + \frac{1}{2}a_{\text{max,accel}} \cdot \rho^2
여기서 v_r은 후방 차량의 속도, v_f는 전방 차량의 속도, \rho는 반응 시간, a_{\text{min,brake}}와 a_{\text{max,brake}}는 최소/최대 제동 감속도, a_{\text{max,accel}}은 최대 가속도이다.
6. 참고 문헌
- Shalev-Shwartz, S., Shammah, S., & Shashua, A. (2017). On a formal model of safe and scalable self-driving cars. arXiv preprint arXiv:1708.06374.
v1.0