재시뮬레이션을 사용하여 자율모드해제 이벤트에 대한 AV 스택 검증하기

2021-10-18

초기 테스트 시, 첨단 운전자 보조 시스템(ADAS) 및 자율주행차(AV) 엔지니어링 팀은 1차적으로 합성 시뮬레이션을 사용하여 자율 주행 시스템을 테스트할 수 있습니다. ADAS 및 AV 시스템이 성숙해지면서 운영 설계 영역(ODD)에서 발생할 수 있는 방대한 양의 이벤트를 차량(에고)이 안전하게 처리할 수 있는지 확인하기 위해 더 많은 온 로드(on-road) 테스트가 필요하게 됩니다.

온로드(on-road) 테스트 중 에고에는 자율모드해제(즉, 세이프티 드라이버가 자율주행 시스템을 해제하고 차량을 직접 제어하는 이벤트)가 발생할 수 있습니다. ADAS 및 AV 엔지니어는 일반적으로 개방루프 로그 재생 도구를 사용하여 자율모드해제 이벤트를 재생하고 세이프티 드라이버가 개입한 이유를 확인한 후, 온 로드(on-road) 테스트를 더 진행하기 전에 로컬라이제이션 또는 퍼셉션 스택의 문제를 수정합니다. 그러나 개방 루프 로그 재생 도구는 자율모드해제가 실제로 필요했었는지 또는 세이프티 드라이버가 개입하지 않았더라도 에고가 충돌을 피할 수 있었는지 결정할 수 없습니다. 또한 다양한 매개변수(예: 도로 위의 보행자 또는 다른 기상 조건으로 인한 가시성 저하)가 이벤트 결과에 어떤 영향을 미쳤는지 확인할 수도 없습니다.

본 블로그는 자율모드해제의 필요 여부를 구별하고 전체 AV 스택을 종합적으로 검증 및 확인하기 위해 개방루프 로그 재생과 재시뮬레이션이 각각 퍼셉션 및 로컬라이제이션 시스템(즉, '발생한 상황')과 모션 계획 및 제어 시스템(즉, '발생했을 상황')의 성능을 평가하는 방법에 대해 살펴봅니다.

개방루프 로그 재생: '발생한 상황' 탐색

현재 가장 일반적인 유형의 로그 재생은 개방루프입니다. 개방루프 로그 재생은 기록된 드라이브 데이터를 재생하여 문제를 찾고 발생한 상황을 분석하고 개선 사항을 평가하는 기능을 제공합니다.

예를 들어, 에고가 정체구간에 접근하고 있는 상황에서 세이프티 드라이버가 에고를 멈추고 충돌을 피하기 위해 개입하는 온 로드(on-road) 테스트를 가정해 보겠습니다(그림 1).

그림 1: 에고가 정체구간에 접근하고 있습니다. 세이프티 드라이버가 에고를 멈추고 충돌을 피하기 위해 개입합니다.

개방루프 로그 재생은 다음의 기능을 제공합니다.

  • 발생한 상황 분석: 세이프티 드라이버가 개입한 이유를 시각화하기 위해 주행 기록을 재생합니다. 이 예시의 경우, 에고가 정지된 차량에 빠른 속도로 접근하고 있기 때문에 운전자가 개입했음을 알 수 있습니다.
  • 로컬라이제이션 및 퍼셉션 성능 평가: 이벤트의 원본 센서 데이터를 재생하며 스택 출력과 수동으로 레이블된 실제 데이터를 비교하여 성능을 평가합니다.
  • 솔루션 탐색: 추가 온 로드(on-road)테스트를 수행하기 전에 로컬라이제이션 및 퍼셉션 시스템을 개선합니다. 업데이트된 스택 버전으로 이벤트를 다시 실행하여 로컬라이제이션 스택의 개선 사항을 테스트할 수 있습니다.

엔지니어는 개방 루프로그 재생을 통해 자율모드해제 이벤트를 재생하고 분석할 수 있지만 이러한 접근 방식은 로컬라이제이션 및 퍼셉션 스택 성능을 평가하는 것으로 제한됩니다. 개방루프 로그 재생은 다양한 스택 동작에 응답할 수 없기 때문에 세이프티 드라이버가 개입하지 않았을 경우 모션 계획 및 제어 시스템이 어떻게 작동했을지 평가할 수 없습니다.

재시뮬레이션: '발생했을 상황', '발생했어야 하는 상황' 및 '발생했을 수도 있는 상황' 탐색

폐쇄루프 로그 재생 또는 재시뮬레이션은 개방루프 로그 재생의 제약을 완화하는 로그 재생 접근 방식입니다. 개발 팀은 재시뮬레이션을 통해 기록된 실제 드라이브 장면을 재현하고 시뮬레이션을 사용하여 이를 변경할 수 있습니다.

재시뮬레이션은 다음의 기능을 제공합니다.

  • 분석 및 분류: 자율모드해제가 필요했는지 여부와 상황이 얼마나 심각했었는지를 결정하기 위해 운전자가 개입하지 않았다면 발생했을 상황을 확인합니다. 재시뮬레이션 도구는 스택 출력에 응답하는 폐쇄루프 재생을 통해 이를 확인합니다. 재시뮬레이션 결과에는 스택의 성능을 측정하고 이벤트가 실제 문제였는지 여부를 결정하기 위한 수치 메트릭 및 옵저버(즉, 합격/불합격 규칙)가 포함됩니다. 예시의 경우, 자율모드해제가 없었다면 에고가 충돌했을 것이기 때문에 자율모드해제가 실제로 필요했습니다(그림 2). 
