ADAS 및 AV 개발을 위한 ASAM OpenSCENARIO V2.0 및 그 중요성에 대한 입문서

2021-09-27
1 min read

OpenSCENARIO V2.0은 2021년 11월에 출시될 예정입니다. 자동화 및 측정 시스템 표준화 협회(ASAM)는 첨단 운전자 보조 시스템(ADAS) 및 자율주행차(AV) 개발 시 동적 콘텐츠가 있는 시나리오를 설명하기 위한 표준으로서 OpenSCENARIO V2.0을 개발하고 있습니다. 본 블로그 게시물은 추상적, 논리적, 구체적 시나리오의 차이점과 OpenSCENARIO V2.0이 무엇인지, AV 및 ADAS 개발에 왜 중요한지를 설명합니다. 또한 시뮬레이션 운영, 테스트 및 검정 팀이 Applied Intuition의 검증 및 검정(V&V) 도구인 Validation Toolset*를 통해 OpenSCENARIO V2.0 추상적 시나리오를 편집하고 논리적 시나리오를 생성하는 방법에 대해 설명합니다.

서론

추상적, 논리적, 구체적 시나리오

시나리오는 ADAS, AV 테스트 및 개발 시뮬레이션의 동적 콘텐츠입니다. 시나리오는 자율 주행 시스템의 안전성을 테스트, 검정 및 인증하는 데 필수적인 역할을 합니다. 시뮬레이션 운영, 테스트 및 검정 팀이 기능 요구 사항을 검증하기 위해서는 이를 엄청나게 큰 매개변수 공간에 대해 테스트해야 합니다. 이 매개변수 공간을 자율 시스템의 운영 설계 영역(ODD)으로 제한함으로써 팀은 시스템의 전체 테스트 공간을 정의할 수 있습니다. PEGASUS 방법은 전체 테스트 공간에서 자율 시스템을 충분히 테스트하기 위해 다양한 수준의 추상적 시나리오를 사용하는 것을 권장합니다.

예를 들어, 기능 요구 사항은 자율 차량(자차)이 맞은편에서 차량이 다가오는 상황에서도 비보호 좌회전을 성공적으로 수행해야 한다고 명시할 수 있습니다. 이 요구 사항을 검증하는 작업은 여러 개의 추상적 시나리오를 만드는 것으로 시작합니다. 추상적 시나리오는 사람과 기계가 읽을 수 있는 고수준 시나리오 설명입니다. 예를 들어, 비보호 좌회전에 대한 추상적 시나리오는 자차가 1-3차선의 직선 교차로에 있고 가장 왼쪽 차선에 있으며 속도가 주변 차량보다 빠르거나 느릴 수 있다고 명시할 수 있습니다(그림 1).

그림 1: PEGASUS 방법은 기능 요구 사항 검증을 위해 다양한 수준의 추상적 시나리오를 사용하는 것을 권장합니다.

다음으로, 시뮬레이션 운영, 테스트 및 검정 팀은 매개변수 분포를 설명하는 논리적 시나리오를 사용하여 관련 시나리오 매개변수의 전체 테스트 공간을 정의합니다. 예를 들어, 논리적 시나리오는 비보호 좌회전이 가능한 차량의 속도가 10-20m/s 사이이고 교통 속도도 10-20m/s 사이이며 자차와 다가오는 차량 사이의 간격이 20-40m 사이라고 명시할 수 있습니다.

마지막으로, 시뮬레이션 운영, 테스트 및 검정 팀은 각 논리적 시나리오에서 구체적 시나리오를 이끌어내야 합니다. 구체적 시나리오는 팀이 테스트 기준 통과 여부를 결정하기 위해 시뮬레이션(그림 2)할 수 있는 정의된 매개변수 값 내에서 실행 가능한 테스트입니다. 예를 들어 구체적 시나리오는 자차와 교통 속도가 모두 13m/s이고 자차와 다가오는 차량 사이의 간격이 30m라고 명시할 수 있습니다. 효과적으로 요구 사항을 검증하기 위해서는 구체적 시나리오가 확정적이어야 합니다. 즉, 시뮬레이션이 실행될 때마다 동일한 결과를 생성해야 합니다.

