KR20200095590A - 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치 - Google Patents

심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치 Download PDF

Info

Publication number
KR20200095590A
KR20200095590A KR1020190007345A KR20190007345A KR20200095590A KR 20200095590 A KR20200095590 A KR 20200095590A KR 1020190007345 A KR1020190007345 A KR 1020190007345A KR 20190007345 A KR20190007345 A KR 20190007345A KR 20200095590 A KR20200095590 A KR 20200095590A
Authority
KR
South Korea
Prior art keywords
reinforcement learning
driver assistance
vehicle
assistance system
image data
Prior art date
Application number
KR1020190007345A
Other languages
English (en)
Other versions
KR102166811B1 (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 KR1020190007345A priority Critical patent/KR102166811B1/ko
Publication of KR20200095590A publication Critical patent/KR20200095590A/ko
Application granted granted Critical
Publication of KR102166811B1 publication Critical patent/KR102166811B1/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
    • 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
    • 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/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18163Lane change; Overtaking manoeuvres
    • 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
    • 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/10Estimation 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 vehicle motion
    • 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
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • 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
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/408Radar; Laser, e.g. lidar
    • B60W2420/42
    • B60W2420/52
    • 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
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/06Direction of travel
    • 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
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • 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
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/12Lateral speed
    • 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
    • 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/18Propelling the vehicle
    • B60Y2300/18008Propelling the vehicle related to particular drive situations
    • B60Y2300/18166Overtaking, changing lanes

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Traffic Control Systems (AREA)

Abstract

심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치가 제시된다. 일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법은, 측정된 센서 데이터 및 촬영된 이미지 데이터를 심층강화학습(deep reinforcement learning) 알고리즘으로 입력 받는 단계; 상기 심층강화학습 알고리즘에서 입력 받은 상기 센서 데이터 및 상기 이미지 데이터를 이용하여 차량 제어를 위한 행동을 결정하는 단계; 및 결정된 상기 행동에 따라 운전자보조시스템(Driver Assistance Systems, DAS)을 선택하여 차량을 제어하는 단계를 포함하여 이루어질 수 있다.

Description

심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치{Method and Apparatus for Controlling of Autonomous Vehicle using Deep Reinforcement Learning and Driver Assistance System}
아래의 실시예들은 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치에 관한 것이다.
자율주행차량의 안전한 주행에 관한 연구들은 최근 몇 년간 많이 발전해왔다. 안전 자율주행에 관한 가장 중요한 주제 중 하나는 운전자에게 안전성과 편안함을 제공할 수 있는 운전 정책(driving policy)을 찾는 것이다. 이 문제의 어려움은 운전 정책이 다양한 도로 상황과 쉽게 변할 수 있는 차량 파라미터들에 대해 강건성을 가져야 한다는 것이다.
기존 자율주행차량 주행의 경우 인지, 계획, 제어의 단계를 거쳐 진행된다. 먼저 센서를 통해 주변 차량, 도로 및 환경에 대한 정보를 인지하고 이를 바탕으로 차량이 주행할 경로를 계획한다. 마지막으로 최종 경로가 결정되면 해당 경로를 따라갈 수 있도록 차량 제어를 수행한다. 이때 자율주행차량의 제어의 경우 일반적으로 제어에서 사용되는 PID, 슬라이딩 모드 제어(sliding mode control), 모델 예측 제어(model predictive control) 등의 기법을 통해 직접적으로 핸들이나 브레이크, 엑셀 등을 제어하게 된다.
강화학습을 통해서 자율주행차량을 제어하려는 시도도 과거에 존재했다. 대부분의 경우 강화학습을 이용하여 직접적으로 차량의 핸들, 브레이크, 액셀러레이터(accelerator) 등을 제어하는 방법이었으며, 운전자가 설정한 목표를 따라 최적의 제어 값을 도출하는 방식으로 학습을 진행하였다.
그러나, 종래 기술의 경우 인지, 판단 그리고 제어의 부분에 있어 모든 것을 사람이 직접 결정하여 설정하는 룰-기반(rule-based)이다. 이런 경우 설계자가 고려한 상황에 대해서는 잘 대응하고 제어할 수 있지만, 고려하지 못한 특별한 상황이 생기는 경우 이에 대한 대처가 어렵다. 자율주행차량의 주행은 확률적이며 다양한 상황이 발생할 수 있는 환경이다. 이에 따라 사람이 주행 중에 일어날 수 있는 모든 상황에 대해 대응하는 것은 매우 어려운 일이다.
또한 기존에도 강화학습을 이용해서 차량을 제어하려는 시도가 있었다. 이런 기법들은 직접적으로 차량의 핸들, 브레이크 및 엑셀을 제어하려고 하였다. 강화학습의 경우 학습이 완료되더라도 불안정한 움직임을 보일 가능성이 있다. 이에 따라 강화학습을 이용하여 직접적으로 제어하는 것은 사람이 느끼기에 불안정한 제어를 할 수 있으며 경우에 따라 위험한 상황을 발생시킬 수 있다.
V. Mnih, K. Kavukcuoglu, D. Silver, A. A. Rusu, J. Veness, M. G. Bellemare, A. Graves, M. Riedmiller, A. K. Fidjeland, G. Ostrovski, et al., "Human-level control through deep reinforcement learning," Nature, vol. 518, no. 7540, p. 529, 2015. H. Van Hasselt, A. Guez, and D. Silver, "Deep reinforcement learning with double q-learning." in AAAI, vol. 16, 2016, pp. 2094-2100. Z. Wang, T. Schaul, M. Hessel, H. Van Hasselt, M. Lanctot, and N. De Freitas, "Dueling network architectures for deep reinforcement learning," arXiv preprint arXiv:1511.06581, 2015. D. P. Kingma and J. Ba, "Adam: A method for stochastic optimization," arXiv preprint arXiv:1412.6980, 2014. M. Abadi, P. Barham, J. Chen, Z. Chen, A. Davis, J. Dean, M. Devin, S. Ghemawat, G. Irving, M. Isard, et al., "Tensorflow: A system for large-scale machine learning." in OSDI, vol. 16, 2016, pp. 265-283.
실시예들은 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치에 관하여 기술하며, 보다 구체적으로 심층강화학습(deep reinforcement learning)을 이용한 최적의 행동을 결정하는 알고리즘을 통해 다양한 상황에 적절한 운전자보조시스템을 결정하여 자율주행차량을 제어하는 기술을 제공한다.
실시예들은 심층강화학습 알고리즘을 기반으로 어떤 운전자보조시스템을 선택할지 결정하는 시스템을 이용하여 매 상황에 맞는 차량의 행동을 선택하며 그에 따라 차량을 제어함으로써, 자율주행차량의 제어의 경로 계획 및 제어를 안정적으로 수행할 수 있는 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치를 제공하는데 있다.
일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법은, 측정된 센서 데이터 및 촬영된 이미지 데이터를 심층강화학습(deep reinforcement learning) 알고리즘으로 입력 받는 단계; 상기 심층강화학습 알고리즘에서 입력 받은 상기 센서 데이터 및 상기 이미지 데이터를 이용하여 차량 제어를 위한 행동을 결정하는 단계; 및 결정된 상기 행동에 따라 운전자보조시스템(Driver Assistance Systems, DAS)을 선택하여 차량을 제어하는 단계를 포함하여 이루어질 수 있다.
상기 측정된 센서 데이터 및 촬영된 이미지 데이터를 심층강화학습 알고리즘으로 입력 받는 단계는, 차량에 구성된 LIDAR 센서를 통해 측정된 상기 센서 데이터와 카메라를 통해 촬영된 이미지 데이터를 심층강화학습 알고리즘으로 입력 받을 수 있다.
상기 차량 제어를 위한 행동을 결정하는 단계는, 입력 받은 상기 센서 데이터 및 상기 이미지 데이터를 각각 정제하는 단계; 정제된 상기 센서 데이터 및 상기 이미지 데이터를 연결하여 연결된 데이터를 형성하는 단계; 상기 연결된 데이터를 상기 심층강화학습 알고리즘의 완전히 연결된 레이어(fully connected layer)에 입력하여 Q 값을 구하는 단계; 및 상기 Q 값에 따라 행동을 결정하는 단계를 포함할 수 있다.
상기 센서 데이터 및 상기 이미지 데이터를 각각 정제하는 단계는, 상기 센서 데이터를 LSTM(Long Short-Term Memory)을 사용하여 정제하는 단계; 및 상기 이미지 데이터를 CNN(Convolutional Neural Network)을 사용하여 정제하는 단계를 포함할 수 있다.
상기 완전히 연결된 레이어에 입력하여 Q 값을 구하는 단계는, 상기 완전히 연결된 레이어를 상태 값과 각 행동에 대한 이점을 평가하는 행동 이점의 2 개의 파트로 나눈 네트워크를 이용하고, 상기 상태 값과 상기 행동 이점을 통합하여 상기 Q 값을 구할 수 있다.
상기 차량 제어를 위한 행동을 결정하는 단계는, 차량이 종 방향과 횡 방향으로 동시에 운전 가능하도록, 목표 속도 증가, 목표 속도 감소, 좌측으로 차선 변경, 우측으로 차선 변경, 현재 상태 유지의 5가지 행동을 포함할 수 있다.
상기 심층강화학습 알고리즘을 최적의 운전 정책으로 학습시키는 단계를 더 포함할 수 있다.
상기 심층강화학습 알고리즘을 최적의 운전 정책으로 학습시키는 단계는, 상기 행동의 결과에 따라 보상을 설계하여 차량의 고속 주행, 충돌하지 않는 궤적으로의 주행 및 불필요한 차선 변경 배제에 기반한 최적의 운전 정책을 찾고, 상기 운전 정책으로 상기 심층강화학습 알고리즘을 학습시킬 수 있다.
다른 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치는, 측정된 센서 데이터 및 촬영된 이미지 데이터를 심층강화학습(deep reinforcement learning) 알고리즘으로 입력 받는 입력부; 상기 심층강화학습 알고리즘에서 입력 받은 상기 센서 데이터 및 상기 이미지 데이터를 이용하여 차량 제어를 위한 행동을 결정하는 심층강화학습부; 및 결정된 상기 행동에 따라 운전자보조시스템(Driver Assistance Systems, DAS)을 선택하여 차량을 제어하는 차량 제어부를 포함하여 이루어질 수 있다.
상기 입력부는, 차량에 구성된 LIDAR 센서를 통해 측정된 상기 센서 데이터와 카메라를 통해 촬영된 이미지 데이터를 심층강화학습 알고리즘으로 입력 받을 수 있다.
상기 심층강화학습부는, 입력 받은 상기 센서 데이터를 정제하는 센서 데이터 정제부; 입력 받은 상기 이미지 데이터를 정제하는 이미지 데이터 정제부; 정제된 상기 센서 데이터 및 상기 이미지 데이터를 연결하여 연결된 데이터를 형성하는 연결 데이터 형성부; 상기 연결된 데이터를 상기 심층강화학습 알고리즘의 완전히 연결된 레이어(fully connected layer)에 입력하여 Q 값을 구하는 완전히 연결된 레이어부; 및 상기 Q 값에 따라 행동을 결정하는 행동 결정부를 포함할 수 있다.
상기 센서 데이터 정제부는, 상기 센서 데이터를 LSTM(Long Short-Term Memory)을 사용하여 정제하고, 상기 이미지 데이터 정제부는, 상기 이미지 데이터를 CNN(Convolutional Neural Network)을 사용하여 정제할 수 있다.
상기 완전히 연결된 레이어부는, 상기 완전히 연결된 레이어를 상태 값과 각 행동에 대한 이점을 평가하는 행동 이점의 2 개의 파트로 나눈 네트워크를 이용하고, 상기 상태 값과 상기 행동 이점을 통합하여 상기 Q 값을 구할 수 있다.
상기 차량 제어부는, 차량이 종 방향과 횡 방향으로 동시에 운전 가능하도록, 목표 속도 증가, 목표 속도 감소, 좌측으로 차선 변경, 우측으로 차선 변경, 현재 상태 유지의 5가지 행동을 포함할 수 있다.
상기 심층강화학습부는, 상기 행동의 결과에 따라 보상을 설계하여 차량의 고속 주행, 충돌하지 않는 궤적으로의 주행 및 불필요한 차선 변경 배제에 기반한 최적의 운전 정책을 찾고, 상기 운전 정책으로 상기 심층강화학습 알고리즘을 학습시킬 수 있다.
실시예들에 따르면 심층강화학습을 이용한 최적의 행동을 결정하는 알고리즘을 통해 다양한 상황에 적절한 운전자보조시스템을 결정하여 자율주행차량을 제어하는 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치를 제공할 수 있다.
실시예들에 따르면 심층강화학습 알고리즘을 기반으로 어떤 운전자보조시스템을 선택할지 결정하는 시스템을 이용하여 매 상황에 맞는 차량의 행동을 선택하며 그에 따라 차량을 제어함으로써, 자율주행차량의 제어의 경로 계획 및 제어를 안정적으로 수행할 수 있는 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치를 제공할 수 있다.
도 1은 일 실시예에 따른 차량의 센서 및 카메라의 구성을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 주변 차량에 대한 LIDAR 센서의 예를 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 느린 차량의 추월에 따른 즉각적인 보상을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 시뮬레이터 예시를 나타내는 도면이다.
도 5는 일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법을 나타내는 흐름도이다.
도 6은 일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치의 구조를 개략적으로 나타내는 도면이다.
도 7은 일 실시예에 따른 운전 정책을 결정하는 알고리즘을 통한 평균 속도의 예를 나타내는 도면이다.
도 8은 일 실시예에 따른 운전 정책을 결정하는 알고리즘을 통한 평균 차선 변경 횟수의 예를 나타내는 도면이다.
도 9는 일 실시예에 따른 운전 정책을 결정하는 알고리즘을 통한 평균 추월 수의 예를 나타내는 도면이다.
이하, 첨부된 도면을 참조하여 실시예들을 설명한다. 그러나, 기술되는 실시예들은 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 이하 설명되는 실시예들에 의하여 한정되는 것은 아니다. 또한, 여러 실시예들은 당해 기술분야에서 평균적인 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위해서 제공되는 것이다. 도면에서 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
최근 다양한 운전자보조시스템(Driver Assistance Systems, DAS)의 상용화에 따라 대부분의 차량들이 부분적으로 스마트 크루즈 컨트롤(Smart Cruise Control, SCC), 차선 유지 시스템(Lane Keeping System, LKS)과 같은 자율주행차량의 기능을 가지게 되었다. 한편, 고속도로와 같은 한정된 상황에서는 운전자보조시스템(DAS)들을 잘 조합하여 이용하는 것만으로 운전자의 개입 없이 자동으로 주행하는 것이 가능하다. 이런 자율주행기능 구현을 위해서는 적절한 시점에 적절한 운전자보조시스템(DAS) 기능을 선택할 수 있어야 한다.
아래의 실시예들은 심층강화학습(deep reinforcement learning)을 통해 적절한 운전자보조시스템(DAS)을 선택하는 감독자(supervisor)를 학습시키는 기술을 제공할 수 있다. 운전 정책(driving policy)은 자율주행차량에서 접근 가능한 카메라 이미지들과 LIDAR 데이터를 기반으로 작동할 수 있다.
보다 구체적으로, 실시예들은 기존 운전자보조시스템(DAS) 및 심층강화학습을 이용한 자율주행 프레임을 제공한다. 제안된 기술은 차선 변경과 함께 평균 속도 및 추월 수를 최대화하는 차선 유지, 차선 변경 및 크루즈 컨트롤과 같은 운전자보조시스템(DAS) 기능을 결정할 수 있다. 행동 공간(action space)은 행동 레벨(behavior level)에 따라 정의되며 운전 정책은 차선 유지, 차선 변경 및 크루즈 컨트롤과 같은 행동 레벨을 결정하기 위해 학습될 수 있다.
차량이 기존의 상용화된 운전자보조시스템(DAS) 중 핵심적인 기능들을 기반으로 거동하기 때문에 스로틀(throttle), 브레이크(brake) 및 스티어링(steering) 값을 직접 학습하는 방법과 달리 주행의 안전성을 보장할 수 있다. 운전 정책은 자율주행차량에서 쉽게 접근이 가능한 카메라 이미지와 LIDAR 데이터를 기반으로 작동하도록 설계될 수 있다. Unity를 통해 도로와 다수 차량의 움직임을 구현한 시뮬레이터를 제작하였으며, 이를 이용하여 심층강화학습 알고리즘의 학습 및 검증을 수행할 수 있다.
마르코프 결정 프로세스(Markov Decision Processes, MDP)는 의사 결정(decision making)을 위한 수학적 프레임워크로, 상태 집합(set of states) S, 행동 집합(set of actions) A, 전이 모델(transition model) T, 보상 함수(reward function) R, 할인 계수(discount factor)
Figure pat00001
의 튜플(tuple) <S, A, T, R,
Figure pat00002
>로 정의될 수 있다. MDP에서 풀고자 하는 문제는 의사 결정을 위한 정책(policy)
Figure pat00003
를 찾는 문제로 주어진 보상 함수 R에 대해 예상 합(expected sum)
Figure pat00004
를 최대화하는
Figure pat00005
를 찾는 것이다.
한편, 최근의 심층강화학습에서는 효과적으로 심층신경망(Deep Neural Network, DNN)를 큰 데이터 셋으로부터 안정적으로 학습시킬 수 있게 되면서 직접 상태(state) St를 알지 않더라도, 원 입력(raw input)으로부터 취득한 고정 상태 표현(fixed state representation)
Figure pat00006
를 이용하여 MDP를 풀 수 있게 되었다. 실제로 컴퓨터 비전 분야에서는 손으로 만들어진 특징(handcrafted feature)을 사용하는 것보다 신경망을 통해 보다 나은 표현(representation)을 학습할 수 있다.
운전 정책의 학습은 MDP를 기반으로 주변 차량 및 차선을 포함한 주변 환경에 대해 호스트 차량(host vehicle)이 상호작용하며 진행된다. 심층강화학습이 표현(representation) 자체를 잘 배울 수 있다는 장점을 활용하여 운전 정책 학습을 위한 관측 상태(observation states) S, 행동 공간(action space) A, 보상 함수 R를 다음과 같이 정의할 수 있다.
도 1은 일 실시예에 따른 차량의 센서 및 카메라의 구성을 설명하기 위한 도면이다.
도 1을 참조하면, 일 실시예에서는 차량(100)의 센서 데이터와 카메라 데이터를 이용하여 관측 상태(observation states)를 구성할 수 있다.
센서는 측방을 탐지하는 LIDAR를 모사하는 센서로, 특정 각도로 입자를 발사하여 센서 커버리지(110)에서 입자가 어떤 물체와 충돌한 거리를 반환할 수 있다.
그리고, 카메라는 차량의 전방 및 후방 중 적어도 어느 하나 이상에 위치하여 전후방 이미지 정보(120)를 제공할 수 있다. 이렇게 얻은 센서 데이터와 카메라 데이터를 처리하는 2개의 네트워크 모델이 각각 존재하며, 각 모델의 결과를 통해 정제된 정보를 결합하여 심층강화학습의 입력(input)인 관측(observation)으로 이용할 수 있다.
도 2는 일 실시예에 따른 주변 차량에 대한 LIDAR 센서의 예를 설명하기 위한 도면이다.
도 2에 도시된 바와 같이, 예컨대, 차량(200)의 좌우측을 각각 90도의 범위로 감지하며 1도마다 광선(ray)(210)을 하나씩 발사할 수 있다. LIDAR 센서로부터 각 1 도에 대한 장애물까지의 거리를 얻을 수 있으며, 전면(frontside)의 원 이미지(raw image)도 관측을 구성하기 위해 얻을 수 있다.
LIDAR로부터의 범위 데이터(range data)와 카메라로부터의 이미지 데이터가 완전히 다른 특성을 가지므로, 다중 모달(multi-modal) 입력 방식을 갖는 네트워크가 사용될 수 있다.
운전 정책을 위한 행동 공간(action space)은 별개의 행동 공간(discrete action space)에서 정의될 수 있다. 이 행동(action)들은 기존의(conventional) 운전자보조시스템(DAS) 기반에서 수행되기 때문에 운전자보조시스템(DAS)의 기능을 우선적으로 수행하는 범위 내에서 행동(action)을 수행할 수 있다.
종 방향의 경우, 세 가지 종류의 행동이 있다. 1) 여기서, 속도 v + v cc로 크루즈 컨트롤(cruise control)되며, 여기서 v cc는 5km/h로 설정된 추가 목표 속도일 수 있다. 2) 현재 속도 v로 크루즈 컨트롤될 수 있고, 3) 속도 v - v cc로 크루즈 컨트롤될 수 있다. 이러한 종 방향의 행동들은 자율 비상 제동(Autonomous Emergency Braking, AEB) 및 적응형 크루즈 컨트롤(Adaptive Cruise Control, ACC)을 포함할 수 있다. 이와 같이 종 방향의 행동들을 통해 목표 속도를 증가시키거나 감소시키는 행동(action)을 수행하며, 목표 속도에 따라 주행을 하지만 앞차와의 충돌이 발생할만한 위험 상황의 경우 차량이 감속 제어를 하여 충돌을 방지할 수 있다.
횡 방향의 경우, 1) 차선 유지, 2) 좌측 차선 변경, 및 3) 우측 차선 변경의 세 가지 종류의 행동이 있다. 횡 방향의 행동에서, 좌우측 차선 변경의 행동(action)을 수행하지만 호스트 차량의 좌측 일정 거리 안에 차량이 존재할 시에 차선 변경에 대한 운전자보조시스템(DAS)이 동작하여 좌측 방향 차선 변경 행동(action)을 주어도 차량이 좌측으로 이동하지 않는다. 우측의 경우도 좌측과 동일하게 동작할 수 있다. 또한, 현재 상태를 유지하는 행동(action)을 수행하는 경우 차선의 중앙을 맞추는 제어를 수행하게 된다.
이에 따라 자율주행차량은 종 방향과 횡 방향으로 동시에 운전해야 하므로, 목표 속도 증가, 목표 속도 감소, 좌측 차선 변경, 우측 차선 변경, 현재 상태 유지의 5가지 행동(action)을 포함할 수 있다. 운전 정책은 종방향 안정성을 기본적으로 보장하는 기존의 운전자보조시스템(DAS) 시스템을 그대로 이용하여 강건성을 확보할 수 있다.
강화학습과 관련하여 행동(action)을 선택하게 되면 행동(action)의 결과로 보상을 받게 된다. 상술한 바와 같이, MDP 상에서 풀고자 하는 문제는 미래 보상의 기댓값을 최대화하는 운전 정책을 찾는 것이다. 즉, 보상 정책의 설계 방법에 따라 최적의 운전 정책이 완전히 달라질 수 있다. 따라서 자율주행차량의 적절한 운전 정책을 학습하기 위해 보상을 적절하게 설계하는 것이 중요하다.
차량이 조밀한(dense) 교통 상황을 주행할 때 다음 세 가지 조건을 만족시키는 것이 바람직하다. 세 가지 조건은 1) 차량을 고속 주행시키는 정책을 찾는 것, 2) 충돌하지 않는 궤적으로 주행하는 것, 및 3) 너무 자주 차선을 변경하지 않는 것이다. 이러한 세 가지 조건을 만족시키는 보상을 설계하였으며, 다음 식과 같이 나타낼 수 있다.
[수학식 1]
Figure pat00007
[수학식 2]
Figure pat00008
[수학식 3]
Figure pat00009
[수학식 4]
Figure pat00010
[수학식 5]
Figure pat00011
여기서, v는 차량의 현재 속도, v max 는 적정 최고 속도, v min 는 적정 최저 속도이다. 또한, r v,max 는 최고 속도로 주행시의 보상이고, v lc 는 차선 변경 시 페널티(penalty) 값이고, r collision 은 충돌 시 에이전트(agent)가 받는 페널티(penalty) 값이며, r overtake 은 다른 차량을 추월하는 것에 대한 보상이다.
안전의 측면에서, 충돌은 차량 운전 시 가장 피해야 할 행동이므로, r collision 값은 다른 어떤 보상 값들 보다 더 큰 값을 부여하여 충돌하는 행동을 최우선적으로 방지할 수 있다. 그리고 적정 최고 속도 v max 이하에서는 최대한 빠르게 주행하는 것이 바람직하므로 적정 최고 속도 이하에서는 현재 속도에 따라 선형 보상을 취득할 수 있다. 최적의 운전 정책은 호스트 차량(host vehicle)이 느린 주행 차량들을 추월하도록 할 수 있다. 마지막으로, 차선은 변경하는 행동을 너무 자주 하는 것을 바람직한 일이 아니므로, 불필요한 차선 변경 없이 운전하는 법을 학습하도록 r lc (또는 r lanechange ) 값을 설정할 수 있다.
표 1은 보상에 대한 파라미터를 정의할 수 있다.
[표 1]
Figure pat00012
도 3은 일 실시예에 따른 느린 차량의 추월에 따른 즉각적인 보상을 설명하기 위한 도면이다.
도 3을 참조하면, 느린 차량의 추월에 따른 즉각적인 보상에 대한 예시이며, 느린 차량을 추월하기 위해 60km/h로 주행하던 차량이 차선을 변경하고, 이후 70km/h로 더 빨리 주행했을 때 받는 r tot 값의 예를 나타낸다. 여기서 보상은 차선 변경과 함께 감소하지만, 속도 증가 및 추월과 함께 증가할 수 있다.
심층신경망과 강화학습을 결합한 심층강화학습이 다양하게 연구되었다. 특히 DQN을 기초로 하는 가치 기반(value-based) 심층강화학습의 경우, 이를 발전시키는 많은 수의 연구들이 수행되었다. 여기에서는 다양한 가치 기반 심층강화학습 알고리즘 중 DQN(비특허문헌 1), Double DQN(비특허문헌 2), Dueling DQN(비특허문헌 3)을 이용하여 자율주행 에이전트(agent)의 도출 및 결과 비교를 수행할 것이다.
DQN(비특허문헌 1)은 CNN(Convolutional Neural Network)과 강화학습을 결합한 기법으로, 게임 화면의 원 픽셀 프레임(raw pixel frame)만을 관측 Ot로 하여 CNN에 입력으로써 대입하고, CNN은 각 행동(action) (At)에 대한 Q 값을 도출해낸다. 이때 행동(action)은
Figure pat00013
기법에 따라 선택되어 수행되며 해당 행동(action)을 수행하고 나면 다음 관측 Ot +1과 보상 Rt를 구할 수 있게 된다. 이렇게 얻은 정보들을 하나의 경험(experience)
Figure pat00014
로 설정하여 데이터셋(dataset)
Figure pat00015
에 저장하였다가 학습을 할 때에는 데이터셋 안의 데이터를 랜덤 샘플링(random sampling)하여 미니-배지 업데이트(mini-batch update)를 수행하는 경험 리플레이(experience replay) 기법을 이용한다. CNN의 네트워크는 확률적 기울기 하강법(stochastic gradient descent)을 이용하여 손실을 최소화하는 방향으로 신경망의 파라미터들을 학습할 수 있으며, 다음 식과 같이 나타낼 수 있다.
[수학식 6]
Figure pat00016
여기서,
Figure pat00017
는 할인 계수(discount factor)로서 미래에 받을 것으로 예측되는 보상의 합을 네트워크 학습에 얼마의 비율로 반영할지를 결정할 수 있다.
Figure pat00018
는 네트워크의 파라미터이며,
Figure pat00019
는 목표 네트워크(network)의 파라미터로 일정 단계(step)마다 네트워크(network)의 파라미터를 그대로 복사해오며 따로 학습은 수행하지 않는 파라미터이다.
Double DQN(DDQN)(비특허문헌 2)의 경우, DQN 알고리즘이 가지고 있는 행동(action) 값에 대한 과대평가(overestimation) 문제를 해결하였다. DQN에서는 목표 값을 계산할 때 동일한 Q-function을 이용하여 행동(action)을 선택하고 행동(action)을 평가하는 2가지를 모두 수행할 수 있으며, 다음 식과 같이 나타낼 수 있다.
[수학식 7]
Figure pat00020
이 결과로 값에 대한 과대평가가 발생하게 되었고, 이는 DQN의 성능 저하의 원인이 되었다. DDQN에서는 목표 값을 결정할 때 행동(action) 선택과 평가의 과정을 2개의 Q-function을 이용하는 방법을 통해 분리시킴으로써 값의 과대평가 문제를 해결할 수 있으며, 다음 식과 같이 나타낼 수 있다.
[수학식 8]
Figure pat00021
Dueling DQN(비특허문헌 3)의 경우, DQN 네트워크의 컨볼루션(convolution) 부분은 그대로 이용하고, 완전히 연결된 레이어 부분을 상태 값(state-value)과 각 행동(action)에 대한 이점(advantage)을 평가하는 2 개의 파트로 나눈 네트워크를 이용할 수 있다. 이에 따라 Q-값을 계산하는 최종식이 상태 값(state-value)과 행동 이점(action advantage)을 통합(aggregate)하는 형태로 변경될 수 있으며, 다음 식과 같이 나타낼 수 있다.
[수학식 9]
Figure pat00022
여기서,
Figure pat00023
는 이점 함수(advantage function) A를 구하기 위한 완전히 연결된 레이어(fully connected layer)의 파라미터이며,
Figure pat00024
는 값-함수(value-function) V을 구하기 위한 완전히 연결된 레이어(fully connected layer)의 파라미터이다. 이렇게 2 개의 스트림(stream)으로 구성된 네트워크를 이용한 dueling DQN은 DQN에 비해 월등한 성능향상을 보여주었으며, 특히 행동(action)의 수가 많아져도 성능의 강인함이 확보되는 특징을 보여주었다.
일 실시예에 따르면 상술한 심층강화학습 알고리즘(DQN, DDQN, Dueling DQN)을 결합하여 시뮬레이션에서 최적의 운전 정책을 찾을 수 있다. 이때 심층강화학습 알고리즘의 목적은 다른 차량과의 충돌 없으며, 불필요한 차선 변경 없이 고속으로 주행하는 것이다.
도 4는 일 실시예에 따른 시뮬레이터 예시를 나타내는 도면이다.
도 4를 참조하면, 실시예들을 테스트 하기 위해 시뮬레이터 Unity 또는 Unity ML-Agents를 사용하여 자율주행차량 환경의 예를 구성할 수 있다. 에이전트(Agent, 400)로 표시된 차량이 직접 제어하는 차량이고, 주변에 다수의 차량이 존재하며 차선 변경, 가속, 감속 등을 임의로 수행할 수 있다. 본 시뮬레이터를 이용한 학습 목표는 다수의 차량이 존재하는 고속도로 환경을 빠른 속도로, 필요 없는 차선 변경은 최소화하며 주행하는 것이다. 본 환경에서의 시험을 위해 심층강화학습 알고리즘 중 상술한 DQN 기반의 알고리즘을 사용할 수 있으며, DQN뿐 아니라 다른 심층강화학습 알고리즘을 적용할 수 있다.
시뮬레이션된 도로 환경은 5개의 차선으로 구성된 고속도로 주행 환경이다. 주변의 다른 차량들은 시각적으로 각각 다른 8 종류의 차량이 호스트 차량의 일정 거리 안의 차선 중앙에서 랜덤하게 생성될 수 있다. 또한 각각의 차량에는 종 방향으로 충돌 방지 시스템이 엄격하게 적용되어 있어 주변 차량 간에는 최대한 충돌은 하지 않도록 주행할 수 있다. 그리고, 주변 차량들은 각각 가속, 감속, 좌측으로 차선 변경, 우측으로 차선 변경 등을 임의로 수행하면서 운전 정책을 학습하는 차량이 다양한 환경을 경험할 수 있도록 시뮬레이션 환경에 변화를 주었다.
다른 차량에 의한 다양한 행동은 다양한 방법으로 시뮬레이션 환경을 변경하므로 에이전트는 다양한 상황을 경험할 수 있다. 시뮬레이터의 관측은 두 가지 유형이 있으며, 하나는 이미지이고 다른 하나는 LIDAR형 범위 배열이다. 전방 등에 카메라가 있기 때문에 매 단계마다 미가공 픽셀 이미지가 관측될 수 있다. LIDAR 센서는 각도 1도당 하나의 광선이 제공되어 360도 범위를 감지할 수 있다. 광선이 물체(예컨대, 다른 차량 등 장애물)에 닿으면 호스트 차량과 물체 사이의 거리를 반환할 수 있다. 장애물이 없으면 시뮬레이터의 모든 단계마다 최대 감지 거리를 반환할 수 있다.
도 5는 일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법을 나타내는 흐름도이다.
도 5a를 참조하면, 일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법은, 측정된 센서 데이터 및 촬영된 이미지 데이터를 심층강화학습(deep reinforcement learning) 알고리즘으로 입력 받는 단계(S110), 심층강화학습 알고리즘에서 입력 받은 센서 데이터 및 이미지 데이터를 이용하여 차량 제어를 위한 행동을 결정하는 단계(S120), 및 결정된 행동에 따라 운전자보조시스템(Driver Assistance Systems, DAS)을 선택하여 차량을 제어하는 단계(S130)를 포함하여 이루어질 수 있다.
도 5b를 참조하면, 차량 제어를 위한 행동을 결정하는 단계(S120)는, 입력 받은 센서 데이터 및 이미지 데이터를 각각 정제하는 단계(S121), 정제된 센서 데이터 및 이미지 데이터를 연결하여 연결된 데이터를 형성하는 단계(S122), 연결된 데이터를 심층강화학습 알고리즘의 완전히 연결된 레이어(fully connected layer)에 입력하여 Q 값을 구하는 단계(S123), 및 Q 값에 따라 행동을 결정하는 단계(S124)를 포함할 수 있다.
실시예들은 인공신경망 기법과 강화학습 기법을 적용하여 차량을 제어하는 방법을 제공한다. 인공지능과 같이 학습 기반의 방법은 사람이 직접 설정하는 것 없이 스스로 다양한 경험을 하면서 학습을 수행하고 이에 따라 최적의 제어방법을 찾아낸다. 다양한 경험을 통해 학습하기 때문에 사람이 설정하기 어려운 다양한 상황을 대응할 수 있으며 더욱 최적의 행동을 선택할 수 있게 된다.
또한 실시예들은 단순히 강화학습으로 핸들, 브레이크, 액셀러레이터 등을 제어하는 것이 아니라 이미 안정적으로 차량을 제어하기 위해 개발된 운전자보조시스템(DAS)을 선택한다. 이와 같이 운전자보조시스템(DAS)을 이용하는 경우 운전자에게 불편함을 주지 않으면서도 안전하게 차량을 제어할 수 있다.
아래에서 일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법의 각 단계를 설명한다.
도 6은 일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치의 구조를 개략적으로 나타내는 도면이다.
도 6을 참조하면, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치의 구조를 나타내며, 멀티 모달 운전 정책 네트워크의 구조를 확인할 수 있다. 여기서, 그레이 스케일(grayscale)의 카메라의 원 이미지(raw image)와 미터 단위의 거리 배열을 갖는 LIDAR 센서 데이터의 두 가지 입력이 요구된다.
일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법은 일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치를 이용하여 보다 상세히 설명할 수 있다. 일 실시예에 따른 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치는 입력부, 심층강화학습부(600) 및 차량 제어부를 포함하여 이루어질 수 있다. 특히, 심층강화학습부(600)는 센서 데이터 정제부(610), 이미지 데이터 정제부(620), 연결 데이터 형성부(630), 완전히 연결된 레이어부(640, 650) 및 행동 결정부(660)를 포함할 수 있다.
단계(S110)에서, 입력부는 측정된 센서 데이터(602) 및 촬영된 이미지 데이터(601)를 심층강화학습(deep reinforcement learning) 알고리즘으로 입력 받을 수 있다. 예컨대, 입력부는 차량에 구성된 LIDAR 센서를 통해 측정된 센서 데이터(602)와 카메라를 통해 촬영된 이미지 데이터(601)를 심층강화학습 알고리즘으로 입력 받을 수 있다.
단계(S120)에서, 심층강화학습부(600)는 심층강화학습 알고리즘에서 입력 받은 센서 데이터(602) 및 이미지 데이터(601)를 이용하여 차량 제어를 위한 행동(603)을 결정할 수 있다.
보다 구체적으로, 단계(S121)에서, 센서 데이터(602) 정제부(610)는 입력 받은 센서 데이터(602)를 정제하고, 이미지 데이터(601) 정제부(620)는 입력 받은 이미지 데이터(601)를 정제할 수 있다. 이때, 센서 데이터(602) 정제부(610)는 센서 데이터(602)를 LSTM(Long Short-Term Memory)을 사용하여 정제할 수 있고, 이미지 데이터(601) 정제부(620)는 이미지 데이터(601)를 CNN(Convolutional Neural Network)을 사용하여 정제할 수 있다.
단계(S122)에서, 연결 데이터 형성부(630)는 정제된 센서 데이터(602) 및 이미지 데이터(601)를 연결하여 연결된 데이터를 형성할 수 있다.
단계(S123)에서, 완전히 연결된 레이어부(640, 650)는 연결된 데이터를 심층강화학습 알고리즘의 완전히 연결된 레이어(fully connected layer)에 입력하여 Q 값을 구할 수 있다.
특히, 완전히 연결된 레이어부(640, 650)는 심층강화학습 알고리즘에 따라 완전히 연결된 레이어를 상태 값과 각 행동에 대한 이점을 평가하는 행동 이점의 2 개의 파트로 나눈 네트워크를 이용하고, 상태 값과 행동 이점을 통합하여 Q 값을 구할 수 있다.
한편, 심층강화학습 알고리즘을 최적의 운전 정책으로 학습시키는 단계를 더 포함할 수 있다. 심층강화학습부(600)는 행동(603)의 결과에 따라 보상을 설계하여 차량의 고속 주행, 충돌하지 않는 궤적으로의 주행 및 불필요한 차선 변경 배제에 기반한 최적의 운전 정책을 찾고, 운전 정책으로 심층강화학습 알고리즘을 학습시킬 수 있다.
단계(S124)에서, 행동 결정부(660)는 Q 값에 따라 행동(603)을 결정할 수 있다.
단계(S130)에서, 차량 제어부는 결정된 행동(603)에 따라 운전자보조시스템(Driver Assistance Systems, DAS)을 선택하여 차량을 제어할 수 있다. 차량 제어부는 차량이 종 방향과 횡 방향으로 동시에 운전 가능하도록, 목표 속도 증가, 목표 속도 감소, 좌측으로 차선 변경, 우측으로 차선 변경, 현재 상태 유지의 5가지 행동을 포함할 수 있다.
이와 같이, 센서 데이터(602), 카메라 이미지와 같은 인지에 필요한 정보들을 심층강화학습 알고리즘의 입력으로 받고, 심층강화학습 알고리즘은 들어온 정보를 기반으로 가장 적절하다고 생각하는 운전자보조시스템(DAS)을 선택하게 되고 이에 따라 차량을 제어할 수 있다. 이때 운전자보조시스템(DAS)이 추가되어 있는 관계로 차량은 안전하고 안정적으로 주행이 가능하다.
다양한 상황에서의 주행을 통해 차량은 점점 더 최적의 주행 방법을 학습하게 된다. 실시예들에 따르면 자율주행차량에 적용되어 심층강화학습을 통해 매 상황마다 어떤 운전자보조시스템(DAS)을 사용하는 것이 적절한지 판단하고 차량에 내장된 운전자보조시스템(DAS)을 이용하여 차량을 제어할 수 있다.
실시예들에 따르면 심층강화학습 알고리즘을 기반으로 어떤 운전자보조시스템을 선택할지 결정하는 시스템을 이용하여 매 상황에 맞는 차량의 행동(603)을 선택하며 그에 따라 차량을 제어할 수 있다. 이를 통해 자율주행차량의 제어의 경로 계획 및 제어를 안정적으로 수행할 수 있다. 더욱이, 실시예들은 학습기반으로 알고리즘이 발전하므로 사람이 모든 상황을 다루기 어려운 차량 주행 환경에 적절하게 대응할 수 있다.
운전 정책을 학습하기 위해 제안된 심층강화학습 알고리즘이 동시에 두 개의 다른 입력을 사용하기 때문에 원본 DQN 구조의 컨볼루션 레이어가 다중 입력을 분석하도록 변경될 수 있다.
카메라 이미지의 경우 DQN과 같은 CNN(Convolutional Neural Network)을 사용하여 이미지 데이터를 정제할 수 있고, LIDAR 센서 데이터는 LSTM(Long Short-Term Memory)을 사용하여 정제할 수 있다. 두 개의 정제된 이미지 데이터와 센서 데이터를 연결한 후, 이 데이터는 행동(action)을 결정하는 Q 값을 얻기 위해 완전히 연결된 레이어(fully connected layer)의 입력으로 사용될 수 있다. 즉, 두 개의 결과를 융합한 후, 완전히 연결된 레이어(fully connected layer)를 통과시켜 최종적으로 Q 값을 구하고 행동(action)을 결정할 수 있다.
이때 Dueling DQN의 경우, 마지막 완전히 연결된 레이어(fully connected layer) 부분을 상태 값(state-value)과 행동 이점(action-advantage)을 구하는 2 개의 스트림(stream)으로 된 구조를 이용할 수 있다.
표 2는 운전 정책 네트워크의 전체 구조 및 이 네트워크의 하이퍼 파라미터이다.
[표 2]
Figure pat00025
(비특허문헌 4)는 정책 네트워크를 교육하는데 사용될 수 있다. 다른 하이퍼 파라미터는 다음과 같다: 학습 속도는 0.00025이고, 배치 크기는 32이며, 재생 메모리 크기는 100,000이며 스킵된 프레임 수는 4이다.
아래에서는 하나의 예를 들어 심층강화학습 알고리즘을 보다 상세히 설명한다.
예를 들어, 이미지 데이터를 처리하는 CNN 네트워크는 DQN의 CNN 네트워크와 구조와 동일한 구조로 구성될 수 있다. 우선, 이미지 입력의 경우 80x80짜리 그레이스케일(grayscale) 이미지를 4개 스택(stack)하여 사용할 수 있다. 여기에서의 시뮬레이터의 경우 카메라가 전후방에 존재하는 것을 가정하여, 총 80x80x8의 이미지가 CNN의 입력으로 들어갈 수 있다. 첫 번째 컨볼루션 은닉 레이어(convolution hidden layer)의 경우 8x8의 크기를 가진 32개의 필터(filter)로 구성되어 있으며, 스트라이드(stride)는 4이다. 두 번째 컨볼루션 은닉 레이어의 경우 4x4의 크기를 가진 64개의 필터로 구성되어 있으며 스트라이드(stride)는 2이다. 세 번째 컨볼루션 은닉 레이어의 경우 3x3의 크기를 가진 64개의 필터로 구성되어 있으며 스트라이드(stride)는 1이다. 모든 컨볼루션 은닉 레이어에서 활성화 함수(activation function)로는 ReLU를 이용할 수 있다.
센서 입력의 경우 왼쪽, 오른쪽 각각 90도씩의 범위를 감지하며 1도당 하나의 입자가 발사되어 어떤 물체와 충돌하는 경우 각 물체까지의 거리를 반환하며, 충돌하지 않는 경우 최대 감지 거리 값을 반환할 수 있다. 이렇게 180개의 거리 데이터를 이미지와 같이 4개의 시간 단계(time step)에 대해서 저장하였다가 LSTM을 이용한 RNN 구조에 적용할 수 있다. LSTM 중 가장 마지막 셀(cell)에서 도출된 결과를 최종 센서 데이터의 출력으로 결정한다. LSTM의 셀 상태(cell state) 수는 256개로 한다.
이미지 데이터를 처리한 결과와 센서 데이터를 처리한 결과를 융합시킨 후 512개의 ReLU로 구성된 완전히 연결된 레이어를 적용하여 최종 행동(action)의 개수만큼 Q 값을 도출할 수 있다. 기타 파라미터에 대해서는 학습율(learning rate)은 0.00025, batch size는 32, replay memory의 크기는 100,000개, 스킵(skip)하는 프레임의 수는 4, 최적화는 (비특허문헌 4)를 이용할 수 있다.
도 7은 일 실시예에 따른 운전 정책을 결정하는 알고리즘을 통한 평균 속도의 예를 나타내는 도면이다. 도 7을 참조하면, 다중 입력, 영상 입력 및 센서 입력에 의한 5 회분 평균 속도를 확인할 수 있다.
도 8은 일 실시예에 따른 운전 정책을 결정하는 알고리즘을 통한 평균 차선 변경 횟수의 예를 나타내는 도면이다. 도 8을 참조하면, 다중 입력, 영상 입력 및 센서 입력에 의한 5 회분 평균 차선 변경 횟수의 예를 확인할 수 있다.
도 9는 일 실시예에 따른 운전 정책을 결정하는 알고리즘을 통한 평균 추월 수의 예를 나타내는 도면이다. 도 9를 참조하면, 다중 입력, 영상 입력 및 센서 입력에 의한 5회분 평균 추월 수의 예를 확인할 수 있다.
도 7 내지 도 9의 그래프들은 학습 단계에 따른 평균 속도, 차선 변경 횟수, 그리고 차량 추월 수를 나타낸다. 학습이 진행될수록 차량의 평균 속도와 추월한 차량의 수는 계속 증가하며, 반대로 차선 변경 횟수는 줄어든다. 이를 통해 차량이 설정한 목표에 맞게 차선 변경은 필요할 때만 수행하며 속도는 최대 속도에 가깝게 유지하며 주행하도록 동작하는 것을 알 수 있다.
한편, 제안된 운전 정책을 결정하는 알고리즘은 (비특허문헌 5)를 사용하여 구현될 수 있다. 제안하는 운전 정책 학습 알고리즘은 python 상에서 (비특허문헌 5) 라이브러리를 이용하여 작성하였다. 모든 시뮬레이션은 Nvidia GTX 1080Ti를 이용하여 진행하였다. 모든 알고리즘은 충분히 리플레이 메모리(Replay memory)가 쌓였다고 생각되는 2.5만개부터 학습을 시작하였다. 운전 정책 학습을 위해 사용한 4 개의 심층강화학습 알고리즘은 기존의 운전자보조시스템(DAS)을 잘 선택하는 방법을 학습함으로써 평균 속도 측면에서 초기값과 비교해 봤을 때 모두 발전이 있는 것을 확인할 수 있다.
학습된 운전 정책을 시뮬레이션 환경에서 확인해 보면, 전방에 차량이 느리게 주행하고, 옆 차선이 비어있을 때에는 차선을 변경하여 빠르게 진행하는 것을 확인할 수 있다. 차선 변경 행위 자체는 단순히 네거티브(negative) 보상을 받음에도 불구하고 차선을 변경했을 때 얻을 수 있는 속도 보상을 고려하여 미래 보상의 기댓값을 최대화하는 차선 변경을 수행하는 것으로 볼 수 있다.
또한, 카메라와 LIDAR의 기능을 각각 CNN과 LSTM을 통해 결합한 다중 입력 아키텍처의 이점을 확인하기 위해 카메라 입력 및 LIDAR 입력의 두 가지 정책 네트워크가 추가적으로 구현될 수 있다.
아래에서는 카메라, LIDAR, 카메라 및 LIDAR의 서로 다른 입력을 위한 세 가지 다른 네트워크 아키텍처를 비교할 수 있다. 학습이 진행됨에 따라 자율주행차량은 모든 입력 구성에서 불필요한 차선 변경 없이 더 많은 차량을 추월하고 더 빠른 속도로 주행하는 경향이 있다.
표 3은 카메라, LIDAR, 카메라 및 LIDAR의 서로 다른 입력에 따른 성과 비교를 나타낸다.
[표 3]
Figure pat00026
표 3의 결과에서 알 수 있듯이, 카메라와 LIDAR를 모두 사용한 다중 입력 구조는 평균 속도와 평균 추월 수가 각각 73.54km/h와 42.2라는 최상의 성능을 보인다. 그러나 다중 입력에 대한 아키텍처를 사용할 때 차선 변경 횟수가 가장 많으며 평균값은 30.2이다.
제안된 알고리즘의 목적은 불필요한 차선 변경 횟수를 줄이는 것이지만, 다중 모드 입력 결과는 차선 변경 횟수 측면에서 가장 높다. 그러나 LIDAR의 아키텍처와 카메라의 아키텍처의 경우, 선행 차량이 느린 경우에도 차선을 변경하지 않고 앞 차량을 따라가는 경우가 있다. 따라서 최적의 정책을 찾기 위해 합리적인 가치가 있는 결과보다 차선 변경 횟수가 많다.
안전 자율주행은 지난 몇 년 동안 적극적으로 개발되었다. 자율주행에 대한 중요한 주제 중 하나는 운전자에게 안전과 편안함을 제공하는 최고의 주행 정책 또는 감독자를 찾는 것이다. 이때 운전 정책이 다양한 교통 환경에 관계없이 견고성을 충족시켜야 한다. 그러나 규칙 기반 알고리즘은 다양한 상황에 대처하기가 어렵다. 이러한 문제를 해결하기 위해, 실시예들에 따르면 심층강화학습 알고리즘을 이용하여 다양한 경험을 통해 자체 학습을 수행하고 원 이미지와 같은 고차원 입력을 사용하여 우수한 성능을 보일 수 있다.
이상과 같이, 실시예들은 인지능력의 정확성 향상을 위해 카메라 이미지뿐 아니라 실제 자율주행차량에서 주로 이용되는 센서를 모사한 데이터까지 입력으로 하며 안전성 확보를 위하여 운전자보조시스템(DAS) 기반에서 주행하는 자율주행차량의 거동을 심층강화학습을 통하여 최적화하는 문제를 해결할 수 있다.
실시예들에 따르면 심층강화학습 알고리즘을 통해 학습된 자율주행차량은 불필요한 차선 변경 없이 시뮬레이션된 고속도로 시나리오에서 고속으로 성공적으로 운전할 수 있다. 제안된 운전 정책 네트워크가 멀티 모달 입력을 사용하므로 평균 속도, 차선 변경 횟수 및 추월 수와 관련하여 단일 입력이 있는 것보다 차량을 보다 잘 주행할 수 있다.
실시예들은 고속도로 주행 시 자율주행 차량의 주행 및 제어에 이용될 수 있다. 현재 상태에 가장 적절한 행동을 결정하고 이에 따라 제어를 수행한다는 점에서 자율주행 드론 및 로봇에도 적용이 가능하다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 행동하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (15)

  1. 측정된 센서 데이터 및 촬영된 이미지 데이터를 심층강화학습(deep reinforcement learning) 알고리즘으로 입력 받는 단계;
    상기 심층강화학습 알고리즘에서 입력 받은 상기 센서 데이터 및 상기 이미지 데이터를 이용하여 차량 제어를 위한 행동을 결정하는 단계; 및
    결정된 상기 행동에 따라 운전자보조시스템(Driver Assistance Systems, DAS)을 선택하여 차량을 제어하는 단계
    를 포함하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법.
  2. 제1항에 있어서,
    상기 측정된 센서 데이터 및 촬영된 이미지 데이터를 심층강화학습 알고리즘으로 입력 받는 단계는,
    차량에 구성된 LIDAR 센서를 통해 측정된 상기 센서 데이터와 카메라를 통해 촬영된 이미지 데이터를 심층강화학습 알고리즘으로 입력 받는 것
    을 특징으로 하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법.
  3. 제1항에 있어서,
    상기 차량 제어를 위한 행동을 결정하는 단계는,
    입력 받은 상기 센서 데이터 및 상기 이미지 데이터를 각각 정제하는 단계;
    정제된 상기 센서 데이터 및 상기 이미지 데이터를 연결하여 연결된 데이터를 형성하는 단계;
    상기 연결된 데이터를 상기 심층강화학습 알고리즘의 완전히 연결된 레이어(fully connected layer)에 입력하여 Q 값을 구하는 단계; 및
    상기 Q 값에 따라 행동을 결정하는 단계
    를 포함하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법.
  4. 제3항에 있어서,
    상기 센서 데이터 및 상기 이미지 데이터를 각각 정제하는 단계는,
    상기 센서 데이터를 LSTM(Long Short-Term Memory)을 사용하여 정제하는 단계; 및
    상기 이미지 데이터를 CNN(Convolutional Neural Network)을 사용하여 정제하는 단계
    를 포함하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법.
  5. 제3항에 있어서,
    상기 완전히 연결된 레이어에 입력하여 Q 값을 구하는 단계는,
    상기 완전히 연결된 레이어를 상태 값과 각 행동에 대한 이점을 평가하는 행동 이점의 2 개의 파트로 나눈 네트워크를 이용하고, 상기 상태 값과 상기 행동 이점을 통합하여 상기 Q 값을 구하는 것
    을 특징으로 하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법.
  6. 제1항에 있어서,
    상기 차량 제어를 위한 행동을 결정하는 단계는,
    차량이 종 방향과 횡 방향으로 동시에 운전 가능하도록, 목표 속도 증가, 목표 속도 감소, 좌측으로 차선 변경, 우측으로 차선 변경, 현재 상태 유지의 5가지 행동을 포함하는 것
    을 특징으로 하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법.
  7. 제1항에 있어서,
    상기 심층강화학습 알고리즘을 최적의 운전 정책으로 학습시키는 단계
    를 더 포함하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법.
  8. 제7항에 있어서,
    상기 심층강화학습 알고리즘을 최적의 운전 정책으로 학습시키는 단계는,
    상기 행동의 결과에 따라 보상을 설계하여 차량의 고속 주행, 충돌하지 않는 궤적으로의 주행 및 불필요한 차선 변경 배제에 기반한 최적의 운전 정책을 찾고, 상기 운전 정책으로 상기 심층강화학습 알고리즘을 학습시키는 것
    을 특징으로 하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법.
  9. 측정된 센서 데이터 및 촬영된 이미지 데이터를 심층강화학습(deep reinforcement learning) 알고리즘으로 입력 받는 입력부;
    상기 심층강화학습 알고리즘에서 입력 받은 상기 센서 데이터 및 상기 이미지 데이터를 이용하여 차량 제어를 위한 행동을 결정하는 심층강화학습부; 및
    결정된 상기 행동에 따라 운전자보조시스템(Driver Assistance Systems, DAS)을 선택하여 차량을 제어하는 차량 제어부
    를 포함하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치.
  10. 제9항에 있어서,
    상기 입력부는,
    차량에 구성된 LIDAR 센서를 통해 측정된 상기 센서 데이터와 카메라를 통해 촬영된 이미지 데이터를 심층강화학습 알고리즘으로 입력 받는 것
    을 특징으로 하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치.
  11. 제9항에 있어서,
    상기 심층강화학습부는,
    입력 받은 상기 센서 데이터를 정제하는 센서 데이터 정제부;
    입력 받은 상기 이미지 데이터를 정제하는 이미지 데이터 정제부;
    정제된 상기 센서 데이터 및 상기 이미지 데이터를 연결하여 연결된 데이터를 형성하는 연결 데이터 형성부;
    상기 연결된 데이터를 상기 심층강화학습 알고리즘의 완전히 연결된 레이어(fully connected layer)에 입력하여 Q 값을 구하는 완전히 연결된 레이어부; 및
    상기 Q 값에 따라 행동을 결정하는 행동 결정부
    를 포함하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치.
  12. 제11항에 있어서,
    상기 센서 데이터 정제부는,
    상기 센서 데이터를 LSTM(Long Short-Term Memory)을 사용하여 정제하고,
    상기 이미지 데이터 정제부는,
    상기 이미지 데이터를 CNN(Convolutional Neural Network)을 사용하여 정제하는 것
    을 특징으로 하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치.
  13. 제11항에 있어서,
    상기 완전히 연결된 레이어부는,
    상기 완전히 연결된 레이어를 상태 값과 각 행동에 대한 이점을 평가하는 행동 이점의 2 개의 파트로 나눈 네트워크를 이용하고, 상기 상태 값과 상기 행동 이점을 통합하여 상기 Q 값을 구하는 것
    을 특징으로 하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치.
  14. 제9항에 있어서,
    상기 차량 제어부는,
    차량이 종 방향과 횡 방향으로 동시에 운전 가능하도록, 목표 속도 증가, 목표 속도 감소, 좌측으로 차선 변경, 우측으로 차선 변경, 현재 상태 유지의 5가지 행동을 포함하는 것
    을 특징으로 하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치.
  15. 제9항에 있어서,
    상기 심층강화학습부는,
    상기 행동의 결과에 따라 보상을 설계하여 차량의 고속 주행, 충돌하지 않는 궤적으로의 주행 및 불필요한 차선 변경 배제에 기반한 최적의 운전 정책을 찾고, 상기 운전 정책으로 상기 심층강화학습 알고리즘을 학습시키는 것
    을 특징으로 하는, 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 장치.
