Skip to main content
Skip table of contents

시뮬레이션 수행

이 페이지는 Scenario Runner 에서 시나리오 파일을 기반으로 시뮬레이션을 수행하는 방법을 안내한다.


MORAI SIM 설치 및 실행

Scenario Runner 와 호환되는 MORAI SIM: Drive Launcher를 설치하고 실행한다.

텍스트, 스크린샷, 소프트웨어, 멀티미디어 소프트웨어이(가) 표시된 사진  자동 생성된 설명

왼쪽의 릴리스 목록에서 버전을 선택한 후, 오른쪽 하단에 있는 'Install'를 클릭한다.

텍스트, 스크린샷, 소프트웨어, 멀티미디어 소프트웨어이(가) 표시된 사진  자동 생성된 설명

설치가 완료되면, 오른쪽 하단에 나타나는 '설치' 버튼 대신에 나타나는 'Start' 버튼을 클릭한다.

시뮬레이션 시작

로드한 시나리오에 대한 시뮬레이션

  1. ‘Run’ > ‘Start Simulation’ 을 클릭하여 (참고: 시나리오 열기/저장) 불러온 시나리오를 기반으로 시뮬레이션을 실행한다.

  2. Ego 차량 제어 방식을 아래 항목 중에서 선택한다.

    1. Built-in

      • Scenario Runner 에서 ego 차량을 제어한다. npc 차량과 동일한 로직을 활용하며, ego 차량이 정의된 시나리오를 따라 제어된다.

    2. MORAI SIM: Drive

      • Scenario Runner 에서는 ego 차량의 초기상태만을 정의하며, 이후의 주행은 MORAI SIM: Drive 의 로직에 따른다. 차량이 정의된 시나리오대로 주행하지 않는다.

    3. External

      • Scenario Ruuner 에서는 ego 차량의 초기상태만을 정의하며, 사용자 알고리즘의 검증을 위해 ego 차량을 별도로 제어하지 않는다.

  3. (선택사항) 아래와 같은 추가 시작 옵션을 선택할 수 있다.

    1. Spawn vehicles in LinkPosition

      • 차량의 위치 또는 자세가 정확히 도로 중앙에 위치할 수 있도록 차량을 주어진 위치에서 가장 가까운 도로 위에 배치되도록 한다. 차량의 정확한 위치 또는 자세를 모를 때 활용할 수 있다.

    2. Synchronous mode

      • 시뮬레이터를 실시간으로 구동하지 않고 한 프레임씩 진행하여, 모든 차량이 매 루프마다 한 번씩 제어명령 업데이트가 이뤄지도록 한다. 다수의 차량을 배치하여 실시간 제어 성능이 떨어거나, 보다 일관적인 시뮬레이션 결과가 필요할 때 활용할 수 있다.

Ego 차량 제어 기능의 목적과 활용법

본 기능은 시나리오를 작성하는 과정에서, EGO 차량의 상태에 따라 주행해야 하는 NPC 차량이 존재할 경우 해당 차량이 시나리오를 정상적으로 수행하는지 확인하기 위한 기능이다.
(예시: EGO 차량과 동시에 교차로에 도착해야 하는 Synchronize Action이 잘 수행되는지 확인)

시나리오를 검증한 이후, 사용자의 자율주행 로직을 검증하는 단계에서는 External Mode를 활성화하여 EGO 차량을 직접 제어할 수 있도록 한다.

image-20240116-005601.png

Scenario Runner가 시나리오를 시작하면 MORAI SIM: Drive는 자동으로 대상 지도를 로드한 다음 즉시 시나리오를 실행한다. (NPC Cut-in 예시) 

예시 시나리오 ‘Cut In’ 실행 모습

배치 시뮬레이션

Scenario Runner는 여러 개의 시나리오 파일에 대한 시뮬레이션을 순차적으로 수행하는 배치 시뮬레이션 기능을 제공한다.

  1. ‘Add’ 또는 ‘Load Test Suite’ 버튼으로 시뮬레이션 하고자 하는 시나리오의 목록을 불러온다.

  2. ‘Start Simulation’으로 배치 시뮬레이션을 수행한다.

텍스트, 소프트웨어, 컴퓨터 아이콘, 스크린샷이(가) 표시된 사진  자동 생성된 설명
  • 버튼 설명

    • (1) Load Test Suite: 저장한 Test Suite 파일(.json)을 불러온다.

    • (2) Save Test Suite: 현재 시나리오 목록을 Test Suite 파일(.json)으로 저장한다.

    • (3) Add: 개별 시나리오 파일(.xosc)을 목록에 추가한다.

    • (4) Delete: 클릭하여 high-light 된 시나리오를 목록에서 삭제한다.

    • (5) ↑ : high-light 된 시나리오를 목록의 위로 이동시킨다.

    • (6) ↓ : high-light 된 시나리오를 목록의 아래로 이동시킨다.

    • (7) Select All : 모든 시나리오를 선택 또는 선택해제 한다.

    • (8) Start Simulation: 선택된 시나리오에 대한 시뮬레이션을 순차적으로 수행한다.

    • (9) Stop Simulation: 현재 실행 중인 시뮬레이션을 ‘모두’ 종료한다.

    • (10) →| : 현재 실행 중인 시뮬레이션을 종료하고 다음 시나리오에 대한 시뮬레이션을 실행한다.

배치 시뮬레이션은 하나의 시나리오에 대한 시뮬레이션이 종료될 경우 자동으로 다음 시뮬레이션을 실행한다. 시나리오 파일(.xosc) 안에 Storyboard > StopTrigger 또는 Evaluation 항목을 통해 시뮬레이션 종료 조건이 작성되어 있지 않을 경우 아래와 같은 경고가 발생한다. 이를 무시하고 실행할 경우 해당 시뮬레이션은 수동으로 종료 시켜주어야 한다.

텍스트, 전자제품, 스크린샷, 디스플레이이(가) 표시된 사진  자동 생성된 설명

배치 시뮬레이션 창을 통한 개별 시나리오에 대한 시뮬레이션

배치 시뮬레이션 창의 시나리오 목록에서 개별 시나리오를 우클릭하여 시뮬레이션을 수행할 수 있다.

텍스트, 소프트웨어, 컴퓨터 아이콘, 멀티미디어 소프트웨어이(가) 표시된 사진  자동 생성된 설명

시뮬레이션 중지

시뮬레이션을 재시작하거나, 다른 시나리오의 시뮬레이션을 실행하기 위해서는 반드시 기존 시뮬레이션을 중지해야 한다.

시뮬레이션 시작 방법에 따라, 아래 두 가지 방법으로 진행 중인 시뮬레이션을 종료할 수 있다.

  • ‘Run’ > ‘Stop Simulation’ 을 클릭하여 실행 중인 시뮬레이션을 중지한다.

  • ‘Batch Simulation’ 탭의 ‘Stop Simulation’ 버튼을 클릭하여 실행 중인 배치 시뮬레이션을 중지한다.

텍스트, 스크린샷, 소프트웨어이(가) 표시된 사진  자동 생성된 설명

'Run’ > ‘Stop Simulation’ 메뉴를 통한 시뮬레이션 중지


© 2022 MORAI Inc.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.