KR102379692B1 - 자율주행차량의 주행 안정시점 판단방법 및 컴퓨터 프로그램 - Google Patents

자율주행차량의 주행 안정시점 판단방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR102379692B1
KR102379692B1 KR1020200147271A KR20200147271A KR102379692B1 KR 102379692 B1 KR102379692 B1 KR 102379692B1 KR 1020200147271 A KR1020200147271 A KR 1020200147271A KR 20200147271 A KR20200147271 A KR 20200147271A KR 102379692 B1 KR102379692 B1 KR 102379692B1
Authority
KR
South Korea
Prior art keywords
data
vehicle
driving
collected
determining
Prior art date
Application number
KR1020200147271A
Other languages
English (en)
Other versions
KR20210056915A (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 한국과학기술원
Publication of KR20210056915A publication Critical patent/KR20210056915A/ko
Application granted granted Critical
Publication of KR102379692B1 publication Critical patent/KR102379692B1/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
    • 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
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • 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
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/14Adaptive cruise control
    • 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/08Estimation 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 drivers or passengers
    • B60W40/09Driving style or behaviour
    • 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
    • B60W50/08Interaction between the driver and the control system
    • B60W50/082Selecting or switching between different modes of propelling
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0055Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements
    • G05D1/0061Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements for transition from automatic pilot to manual pilot and vice versa
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/30Driving style
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2300/00Purposes or special features of road vehicle drive control systems
    • B60Y2300/14Cruise control
    • G05D2201/0213

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Traffic Control Systems (AREA)

Abstract

본 개시는 자율주행차량의 주행 안정시점 판단방법 및 컴퓨터 프로그램을 제공한다.
본 개시의 일 측면에 의하면, 오토인코더(auto-encoder)를 기초로 차량의 주행 안정을 판단하기 위한 데이터를 선별하여, 자율주행차량(autonomous driving vehicle)의 운전제어권(drive control)이 운전자에게 전환된 경우에 주행 안정시점을 판단하는 방법 및 컴퓨터 프로그램을 제공한다.

Description

자율주행차량의 주행 안정시점 판단방법 및 컴퓨터 프로그램 {Method for Determining Time of Stable Driving for Autonomous Driving Vehicle And Computer Program Therefor}
본 발명은 자율주행차량(autonomous driving vehicle)의 주행 안정시점 판단방법 및 컴퓨터 프로그램에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
자율주행(autonomous driving) 기술의 발달로, 운전자의 조작이 스스로 운행할 수 있는 자율주행차량(autonomous driving vehicle)의 보급이 예상된다. 현재 보급 가능한 자율주행차량의 자율주행 단계는 level 2와 level 3 사이로, 특정한 경우 운전자의 수동운전(manual driving)이 필요하다. 이처럼, 자율주행 중 차량의 제어권이 운전자에게 전환되도록 운전자에게 보내지는 요청을 TOR(Take-Over Request)이라 한다. 그러나, 운전자가 TOR을 승인 또는 확인한 직후부터 운전자의 안정적인 수동 운전이 수행되기까지, 차량은 불안정한 주행 상태에 놓이게 된다. 따라서, TOR이 승인 또는 확인된 이후 차량의 주행이 안정화되는 시기를 명확히 판단하여, 그 시기 전까지는 차량의 주행이 일부 보조될 수 있도록 할 필요가 있다.
도 1은 자율주행차량의 운전제어권 전환 후 주행 안정까지 소요되는 시간을 나타내는 예시도이다.
자율주행 중 차량으로부터 운전자에게 TOR 메시지가 전달되는 경우, TOR 메시지의 전달부터 차량의 안정적인 주행이 이루어지기까지의 시간은 TOR 메시지 전달 시점부터 운전자의 승인 또는 확인 시점까지의 시간인 Tc 시간과 운전자의 승인 또는 확인 시점으로부터 운전자의 안정적인 수동 운전이 수행되는 시점까지의 시간인 Ts 시간으로 나눌 수 있다.
도 1과 같이, Tc 시간 동안에는 차량의 제어권이 운전자에게 전환되지 않아 자율주행시스템에 의한 자율주행이 계속되므로, 차량의 주행이 비교적 안정적이다. 그러나, Ts 시간 동안에는 운전자의 주행 안정성을 보장할 수 없는 문제가 있다.
따라서, 이러한 문제점을 해결하기 위하여 Ts 시점 및 시간을 명확히 결정할 필요가 있으며, Ts 시간 동안 불안정한 주행의 원인이 되는 요소를 더 고려하여 Ts 시간에서의 안정적인 차량 제어 방안을 고안할 필요가 있다.
Murphey, Y. L., Milton, R., & Kiliaris, L. ,2009, "Driver's style classification using jerk analysis", 2009 IEEE Workshop on Computational Intelligence in Vehicles and Vehicular Systems.
본 개시의 일 측면에 의하면, 오토인코더(auto-encoder)를 기초로 차량의 주행 안정을 판단하기 위한 데이터를 선별하여, 자율주행차량(autonomous driving vehicle)의 운전제어권(drive control)이 운전자에게 전환된 경우에 주행 안정시점을 판단하는 방법 및 컴퓨터 프로그램을 제공하는 데 주된 목적이 있다.
본 개시의 일 측면에 의하면, 자율주행차량(autonomous driving vehicle)의 운전제어권(drive control)이 운전자에게 전환된 경우에 주행 안정시점(time of stable driving)을 판단하는 방법에 있어서, 시뮬레이터(simulator)로부터 운전자 관련 데이터, 주행 관련 데이터 및 환경 관련 데이터의 전부 또는 일부를 포함하는 수집 데이터를 수집하는 과정; 상기 수집 데이터로부터 수동주행(manual driving) 상태에서 수집된 데이터의 전부 또는 일부를 트레이닝 데이터로서 추출하는 과정; 상기 트레이닝 데이터를 기 설정된 시간 단위 데이터로 잘라(crop) 기 설정된 시간 단위 데이터별 주행 안정지표를 산출하는 과정; 및 상기 기 설정된 시간 단위 데이터 중에서 주행 안정지표가 가장 작은 하위 N %(N은 기 설정된 임계치) 데이터인 학습 데이터를 입력 데이터로 하여 오토인코더 모델(auto-encoder model)을 트레이닝하는 과정을 포함하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법을 제공한다.
본 개시의 다른 측면에 의하면, 전술한 자율주행차량의 주행 안정시점 판단방법에 있어서, 트레이닝된 오토인코더 모델로부터 로스(loss) 데이터를 추출하고, 상기 로스 데이터를 기초로 차량의 주행 안정시점을 판단하는 과정을 더 포함하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법을 제공한다.
본 개시의 다른 측면에 의하면, 전술한 자율주행차량의 주행 안정시점 판단 방법에 있어서, 상기 수집 데이터로부터 검증 데이터(validation data)를 추출하고, 상기 검증 데이터를 이용하여 트레이닝된 오토인코더 모델을 검증하여 상기 트레이닝된 오토인코더 모델의 재학습이 필요하다고 판단하는 경우, 상기 수집 데이터 중 최종 학습 데이터를 선별하여 트레이닝된 오토인코더 모델을 초기화하여 트레이닝하거나, 다시 트레이닝하는 과정을 더 포함하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법을 제공한다.
본 개시의 또 다른 측면에 의하면, 자율주행차량의 주행 안정시점 판단방법이 포함하는 각 과정을 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터 프로그램을 제공한다.
본 개시의 일 측면에 의하면, 차량의 주행을 시뮬레이션한 데이터로부터 수동 주행 상태 데이터를 추출하고 이를 이용하여 오토인코더(auto-encoder) 모델을 트레이닝시킴으로써, 자율주행차량(autonomous driving vehicle)의 운전제어권(drive control)이 운전자에게 전환된 경우에 주행 안정시점을 판단할 수 있는 효과가 있다.
본 개시의 다른 측면에 의하면, 트레이닝된 오토인코더 모델을 이용하여 입력값과 출력값의 로스(loss) 데이터를 획득함으로써, 자율주행차량의 주행 안정시점을 근사시점을 판단할 수 있는 효과가 있다.
본 개시의 다른 측면에 의하면, 트레이닝된 오토인코더 모델을 검증하고, 검증 결과로 산출된 로스 데이터를 기초로 최종 학습 데이터를 선별하여 오토인코더 모델을 다시 트레이닝 또는 초기화한 후 트레이닝시킴으로써 자율주행차량에 따라, 주행 시기와 장소에 따라 적응적인 오토인코더 모델을 산출하여 보다 정확하게 주행 안정시점을 판단할 수 있는 효과가 있다.
따라서, 본 개시의 여러 측면에 따른 자율주행차량의 주행 안정시점 판단방법 또는 컴퓨터 프로그램에 의하면, 자율주행차량의 운전제어권이 운전자에게 전환된 경우 주행이 안정되는 정확한 시점을 판단하여 차량 주행이 안정화되기까지 자율주행차량이 추가적 제어를 수행하게 하는 등, 차량의 안전 운전을 보장하는 효과가 있다.
도 1은 자율주행차량의 운전제어권 전환 후 주행 안정까지 소요되는 시간을 나타내는 예시도이다.
도 2는 본 개시의 일 실시예에 따른 자율주행차량의 주행 안정시점 판단방법을 나타내는 순서도이다.
도 3은 본 개시의 일 실시예에 따른 오토인코더 모델의 예시도이다.
도 4는 본 개시의 일 실시예에 따른 최종 학습 데이터를 선별하는 방법을 나타내기 위한 예시적 그래프이다.
도 5는 본 개시의 일 실시예에 따른 오토인코더 모델을 최종 학습 데이터로 재학습한 경우의 성능을 나타내기 위한 예시적 그래프이다.
이하, 본 개시의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 열람부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 개시를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 개시의 구성 요소를 설명하는 데 있어서, 제2, 제1 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함', '구비'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '…부', '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 개시의 예시적인 실시형태를 설명하고자 하는 것이며, 본 개시가 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다.
본 개시는 자율주행차량(autonomous driving vehicle)의 운전제어권(drive control)이 운전자에게 전환된 경우에 주행 안정시점을 판단하기 위한 데이터를 오토인코더(auto-encoder) 모델을 기반으로 산출하기 위한 방법 및 컴퓨터 프로그램에 관한 것이다.
도 2는 본 개시의 일 실시예에 따른 자율주행차량의 주행 안정시점 판단방법을 나타내는 순서도이다.
자율주행차량의 주행과 관련하여, 운전자 관련 데이터, 주행 관련 데이터 및/또는 차량 주변 환경 관련 데이터를 수집한다(S200). 이러한 데이터는 자율주행차량의 주행과 관련된 데이터를 수집하는 시뮬레이터(simulator)로부터 수집될 수 있다. 운전자 관련 데이터는 예컨대, 운전자의 시선 데이터(eye tracking data)를 포함할 수 있다. 이러한 운전자 시선 데이터는 운전자의 시선이 향하는 대상을 기준으로 세분화되거나, 전방 주시 여부로만 분류된 데이터일 수 있다.
주행 관련 데이터는 예컨대, 차량의 가속페달 답입량 데이터(accelerator pedal stroke intensity data), 차량의 브레이크 페달 답입량 데이터(accelerator brake stroke intensity data), 차량의 속도 데이터(vehicle speed data), 차량의 가속도 데이터(vehicle acceleration data), 차량의 스티어링 휠의 각도 데이터(steering wheel angle data), 스티어링 휠의 속도 데이터(steering wheel speed data), 스티어링 휠의 토크 데이터(steering wheel torque data) 및 차량의 주행 차선 데이터(driving lane data)의 전부 또는 일부를 포함할 수 있다.
환경 관련 데이터는 예컨대, 도로의 각도 데이터(road angle data), 차량과 차선 간 거리 데이터(lane distance data), 선행차량의 속도 데이터(preceding vehicle speed data), 선행차량까지의 거리 데이터(preceding vehicle distance data), 차량의 운전제어권 전환 요청 여부 데이터 및 차량의 자율주행 여부 데이터를 전부 또는 일부 포함할 수 있다.
이렇게 수집된 데이터는 결손 데이터를 데이터 보정 방식(예: 보간법(interpolation) 이용하여 데이터 추가 등)에 의해 보정하고, 물리적으로 음수값이 나올 수 없는 데이터를 0으로 변경, 시뮬레이터 구동 초기의 오류 정정 등의 추가적 전처리가 수행됨이 바람직하다.
수집된 데이터 중 수동주행(manual driving) 상태의 데이터의 전부 또는 일부를 오토인코더 모델의 트레이닝 데이터(training data)로서 추출한다(S202). 이때, 수집된 데이터 중 수동주행 상태의 데이터 추출은, 차량의 주행 중 수동주행이 수행되는 시작시점 및 종료시점을 예측하여, 시작시점과 종료시점 사이의 데이터를 추출함으로써 수행될 수 있다. 이때, 차량의 자율주행 중으로부터 수동주행으로 전환되는 최초의 시점을 정확히 파악하는 것이 어려우므로, 수집된 차량의 자율주행 여부 데이터에 TOR(Take Over Request) 여부 데이터를 더 고려하여 시작시점을 예측함이 바람직하다. 예컨대, TOR 발동과 자율주행 여부를 가리키는 각 파라미터 값이 긍정값(예: 1)인 경우 두 파라미터가 모두 긍정값을 갖게 되는 최초 시점을 시작시점으로 예측할 수 있다.
또한, 수동주행이 종료되는 최초의 시점은, 수동주행 시작 이후 시점부터 차량의 이동거리값은 동일하나 차량의 전면 방향 가속도 및/또는 측면 방향 가속도가 S204 단계에서 잘린(cropped) 데이터 간 시간 간격(도 2의 S) 이후의 전면 방향 가속도 및/또는 측면 방향 가속도와 동일할 경우에 수동주행이 끝났다고 판단하고, 해당 시점을 종료시점으로 예측할 수 있다. 예컨대, 10 초인 시점에서의 전면 방향 가속도 및/또는 측면 방향 가속도가 10.25 초(S는 0.25 초로 가정)인 시점에서의 전면 방향 가속도 및/또는 측면 방향 가속도와 동일한 경우 10.25 초를 종료시점으로 예측한다. 가속도는 매우 정밀한 값이어서 수동주행 중에는 변동이 빈번하기 때문이다.
추후, 수집된 데이터로부터 검증 데이터(validation data) 및/또는 테스트 데이터(test data)를 더 추출할 수 있다. 이때, 모델의 트레이닝, 검증 및/또는 테스트에 사용되는 각 데이터는 서로 다른 운전자의 주행으로 수집된 데이터임이 바람직하다.
트레이닝 데이터는 오토인코더의 입력값 크기에 따라 일정 시간 단위(도 2의 S) 데이터로 자른다. 잘린 데이터 간의 시간 간격(도 2의 S)은 T 시간보다 적게 설정하여 각 잘린 데이터 간 데이터가 일부 중복되도록 구성하여, T 단위 데이터별 주행 안정지표를 산출한다(S204). 예컨대, T가 7.5 초이고 S가 0.25 초인 경우 트레이닝 데이터는 각각 0 초~7.5 초 데이터, 0.25 초~7.75 초 데이터 등으로 구성된다.
여기서 주행 안정지표는, 주행 안정시점을 판단하는 데 사용되는 데이터로 자율주행차량에 따라, 주행 시기와 장소 등에 따라 달라질 수 있다. 이러한 주행 안정지표로는 예컨대 최대 횡방향 가속도(maximum lateral acceleration)를 표준화(standardization)한 값일 수 있다. 이러한 최대 횡방향 가속도는 예컨대, 시뮬레이터로부터 수집된 데이터에 차량과 차선 간 거리 데이터가 포함되어 해당 데이터를 이용하여 산출한 것일 수 있으나 이에 한하지 않는다.
T 단위 데이터를 주행 안정지표의 값이 낮은 순서대로, 하위 N %(N은 기 설정된 임계치) 데이터인 학습 데이터로 오토인코더 모델을 트레이닝한다(S206). 주행 안정지표가 표준화된 값인 경우, 주행 안정지표의 값이 평균에 가까운 M %(M은 기 설정된 임계치) 데이터를 학습 데이터로 하며, 이러한 M은 1 시그마보다 작은 값임이 바람직하다.
T 단위 데이터의 하위 N %(또는 평균에 가까운 M %) 외의 데이터는 추후 오토인코더 모델을 검증하기 위한 데이터로 사용될 수 있다. 예컨대, 이러한 하위 N %(또는 평균에 가까운 M %) 데이터를 이용하여 트레이닝시킨 오토인코더 모델이 그 외 모델을 포함시켜 학습시킨 경우 대비 우수한 성능을 보이는지를 판단하는 데 사용될 수 있다.
오토인코더 모델 트레이닝 후 수집된 데이터로부터 추출된 검증 데이터를 이용하여 트레이닝된 오토인코더 모델을 검증하고, 검증 결과 오토인코더 모델의 재학습이 필요하다고 판단하는 경우 수집된 데이터로부터 최종 학습 데이터를 선별한다(S208). 여기서 최종 학습 데이터는 수집된 데이터의 데이터 유형 가운데 주행 안정시점 판단에 유의미할 것으로 판단되는 데이터를 의미한다. 오토인코더 모델의 재학습이 필요하다고 판단된 경우는, 자율주행(autonomous driving) 상태에서 수집된 검증 데이터의 로스 값과 수동주행 상태에서 수집된 검증 데이터의 로스 값 간의 차(difference)가 기 설정된 임계치 이하인 경우, 즉 오토인코더 모델의 성능이 기 설정된 임계치 이하라고 판단하는 경우이다. 이러한 경우의 예시는 도 5에서 후술한다. 최종 학습 데이터를 선별하는 예시는 도 4에서 후술한다.
학습 데이터를 이용하여 오토인코더 모델을 다시 트레이닝하거나, 트레이닝된 오토인코더 모델을 초기화한 후 트레이닝한다(S210).
오토인코더 모델을 이용하여 자율주행차량의 주행 안정시점을 판단한다(S212). 이러한 판단은 예컨대, S210 단계에서 트레이닝된 오토인코더 모델에 자율주행차량의 주행과 관련된 데이터, 바람직하게는 S208 단계에서 선별된 유형의 데이터를 입력하여 로스가 기 설정된 임계치 이하가 되는 데이터의 데이터 수집 시간을 주행 안정시점으로 판단함으로써 수행될 수 있다.
도 2에서는 과정 각 과정을 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 개시의 일 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것이다. 다시 말해, 본 개시의 일 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 개시의 일 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 2에 기재된 순서를 변경하여 실행하거나 각 과정 중 하나 이상의 과정을 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 2의 시계열적인 순서로 한정되는 것은 아니다.
도 3은 본 개시의 일 실시예에 따른 오토인코더 모델의 예시도이다.
도 3에서의 오토인코더 모델은 데이터 샘플링 레이트(data sampling rate) 20 Hz, 시간 윈도우 크기(time window size) 10 초, 슬라이딩 크기(sliding size) 2.5 초, 데이터 차원(data dimension) 9로 설정하여 차량 시뮬레이터로부터 데이터를 수집하였다. 그에 따라 200*9를 본 개시의 일 실시예에 따른 오토인코더 모델의 입력값의 크기로 하고, 출력값의 크기 또한 입력값의 크기와 동일하도록 설정(도 3에서 디코더부의 마지막 레이어의 채널 수를 input_dim, 즉 입력 뉴런(neuron)의 개수로 설정) 하였다. 단, 도 3에서의 입력 데이터 수집 방법, 입력 데이터의 사이즈, 출력 데이터의 사이즈는 실험의 용이성을 고려한 예시적인 것으로 이에 한하지 않는다.
도 3을 참조하면, 오토인코더 모델의 인코더부(도 3의 Encoder)와 디코더부(도 3의 Decoder)는 각각 5개의 컨볼루션 레이어(convolution layer)를 포함할 수 있다. 도 3에서 conv로 표현되는 컨볼루션 레이어는 디코더부의 마지막 레이어를 제외하고는 모두 leaky ReLU 함수를 활성함수(activation function)로서 사용하였고, 디코더부의 마지막 레이어만 tanh 함수를 활성함수로서 사용하였다. 또한, 원활한 학습이 진행되도록 각 레이어에는 배치 정규화(batch normalization)가 수행되었다. 각 레이어의 옵티마이저(optimizer)로는 adam optimizer를 적용하였다.
디코더부의 각 컨볼루션 레이어는 출력값이 격자꼴 패턴을 보이는 것을 방지하기 위해 전치 컨볼루션(transposed convolution) 연산이 아닌, 컨볼루션 연산과 2배 업샘플링(upsampling)이 수행되도록 하였다.
도 3에서 각 레이어의 conv 뒤에 기재된 숫자는 레이어에 적용되는 채널(channel)의 수이다. 도 3의 오토인코더 모델에서는 5*64 크기의 피쳐 벡터(feature vector)를 얻기 위하여, 인코더부의 마지막 레이어의 채널 수를 64로 설정하였다.
단, 도 3에 도시된 모델은 하나의 예시에 불과한 것으로 반드시 전술한 모델에 한정되지 않고, 각 레이어 또는 함수의 적용 여부는 필요에 따라 생략, 변경 또는 추가될 수 있다. 예컨대, 모델의 가중치(weight)를 조정하기 위하여 정규화 레이어(normalization layer) 등이 추가될 수 있다.
도 4는 본 개시의 일 실시예에 따른 최종 학습 데이터를 선별하는 방법을 나타내기 위한 예시적 그래프이다.
도 4는 각 데이터를 유형별로 플로팅(plotting)한 그래프의 일부이다.
오토인코더 모델에 재학습이 필요하다고 판단된 경우, 수집된 데이터의 데이터 유형별로, 자율주행(autonomous driving) 상태에서 수집된 데이터와 수동주행 상태에서 수집된 데이터 간의 차(difference)를 산출하여, 차가 기 설정된 임계치보다 큰 유형의 데이터를 기존의 트레이닝 데이터에서 제외함으로써 도 2의 S208 단계의 최종 학습 데이터를 구성한다.
도 4의 (a) 내지 (d)는 각각 본 개시의 오토인코더 모델로부터 산출한 차량의 속도 데이터, 차량의 가속도 데이터, 차량과 차선 간 거리 데이터 및 선행차량의 속도 데이터의 값을 각 데이터의 수집 시간에 따라 나타낸 그래프이다. 이때, 검증 데이터는 0 초에서 약 2,300 초 사이를 자율주행 구간으로 주행한 경우의 데이터이다.
도 4의 (a), (c) 및 (d)를 참조하면, 0에서 2,000 초 사이에서 데이터 값이 비교적 안정적이나, 2,300 초 이후부터 데이터 값의 변동성이 급격히 증가함을 확인할 수 있다. 즉, 도 4의 경우 차량의 속도 데이터, 차량과 차선 간 거리 데이터 및 선행차량의 속도 데이터를 최종 학습 데이터에서 제외할 수 있다.
반면, 도 4의 (b)를 참조하면, 차량 가속도 데이터의 경우 자율주행 구간의 데이터 값과 수동주행 구간의 데이터 값 간 차가 크지 않을 것으로 예상할 수 있으며, 이러한 차가 기 설정된 임계치보다 크지 않은 경우 차량 가속도 데이터는 최종 학습 데이터에서 포함된다.
도 5는 본 개시의 일 실시예에 따른 오토인코더 모델을 최종 학습 데이터로 재학습한 경우의 성능을 나타내기 위한 예시적 그래프이다.
도 5의 (a)는 운전자의 시선 데이터, 차량의 가속페달 답입량 데이터, 브레이크 페달 답입량 데이터, 차량의 종방향 속도 데이터, 차량의 가속도 데이터, 스티어링 휠의 각도 데이터, 횡방향 가속도 데이터 및 도로의 각도 데이터, 차량과 차선 간 거리 데이터, 선행차량의 속도 데이터, 선행차량까지의 거리 데이터로 트레이닝시킨 오토인코더 모델을 검증한 결과를 나타내는 로스 그래프이다. 도 5의 (b)는 전술된 최종 학습 데이터 선별 방법에 따라, 도 5의 (a)에서 오토인코더 모델이 트레이닝한 데이터에서 운전자의 시선 데이터, 차량의 종방향 속도 데이터, 차량과 차선 간 거리 데이터, 선행차량의 속도 데이터 및 선행차량까지의 거리 데이터를 제외한 데이터를 최종 학습 데이터로 트레이닝한 오토인코더 모델을 검증한 결과를 나타내는 로스 그래프이다.
이때, NoNDRT는 시뮬레이터가 데이터를 수집할 때 자율주행 구간에서 운전자에게 아무런 역할을 지시하지 않은 경우를, conversation은 자율주행 구간에서 운전자에게 대화를 지시한 경우를, drink는 자율주행 구간에서 운전자에게 물이나 음료를 마시도록 지시한 경우를 나타낸다.
도 5의 (a) 및 (b)를 참조하면, 도 5의 (a) 대비 도 5의 (b)에서 자율주행 구간에서의 로스 값과 수동주행 구간에서의 로스 값 간의 차가 명확히 드러남을 확인할 수 있다. 즉, 최종 학습 데이터를 기초로 트레이닝된 오토인코더 모델의 성능이 기존의 트레이닝 데이터를 기초로 트레이닝된 오토인코더 모델의 성능 대비 우수함을 알 수 있다. 이러한 로스 값의 차는 자율주행 구간에서 수동주행 구간으로 전환된 직후에 가장 크게 나타남을 알 수 있으며, 이러한 차를 기초로 주행 안정시점을 판단할 수 있다.
본 명세서에 설명되는 장치, 부(unit), 과정, 단계 등의 다양한 구현예들은, 디지털 전자 회로, 집적 회로, FPGA(field programmable gate array), ASIC(application specific integrated circuit), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현예들은 프로그래밍 가능 시스템상에서 실행 가능한 하나 이상의 컴퓨터 프로그램들로 구현되는 것을 포함할 수 있다. 프로그래밍 가능 시스템은, 저장 시스템, 적어도 하나의 입력 디바이스, 그리고 적어도 하나의 출력 디바이스로부터 데이터 및 명령을 수신하고 이들에게 데이터 및 명령을 전송하도록 결합된 적어도 하나의 프로그래밍 가능 프로세서(이것은 특수 목적 프로세서일 수 있거나 혹은 범용 프로세서일 수 있음)를 포함한다. 컴퓨터 프로그램들(이것은 또한 프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 혹은 코드로서 알려져 있음)은 프로그래밍 가능 프로세서에 대한 명령어들을 포함하며 "컴퓨터가 읽을 수 있는 기록매체"에 저장된다.
컴퓨터가 읽을 수 있는 기록매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체는 ROM, CD-ROM, 자기 테이프, 플로피디스크, 메모리 카드, 하드 디스크, 광자기 디스크, 스토리지 디바이스 등의 비휘발성(non-volatile) 또는 비 일시적인(non-transitory) 매체 또는 데이터 전송 매체(data transmission medium)와 같은 일시적인(transitory) 매체를 더 포함할 수도 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다.
본 명세서에 설명되는 시스템들 및 기법들의 다양한 구현예들은, 프로그램가능 컴퓨터에 의하여 구현될 수 있다. 여기서, 컴퓨터는 프로그램가능 프로세서, 데이터 저장 시스템(휘발성 메모리, 비휘발성 메모리, 또는 다른 종류의 저장 시스템이거나 이들의 조합을 포함함) 및 적어도 한 개의 커뮤니케이션 인터페이스를 포함한다. 예컨대, 프로그램가능 컴퓨터는 서버, 네트워크 기기, 셋톱박스, 내장형 장치, 컴퓨터 확장 모듈, 개인용 컴퓨터, 랩톱, PDA(Personal Data Assistant), 클라우드 컴퓨팅 시스템 또는 모바일 장치 중 하나일 수 있다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (11)

  1. 자율주행차량(autonomous driving vehicle)의 운전제어권(drive control)이 운전자에게 전환된 경우에 주행 안정시점(time of stable driving)을 판단하는 방법에 있어서,
    시뮬레이터(simulator)로부터 운전자 관련 데이터, 주행 관련 데이터 및 환경 관련 데이터의 전부 또는 일부를 포함하는 수집 데이터를 수집하는 과정;
    상기 수집 데이터로부터 수동주행(manual driving) 상태에서 수집된 데이터의 전부 또는 일부를 트레이닝 데이터로서 추출하는 과정;
    상기 트레이닝 데이터를 기 설정된 시간 단위인 T 시간 단위의 데이터로 자르고(crop) T 시간 단위 데이터별 주행 안정지표를 산출하는 과정; 및
    상기 T 시간 단위 데이터 중에서 주행 안정지표가 가장 작은 하위 N %(N은 기 설정된 임계치) 데이터인 학습 데이터를 입력 데이터로 하여 오토인코더 모델(auto-encoder model)을 트레이닝하는 과정
    을 포함하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법.
  2. 제1항에 있어서,
    트레이닝된 오토인코더 모델로부터 로스(loss) 데이터를 추출하고, 상기 로스 데이터를 기초로 차량의 주행 안정시점을 판단하는 과정
    을 더 포함하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법.
  3. 제2항에 있어서,
    상기 주행 안정시점을 판단하는 과정은,
    상기 로스 데이터의 값이 기 설정된 임계치 이하가 되는 시점을 상기 주행 안정시점으로 판단하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법.
  4. 제1항에 있어서,
    상기 수집 데이터로부터 검증 데이터(validation data)를 추출하고, 상기 검증 데이터를 이용하여 트레이닝된 오토인코더 모델을 검증하여 상기 트레이닝된 오토인코더 모델의 재학습이 필요하다고 판단하는 경우, 상기 수집 데이터 중 최종 학습 데이터를 선별하여 트레이닝된 오토인코더 모델을 초기화하여 트레이닝하거나, 다시 트레이닝하는 과정
    을 더 포함하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법.
  5. 제4항에 있어서,
    상기 최종 학습 데이터의 선별은,
    상기 검증 데이터의 데이터 유형별로 차량이 자율주행(autonomous driving) 상태에 있을 때 수집된 데이터의 값과 수동주행 상태에 있을 때 수집된 데이터의 값 간의 차(difference)를 산출하여, 산출된 차가 기 설정된 임계치보다 큰 유형의 데이터를 상기 최종 학습 데이터에서 제거함으로써 수행되는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법.
  6. 제1항에 있어서,
    상기 운전자 관련 데이터는 운전자의 시선 데이터(eye tracking data)를 포함하고,
    상기 주행 관련 데이터는 차량의 가속페달 답입량 데이터(accelerator pedal stroke intensity data), 상기 차량의 브레이크 페달 답입량 데이터(accelerator brake stroke intensity data), 상기 차량의 속도 데이터(speed data), 상기 차량의 가속도 데이터(acceleration data), 상기 차량의 스티어링 휠의 각도 데이터(steering wheel angle data), 상기 스티어링 휠의 속도 데이터(steering wheel speed data), 상기 스티어링 휠의 토크 데이터(steering wheel torque data) 및 상기 차량의 주행 차선 데이터(driving lane data)의 전부 또는 일부를 포함하고,
    상기 환경 관련 데이터는 도로의 각도 데이터(road angle data), 상기 차량과 차선 간 거리 데이터(lane distance data), 선행차량의 속도 데이터(preceding vehicle speed data), 상기 선행차량까지의 거리 데이터(preceding vehicle distance data), 상기 차량의 운전제어권 전환 요청 여부 데이터 및 상기 차량의 자율주행 여부 데이터를 전부 또는 일부 포함하는 것
    을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법.
  7. 제1항에 있어서,
    상기 수집 데이터를 수집하는 과정은,
    상기 시뮬레이터로부터 수집한 데이터를 기초로 차량의 주행 중 수동주행이 수행되는 시작시점 및 종료시점을 예측하여, 상기 시뮬레이터로부터 수집한 데이터 중 상기 시작시점과 상기 종료시점 사이의 데이터를 상기 수집 데이터로서 수집하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법.
  8. 제1항에 있어서,
    상기 T 시간 단위 데이터 간은, T 시간 단위보다 작은 시간 단위인 S 시간 단위만큼 떨어져 있는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단 방법.
  9. 제1항에 있어서,
    상기 수집 데이터는 차량과 차선 간 거리 데이터를 포함하고,
    상기 주행 안정지표를 산출하는 과정은,
    상기 차량과 차선 간 거리 데이터를 연속적인 데이터로 전처리하여 상기 주행 안정지표로서, 최대 횡방향 가속도(maximum lateral acceleration)를 표준화(standardization)하여 산출하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법.
  10. 제9항에 있어서,
    상기 트레이닝하는 과정은,
    상기 T 시간 단위 데이터 중에서 표준화된 최대 횡방향 가속도가 평균에서 가장 근접한 M %(M은 기 설정된 임계치) 데이터를 상기 학습 데이터로 하여 상기 오토인코더 모델을 트레이닝하는 것을 특징으로 하는 자율주행차량의 주행 안정시점 판단방법.
  11. 제1항 내지 제10항 중 어느 한 항에 따른 자율주행차량의 주행 안정시점 판단방법이 포함하는 각 과정을 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터 프로그램.
KR1020200147271A 2019-11-11 2020-11-06 자율주행차량의 주행 안정시점 판단방법 및 컴퓨터 프로그램 KR102379692B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20190143109 2019-11-11
KR1020190143109 2019-11-11

Publications (2)

Publication Number Publication Date
KR20210056915A KR20210056915A (ko) 2021-05-20
KR102379692B1 true KR102379692B1 (ko) 2022-03-29

Family

ID=76142939

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200147271A KR102379692B1 (ko) 2019-11-11 2020-11-06 자율주행차량의 주행 안정시점 판단방법 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR102379692B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6551604B2 (ja) 2016-05-27 2019-07-31 日産自動車株式会社 運転制御方法及び運転制御装置
JP2019525301A (ja) 2016-06-24 2019-09-05 スイス リインシュランス カンパニー リミテッド 自動化されたリスク制御システムを含む自律的又は部分的に自律的な自動車及びそれに対応する方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170053799A (ko) * 2015-11-06 2017-05-17 고려대학교 산학협력단 자율 주행 차량의 안전성 제공 장치 및 방법
KR102137213B1 (ko) * 2015-11-16 2020-08-13 삼성전자 주식회사 자율 주행을 위한 모델 학습 장치 및 방법과 자율 주행 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6551604B2 (ja) 2016-05-27 2019-07-31 日産自動車株式会社 運転制御方法及び運転制御装置
JP2019525301A (ja) 2016-06-24 2019-09-05 スイス リインシュランス カンパニー リミテッド 自動化されたリスク制御システムを含む自律的又は部分的に自律的な自動車及びそれに対応する方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
박성호,정하림,김경현,윤일수, 고속도로 자율주행자동차 제어권 전환 안전성 평가를 위한 시나리오 개발, 한국ITS학회, 2018.4*
박진혁,이민석,장영재, 자율주행자동차의 제어권 전환시 운전준비도 평가를 위한 개별 운전자의 안정 주행 패턴 분류, 대한산업공학회, 2018.11*

Also Published As

Publication number Publication date
KR20210056915A (ko) 2021-05-20

Similar Documents

Publication Publication Date Title
CN107697070B (zh) 驾驶行为预测方法和装置、无人车
CN107491072B (zh) 车辆避障方法和装置
CN109885033B (zh) 车辆控制指令的安全处理方法和装置
EP3617966B1 (en) Data processing method, apparatus and readable storage medium for evaluating ride comfortability
JP2019043495A (ja) 自動運転調整装置、自動運転調整システム、及び自動運転調整方法
EP3647140B1 (en) Vehicle control method, device, and apparatus
KR102373430B1 (ko) 자율 주행 차량의 사용자에게 캘리브레이션된 맞춤형 및 적응형 딥러닝 모델을 제공하는 방법 및 장치
CN112249032B (zh) 一种自动驾驶决策方法、系统、设备及计算机存储介质
WO2020180014A3 (ko) 심층 강화 학습에 기반한 자율주행 에이전트의 학습 방법 및 시스템
US11994862B2 (en) Method and system for training reinforcement learning agent using adversarial sampling
CN113561986B (zh) 自动驾驶汽车决策方法及装置
US12005922B2 (en) Toward simulation of driver behavior in driving automation
JP7273635B2 (ja) 自動車画像の処理方法、自動車画像の処理装置及びコンピュータ読み取り可能な記憶媒体
CN105225660A (zh) 语音系统的适应方法和系统
CN112464577B (zh) 车辆动力学模型的构建及车辆状态信息预测方法、装置
US20170329340A1 (en) Motor vehicle control apparatus and method for operating a control apparatus for autonomously driving a motor vehicle
US20230331250A1 (en) Method and apparatus for configuring deep learning algorithm for autonomous driving
KR102379692B1 (ko) 자율주행차량의 주행 안정시점 판단방법 및 컴퓨터 프로그램
US20230236088A1 (en) Computer-aided method and device for predicting speeds for vehicles on the basis of probability
CN109685214B (zh) 一种驾驶模型训练方法、装置和终端设备
CN113022520A (zh) 自适应刹车方法、设备和存储介质
CN116461507A (zh) 一种车辆驾驶决策方法、装置、设备和存储介质
CN116653957A (zh) 一种变速变道方法、装置、设备及存储介质
CN111738046A (zh) 对用于基于深度学习的装置的学习的虚拟世界模拟器的物理引擎进行标定的方法及装置
CN114139342A (zh) 一种强化学习自动驾驶测试方法及系统

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant