KR102412539B1 - 자율주행 분산 시뮬레이션 동기 제어 방법 - Google Patents

자율주행 분산 시뮬레이션 동기 제어 방법 Download PDF

Info

Publication number
KR102412539B1
KR102412539B1 KR1020200153043A KR20200153043A KR102412539B1 KR 102412539 B1 KR102412539 B1 KR 102412539B1 KR 1020200153043 A KR1020200153043 A KR 1020200153043A KR 20200153043 A KR20200153043 A KR 20200153043A KR 102412539 B1 KR102412539 B1 KR 102412539B1
Authority
KR
South Korea
Prior art keywords
simulation
simulator
global
sensor
time
Prior art date
Application number
KR1020200153043A
Other languages
English (en)
Other versions
KR20220066711A (ko
Inventor
김구
Original Assignee
(주)이노시뮬레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)이노시뮬레이션 filed Critical (주)이노시뮬레이션
Priority to KR1020200153043A priority Critical patent/KR102412539B1/ko
Publication of KR20220066711A publication Critical patent/KR20220066711A/ko
Application granted granted Critical
Publication of KR102412539B1 publication Critical patent/KR102412539B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0011Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2400/00Special features of vehicle units
    • B60Y2400/30Sensors

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Artificial Intelligence (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Human Computer Interaction (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Traffic Control Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 다양한 시뮬레이션 주기 등의 특성을 갖는 가상 센서 및 인공지능 시뮬레이터들과 전역 시뮬레이터가 병렬적으로 처리되면서 서로 동기화될 수 있는, 자율주행 분산 시뮬레이션 동기 제어 방법에 관한 것으로, 제어 힘 로딩, 동역학 시뮬레이션, 3차원 영상 렌더링 시스템을 포함하는 차량 시뮬레이션의 자율주행 시뮬레이터에서는 센서와 인공지능 알고리즘의 처리 성능을 고려하여 가상 센서 학습 데이터의 생성을 담당하는 각 센서 시뮬레이터와 AI 시뮬레이터를 전역 시뮬레이터에서 분리하여 구성하고, 전역 시뮬레이터에서는 전역 시뮬레이션 타임스탬프의 자율 주행 시나리오 및 차량 동역학을 처리하도록 분산형 시뮬레이션을 구성하며, 이를 위해 공유 버퍼를 이용한 각 시뮬레이터들의 병렬 시뮬레이션 방법과 고정 시간 간격 방식의 시뮬레이션 동기 제어 및 보간 방법을 제시하는 것을 특징으로 한다.

Description

자율주행 분산 시뮬레이션 동기 제어 방법{Autonomous Driving Distributed Simulation Synchronous Control Method}
본 발명은 자율주행 분산 시뮬레이션 동기 제어 방법에 관한 것으로, 더 상세하게는 다양한 시뮬레이션 주기 등의 특성을 갖는 가상 센서 및 인공지능 시뮬레이터들과 전역 시뮬레이터가 병렬적으로 처리되면서 서로 동기화될 수 있는, 자율주행 분산 시뮬레이션 동기 제어 방법에 관한 것이다.
출원번호 10-2019-0156179(2019.11.28)호에 따르면, "인공지능 VILS 기반의 자율주행 제어 장치 및 방법에 관한 것으로, 특히 생산적 적대 학습(GAN: Generative Adversarial Network) 모델을 통해 실제와 같은 주행 환경을 생성하여 실도로의 운행을 통해 자율주행차의 도로 운행을 검증하는 기술에 관한 것이다. 본 발명은, 가상 환경에서 자율주행차를 자율 주행시키기 위해, 검증이 필요한 모델링된 도로 환경을 나타내는 상태 정보와 상기 자율주행차의 주변 차량에 대한 정보를 포함하는 주행 정보를 통해 상기 가상 환경을 생성하는 주행환경 생성부; 상기 주행환경 생성부에서 획득된 상태 정보 및 주행 정보를 3차원 OGM(Occupancy Grid Map)을 통해 레이어 분류를 이용하여 데이터화를 진행하는 결과물 생성부; 및 상기 결과물 생성부에서 생성된 데이터로부터 산출된 자율주행 알고리즘을 작동시켜 상기 자율주행차를 제어하고 상기 자율주행차의 실제의 움직이는 궤적을 추적 및 기록하여 상기 가상 환경에 입력하는 자율주행 검증부를 포함하는 인공지능 VILS 기반의 자율주행 제어 장치를 제공한다. 본 발명에 의해, 실제 다양한 운전자들의 주행을 학습한 고도화된 인공지능 운전자 모사 모델을 VILS 검증에 활용함으로써, 자율주행 평가의 신뢰성을 높일 수 있을 것이다."라고 개시된 바가 있다.
출원번호 10-2013-0011463(2013.01.31)호에 따르면, " 물리적인 요소와 계산적인 요소의 특성을 모두 갖는 가상-물리 시스템(CPS; Cyber Physical System)과 같은 하이브리드 시스템(Hybrid system)을 구성하는 서브시스템(Subsystem)들을 모델링한 서브시스템 모델들에 대해 다수의 분산 시뮬레이터들을 이용하여 분산 시뮬레이션을 수행함에 있어서, 실시간을 기반으로 동기화된 전역 시뮬레이션 시간을 다수의 분산 시뮬레이터들에게 제공하고, 다수의 분산 시뮬레이터들이 동기화된 전역 시뮬레이션 시간에 따라 지역 시뮬레이션 시간을 조정하여 자신에게 할당된 서브시스템 모델에 대한 시뮬레이션을 수행하도록 하는 분산 시뮬레이션 수행 시스템 및 방법을 개시한다."라고 공표된 바가 있다.
1. 출원번호 10-2019-0156179(2019.11.28); 인공지능 VILS 기반의 자율주행 제어 장치 및 방법 2. 출원번호 10-2013-0011463(2013.01.31); 분산 시뮬레이션 수행 시스템 및 방법
최근 인공지능 및 센서 융합, 통신 등 자율주행과 관련하여 많은 연구가 이루어지고 있다. 특히, 인공지능 학습에 필요한 다양한 주행환경 및 시나리오의 방대한 데이터를 가상의 자율주행 시뮬레이터를 통해 쉽게 재현해낼 수 있어, 이와 관련된 연구가 활발히 진행 중이다.
라이다, 레이다, 카메라, GPS, IMU 및 차량 ECU 등의 다양한 센서 들이 자율주행 차량에 탑재되어야 하는데, 센서 마다 다른 샘플링 주기, 해상도, 화각 등의 물리적 특성을 반영하여야 한다. 하지만, 자율주행 시뮬레이터의 가상 센서는 센서 들의 종류와 수가 증가함에 따라 시간 동기화 비용도 증가하므로 전체적인 통합시뮬레이션의 성능이 저하되는 문제가 있다.
또한, 자율주행 시뮬레이터는 가상 센서, 인공지능, 동역학, 주행 시나리오 처리가 함께 시뮬레이션 되어야 하는데 각 처리 모듈들의 연산 부하가 크고, 센서 이벤트의 발생 시간부터 시뮬레이션 된 다음 주기의 가상 세계 정보를 얻기 까지 대기 시간으로 인해 통합 시뮬레이션 파이프라인과의 병렬처리가 어려운 문제가 있다. 각 센서 시뮬레이터는 전역 시뮬레이터로부터 동일한 시뮬레이션 결과를 전역 클록의 매 사이클 마다 전달 받아, 각 시뮬레이터 클록의 사이클로 동기가 필요하기 때문에 병렬적 수행에 어려움이 있다.
최근 들어 분산 시뮬레이션 방법에 관한 많은 연구가 진행되고 있으나, 다양한 센서를 포함한 다수의 시뮬레이터들의 통합 시뮬레이션 동기 방법에 대한 연구가 부족한 현실이다. 특히, 실제 센서의 사양에 따른 시뮬레이션과 분산 시뮬레이션 동기화를 통한, 사실적인 센서 영상 생성 및 통합 시뮬레이션 기술 개발이 시급한 상황이다.
본 발명은 상술한 문제점들을 해소하고, 필요성을 충족시키기 위한 것으로, 다양한 시뮬레이션 주기 등의 특성을 갖는 가상 센서 및 인공지능 시뮬레이터들과 전역 시뮬레이터가 병렬적으로 처리되면서 서로 동기화될 수 있는, 자율주행 분산 시뮬레이션 동기 제어 방법을 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명의 특징을 살펴보도록 한다.
전통적인 차량 시뮬레이션은 제어 힘 로딩, 동역학 시뮬레이션, 3차원 영상 렌더링 시스템을 포함 하여 구성된다. 본 발명의 자율주행 시뮬레이터에서는 센서와 인공지능 알고리즘의 처리 성능을 고려하여 가상 센서 학습 데이터의 생성을 담당하는 각 센서 시뮬레이터와 AI 시뮬레이터를 전역 시뮬레이터에서 분리하여 구성하고, 전역 시뮬레이터에서는 전역 시뮬레이션 타임스탬프의 자율 주행 시나리오 및 차량 동역학을 처리하도록 분산형 시뮬레이션을 구성한다.
이를 위해 공유 버퍼를 이용한 각 시뮬레이터들의 병렬 시뮬레이션 방법과 고정 시간 간격 방식의 시뮬레이션 동기 제어 및 보간 방법을 제시한다.
본 발명의 바람직한 효과에 따르면, 1)센서 융합을 위한 시뮬레이터들의 데이터 및 시간 동기화 기반을 구축하고, 2)전역, AI, 센서 3종의 자율주행 분산 시뮬레이션 시스템 구성 방법을 제안하며, 3)센서 스캔 시간 간격 시뮬레이션을 위한 고정 시간 간격 기반 장면 보간 알고리즘을 구성하는데 도움을 줄 수 있으며, 4)가상 센서 시뮬레이션 및 인공지능 데이터 동기화 및 병렬 분산 처리 성능을 개선하는 효과가 있으며, 5)호환성 높은 자율주행 시뮬레이션 시스템으로 확장시키고, 모델의 검증 및 모의실험 환경을 개선시키는 장점이 있다.
도 1은 본 발명에 따른 자율주행 분산시뮬레이션 동기 제어방법에서, 공유버퍼를 이용한 병렬처리와 데이터 동기를 설명하기 위한 흐름도.
도 2는 본 발명에 따른 자율주행 분산시뮬레이션 동기 제어방법에서, 고정시간 간격 기반 전역 시뮬레이션 타임스탬프 획득을 설명하기 위한 흐름도.
도 3은 본 발명에 따른 자율주행 분산시뮬레이션 동기 제어방법에서, 시간경과율에 따른 이전 장면 보간 렌더링을 설명하기 위한 흐름도.
도 4는 본 발명에 따른 자율주행 분산시뮬레이션 동기 제어방법에서, 동역학 주기를 반영한 센서 스캔 시간 시뮬레이션을 설명하기 위한 흐름도.
도 5는 본 발명에 따른 자율주행 분산시뮬레이션 동기 제어방법에서, 실시간 자율주행 시뮬레이션 제어흐름을 설명하기 위한 흐름도.
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명하도록 한다.
전통적인 차량 시뮬레이션은 제어 힘 로딩, 동역학 시뮬레이션, 3차원 영상 렌더링 시스템을 포함 하여 구성된다. 본 발명의 자율주행 시뮬레이터에서는 센서와 인공지능 알고리즘의 처리 성능을 고려하여 가상 센서 학습 데이터의 생성을 담당하는 각 센서 시뮬레이터와 AI 시뮬레이터를 전역 시뮬레이터에서 분리하여 구성하고, 전역 시뮬레이터에서는 전역 시뮬레이션 타임스탬프의 자율 주행 시나리오 및 차량 동역학을 처리하도록 분산형 시뮬레이션을 구성한다. 이를 위해 공유 버퍼를 이용한 각 시뮬레이터들의 병렬 시뮬레이션 방법과 고정 시간 간격 방식의 시뮬레이션 동기 제어 및 보간 방법을 제시한다.
1. AI 시뮬레이터 : 제어 힘 로딩
AI 시뮬레이터는 제어 힘을 로딩하는 기능을 수행한다.
AI 시뮬레이터의 차량 제어 시뮬레이션은 다수의 센서에서 수집된 자율주행 정답(ground truth) 데이터를 기계학습을 통해 처리하고 차량 제어 힘(control force)을 생성하는 과정을 수행한다. 센서 시뮬레이션 주기에 맞게 수집된 정답 데이터는 전역 시뮬레이션 주기와 동기하여 전역 시뮬레이터에 이벤트 형태로 전달되는데, 각 센서 시뮬레이션 주기의 타임스탬프가 포함된 이벤트들은 모두 시뮬레이션 메시지 큐에 추가된다.
도 1은 공유버퍼를 이용한 병렬처리와 데이터 동기를 설명하기 위한 흐름도로서, AI 시뮬레이션 주기에서 발생된 이전(tn-1) 동기 신호(①)에 따라, 다음(tn+1) 이벤트를 읽고 센서의 타임스탬프에 따라 정렬하여 AI 시뮬레이터에 전달한다(②). 이때 AI 시뮬레이터는 이전(tn-1) 처리 결과인 제어 힘을 전역 시뮬레이터에 동기 신호로 전송 후(①), 다음(tn+1) 센서 이벤트 대기 없이 현재(tn) 이벤트로부터 새로운 연산을 수행(③) 하여 전역 시뮬레이터와의 병렬처리를 가능하게 한다.
AI 시뮬레이터는 공유된 요청 버퍼에 메시지가 있을 때 마다 최대한 자주 시뮬레이션을 반복하여 빠른 응답을 가능하게 한다. 요청 버퍼는 초기 버퍼가 모두 채워진 이후부터, 이전 연산 결과 읽기(①)와 다음 데이터 쓰기(②), 그리고 현재 데이터 연산(③)의 과정을 반복적으로 수행 한다.
2. 전역 시뮬레이터 : 동역학 시뮬레이션
전역시뮬레이터는 동역학 시뮬레이션 기능을 수행한다.
도 2는 고정시간 간격 기반 전역 시뮬레이션 타임스탬프 획득을 설명하기 위한 흐름도로서, 전역 시뮬레이터는 미리 정의된 다양한 주행 시나리오를 실시간 시뮬레이션 하고, AI에서 전달된 제어 힘을 로딩하여 차량 동역학 시뮬레이션을 주기적으로 수행 한다.
일반적으로, 전역 시뮬레이션 주기는 AI 주기보다 높아 제어 힘이 변경되지 않아도 지속적인 제어 힘으로 차량 동역학을 시뮬레이션 할 수 있다. 하지만, 동역학 엔진은 물리적 특성을 계산하기 위해 더 높은 주기를 요구 하므로, 동역학 시뮬레이션 주기를 별도로 관리해야 한다. 즉, 3차원 장면의 갱신을 위한 전역 시뮬레이션 수행 중 동역학 시뮬레이션이 한번 이상 수행 될 수 있도록 수행 주기를 포함하여 구성 한다.
수학식 1에 나타낸 바와 같이, 전역 시뮬레이터는 최대한 자주 렌더링을 수행 하고 이때 측정된 현재 시스템 클록이 정의된 고정 시간 이상이 될 때 마다 반복해서(steps) 시뮬레이션을 수행하고, 그 시간 간격(tdelta) 만큼 증가한 시뮬레이션 타임스탬프(tfixed)를 얻는다.
Figure 112020122651698-pat00001
동역학 시뮬레이션으로 얻어진 자율주행 차량(ego vehicle) 정보는 AI 제어 로직에서 사용할 수 있도록, 고정된 시간의 전역 시뮬레이션 주기에 맞게 AI 시뮬레이터에 전달한다. 또한, 전역 시뮬레이터는 주기에 맞는 시나리오 및 동역학으로 얻어진 3차원 장면 정보를 계산된 시뮬레이션 타임스탬프와 함께 각 센서 시뮬레이터들에 전달한다.
3. 센서 시뮬레이터 : 센서 렌더링
센서시뮬레이터는 센서 렌더링 기능을 수행한다.
전역 시뮬레이터에서 전달된 장면 정보에는 동적 객체 및 환경 등 실시간 가상 시나리오와 자율 주행 차량의 정보가 포함된다. 전역 시뮬레이션 주기와 센서 시뮬레이션 주기가 다르기 때문에 3차원 가상세계의 상태가 갱신되는 시점까지 센서는 동일한 결과를 얻는 문제가 있다.
도 3은 시간경과율에 따른 이전 장면 보간 렌더링을 설명하기 위한 흐름도로서, 상기 문제는 전역 시뮬레이션의 타임스탬프 계산을 참고로 센서 렌더링 시간을 전역 시뮬레이션 시간보다 이전 시간 간격을 시뮬레이션 하여 해결 할 수 있다.
수학식 2에 나타낸 바와 같이, 이미 계산된 이전 시뮬레이션 시간 장면 정보(f(20))와 현재 시뮬레이션 시간 장면 정보(f(40))를 소요된 시간 비율의 선형 보간으로 현재 센서 시간의 장면 정보(f(50))를 얻을 수 있다.
Figure 112020122651698-pat00002
또한, 실제 LiDAR 센서의 경우 3차원 공간을 스캔할 때 360도 점군을 동시에 얻을 수 없어 특정 각도로 회전하며 스캔하기 때문에, 한 장면을 스캔한 센서의 위치와 시간이 달라 질 수 있다. 이처럼 특정 센서가 동시에 스캔 가능한 시간 간격이 동기화된 전역 시뮬레이션의 시간 간격 보다 작은 경우에도, 이전 장면과 현재 장면의 행렬을 여러 번 보간 할 수 있어 보다 세밀한 센서 시뮬레이션을 가능하게 한다.
앞에서 언급한 것처럼 시뮬레이션 타임스탬프는 시나리오의 장면 갱신 주기로 결정 되는데, 동역학 시뮬레이션은 시나리오 보다 세밀한 동역학 차량 정보를 생성할 수 있다.
도 4는 동역학 주기를 반영한 센서 스캔 시간 시뮬레이션을 설명하기 위한 흐름도로서, 전역 시뮬레이터는 동역학 주기 비율만큼의 차량 정보 버퍼를 별도로 구성하여 전달하고, 이를 수신한 각 시뮬레이터는 센서 스캔 주기로 개별 차량 정보를 보간하여 보다 세밀한 시뮬레이션을 할 수 있다. 즉, 시나리오의 장면 정보는 전역 시뮬레이션 시간 간격(20)을 보간하여 얻고, 자율주행 차량 정보는 보다 높은 동역학 시뮬레이션 시간 간격(2)를 보간하여 얻을 수 있기 때문에, 각 센서의 샘플링 주기(20Hz) 및 스캔 시간(75°, 10)의 물리적 특성을 반영하여 보다 정밀한 센서 시뮬레이션 결과를 얻을 수 있다.
4. 통합 시뮬레이터 : 실시간 분산 시뮬레이션
통합시뮬레이터는 실시간 분산 시뮬레이션 기능을 수행한다.
도 5는 실시간 자율주행 시뮬레이션 제어흐름을 설명하기 위한 흐름도로서, 본 특허에서 제안된 분산 자율주행 시뮬레이터는 센서와 AI 알고리즘 처리 전용 시뮬레이터를 개별 시뮬레이터로 구성하여 부하를 분산 시키고, 시뮬레이터들 사이의 주행 정보를 고정 시간 간격의 동기화 방법을 통해 동기화 한다.
이를 통해, 센서 시뮬레이션은 포토리얼리즘 실현을 용이하게 하며 다양한 고성능 게임 렌더링 엔진으로의 확장을 용이하게 한다.
또한, 자율주행 인공지능 알고리즘의 복잡한 딥러닝 연산을 실시간으로 처리할 수 있는 시뮬레이션의 확장 가능한 토대를 마련하는 장점이 있다.
물리적으로 분리된 다수의 시뮬레이터가 연결될 때 전역 시뮬레이터로부터 전달받은 전역 클록으로부터 시작 시간 동기가 수행되고, 각 시뮬레이터의 렌더링 시간은 이 시간 차이 만큼 보정 하여 전역 시뮬레이션 시간과 동기 한다.
각 센서 시뮬레이터에서 발생된 캡처 이벤트는 전역 시뮬레이션 주기로 전역 메시지 큐에 추가되고, AI 시뮬레이터 주기 마다 정렬하여 AI에 전달된다. 또한, 전역 시뮬레이터는 주기적으로 다음 시뮬레이션 시간의 차량 동역학 정보를 갱신하고 각 센서 시뮬레이터에 동시에 전달하여 전체 시뮬레이터의 시간을 동기 한다.
자율주행 차량 제어 뿐 아니라 다양한 주변 객체 및 주행 환경 조건들과의 상호 작용을 미리 정의한 시나리오상의 시간에 따라 재현하도록 하였고, 시나리오의 전역 시뮬레이션 주기로 3차원 장면 정보를 동기 하여 갱신되도록 구성 하였다. 그리고 AI 및 센서는 딥러닝 처리성능 및 각 센서의 물리적 특성에 따라 가변 및 고정 시간 간격의 시뮬레이션 주기를 선택적으로 사용한다.
또한, 시뮬레이터들에 요청된 메시지는 하나 이상의 장면 및 센서 버퍼를 관리하여 데이터 요청 대기 없이 다음 시뮬레이션을 수행하여 병렬 처리를 용이하도록 구성한다.
①; 이전 연산결과 읽기
②; 다음 데이터쓰기
③; 현재 데이터연산