KR1020190007345A 2019-01-21 2019-01-21 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치 KR102166811B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190007345A KR102166811B1 (ko) 2019-01-21 2019-01-21 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190007345A KR102166811B1 (ko) 2019-01-21 2019-01-21 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200095590A true KR20200095590A (ko) 2020-08-11
KR102166811B1 KR102166811B1 (ko) 2020-10-19

Family

ID=72048105

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190007345A KR102166811B1 (ko) 2019-01-21 2019-01-21 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102166811B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112590792A (zh) * 2020-12-18 2021-04-02 的卢技术有限公司 一种基于深度强化学习算法的车辆汇合控制方法
KR20220066711A (ko) * 2020-11-16 2022-05-24 (주)이노시뮬레이션 자율주행 분산 시뮬레이션 동기 제어 방법
CN117474295A (zh) * 2023-12-26 2024-01-30 长春工业大学 一种基于Dueling DQN算法的多AGV负载均衡与任务调度方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112249032B (zh) * 2020-10-29 2022-02-18 浪潮(北京)电子信息产业有限公司 一种自动驾驶决策方法、系统、设备及计算机存储介质
KR102331807B1 (ko) 2021-04-16 2021-12-02 국방과학연구소 차량의 주행을 위한 전자 장치 및 그의 동작 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180029543A (ko) * 2016-09-13 2018-03-21 오토시맨틱스 주식회사 딥러닝을 통한 자동차 상태 진단 방법
KR20180055571A (ko) * 2016-11-17 2018-05-25 삼성전자주식회사 이동 로봇 시스템, 이동 로봇 및 이동 로봇 시스템의 제어 방법
KR20180072523A (ko) * 2016-12-21 2018-06-29 삼성전자주식회사 전자 장치 및 그 동작 방법
KR20180091841A (ko) * 2015-11-12 2018-08-16 딥마인드 테크놀로지스 리미티드 결투 심층 신경 네트워크
JP2018190045A (ja) * 2017-04-28 2018-11-29 日立オートモティブシステムズ株式会社 車両電子制御装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180091841A (ko) * 2015-11-12 2018-08-16 딥마인드 테크놀로지스 리미티드 결투 심층 신경 네트워크
KR20180029543A (ko) * 2016-09-13 2018-03-21 오토시맨틱스 주식회사 딥러닝을 통한 자동차 상태 진단 방법
KR20180055571A (ko) * 2016-11-17 2018-05-25 삼성전자주식회사 이동 로봇 시스템, 이동 로봇 및 이동 로봇 시스템의 제어 방법
KR20180072523A (ko) * 2016-12-21 2018-06-29 삼성전자주식회사 전자 장치 및 그 동작 방법
JP2018190045A (ja) * 2017-04-28 2018-11-29 日立オートモティブシステムズ株式会社 車両電子制御装置

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
D. P. Kingma and J. Ba, "Adam: A method for stochastic optimization," arXiv preprint arXiv:1412.6980, 2014.
H. Van Hasselt, A. Guez, and D. Silver, "Deep reinforcement learning with double q-learning." in AAAI, vol. 16, 2016, pp. 2094-2100.
M. Abadi, P. Barham, J. Chen, Z. Chen, A. Davis, J. Dean, M. Devin, S. Ghemawat, G. Irving, M. Isard, et al., "Tensorflow: A system for large-scale machine learning." in OSDI, vol. 16, 2016, pp. 265-283.
V. Mnih, K. Kavukcuoglu, D. Silver, A. A. Rusu, J. Veness, M. G. Bellemare, A. Graves, M. Riedmiller, A. K. Fidjeland, G. Ostrovski, et al., "Human-level control through deep reinforcement learning," Nature, vol. 518, no. 7540, p. 529, 2015.
Z. Wang, T. Schaul, M. Hessel, H. Van Hasselt, M. Lanctot, and N. De Freitas, "Dueling network architectures for deep reinforcement learning," arXiv preprint arXiv:1511.06581, 2015.

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220066711A (ko) * 2020-11-16 2022-05-24 (주)이노시뮬레이션 자율주행 분산 시뮬레이션 동기 제어 방법
CN112590792A (zh) * 2020-12-18 2021-04-02 的卢技术有限公司 一种基于深度强化学习算法的车辆汇合控制方法
CN112590792B (zh) * 2020-12-18 2024-05-10 的卢技术有限公司 一种基于深度强化学习算法的车辆汇合控制方法
CN117474295A (zh) * 2023-12-26 2024-01-30 长春工业大学 一种基于Dueling DQN算法的多AGV负载均衡与任务调度方法
CN117474295B (zh) * 2023-12-26 2024-04-26 长春工业大学 一种基于Dueling DQN算法的多AGV负载均衡与任务调度方法