그림 2: 비보호 좌회전을 수행하는 자차의 시뮬레이션

추상적 시나리오와 논리적 시나리오 생성의 장단점

위에 언급된 접근 방식에는 장단점이 있습니다. 추상적 시나리오를 만들고 이러한 추상적 시나리오에서 논리적, 구체적 시나리오를 이끌어내는 것은 빠르고 확장 가능하지만 보통 노이즈가 많습니다. 다른 접근 방식은 추상적 시나리오 생성을 건너뛰는 것입니다. 이 경우 시뮬레이션 운영, 테스트 또는 검정 팀은 논리적 시나리오를 직접 생성한 뒤 구체적 시나리오를 이끌어냅니다. 이 접근 방식은 더 정밀하고 세부적이지만 쉽게 확장되지 않습니다.

추상적 시나리오 생성의 장점: 

  • 속도: 전체 테스트 공간에서 요구 사항을 테스트하기 위해서는 시간과 리소스가 많이 소요됩니다. 고수준의 추상적 시나리오를 생성하고 검증 및 검정(V&V) 도구가 이러한 추상적 시나리오에서 논리적, 구체적 시나리오를 자동으로 생성하도록 함으로써 ADAS 및 AV 기업은 요구 사항 검증 프로세스의 속도를 높일 수 있습니다.
  • 확장성: 고수준 추상적 시나리오 생성을 통해 시뮬레이션 운영, 테스트 및 검정 팀은 특정 요구 사항에 대한 전체 매개 변수 공간을 쉽게 커버할 수 있으며 동일 프로세스를 기타 여러 요구 사항에 대해 반복할 수 있습니다.

직접 논리적 시나리오를 생성할 때의 장점:

  • 정밀도: 논리적 시나리오를 생성하는 경우 시뮬레이션 운영, 테스트 및 검정 팀은 정확한 매개변수 공간을 정의하고 세밀하게 조정할 수 있습니다. 이러한 고수준의 정밀도를 통해 확정적인 시나리오를 생성할 수 있습니다. 또한 팀이 실제 세계에서 테스트하거나 재현하려는 특정 시나리오의 변형을 생성할 수 있습니다.
  • 통제: 논리적 시나리오를 직접 생성함으로써 팀은 불법적이거나 비현실적인 시나리오, 즉 현실 세계에서 발생하는 것이 불가능하거나 있을 법하지 않은 시나리오를 배제하는 것에 대한 통제력이 강해지게 됩니다. 또한 흥미롭지 않은 시나리오 조합을 포함시키지 않을 수도 있습니다(그림 3). 추상적 시나리오에서 생성된 전체 매개변수 공간을 실행하는 것은 계산적으로 비효율적이기 때문에 이러한 접근 방식은 시나리오에 노이즈가 많고 흥미롭지 않은 조합인 경우에 특히 유용합니다.
그림 3: 논리적 시나리오 생성을 통해 팀은 불법적, 비현실적, 흥미롭지 않은 시나리오 조합을 제외하고 운영 설계 도메인(ODD)과 관련된 테스트 조합만 테스트할 수 있습니다.

성공적인 ADAS 및 AV 기업은 경우에 따라 이러한 두 가지 접근 방식을 각각 사용합니다. 추상적, 논리적 시나리오 생성 비교에 대한 Applied Intuition의 의견은 본 블로그 게시물의 뒷부분에서 살펴보겠습니다("Applied Intuition의 제안" 참조).