Claims (5)

  1. 제어 힘 로딩, 동역학 시뮬레이션, 3차원 영상 렌더링 시스템을 포함하는 전통적인 차량 시뮬레이션을 위한 자율주행 시뮬레이터에서 센서와 인공지능 알고리즘의 처리 성능을 고려하여 가상 센서 학습 데이터의 생성을 담당하는 각 센서 시뮬레이터와 AI 시뮬레이터를 전역 시뮬레이터에서 분리하여 구성하고, 전역 시뮬레이터에서는 전역 시뮬레이션 타임스탬프의 자율 주행 시나리오 및 차량 동역학을 처리하도록 분산형 시뮬레이션을 구성하며, 이를 위한 공유 버퍼를 이용한 각 시뮬레이터들의 병렬 시뮬레이션 방법과 고정 시간 간격 방식의 시뮬레이션 동기 제어 및 보간 방법을 제시하는 자율주행 분산 시뮬레이션 동기 제어방법에 있어서,
    제어 힘을 로딩하는 AI 시뮬레이터의 차량 제어 시뮬레이션은 다수의 센서에서 수집된 자율주행 정답(ground truth) 데이터를 기계학습을 통해 처리하고 차량 제어 힘(control force)을 생성하는 과정을 수행하고;
    센서 시뮬레이션 주기에 맞게 수집된 정답 데이터는 전역 시뮬레이션 주기와 동기하여 전역 시뮬레이터에 이벤트 형태로 전달되며;
    각 센서 시뮬레이션 주기의 타임스탬프가 포함된 이벤트들은 모두 시뮬레이션 메시지 큐에 추가되며;
    공유버퍼를 이용한 병렬처리와 데이터 동기는, AI 시뮬레이션 주기에서 발생된 이전(tn-1) 동기 신호(①)에 따라, 다음(tn+1) 이벤트를 읽고 센서의 타임스탬프에 따라 정렬하여 AI 시뮬레이터에 전달하며(②). 이때 AI 시뮬레이터는 이전(tn-1) 처리 결과인 제어 힘을 전역 시뮬레이터에 동기 신호로 전송 후(①), 다음(tn+1) 센서 이벤트 대기 없이 현재(tn) 이벤트로부터 새로운 연산을 수행(③) 하여 전역 시뮬레이터와의 병렬처리를 가능하게 하며;
    AI 시뮬레이터는 공유된 요청 버퍼에 메시지가 있을 때 마다 최대한 자주 시뮬레이션을 반복하여 빠른 응답을 가능하게 하며;
    요청 버퍼는 초기 버퍼가 모두 채워진 이후부터, 이전 연산 결과 읽기(①)와 다음 데이터 쓰기(②), 그리고 현재 데이터 연산(③)의 과정을 반복적으로 수행하는 것을 특징으로 하는 자율주행 분산 시뮬레이션 동기 제어방법.
  2. 청구항 1에 있어서,
    동역학 시뮬레이션을 수행하는 전역 시뮬레이터는 미리 정의된 다양한 주행 시나리오를 실시간 시뮬레이션 하고, AI에서 전달된 제어 힘을 로딩하여 차량 동역학 시뮬레이션을 주기적으로 수행하며;
    전역 시뮬레이션 주기는 AI 주기보다 높아 제어 힘이 변경되지 않아도 지속적인 제어 힘으로 차량 동역학을 시뮬레이션 할 수 있지만, 동역학 엔진은 물리적 특성을 계산하기 위해 더 높은 주기를 요구 하므로, 동역학 시뮬레이션 주기를 별도로 관리하도록, 3차원 장면의 갱신을 위한 전역 시뮬레이션 수행 중 동역학 시뮬레이션이 한번 이상 수행 될 수 있도록 수행 주기를 포함하여 구성하며;
    수학식 1과 같이, 전역 시뮬레이터는 최대한 자주 렌더링을 수행 하고 이때 측정된 현재 시스템 클록이 정의된 고정 시간 이상이 될 때 마다 반복해서(steps) 시뮬레이션을 수행하고, 그 시간 간격(tdelta) 만큼 증가한 시뮬레이션 타임스탬프(tfixed)를 얻으며;
    (수학식 1)
    Figure 112020122651698-pat00003

    동역학 시뮬레이션으로 얻어진 자율주행 차량(ego vehicle) 정보는 AI 제어 로직에서 사용할 수 있도록, 고정된 시간의 전역 시뮬레이션 주기에 맞게 AI 시뮬레이터에 전달하며,
    전역 시뮬레이터는 주기에 맞는 시나리오 및 동역학으로 얻어진 3차원 장면 정보를 계산된 시뮬레이션 타임스탬프와 함께 각 센서 시뮬레이터들에 전달하는 것을 더 포함하는 자율주행 분산 시뮬레이션 동기 제어방법.
  3. 청구항 1에 있어서,
    센서 렌더링을 위한 센서 시뮬레이터에서,
    전역 시뮬레이터에서 전달된 장면 정보에는 동적 객체 및 환경 등 실시간 가상 시나리오와 자율 주행 차량의 정보가 포함되며;
    전역 시뮬레이션 주기와 센서 시뮬레이션 주기가 다르기 때문에 3차원 가상세계의 상태가 갱신되는 시점까지 센서는 동일한 결과를 얻는 문제는 전역 시뮬레이션의 타임스탬프 계산을 참고로 센서 렌더링 시간을 전역 시뮬레이션 시간보다 이전 시간 간격을 시뮬레이션 하여 해결하며;
    수학식 2와 같이, 이미 계산된 이전 시뮬레이션 시간 장면 정보(f(20))와 현재 시뮬레이션 시간 장면 정보(f(40))를 소요된 시간 비율의 선형 보간으로 현재 센서 시간의 장면 정보(f(50))를 얻을 수 있으며;
    (수학식 2)
    Figure 112020122651698-pat00004

    실제 LiDAR 센서의 경우 3차원 공간을 스캔할 때 360도 점군을 동시에 얻을 수 없어 특정 각도로 회전하며 스캔하기 때문에, 한 장면을 스캔한 센서의 위치와 시간이 달라 질 수 있으므로, 특정 센서가 동시에 스캔 가능한 시간 간격이 동기화된 전역 시뮬레이션의 시간 간격 보다 작은 경우에도, 이전 장면과 현재 장면의 행렬을 여러 번 보간 할 수 있어 보다 세밀한 센서 시뮬레이션을 가능하게 하며;
    상술한 바와 같이 시뮬레이션 타임스탬프는 시나리오의 장면 갱신 주기로 결정 되는데, 동역학 시뮬레이션은 시나리오 보다 세밀한 동역학 차량 정보를 생성할 수 있는 것을 더 포함하는 자율주행 분산 시뮬레이션 동기 제어방법.
  4. 청구항 1에 있어서,
    동역학 주기를 반영한 센서 스캔 시간 시뮬레이션에서, 전역 시뮬레이터는 동역학 주기 비율만큼의 차량 정보 버퍼를 별도로 구성하여 전달하고, 이를 수신한 각 시뮬레이터는 센서 스캔 주기로 개별 차량 정보를 보간하여 보다 세밀한 시뮬레이션을 할 수 있도록, 시나리오의 장면 정보는 전역 시뮬레이션 시간 간격(20)을 보간하여 얻고, 자율주행 차량 정보는 보다 높은 동역학 시뮬레이션 시간 간격(2)를 보간하여 얻을 수 있기 때문에, 각 센서의 샘플링 주기(20Hz) 및 스캔 시간(75°, 10)의 물리적 특성을 반영하여 보다 정밀한 센서 시뮬레이션 결과를 얻을 수 있도록 한 것을 더 포함하는 자율주행 분산 시뮬레이션 동기 제어방법.
  5. 청구항 1에 있어서,
    실시간 분산 시뮬레이션을 수행하는 통합 시뮬레이터인 분산 자율주행 시뮬레이터는 센서와 AI 알고리즘 처리 전용 시뮬레이터를 개별 시뮬레이터로 구성하여 부하를 분산 시키고, 시뮬레이터들 사이의 주행 정보를 고정 시간 간격의 동기화 방법을 통해 동기화하며;
    센서 시뮬레이션은 포토리얼리즘 실현을 용이하게 하며 다양한 고성능 게임 렌더링 엔진으로의 확장을 용이하게 하며;
    자율주행 인공지능 알고리즘의 복잡한 딥러닝 연산을 실시간으로 처리할 수 있는 시뮬레이션의 확장 가능한 토대를 마련하며;
    물리적으로 분리된 다수의 시뮬레이터가 연결될 때 전역 시뮬레이터로부터 전달받은 전역 클럭으로부터 시작 시간 동기가 수행되고, 각 시뮬레이터의 렌더링 시간은 이 시간 차이 만큼 보정 하여 전역 시뮬레이션 시간과 동기하며;
    각 센서 시뮬레이터에서 발생된 캡처 이벤트는 전역 시뮬레이션 주기로 전역 메시지 큐에 추가되고, AI 시뮬레이터 주기 마다 정렬하여 AI에 전달되며;
    전역 시뮬레이터는 주기적으로 다음 시뮬레이션 시간의 차량 동역학 정보를 갱신하고 각 센서 시뮬레이터에 동시에 전달하여 전체 시뮬레이터의 시간을 동기 하며;
    자율주행 차량 제어 뿐 아니라 다양한 주변 객체 및 주행 환경 조건들과의 상호 작용을 미리 정의한 시나리오상의 시간에 따라 재현하도록 하였고, 시나리오의 전역 시뮬레이션 주기로 3차원 장면 정보를 동기 하여 갱신되도록 구성하며;
    AI 및 센서는 딥러닝 처리성능 및 각 센서의 물리적 특성에 따라 가변 및 고정 시간 간격의 시뮬레이션 주기를 선택적으로 사용하며;
    시뮬레이터들에 요청된 메시지는 하나 이상의 장면 및 센서 버퍼를 관리하여 데이터 요청 대기 없이 다음 시뮬레이션을 수행하여 병렬 처리를 용이하도록 구성하는 것을 더 포함하는 자율주행 분산 시뮬레이션 동기 제어방법.