그림 2: 재시뮬레이션을 통해 세이프티 드라이버 개입이 없는 경우 에고가 충돌을 일으켰을지 여부를 결정할 수 있습니다.
  • 문제의 근본 원인 수정: 기록된 이벤트에서 모션 계획 및 제어 스택을 실행하여 자율모드해제가 필요한 상황을 피하기 위해 발생했어야 하는 상황을 결정합니다. 재시뮬레이션 결과를 사용하여 문제의 근본 원인을 식별하고 솔루션을 개발합니다. 수정 사항이 적용되면 개선된 스택으로 재시뮬레이션을 다시 실행하여 문제가 해결되었는지 확인합니다.
  • 기록된 데이터 보강: 전체 스택의 성능을 평가하고 롱테일 이벤트의 적용 범위를 늘리기 위해 동일한 시나리오를 다양하게 변형하여 발생했을 수도 있는 상황을 확인합니다. 엔지니어는 액터(예: 도로 위의 보행자)를 추가 또는 제거하거나, 액터의 행동을 수정(예: 에고 또는 다른 차량의 속도 증가)하거나, 장면의 다른 매개변수를 변경(예: 비가 오도록 또는 시간대 변경)하거나, AV 소프트웨어 또는 하드웨어에 결함(예: 센서 재시작, 일시적인 하위 시스템 오프라인 또는 결함이 있는 센서 하드웨어)을 추가하거나, 센서 데이터에 노이즈를 추가(예: 노이즈가 있는 라이다(Lidar) 데이터)할 수 있습니다. 그림 3은 로깅된 액터의 동작을 편집할 수 있는 합성(synthetic) 액터로 교체하여 액터 동작을 수정하는 예시를 보여줍니다.
그림 3: 로깅된 액터(빈 직사각형)에서 동작을 추출하고 동작을 편집할 수 있는 합성(synthetic) 액터(단색 직사각형)로 교체합니다.

재시뮬레이션 아키텍처

재시뮬레이션 도구의 일반적인 아키텍처는 다음과 같습니다(그림 4). 

그림 4: 재시뮬레이션 아키텍처

우선, 원본 센서 데이터가 개방루프 로그 재생의 퍼셉션 스택에 들어가고 감지된 액터가 추출됩니다. 그다음으로 모션 계획 스택이 폐쇄루프에서 실행됩니다. 이를 성공적으로 수행하기 위해서는 에고 다이버전스(divergence)에 따라 인식 스택의 출력을 수정해야 합니다. 드라이브 로그에서 감지된 액터는 에고에 따라 다르게 보고될 수 있습니다. 따라서 개방 루프 레퍼런스 프레임에서 재시뮬레이션 레퍼런스 프레임으로 이동하기 위해서는 다양한 액터 위치를 시뮬레이션된 에고 포즈와 정렬되도록 조정해야 합니다(좌표 변환). 전체 프로세스에 걸쳐 메트릭 및 옵저버프레임워크는 에고의 성능(성공/실패) 평가를 계산하기 위해 신호를 수집합니다.

재시뮬레이션의 기술적 어려움

재시뮬레이션은 엔지니어가 수동으로 조사하고 수정해야 하는 값비싼 오류가 발생할 수 있는 기술적 어려움을 수반합니다.  

첫째로, 분류 및 엔지니어링 팀은 재시뮬레이션이 정확하며 재현 가능하다는 것을 신뢰할 수 있어야 합니다. 이는 로그 섹션에서 자율모드해제 없이 재시뮬레이션을 실행하고 에고 다이버전스(divergence)가 작은지 확인하여 검증할 수 있습니다.

둘째로, 스택이 차량 외 하드웨어에서 실행 중인 경우 재시뮬레이션이 늦어질 수 있습니다. 이는 머신의 성능이 현저히 낮은 클라우드에서 재시뮬레이션을 실행할 때 특히 문제가 됩니다. 스택이 뒤쳐지면 이벤트에 반응할 때 지연이 발생할 수 있습니다. 결과적으로 에고 성능이 부정확해지고 확정적이지 못하게 됩니다(즉, 재시뮬레이션이 실행될 때마다 달라집니다). 재시뮬레이션 도구는 이를 방지하여 결과를 의미 있게 만들고 다양한 머신에서 재현할 수 있도록 해야 합니다.

Applied Intuition의 제안

AV 스택의 온 로드(on-road) 성능을 종합적으로 평가하기 위해서는 개방루프 로그 재생과 폐쇄루프 재시뮬레이션이 모두 필요합니다. 엔지니어는 개방루프 로그 재생을 통해 자율모드해제 중에 발생한 상황을 탐색하고 로컬라이제이션 및 퍼셉션 스택 성능을 평가할 수 있습니다. 또한 재시뮬레이션을 통해 자율모드해제의 필요 여부를 구분하고 모션 계획 및 제어 스택의 근본 원인이 되는 문제를 수정할 수 있습니다. 개발 팀은 두 가지 접근 방식을 통해 전체 AV 스택을 검증 및 검정하고 안전한 자율 시스템을 더 빨리 출시할 수 있습니다.

Applied Intuition의 재시뮬레이션 도구 Log Sim*은 개방루프 및 폐쇄루프 로그 재생을 모두 지원합니다. Log Sim에 관심이 있으신 경우 제품 데모를 위해 엔지니어링 팀으로 문의해 주십시오.

*참고: 과거 Log Sim은 Logstream으로 명명 되었습니다.