올바른 접근 방식을 찾았더라도 시나리오 생성 및 테스트의 가장 어려운 부분 중 하나가 남아 있습니다. 많은 ADAS 및 AV 기업은 요구 사항 검증 워크플로의 여러 부분에서 각기 다른 도구를 사용합니다. 예를 들어, 시스템 엔지니어 팀이 하나의 도구를 사용하여 기능 요구 사항을 정의하고, 시나리오 생성 팀은 별도의 도구를 사용하여 추상적 또는 논리적 시나리오를 작성하고, 테스트 엔지니어는 또 다른 도구를 사용하여 구체적 시나리오를 시뮬레이션하게 될 수 있습니다. 서로 다른 도구 간에 시나리오를 전송하고 번역하는 것은 매우 힘들고 시간이 많이 소요될 수 있습니다. 이러한 문제는 ASAM의 OpenSCENARIO 표준을 통해 완화할 수 있습니다.

ASAM OpenSCENARIO V1.0의 한계

OpenSCENARIO V1.0은 2020년 3월에 출시되었습니다. 이는 시뮬레이션 운영, 테스트 및 검정 팀이 XML 형식을 사용하는 표준화된 방식으로 동적 콘텐츠를 통해 구체적 시나리오를 설명할 수 있도록 하는 표준입니다. OpenSCENARIO V1.0은 공급업체에 상관없이 도구 간에 구체적 시나리오를 쉽게 전송할 수 있기 때문에 이러한 팀에 유용했습니다.

그러나 OpenSCENARIO V1.0은 추상적, 논리적 시나리오를 제외한 구체적 시나리오만을 설명할 수 있었기 때문에 저수준의 자율성 사용 사례에서만 그 장점이 발휘될 수 있었습니다. 시뮬레이션 운영, 테스트 및 검정 팀은 OpenSCENARIO V1.0을 사용하여 처음부터 일회성의 구체적 시나리오를 생성하고 이를 실행하여 기능 요구 사항의 통과 여부를 테스트할 수 있습니다. 그러나 테스트 범위를 확장하고 자율 주행 시스템에 대한 안전 사례를 구축하기 위해서는 전체 테스트 공간을 커버하는 가능한 모든 구체적 시나리오를 수동으로 만들어야 합니다. 이는 시간이 많이 걸리고 오류가 발생하기 쉬우며 실제로 불가능한 작업입니다. 결국 실행 가능한 솔루션은 프로그래밍 방식으로 추상적 시나리오에서 구체적 시나리오를 이끌어내거나 논리적 수준에서 시나리오를 정의하는 것으로 한정됩니다. OpenSCENARIO V1.0은 추상적, 논리적 시나리오에 대한 표준을 제공하지 않기 때문에 기업은 위에서 설명한 것과 같은 도구 간 전송 문제에 직면하게 됩니다.

OpenSCENARIO V1.0의 또 다른 단점은 사람의 가독성에 최적화되지 않은 XML 형식을 따른다는 것입니다(그림 4a). 결과적으로 많은 시뮬레이션 소프트웨어 공급업체는 읽기 쉬운 자체 제작 시나리오 언어를 개발하게 됩니다(그림 4b). 

그림 4a: OpenSCENARIO V1.0(XML 형식)을 사용한 자차 차량의 초기 속도 설명
그림 4b: Applied Intuition의 Object Sim 시나리오 언어(YAML 형식)를 사용한 그림 4a와 동일한 설명

ASAM OpenSCENARIO V2.0: 고수준의 추상 및 도구 간 호환성

OpenSCENARIO V2.0은 2021년 11월에 출시될 예정입니다. OpenSCENARIO V1.X와 병행되며 향후 두 버전을 통합할 계획입니다. OpenSCENARIO V2.0은 OpenSCENARIO V1.0의 도구 간 호환성 및 가독성 한계를 완화하는 것을 목표로 합니다. 