KR1020200153043A 2020-11-16 2020-11-16 자율주행 분산 시뮬레이션 동기 제어 방법 KR102412539B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200153043A KR102412539B1 (ko) 2020-11-16 2020-11-16 자율주행 분산 시뮬레이션 동기 제어 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200153043A KR102412539B1 (ko) 2020-11-16 2020-11-16 자율주행 분산 시뮬레이션 동기 제어 방법

Publications (2)

Publication Number Publication Date
KR20220066711A KR20220066711A (ko) 2022-05-24
KR102412539B1 true KR102412539B1 (ko) 2022-06-23

Family

ID=81807494

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200153043A KR102412539B1 (ko) 2020-11-16 2020-11-16 자율주행 분산 시뮬레이션 동기 제어 방법

Country Status (1)

Country Link
KR (1) KR102412539B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115356951B (zh) * 2022-10-19 2023-03-24 北京易控智驾科技有限公司 一种仿真方法、系统及其存储介质和电子设备
CN116225024A (zh) * 2023-04-11 2023-06-06 酷黑科技(北京)有限公司 数据处理方法、装置及自动驾驶台架

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013095239A1 (en) 2011-12-22 2013-06-27 Scania Cv Ab Method and module for determining of reference values for a vehicle control system
KR101926110B1 (ko) 2017-09-26 2018-12-07 대한민국 분산 이산사건시스템 명세 기반 연속 시스템 시뮬레이터, 시뮬레이션 방법, 이를 위한 기록매체, 및 시스템
JP2020502615A (ja) 2016-10-14 2020-01-23 ズークス インコーポレイテッド 自律走行車シミュレーションのためのシナリオ記述言語

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101860507B1 (ko) 2011-07-21 2018-05-24 삼성디스플레이 주식회사 유기 발광 표시 장치
KR20140098602A (ko) * 2013-01-31 2014-08-08 한국전자통신연구원 분산 시뮬레이션 수행 시스템 및 방법
KR20190105172A (ko) * 2018-02-22 2019-09-16 자동차부품연구원 스마트 운전 에이전트 시스템 및 방법
JP2019156179A (ja) 2018-03-13 2019-09-19 トヨタ自動車株式会社 車両用乗員保護装置
KR102136400B1 (ko) * 2018-06-19 2020-07-21 한국자동차연구원 스마트 운전 에이전트 시스템 및 방법
KR102166811B1 (ko) * 2019-01-21 2020-10-19 한양대학교 산학협력단 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013095239A1 (en) 2011-12-22 2013-06-27 Scania Cv Ab Method and module for determining of reference values for a vehicle control system
JP2020502615A (ja) 2016-10-14 2020-01-23 ズークス インコーポレイテッド 自律走行車シミュレーションのためのシナリオ記述言語
KR101926110B1 (ko) 2017-09-26 2018-12-07 대한민국 분산 이산사건시스템 명세 기반 연속 시스템 시뮬레이터, 시뮬레이션 방법, 이를 위한 기록매체, 및 시스템

Also Published As

Publication number Publication date
KR20220066711A (ko) 2022-05-24

Similar Documents

Publication Publication Date Title
KR102282970B1 (ko) 실시간 분산 자율주행 시뮬레이션 프레임워크를 구성 및 제어하는 방법
CN107966693B (zh) 一种基于深度渲染的车载激光雷达仿真方法
KR102412539B1 (ko) 자율주행 분산 시뮬레이션 동기 제어 방법
US10885240B2 (en) Deterministic simulation framework for autonomous vehicle testing
US20200082622A1 (en) Method and System for Virtual Sensor Data Generation with Depth Ground Truth Annotation
KR102053202B1 (ko) 머신 러닝의 학습성능 강화장치 및 방법
CN105843978A (zh) 基于数据的交互式3d体验
CN108681264A (zh) 一种智能车辆数字化仿真测试装置
Siltanen et al. Rays or waves? Understanding the strengths and weaknesses of computational room acoustics modeling techniques
CN102136204A (zh) 大型装备虚拟维修分布交互仿真支撑平台及协同维修方法
US11514212B2 (en) Method of simulating autonomous vehicle in virtual environment
CN102467589A (zh) 交互式交通仿真系统
CN112904827B (zh) 一种面向多icu的无人驾驶虚拟仿真测试系统
US20240144576A1 (en) 3d object management data, computer program, and distributed management method for 3d object
Fouladinejad et al. Modeling virtual driving environment for a driving simulator
CN115185205A (zh) 智能驾驶仿真方法、系统、终端设备和可读存储介质
Elgharbawy et al. A generic architecture of ADAS sensor fault injection for virtual tests
Thieling et al. Scalable sensor models and simulation methods for seamless transitions within system development: from first digital prototype to final real system
CN110705021B (zh) 一种数据驱动的测试驱动方法
Abdelhameed Micro-simulation function to display textual data in virtual reality
Koduri et al. AUREATE: An Augmented Reality Test Environment for Realistic Simulations
De Grande et al. A modular distributed simulation‐based architecture for intelligent transportation systems
Bognar et al. Virtual Reality Assisted Human Perception in ADAS Development: a Munich 3D Model Study
CN106875480B (zh) 一种城市三维数据组织的方法
US20220058318A1 (en) System for performing an xil-based simulation

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant