자율차량시스템의 안전 검증 (다운로드 : 137회)

딥러닝 알고리즘을 포함하는 자율차량시스템에는 민간 상용 항공기를 제어하는 것과 같은, 안전중요 소프트웨어를 검증하기 위한 자세한 요구 사항과 아키텍처가 부족하다. 자율형 차량은 시뮬레이션 플랫폼을 사용하여 물리, 전자, 임베디드 시스템 및 소프트웨어를 통합하여 정확하게 시뮬레이션하여 검증하는 것과 관련 법제 및 표준의 제공이 필요하다.

대규모 자율차량시스템 보급의 문제점

완전 자율차량시스템의 대규모 출시 전에 극복해야 할 가장 큰 장애물은 운전자의 개입 없이, 가능한 모든 시나리오에 대해 안전하게 대처할 수 있는 소프트웨어를 개발하는 것이다. 예를 들어, 자율시스템의 센서가 수신하는 정보에 영향을 줄 수 있는 기상 조건, 조명, 안개, 시야 제한 등으로 인한 엄청난 수의 시나리오와 함께 도로나 항로에서 갑자기 나타날 수 있는 보행자, 동물, 차량 또는 기타 장애물을 식별해야 하는 문제를 고려해야 한다. 오늘날의 자율시스템은 일반적으로 발생할 수 있는 모든 상황에 대해 구체적으로 프로그래밍하지 않고, 패턴을 인식하도록 훈련할 수 있는 기계학습과 딥러닝 소프트웨어를 통해 이러한 문제를 해결한다. 딥러닝을 기반으로 하는 자율주행차량 시스템은 제조업체가 현재 요구하는 높은 안전 표준을 충족함을 입증해야 출시될 수 있는데, 이런 소프트웨어는 어떻게 검증(Validate)되어야 할까?

우선 전통적인 안전 검증 방법을 사용해서는 딥러닝을 사용하는 자율시스템을 검증할 수 없다. 전통적인 소프트웨어는 사용자의 요구사항이 있고 그에 맞는 목표가 있는데 반해, 딥러닝을 이용한 자율시스템은 구체적인 요구사항이 없고, 그에 따른 테스트 시나리오도 없기 때문이다.

전통적인 안전 소프트웨어의 검증방법을 구체적으로 설명하면 다음과 같다. ADAS(Advanced Driver Assistance Systems) 또는 FCS(Flight-Control Systems)와 같이 지금까지 사용된 안전 중요 소프트웨어는 ISO 26262, ARP 4754, DO-178과 같은 안전 표준에 정의된 모델을 사용하여 검증한다. [그림 1]에서 설명된 것처럼, 이러한 접근방식을 통해 엔지니어는 시스템의 세부 요구사항을 명세하고 소프트웨어 아키텍처를 정의하며, 하위 시스템을 만들고 이러한 각각의 요구사항을 지켜 나간다.

[그림 1] ISO 26262 (자동차), ARP 4754, DO-178 (항공)에 정의된 수명주기 모델 그림 1 ISO 26262 (자동차), ARP 4754, DO-178 (항공)에 정의된 수명주기 모델

다음 고려사항은 물리적인 테스트가 자율시스템의 안전을 고려할 수 있는가이다. 도로 또는 비행 테스트와 같은 물리적인 테스트는 제품 개발의 필수 부분이지만 자율시스템의 안전을 보증할 수 없다. 물리적 테스트는 자율시스템 운행이 문제를 일으킬 수 있는 모든 상황을 포함하지 않고, 주로 일상적인 상황으로 구성되기 때문이다. 자율시스템 산업에는 실제 자율차량 소프트웨어에 의해 가상차량이 현실적 가상세계에서 구동되는 CLS(Closed-Loop Simulation)1가 필요하다. 자율주행의 모든 세부사항을 시뮬레이션한다는 것은 다양한 요소를 정확하게 시뮬레이션해야 하는 엄청난 과제이다. 보행자 및 다른 차량과 같은 장애물, 도로·하늘 등의 상태(예, 비에 젖어 있는 상태), 차량 자체가 포함하는 기계적 특성, 상태, 위치 및 동작 등이 포함되어야 한다.

자율주행시스템 관련 규제 적용

그럼 현 자율주행시스템 관련 규제가 자율차량시스템의 안전 확보에 충분할까? [그림 2]는 자율주행 자동차의 규제와 관련된 상황을 보여주고 있다.

[그림 2] 자동차의 규제 상황 그림 2 자동차의 규제 상황

ISO 26262 자동차 안전 표준은 전기/전자 제어시스템으로 인한 사고를 예방하기 위한 기본 안전 표준이다. SOTIF(Safety Of The Intended Functionality) 표준(PAS 21448)은 단순한 전기/전자 시스템을 넘어, 딥러닝과 신경망을 기반으로 한 센서와 인식 알고리즘 간의 관계의 성능상의 한계로 인한 에러 유형을 고려하여 작성되고 있다. 자율형 시스템 간의 문제, 완전히 자율적이지 않은 시스템의 경우 시스템과 작업자 간의 불일치로 인한 오류 등도 고려한다. 위에서 언급한 것처럼 기계학습 알고리즘은 기존 안전 표준에 따라 만들고 검증하기 어렵다. [그림 3]에서 알 수 있듯이 자율주행차 사고는 한가지 원인으로 추적할 수 없는 경우가 많고, 환경과 시스템 간의 부조화로 인해 발생한다.

[그림 3] 낮은 안개효과를 적용 후 보행자 감지 실패 그림 3 낮은 안개효과를 적용 후 보행자 감지 실패

SOTIF는 낮은 수준의 자율성인 레벨 1, 2에 적용되며, ARP 4754, ARP 4761, DO-254 및 DO178 등의 기능 안전프로세스에 SOTIF의 위험분석 결과를 반영함으로써 기존 안전 표준을 보완할 수 있다.

[그림 4] 기존 V모델에 SOTIF 적용 그림 4 기존 V모델에 SOTIF 적용

※ 자료 : Riccardo Mariani(2017), Can we trust Autonomous Systems?

ISO 26262 표준은 일반 자동차를 위한 표준이며, SOTIF는 ISO 26262의 자율시스템의 대한 약점을 보완한 표준이긴 하나, 완전 자율시스템을 위한 표준이 아니라 낮은 수준인 레벨 1, 2에 적용되는 표준으로, 아직 표준이나 규제로 완전 자율시스템의 안전을 보장할 수는 없다.

통합 시뮬레이션 플랫폼

안전한 자율시스템을 확보하기 위해서는 [그림 5]에서 보여주듯이 가상세계 모델 및 운영 시나리오, 물리적 기반의 정확한 센서 모델, 임베디드 소프트웨어 개발도구, 차량 동역학(비행기의 경우, 비행 동역학) 및 기능 안전, 그리고 사이버 보안 분석을 포함하는 통합된 시뮬레이션 환경이 필요하다.

[그림 5] 시뮬레이션 통합 플랫폼 그림 5 시뮬레이션 통합 플랫폼

※ 자료 : ANSYS

[그림 6]은 OLS(Open Loop Simulation)2와 CLS(Closed-Loop Simulation)를 설명한다. OLS는 센서의 CLS를 준비하는 데 사용된다. OLS가 완료되면 CLS를 사용하여 환경(비행 역학), 센서(레이더, 카메라, Lidar 등) 및 임베디드 소프트웨어에서 차량의 물리 기반 시뮬레이션을 실행한다. CLS를 통해 SIL(Software-In-the-Loop) 시뮬레이션과 HIL(Hardware-In-the-Loop) 테스트를 통한 가상 테스트가 가능하다.

[그림 6] 자율 차량 시뮬레이션 플랫폼 그림 6 자율 차량 시뮬레이션 플랫폼

※ 자료 : ANSYS

자율시스템 시뮬레이터는 OLS를 통해 자율주행 차량과 환경, 장애물과의 모든 상호작용을 고려하고 CLS를 통해 안전 규정 및 고객 기대치를 만족하도록 차량을 설계하는 방법에 대한 지침을 제공한다.

<표 1> 시뮬레이션 도구 현황
제조사 도구명 내용
앤시스 SCADE 통합 시뮬레이션 도구
멘토·지멘스 테센트 커넥트 설계 자동화
다쏘 3D EXPERIENCE 플랫폼 모델링 및 시뮬레이션, 데이터 수집 분석, 제조 기술 등 다양한 디지털 기술을 통합
Mathworks Simulink AUTOSAR 기능과 워크플로우 자동화를위한 API를 제공

※ 자료 : 앤시스, 지멘스, 다쏘, Mathworks 홈페이지 및 블로그 편집

센서 시뮬레이션

통합 시뮬레이션 플랫폼은 카메라, 라이더(Lidar), 레이더 및 초음파 센서에 대해 사실적인 물리 기반 센서 응답을 실시간으로 제공함으로써 엔지니어에게 가장 안전한 자율시스템을 만드는 데 필요한 모든 정보를 제공한다. 자율주행차는 가시 영역 및 적외선 영역의 감지를 위한 카메라와 작동 환경을 360° 全방향 3D로 보기 위한 라이더(Lidar) 등을 포함하고 있다. 광학 시뮬레이션 소프트웨어는 광학 센서들이 실제 상황에서 나타낼 성능을 정확하게 나타내는 물리 기반 시뮬레이션을 통해 광학 센서의 성능을 검증한다.

자율주행시스템 임베디드 소프트웨어의 모델기반 설계

[그림 7] 자동 비행 제어 루프 그림 7 자동 비행 제어 루프

※ 자료 : ANSYS

전술한 시뮬레이션 결과, 자율시스템의 안전을 확보하게 되고 모델기반 설계를 통해 구현함으로써 검증 결과를 변경없이 구현하게 된다.

자율비행 제어 루프는 센서와 센서 퓨전에서 들어오는 입력 데이터를 취할 Perception과 비행 계획을 결정하는 Planning과 액추에이터를 구동하기 위한 Execution이 포함된다. 완전 자율주행차량 제어 루프를 구현하기 위해 기계학습·딥러닝과 클래식 제어 로직의 조합이 사용되고 있는데, 이 제어루프는 주기적으로 실행되어 차량이 지속적인 환경 변화에 대응할 수 있다.

제어 로직을 위한 코드를 설계하고 생성하기 위해, 자율주행차량용 소프트웨어 모델에서 자동으로 코드를 생성할 수 있는 포괄적인 솔루션이 제공되고 있다. 이러한 솔루션은 임베디드 소프트웨어가 DO-178C 안전 표준 목표를 매우 효율적으로 충족시킬 수 있도록 하며, 개발 및 인증 시간을 대폭 단축하는 데 도움이 된다.3

시사점

자율주행시스템의 안전 확보를 위해 새로운 표준을 제정하고 시뮬레이션 등의 방안을 마련하고 있다. 기존 안전 분석 방법과 설계, 테스트 방법으로는 기계학습과 딥러닝을 이용하는 자율주행 시스템을 검증하기 어려우며, 실제 도로나 항로에서 테스트하는 것도 안전을 보장하기는 어렵다.

자율차량 시뮬레이션 플랫폼은 물리, 전자, 임베디드 시스템 및 소프트웨어 시뮬레이션을 통합하여 복잡한 자율시스템의 안전성을 검증할 수 있다. 통합 플랫폼을 통해 다양한 운영 시나리오상에서 여러 가지 제어시스템들과 센서의 조합을 통해 다양한 자율형 차량을 빠르고 경제적으로 시뮬레이션할 수 있으므로 차량의 수 많은 애플리케이션의 성능 및 안전 목표를 달성하는 데 필요한 시간이 크게 줄어든다.

그러나 자율주행시스템 개발과 운영을 위해서는 관련 법제 및 완결성 있는 표준 제공이 필요하다. 자율차량을 개발하는 가장 중요한 이유 중의 하나가 안전성 제고이나, 새로운 시스템에 대한 사람의 적응 문제로 오히려 안전에 위험이 있다는 연구도 있다.4 따라서 자동화된 시스템에 대한 사람의 적응에 대한 연구도 계속되어야 한다.

  • 1 CLS(Closed-Loop Simulation), 제품 개발 모든 프로세스의 요구사항의 결과물은 설계의 입력물이 되고, 설계 결과 개발되고 개발된 제품이 요구사항에 맞는 지 순환적으로 검증되는 시스템
  • 2 OLS(Open Loop Simulation), 시스템의 입력값은 출력값에 종속되지 않고, 어떠한 값도 가능한 시스템
  • 3 Bernard Dion(2016), "A Cost-Effective Model-Based Approach for Developing ISO 26262 Compliant Automotive Safety Related Applications", SAE World Congress
  • 4 Tor Erik Evjemo(2019), Lessons learned from increased automation in aviation: the paradox related to the high degree of safety and implications for future research

키워드 자율차량시스템 안전 월간SW중심사회 2020년 2월호