Also Published As

Publication number Publication date
KR102166811B1 (ko) 2020-10-19

Similar Documents

Publication Publication Date Title
KR102166811B1 (ko) 심층강화학습과 운전자보조시스템을 이용한 자율주행차량의 제어 방법 및 장치
EP3678911B1 (en) Pedestrian behavior predictions for autonomous vehicles
Chae et al. Autonomous braking system via deep reinforcement learning
Min et al. Deep Q learning based high level driving policy determination
Min et al. Deep distributional reinforcement learning based high-level driving policy determination
US11256260B2 (en) Generating trajectories for autonomous vehicles
CN112888612A (zh) 自动驾驶车辆规划
US11465650B2 (en) Model-free reinforcement learning
JP2020015489A (ja) 自車両の将来挙動および関連する軌道を決定することにより、自車両の操作者が当該自車両を制御するのを支援する方法およびシステム
KR20190099088A (ko) 차량 움직임에 기반한 항법
CN115551758A (zh) 非结构化车辆路径规划器
CN110857104A (zh) 车辆动作控制
WO2018220418A1 (en) Driving assistance method and system
JP7266684B2 (ja) アシスタントシステムの軌道計画を実施するための方法
Aradi et al. Policy gradient based reinforcement learning approach for autonomous highway driving
CN117794803A (zh) 使用具有响应型代理预测的树搜索和/或代理滤波进行车辆轨迹控制
CN114435351A (zh) 用于基于神经网络的自动驾驶的系统和方法
US11364934B2 (en) Training a generator unit and a discriminator unit for collision-aware trajectory prediction
JP6880224B2 (ja) 車両制御装置
Guo et al. Toward human-like behavior generation in urban environment based on Markov decision process with hybrid potential maps
Youssef et al. Comparative study of end-to-end deep learning methods for self-driving car
US11801864B1 (en) Cost-based action determination
WO2022044210A1 (ja) 運転支援装置、学習装置、運転支援方法、運転支援プログラム、学習済モデルの生成方法、学習済モデル生成プログラム
Islam et al. Enhancing Longitudinal Velocity Control With Attention Mechanism-Based Deep Deterministic Policy Gradient (DDPG) for Safety and Comfort
Zhang et al. Spatial attention for autonomous decision-making in highway scene

Legal Events

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