OpenSCENARIO V2.0은 도구 간 호환성을 개선하기 위해 추상적, 논리적, 구체적 시나리오를 지원합니다. 이를 통해 서로 다른 추상 수준의 시나리오를 도구 간에 더 쉽게 전송할 수 있게 됩니다. 또한 OpenSCENARIO V2.0에서 광범위한 AV 개발 사용 사례를 다룰 수 있게 됩니다. 시뮬레이션 운영, 테스트 및 검정 팀은 추상적 시나리오를 정의하고 이러한 추상적 시나리오에서 논리적, 구체적 시나리오를 이끌어내어 기능 요구 사항을 검증할 수 있습니다. 모든 추상 수준에서 동일한 표준화 언어를 사용하여 도구 간에 쉽게 전송할 수 있게 됩니다.

OpenSCENARIO V2.0은 시나리오를 더 쉽게 읽을 수 있도록 도메인 특화 언어(DSL)를 제공합니다. DSL은 표현이 제한적이며 특정 도메인에 초점을 맞춘 프로그래밍 언어입니다. 따라서 OpenSCENARIO V2.0은 이전 버전의 XML 형식과는 달리 시나리오 설명을 위해 특별히 설계되고 최적화된 언어를 사용하게 됩니다.

Applied Intuition의 제안

OpenSCENARIO V2.0이 출시되면 시뮬레이션 운영, 테스트 및 검정 팀은 Applied Intuition의 엔드 투 엔드 V&V 도구인 Validation Toolset를 통해 OpenSCENARIO V2.0 추상적 시나리오를 생성, 보기 및 편집할 수 있게 됩니다. 이는 OpenSCENARIO V2.0 추상적 시나리오를 생성할 계획이 있거나 도구 간에 추상적 시나리오를 전송하는 방법을 찾고 있는 시뮬레이션 운영, 테스트 및 검정 팀을 지원하게 될 것입니다. OpenSCENARIO V2.0을 지원함으로써 Validation Toolset는 OpenSCENARIO V2.0 표준을 지원하는 시뮬레이터와 같은 업계의 기타 도구와 호환할 수 있게 됩니다.

OpenSCENARIO V2.0 추상적 시나리오를 지원하는 것과 동시에 Validation Toolset는 시뮬레이션 운영, 테스트 및 검정 팀이 Applied Intuition의 Object Sim* 시나리오 언어를 사용하여 자동 생성된 논리적, 구체적 시나리오를 편집할 수 있도록 지원합니다. 또한 사전에 추상적 시나리오를 생성하지 않고 처음부터 논리적, 구체적 시나리오를 생성하는 기능을 계속 지원합니다.

다음은 Validation Toolset에서 OpenSCENARIO V2.0 추상적 시나리오를 생성하기 위한 워크플로입니다(그림 5).

그림 5: OpenSCENARIO V2.0 추상적 시나리오를 위한 Validation Toolse UI
  • 시스템 엔지니어는 Validation Toolset에서 기능 요구 사항을 정의할 수 있습니다.
  • 시나리오 작성자는 기능 요구 사항을 통해 OpenSCENARIO V2.0 추상적 시나리오를 생성할 수 있습니다.
  • Validation Toolset는 이러한 추상적 시나리오에서 논리적, 구체적 시나리오를 자동으로 생성합니다. Validation Toolset는 논리적, 구체적 시나리오를 위해 Object Sim 시나리오 언어를 계속 지원합니다.
  • 테스트 엔지니어는 Object Sim 시나리오 언어를 사용하여 자동 생성된 구체적 시나리오를 쉽게 편집할 수 있습니다.
  • Validation Toolset는 엔드 투 엔드 추적성을 위해 자동 생성된 구체적 시나리오를 기능 요구 사항에 연결합니다.
  • Applied Intuition의 검증 팩은 일반적이거나 규정 요구 사항과 관련된 다양한 시나리오를 쉽게 커버하고 특정 ODD에서 자율 시스템을 검정하는 프로세스를 보완합니다.

Applied Intuition의 OpenSCENARIO V2.0 지원 계획에 대해 자세히 알아보시려면 엔지니어링 팀으로 문의하십시오.

*참고: 과거 Validation Toolset은 Basis, Object Sim은 Simian으로 명명 되었습니다.