KR102373448B1 - 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법 및 학습 장치 - Google Patents

사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법 및 학습 장치 Download PDF

Info

Publication number
KR102373448B1
KR102373448B1 KR1020200007631A KR20200007631A KR102373448B1 KR 102373448 B1 KR102373448 B1 KR 102373448B1 KR 1020200007631 A KR1020200007631 A KR 1020200007631A KR 20200007631 A KR20200007631 A KR 20200007631A KR 102373448 B1 KR102373448 B1 KR 102373448B1
Authority
KR
South Korea
Prior art keywords
learning
reward
common
actual
customized
Prior art date
Application number
KR1020200007631A
Other languages
English (en)
Other versions
KR20200095378A (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 KR20200095378A publication Critical patent/KR20200095378A/ko
Application granted granted Critical
Publication of KR102373448B1 publication Critical patent/KR102373448B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • G06Q10/047Optimisation of routes or paths, e.g. travelling salesman problem
    • 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, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/10Path keeping
    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3484Personalized, e.g. from learned user behaviour or user-defined profiles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0088Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • 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/10Path keeping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Abstract

본 발명은 대상 운전자에 대한 맞춤형 최적 정책에 대응하는 강화 학습 알고리즘의 수행에 사용되는 적어도 하나의 맞춤형 리워드(reward) 함수를 획득하는 학습 방법에 있어서, (a) 학습 장치가, 조정 리워드 네트워크로 하여금, 주행 궤적에 포함된, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 제1 조정 리워드 각각을 생성하도록 하는 프로세스, 공통 리워드 모듈로 하여금, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 제1 공통 리워드를 생성하도록 하는 프로세스 및 (iii) 예측 네트워크로 하여금, 상기 실제 상황 벡터를 참조로 하여, 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하는 단계; 및 (b) 상기 학습 장치가, 제1 로스 레이어로 하여금, 조정 리워드 로스를 생성하도록 하고, 백프로퍼게이션(backpropagation)을 수행함으로써 상기 조정 리워드 네트워크의 파라미터를 학습하도록 하는 단계;에 관한 것이다.

Description

사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법 및 학습 장치{LEARNING METHOD AND LEARNING DEVICE FOR SUPPORTING REINFORCEMENT LEARNING BY USING HUMAN DRIVING DATA AS TRAINING DATA TO THEREBY PERFORM PERSONALIZED PATH PLANNING}
본 발명은 자율 주행 차량에 이용하기 위한 학습 방법 및 학습 장치에 관한 것으로; 보다 상세하게는, 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법 및 학습 장치 및 이를 이용하는 테스트 방법 및 테스팅 장치에 관한 것이다.
자율 주행은 안전하고 신속하게 탑승자를 이동시키는 것을 목적으로 한다. 하지만, 때때로, 경로 플래닝을 수행할 때, 자율 주행이 무엇을 달성하고자 하는지와 탑승자가 무엇을 원하는지는 다를 수 있다.
예를 들어, 탑승자 일부는, 빠르지만 불안정한 주행 경험보다는, 급정거, 급출발 등이 없는 편안한 주행 경험을 원할 수 있다. 이와 같은 경우, 탑승자 일부를 운반하는 자율 주행 차량에 의해 수행된 경로 플래닝은, 자율 주행 차량으로 하여금, 빠르지만 안전하지 않는 주행을 하도록 한다면, 상기 탑승자 일부는 자율 주행 차량에 의해 수행되는 자율 주행에 만족하지 않을 수 있다.
따라서, 이와 같이 경로 플래닝을 탑승자 별로 맞춤화시키는 것이 중요하지만, 이와 같은 방법은 연구가 되지 않고 있는 실정이다.
본 발명은 상술한 문제점을 해결하는 것을 목적으로 한다.
또한 본 발명은 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습 알고리즘을 지원함으로써 맞춤형 경로 플래닝을 제공하는 학습 방법을 제공하고, 자율 주행 차량의 탑승자에게 만족스러운 주행 경험을 제공하는 것을 목적으로 한다.
또한 본 발명은 상기 사람의 주행 데이터를 상기 트레이닝 데이터로서 사용하여 상기 강화 학습 알고리즘을 지원하는데 사용될 맞춤형 리워드 함수를 제공함으로써 상기 맞춤형 경로 플래닝을 제공하는 것을 다른 목적으로 한다.
또한 본 발명은 컴퓨팅 리소스의 사용량을 줄일 수 있도록 공통 리워드 함수를 조정하여 상기 맞춤형 리워드 함수를 획득하는 방법을 제공하는 것을 또 다른 목적으로 한다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한 본 발명의 특징적인 구성은 하기와 같다.
본 발명의 일 태양에 따르면, 자율 주행에 대한 공통 기준에 따라 수립된 공통 최적 정책을 조정하여 획득된 대상 운전자에 대한 맞춤형 최적 정책에 대응하는, 강화 학습 알고리즘의 수행에 사용되는 적어도 하나의 맞춤형 리워드(reward) 함수를 사용하여 대상 차량의 상기 자율 주행을 지원하는 학습 방법에 있어서, (a) 학습 장치가, 상기 대상 운전자의 하나 이상의 주행 궤적 각각에 포함된, 하나 이상의 실제 상황 벡터에 대응하는 시점에 하나 이상의 실제 상황을 참조로 하여 수행된 하나 이상의 실제 동작에 대한 정보 및 이에 대응하는 상기 실제 상황 벡터가 획득되면, (i) 상기 공통 최적 정책에 대응하는 공통 리워드 함수로부터 상기 맞춤형 리워드 함수를 생성하기 위해 사용되는 조정 리워드 함수로서 작동하도록 구현된 조정 리워드 네트워크로 하여금, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 상기 시점 각각에 수행된 상기 실제 동작 각각에 대응하는 하나 이상의 제1 조정 리워드 각각을 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 함수에 대응하는 공통 리워드 모듈로 하여금, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 상기 시점 각각에 수행된 상기 실제 동작 각각에 대응하는 하나 이상의 제1 공통 리워드 각각을 생성하도록 하는 프로세스 및 (iii) 상기 공통 최적 정책에 따른 공통 최적 동작이 이에 대응하는 실제 상황에 근거하여 수행되는 동안에 생성된 맞춤형 리워드의 합을 예측하는 예측 네트워크로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에서의 상기 실제 상황 각각에 대응하는 하나 이상의 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하는 단계; 및 (b) 상기 학습 장치가, 제1 로스 레이어로 하여금, (i) 각각의 상기 제1 조정 리워드 및 각각의 상기 제1 공통 리워드에 대응하는 제1 맞춤형 리워드 각각, 및 (ii) 상기 실제 예상값을 참조로 하여, 적어도 하나의 조정 리워드 로스를 생성하도록 하고, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션(backpropagation)을 수행함으로써 상기 조정 리워드 네트워크의 파라미터 중 적어도 일부를 학습하도록 하는 단계;를 포함하는 것을 특징으로 하는 방법이 개시된다.
일 실시예에서, 상기 (b) 단계에서, 상기 학습 장치는, 상기 제1 로스 레이어로 하여금 하기 수식에 따라 상기 조정 리워드 로스를 생성하도록 하되,
Figure 112020006674111-pat00001
상기 수식에서,
Figure 112020006674111-pat00002
는 상기 주행 궤적에 해당하는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
Figure 112020006674111-pat00003
는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지, 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미하며,
Figure 112020006674111-pat00004
은 상기 특정 주행 궤적의 상기 제t시점과 같거나 그 이후인 제r 시점에 대응하는, 상기 제1 맞춤형 리워드 중의 제1 특정 맞춤형 리워드를 의미하고,
Figure 112020006674111-pat00005
는 상기 특정 주행 궤적의 최초 시점부터 상기 최종 시점까지의 시간 범위 동안 생성된, 상기 제1 조정 리워드 중의 제1 특정 조정 리워드의 절대값의 합을 의미하며,
Figure 112020006674111-pat00006
Figure 112020006674111-pat00007
는 기설정된 상수인 것을 특징으로 한다.
일 실시예에서, (c) 상기 학습 장치가, (i) 상기 조정 리워드 네트워크로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에 수행될 상기 공통 최적 동작 각각에 대응하는 하나 이상의 제2 조정 리워드를 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 모듈로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에 수행될 상기 공통 최적 동작 각각에 대응하는 하나 이상의 제2 공통 리워드를 생성하도록 하는 프로세스 및 (iii) 상기 예측 네트워크로 하여금, 상기 주행 궤적의 상기 시점 각각에 상기 공통 최적 동작을 수행함에 따라 초래되는 가상 상황 각각에 대응하는 하나 이상의 가상 상황 벡터 각각을 참조로 하여, 상기 가상 상황에 대응하는 하나 이상의 가상 예상값을 생성하도록 하는 프로세스를 수행하는 단계; 및 (d) 상기 학습 장치가, 제2 로스 레이어로 하여금, (i) 각각의 상기 제2 조정 리워드 및 각각의 상기 제2 공통 리워드에 대응하는, 각각의 제2 맞춤형 리워드, (ii) 상기 가상 예상값, 및 (iii) 상기 실제 예상값을 참조로 하여, 적어도 하나의 예측 로스를 생성하도록 하고, 상기 예측 로스를 참조로 하여 백프로퍼게이션(backpropagation)을 수행함으로써 상기 예측 네트워크의 파라미터 중 적어도 일부를 학습하도록 하는 단계;를 더 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 (d) 단계에서,
상기 학습 장치가, 상기 제2 로스 레이어로 하여금 하기 수식에 따라 상기 예측 로스를 생성하도록 하되,
Figure 112020006674111-pat00008
상기 수식에서,
Figure 112020006674111-pat00009
는 상기 주행 궤적에 해당하는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
Figure 112020006674111-pat00010
는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미하며,
Figure 112020006674111-pat00011
는, 상기 제t 시점에 상기 공통 최적 동작 중 하나를 수행하여 초래된 특정 가상 상황에 기반하는 제t+1시점부터 상기 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 가상 예상값 중의 특정 가상 예상값을 의미하며,
Figure 112020006674111-pat00012
는 상기 제t 시점에 대응하는, 상기 제2 맞춤형 리워드 중의 제2 특정 맞춤형 리워드를 의미하고,
Figure 112020006674111-pat00013
는 기설정된 상수를 의미하는 것을 특징으로 한다.
일 실시예에서, 상기 가상 상황 벡터는, 상기 공통 최적 정책에 대응하는 상기 공통 최적 동작 및 이에 대응하는 상기 실제 상황 벡터 중 적어도 일부 각각에 상황 예측 연산을 수행함으로써 획득되되, 상기 상황 예측 연산은, 기학습된 상황 예측 네트워크를 통해 수행되거나, (i) 가상 공간 시뮬레이터로 하여금, 특정 실제 상황 벡터에 대응하는 특정 실제 상황을 가상 공간 상에 시뮬레이션하도록 하고, (ii) 상기 특정 실제 상황에서의 가상 차량으로 하여금, 상기 공통 최적 정책에 따른 상기 공통 최적 동작 중 하나를 수행하도록 하고, (iii) 상기 공통 최적 동작 중 상기 하나에 의해 초래되는, 상기 가상 공간의 변화를 검출함으로써 수행되는 것을 특징으로 한다.
일 실시예에서, 상기 학습 장치는, 상기 (a) 단계 및 상기 (b) 단계에 대응하는, 상기 조정 리워드 네트워크를 학습하는 프로세스 및 상기 (c) 단계 및 상기 (d) 단계에 대응하는, 상기 예측 네트워크를 학습하는 프로세스를 반복함으로써, 상기 조정 리워드 네트워크 및 상기 예측 네트워크를 완전히 학습하는 것을 특징으로 한다.
일 실시예에서, 상기 주행 궤적은, 상기 대상 운전자에 대응하는 주행 궤적 그룹으로부터, 상기 주행 궤적을 무작위로 샘플링(sampling)하여 생성된 미니 배치(mini batch)로서 상기 학습 장치에 제공되는 것을 특징으로 한다.
일 실시예에서, 상기 공통 최적 정책에 따른 상기 공통 최적 동작은, 상기 공통 최적 정책에 대응하는 상기 공통 리워드 모듈을 사용하여 상기 강화 학습 알고리즘을 수행함으로써 최적화된 일반 강화 학습 에이전트에 의해 결정되는 것을 특징으로 한다.
본 발명의 다른 태양에 따르면, 자율 주행에 대한 공통 기준에 따라 수립된 공통 최적 정책을 조정하여 획득된 대상 운전자에 대한 맞춤형 최적 정책에 대응하는, 맞춤형 강화 학습 에이전트를 학습하기 위한 적어도 하나의 맞춤형 리워드 함수를 사용하여 대상 차량의 상기 자율 주행을 지원하는 테스트 방법에 있어서, (a) (1) 학습 장치가, 상기 대상 운전자의 하나 이상의 학습용 주행 궤적 각각에 포함된, 하나 이상의 학습용 실제 상황 벡터에 대응하는 학습용 시점에 하나 이상의 학습용 실제 상황을 참조로 하여 수행된 하나 이상의 학습용 실제 동작에 대한 정보 및 이에 대응하는 상기 학습용 실제 상황 벡터가 획득되면, (i) 상기 공통 최적 정책에 대응하는 공통 리워드 함수로부터 상기 맞춤형 리워드 함수를 생성하기 위해 사용되는 조정 리워드 함수로서 작동하도록 구현된 조정 리워드 네트워크로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 조정 리워드 각각을 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 함수에 대응하는 공통 리워드 모듈로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 공통 리워드 각각을 생성하도록 하는 프로세스 및 (iii) 상기 학습용 공통 최적 정책에 따른 학습용 공통 최적 동작이 이에 대응하는 학습용 실제 상황에 근거하여 수행되는 동안에 생성된 학습용 맞춤형 리워드의 합을 예측하는 예측 네트워크로 하여금, 상기 학습용 실제 상황 벡터를 참조로 하여, 상기 학습용 주행 궤적의 상기 학습용 시점 각각에서의 상기 학습용 실제 상황 각각에 대응하는 하나 이상의 학습용 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하고, (2) 상기 학습 장치가, 제1 로스 레이어로 하여금, (i) 각각의 상기 학습용 제1 조정 리워드 및 각각의 상기 학습용 제1 공통 리워드에 대응하는 학습용 제1 맞춤형 리워드 각각, 및 (ii) 상기 학습용 실제 예상값을 참조로 하여, 적어도 하나의 조정 리워드 로스를 생성하도록 하고, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션을 수행함으로써 상기 조정 리워드 네트워크의 파라미터 중 적어도 일부를 학습하도록 한 상태에서, 테스팅 장치가, 상기 조정 리워드 네트워크 및 상기 공통 리워드 모듈로 하여금, (i) 제t 시점에 대응하는 테스트용 실제 상황 벡터 및 (ii) 상기 맞춤형 강화 학습 에이전트에 의해 생성된 테스트용 실제 동작을 참조로 하여, 테스트용 조정 리워드 및 테스트용 공통 리워드를 포함하는 테스트용 맞춤형 리워드를 생성하도록 하는 단계; 및 (b) 상기 테스팅 장치가, 상기 맞춤형 강화 학습 에이전트로 하여금, 상기 테스트용 맞춤형 리워드를 참조로 하여 자기 자신의 파라미터를 학습하도록 하는 단계;를 포함하는 것을 특징으로 하는 방법이 개시된다.
일 실시예에서, 상기 (b) 단계에서, 상기 맞춤형 강화 학습 에이전트는, 상기 테스트용 맞춤형 리워드를 참조로 하여 상기 자신의 파라미터를 학습함으로써, 상기 학습용 실제 동작과 유사하게 상기 대상 차량이 주행하도록 지원하는 것을 특징으로 한다.
본 발명의 또 다른 태양에 따르면, 자율 주행에 대한 공통 기준에 따라 수립된 공통 최적 정책을 조정하여 획득된 대상 운전자에 대한 맞춤형 최적 정책에 대응하는, 강화 학습 알고리즘의 수행에 사용되는 적어도 하나의 맞춤형 리워드(reward) 함수를 사용하여 대상 차량의 상기 자율 주행을 지원하는 학습 장치에 있어서, 적어도 하나의 인스트럭션들을 저장하는 적어도 하나의 메모리; 및 (I) 상기 대상 운전자의 하나 이상의 주행 궤적 각각에 포함된, 하나 이상의 실제 상황 벡터에 대응하는 시점에 하나 이상의 실제 상황을 참조로 하여 수행된 하나 이상의 실제 동작에 대한 정보 및 이에 대응하는 상기 실제 상황 벡터가 획득되면, (i) 상기 공통 최적 정책에 대응하는 공통 리워드 함수로부터 상기 맞춤형 리워드 함수를 생성하기 위해 사용되는 조정 리워드 함수로서 작동하도록 구현된 조정 리워드 네트워크로 하여금, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 상기 시점 각각에 수행된 상기 실제 동작 각각에 대응하는 하나 이상의 제1 조정 리워드 각각을 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 함수에 대응하는 공통 리워드 모듈로 하여금, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 상기 시점 각각에 수행된 상기 실제 동작 각각에 대응하는 하나 이상의 제1 공통 리워드 각각을 생성하도록 하는 프로세스 및 (iii) 상기 공통 최적 정책에 따른 공통 최적 동작이 이에 대응하는 실제 상황에 근거하여 수행되는 동안에 생성된 맞춤형 리워드의 합을 예측하는 예측 네트워크로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에서의 상기 실제 상황 각각에 대응하는 하나 이상의 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하는 프로세스, 및 (II) 제1 로스 레이어로 하여금, (i) 각각의 상기 제1 조정 리워드 및 각각의 상기 제1 공통 리워드에 대응하는 제1 맞춤형 리워드 각각, 및 (ii) 상기 실제 예상값을 참조로 하여, 적어도 하나의 조정 리워드 로스를 생성하도록 하고, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션(backpropagation)을 수행함으로써 상기 조정 리워드 네트워크의 파라미터 중 적어도 일부를 학습하도록 하는 프로세스를 수행하기 위한 상기 인스트럭션들을 실행하도록 구성된 적어도 하나의 프로세서;를 포함하는 것을 특징으로 하는 장치가 개시된다.
일 실시예에서, 상기 (II) 프로세스에서, 상기 프로세서는, 상기 제1 로스 레이어로 하여금 하기 수식에 따라 상기 조정 리워드 로스를 생성하도록 하되,
Figure 112020006674111-pat00014
상기 수식에서,
Figure 112020006674111-pat00015
는 상기 주행 궤적에 해당하는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
Figure 112020006674111-pat00016
는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지, 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미하며,
Figure 112020006674111-pat00017
은 상기 특정 주행 궤적의 상기 제t시점과 같거나 그 이후인 제r 시점에 대응하는, 상기 제1 맞춤형 리워드 중의 제1 특정 맞춤형 리워드를 의미하고,
Figure 112020006674111-pat00018
는 상기 특정 주행 궤적의 최초 시점부터 상기 최종 시점까지의 시간 범위 동안 생성된, 상기 제1 조정 리워드 중의 제1 특정 조정 리워드의 절대값의 합을 의미하며,
Figure 112020006674111-pat00019
Figure 112020006674111-pat00020
는 기설정된 상수인 것을 특징으로 한다.
일 실시예에서, 상기 프로세서가, (III) (i) 상기 조정 리워드 네트워크로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에 수행될 상기 공통 최적 동작 각각에 대응하는 하나 이상의 제2 조정 리워드를 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 모듈로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에 수행될 상기 공통 최적 동작 각각에 대응하는 하나 이상의 제2 공통 리워드를 생성하도록 하는 프로세스 및 (iii) 상기 예측 네트워크로 하여금, 상기 주행 궤적의 상기 시점 각각에 상기 공통 최적 동작을 수행함에 따라 초래되는 가상 상황 각각에 대응하는 하나 이상의 가상 상황 벡터 각각을 참조로 하여, 상기 가상 상황에 대응하는 하나 이상의 가상 예상값을 생성하도록 하는 프로세스를 수행하는 프로세스; 및 (IV) 제2 로스 레이어로 하여금, (i) 각각의 상기 제2 조정 리워드 및 각각의 상기 제2 공통 리워드에 대응하는, 각각의 제2 맞춤형 리워드, (ii) 상기 가상 예상값, 및 (iii) 상기 실제 예상값을 참조로 하여, 적어도 하나의 예측 로스를 생성하도록 하고, 상기 예측 로스를 참조로 하여 백프로퍼게이션(backpropagation)을 수행함으로써 상기 예측 네트워크의 파라미터 중 적어도 일부를 학습하도록 하는 프로세스;를 더 수행하는 것을 특징으로 한다.
일 실시예에서, 상기 (IV) 프로세스에서, 상기 프로세서가, 상기 제2 로스 레이어로 하여금 하기 수식에 따라 상기 예측 로스를 생성하도록 하되,
Figure 112020006674111-pat00021
상기 수식에서,
Figure 112020006674111-pat00022
는 상기 주행 궤적에 해당하는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
Figure 112020006674111-pat00023
는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미하며,
Figure 112020006674111-pat00024
는, 상기 제t 시점에 상기 공통 최적 동작 중 하나를 수행하여 초래된 특정 가상 상황에 기반하는 제t+1시점부터 상기 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 가상 예상값 중의 특정 가상 예상값을 의미하며,
Figure 112020006674111-pat00025
는 상기 제t 시점에 대응하는, 상기 제2 맞춤형 리워드 중의 제2 특정 맞춤형 리워드를 의미하고,
Figure 112020006674111-pat00026
는 기설정된 상수를 의미하는 것을 특징으로 한다.
일 실시예에서, 상기 가상 상황 벡터는, 상기 공통 최적 정책에 대응하는 상기 공통 최적 동작 및 이에 대응하는 상기 실제 상황 벡터 중 적어도 일부 각각에 상황 예측 연산을 수행함으로써 획득되되, 상기 상황 예측 연산은, 기학습된 상황 예측 네트워크를 통해 수행되거나, (i) 가상 공간 시뮬레이터로 하여금, 특정 실제 상황 벡터에 대응하는 특정 실제 상황을 가상 공간 상에 시뮬레이션하도록 하고, (ii) 상기 특정 실제 상황에서의 가상 차량으로 하여금, 상기 공통 최적 정책에 따른 상기 공통 최적 동작 중 하나를 수행하도록 하고, (iii) 상기 공통 최적 동작 중 상기 하나에 의해 초래되는, 상기 가상 공간의 변화를 검출함으로써 수행되는 것을 특징으로 한다.
일 실시예에서, 상기 프로세서는, 상기 (I) 프로세스 및 상기 (II) 프로세스에 대응하는, 상기 조정 리워드 네트워크를 학습하는 프로세스 및 상기 (III) 프로세스 및 상기 (IV) 프로세스에 대응하는, 상기 예측 네트워크를 학습하는 프로세스를 반복함으로써, 상기 조정 리워드 네트워크 및 상기 예측 네트워크를 완전히 학습하는 것을 특징으로 한다.
일 실시예에서, 상기 주행 궤적은, 상기 대상 운전자에 대응하는 주행 궤적 그룹으로부터, 상기 주행 궤적을 무작위로 샘플링(sampling)하여 생성된 미니 배치(mini batch)로서 상기 학습 장치에 제공되는 것을 특징으로 한다.
일 실시예에서, 상기 공통 최적 정책에 따른 상기 공통 최적 동작은, 상기 공통 최적 정책에 대응하는 상기 공통 리워드 모듈을 사용하여 상기 강화 학습 알고리즘을 수행함으로써 최적화된 일반 강화 학습 에이전트에 의해 결정되는 것을 특징으로 한다.
본 발명의 또 다른 태양에 따르면, 자율 주행에 대한 공통 기준에 따라 수립된 공통 최적 정책을 조정하여 획득된 대상 운전자에 대한 맞춤형 최적 정책에 대응하는, 맞춤형 강화 학습 에이전트를 학습하기 위한 적어도 하나의 맞춤형 리워드 함수를 사용하여 대상 차량의 상기 자율 주행을 지원하는 테스팅 장치에 있어서, 적어도 하나의 인스트럭션들을 저장하는 적어도 하나의 메모리; 및 (I) (1) 학습 장치가, 상기 대상 운전자의 하나 이상의 학습용 주행 궤적 각각에 포함된, 하나 이상의 학습용 실제 상황 벡터에 대응하는 학습용 시점에 하나 이상의 학습용 실제 상황을 참조로 하여 수행된 하나 이상의 학습용 실제 동작에 대한 정보 및 이에 대응하는 상기 학습용 실제 상황 벡터가 획득되면, (i) 상기 공통 최적 정책에 대응하는 공통 리워드 함수로부터 상기 맞춤형 리워드 함수를 생성하기 위해 사용되는 조정 리워드 함수로서 작동하도록 구현된 조정 리워드 네트워크로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 조정 리워드 각각을 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 함수에 대응하는 공통 리워드 모듈로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 공통 리워드 각각을 생성하도록 하는 프로세스 및 (iii) 상기 학습용 공통 최적 정책에 따른 학습용 공통 최적 동작이 이에 대응하는 학습용 실제 상황에 근거하여 수행되는 동안에 생성된 학습용 맞춤형 리워드의 합을 예측하는 예측 네트워크로 하여금, 상기 학습용 실제 상황 벡터를 참조로 하여, 상기 학습용 주행 궤적의 상기 학습용 시점 각각에서의 상기 학습용 실제 상황 각각에 대응하는 하나 이상의 학습용 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하고, (2) 상기 학습 장치가, 제1 로스 레이어로 하여금, (i) 각각의 상기 학습용 제1 조정 리워드 및 각각의 상기 학습용 제1 공통 리워드에 대응하는 학습용 제1 맞춤형 리워드 각각, 및 (ii) 상기 학습용 실제 예상값을 참조로 하여, 적어도 하나의 조정 리워드 로스를 생성하도록 하고, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션을 수행함으로써 상기 조정 리워드 네트워크의 파라미터 중 적어도 일부를 학습하도록 한 상태에서, 상기 조정 리워드 네트워크 및 상기 공통 리워드 모듈로 하여금, (i) 제t 시점에 대응하는 테스트용 실제 상황 벡터 및 (ii) 상기 맞춤형 강화 학습 에이전트에 의해 생성된 테스트용 실제 동작을 참조로 하여, 테스트용 조정 리워드 및 테스트용 공통 리워드를 포함하는 테스트용 맞춤형 리워드를 생성하도록 하는 프로세스, 및 (II) 상기 맞춤형 강화 학습 에이전트로 하여금, 상기 테스트용 맞춤형 리워드를 참조로 하여 자기 자신의 파라미터를 학습하도록 하는 프로세스를 수행하기 위한 상기 인스트럭션들을 실행하도록 구성된 적어도 하나의 프로세서;를 포함하는 것을 특징으로 하는 장치가 개시된다.
일 실시예에서, 상기 (II) 프로세스에서, 상기 맞춤형 강화 학습 에이전트는, 상기 테스트용 맞춤형 리워드를 참조로 하여 상기 자신의 파라미터를 학습함으로써, 상기 학습용 실제 동작과 유사하게 상기 대상 차량이 주행하도록 지원하는 것을 특징으로 한다.
이 외에도, 본 발명의 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
본 발명은 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습 알고리즘을 지원함으로써 맞춤형 경로 플래닝을 제공하는 학습 방법을 제공하고, 자율 주행 차량의 탑승자에게 만족스러운 주행 경험을 제공할 수 있는 효과가 있다.
또한 본 발명은 상기 사람의 주행 데이터를 상기 트레이닝 데이터로서 사용하여 상기 강화 학습 알고리즘을 지원하는데 사용될 맞춤형 리워드 함수를 제공함으로써 상기 맞춤형 경로 플래닝을 제공할 수 있는 효과가 있다.
또한 본 발명은 컴퓨팅 리소스의 사용량을 줄일 수 있도록 공통 리워드 함수를 조정하여 상기 맞춤형 리워드 함수를 획득하는 방법을 제공할 수 있는 효과가 있다.
본 발명의 실시예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자(이하 "통상의 기술자")에게 있어서는 발명적 작업이 이루어짐 없이 이 도면들에 기초하여 다른 도면들이 얻어질 수 있다.
도 1은 본 발명의 일 실시예에 따라 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법을 수행하는 학습 장치의 구성을 개략적으로 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따라 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법을 수행하는데 사용된 주행 궤적의 일 예시를 개략적으로 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따라 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법의 흐름도를 개략적으로 나타낸 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명의 목적들, 기술적 해법들 및 장점들을 분명하게 하기 위하여 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 통상의 기술자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다.
또한, 본 발명의 상세한 설명 및 청구항들에 걸쳐, "포함하다"라는 단어 및 그것의 변형은 다른 기술적 특징들, 부가물들, 구성요소들 또는 단계들을 제외하는 것으로 의도된 것이 아니다. 통상의 기술자에게 본 발명의 다른 목적들, 장점들 및 특성들이 일부는 본 설명서로부터, 그리고 일부는 본 발명의 실시로부터 드러날 것이다. 아래의 예시 및 도면은 실례로서 제공되며, 본 발명을 한정하는 것으로 의도된 것이 아니다.
더욱이 본 발명은 본 명세서에 표시된 실시예들의 모든 가능한 조합들을 망라한다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
본 발명에서 언급하는 각종 이미지는 포장 또는 비포장 도로 관련 이미지를 포함할 수 있으며, 이 경우 도로 환경에서 등장할 수 있는 물체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니며, 본 발명에서 언급하는 각종 이미지는 도로와 상관 없는 이미지(가령, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내와 관련된 이미지)일 수도 있으며, 이 경우, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내 환경에서 등장할 수 있는 물체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
참고로, 혼동을 피하고자 학습 과정과 관련하여 "학습용"또는 "트레이닝"용어가, 테스트 과정과 관련해서는 "테스트용" 또는 "테스팅"용어가 추가되었다.
도 1은 본 발명의 일 실시예에 따라 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법을 수행하는 학습 장치의 구성을 개략적으로 나타낸 도면이다.
도 1을 참조하면, 상기 학습 장치는, 추후 자세히 설명할 구성요소인 조정 리워드 네트워크(130), 예측 네트워크(140), 제1 로스 레이어(150), 제2 로스 레이어(160) 및 공통 리워드 모듈(170)을 포함할 수 있다. 여기서, 상기 조정 리워드 네트워크(130), 상기 예측 네트워크(140), 상기 제1 로스 레이어(150), 상기 제2 로스 레이어(160) 및 상기 공통 리워드 모듈(170)의 입출력 및 연산 과정은 각각 적어도 하나의 상기 통신부(110) 및 적어도 하나의 프로세서(120)에 의해 이루어질 수 있다. 다만, 도 1에서는 상기 통신부(110) 및 상기 프로세서(120)의 구체적인 통신 구조도를 생략하였다. 이 때, 메모리(115)는 후술할 여러 가지 인스트럭션들을 저장한 상태일 수 있고, 상기 프로세서(120)는 상기 메모리(115)에 저장된 인스트럭션들을 수행하도록 할 수 있고, 추후 설명할 인스트럭션들을 수행함으로써 본 발명의 프로세스를 수행할 수 있다. 상기 학습 장치(100)가 이와 같이 묘사되었다고 하여, 프로세서, 메모리, 미디엄, 또는 다른 컴퓨팅 요소가 통합된 형태인 통합 장치를 배제하는 것은 아니다.
상기 조정 리워드 네트워크(130) 및 상기 예측 네트워크(140)는 이전 가상 뉴런으로부터 그의 입력을 획득하고, 상기 입력을 프로세스하며 그의 출력을 다음 가상 뉴런에 전달하는 가상 뉴런을 포함하는 각각의 다중 레이어를 포함할 수 있다. 다시 말해, 상기 조정 리워드 네트워크(130) 및 상기 예측 네트워크(140)는 잘 알려진 피드-포워드 네트워크(Feed-Forward networks)의 구조와 비슷한 구조를 가질 수 있다.
이상 본 발명의 상기 학습 방법을 수행하는 상기 학습 장치(100)의 구성에 대해 설명하였다. 이하 본 발명의 상기 학습 방법에 대해 더욱 구체적으로 설명할 것인데, 쉬운 이해를 위해, 본 발명의 학습 방법에서 사용되는 각각의 요소들에 대해 먼저 설명하도록 한다.
먼저, 잘 알려진 대로, 상기 강화 학습 알고리즘은, 강화 학습 에이전트가, (i) 특정 상황을 기반한 특정 동작을 선택하고, (ii) 상기 강화 학습 에이전트에 할당된 리워드 함수를 이용하여 상기 특정 동작에 대한 특정 리워드를 획득하며, (iii) 상기 특정 리워드를 이용하여 백프로퍼게이션(backpropagation) 또는 타 학습 기법을 수행하여 학습되는 기법이다. 상기 리워드 함수는 상기 강화 학습 에이전트를 학습하는데 중요한 역할을 하므로, 프로그래머는 제대로된 출력값을 획득하고자 상기 리워드 함수를 적절하게 설정할 수 있다.
이를 근거로, 공통 최적 정책은 공통 기준에 따라 수립된 자율 주행 기법일 수 있다. 그리고, 공통 리워드 함수는 상기 공통 최적 정책에 따라 상기 자율 주행을 수행하는, 상기 강화 학습 에이전트를 학습하는 리워드 함수일 수 있다.
이와 반대로, 맞춤형 최적 정책은 대상 운전자를 위해 수립된 자율 주행 기법일 수 있다. 그리고, 맞춤형 리워드 함수는 상기 맞춤형 최적 정책에 따라 상기 자율 주행을 수행하는, 상기 강화 학습 에이전트를 학습하는 리워드 함수일 수 있다.
이와 관련하여, 본 발명은 조정 리워드 함수를 이용하여 상기 공통 리워드 함수를 조금 조정함으로써 상기 자율 주행에 대한 상기 맞춤형 최적 정책에 대응하는 상기 맞춤형 리워드 함수를 제공하는 방법을 도출 한다. 이러한 관계는 하기 수식으로 보여줄 수 있다.
Figure 112020006674111-pat00027
상기 수식에서,
Figure 112020006674111-pat00028
는 상기 자율 주행에 대한 상기 공통 최적 정책에 대응하는 상기 공통 리워드 함수를 수행하는 상기 공통 리워드 모듈(170)의 출력값을 의미하고,
Figure 112020006674111-pat00029
는 상기 조정 리워드 함수를 수행하는 상기 조정 리워드 네트워크(130)의 출력값을 의미하며, 상기 공통 리워드 모듈(170) 및 상기 조정 리워드 네트워크(130)을 함께 사용하여 획득된
Figure 112020006674111-pat00030
는 상기 맞춤형 리워드 함수의 출력값을 의미한다.
이때, 상기 공통 리워드 함수(170)는 처음부터 규칙 세트(rule-set)으로서 주어질 수 있고, 상기 조정 리워드 네트워크(130)는 처음에 비학습된 상태로 주어질 수 있으며, 본 발명의 상기 학습 방법을 수행하며 학습될 수 있다. 두 개의 요소, 즉 상기 조정 리워드 네트워크(130) 및 상기 공통 리워드 모듈(170)을 이용하는 본 발명과는 달리, 상기 맞춤형 최적 정책에 대한 상기 맞춤형 리워드 함수를 수행하는 단일 뉴럴 네트워크를 설정하는 것이 가능하다고 생각할 수 있지만, 상기 맞춤형 리워드 함수는, 상기 단일 뉴럴 네트워크를 이용하여 수행될 수 없는데, 이는 상기 맞춤형 리워드 함수의 해(solution)가 유일하지 않고, 후술할 주행 궤적과 같이 너무 많은 트레이닝 데이터가 상기 단일 뉴럴 네트워크를 학습하기 위해 필요로 되기 때문이다. 그러므로, 상기 맞춤형 리워드 함수는, 상기 공통 리워드 모듈(170) 및 상기 조정 리워드 네트워크(130)를 둘 다 사용하여 수행될 수 있다.
상기 공통 리워드 모듈(170) 및 상기 공통 최적 정책에 대한 추가 정보는 하기 설명된다. 즉, 상기 공통 리워드 모듈(170)은, 각각의 상기 상황에서 각각의 상기 운전자의 동작에 관한 정보 및 각 상황에 관한 정보를 포함하는 상기 운전자의 주행 궤적 각각을 분석하여 획득될 수 있다. 예를 들어, 어노테이터(annotator)는 상기 각각의 상기 주행 궤적의 각각의 상기 동작이 사고를 유발하는지를 결정할 수 있고, 각각의 상기 동작에 대한 각 리워드를 설정할 수 있으며, 상기 리워드와 상기 동작 간 관계로부터 얻은 규칙 세트를 상기 공통 리워드 모듈(170)로서 설정할 수 있고, 상기 규칙 세트를 포함하는 모듈을 상기 공통 리워드 모듈(170)로서 만들 수 있다. 상기 공통 리워드 모듈(170)은, 상기 주행 궤적이 상기 트레이닝 데이터로서 입력된 상기 강화 학습 에이전트의 학습 과정을 지원하는데 이용될 수 있다. 그 결과, 상기 강화 학습 에이전트는 상기 공통 최적 정책을 참조로 하여 상기 자율 주행을 수행할 수 있게 된다.
이때, 상기 공통 리워드 모듈(170)에 의해 수행된 상기 공통 리워드 함수는 하기 수식으로 나타낼 수 있다.
Figure 112020006674111-pat00031
여기서
Figure 112020006674111-pat00032
는 상기 주행 궤적 중 하나에 포함된 각각의 시점에서 각각의 상황 중 하나를 나타낼 수 있고,
Figure 112020006674111-pat00033
는 해당 시점에서 수행된 동작을 나타낼 수 있으며,
Figure 112020006674111-pat00034
는 상기 동작에 의해 초래된 그 다음 상황을 나타낼 수 있다.
이상 설명한 주행 궤적은 공통 최적 정책을 획득하는 데에 사용된, 복수의 사람들에 대한 것이다. 본 발명에서는 한 사람, 즉 상기 대상 운전자에 대응하는 상기 주행 궤적 중 일부를 사용하게 되는데, 이는 본 발명은 상기 "공통" 최적 정책이 아니라 상기 "맞춤형" 최적 정책을 획득하는 방법을 도출하기 때문이다. 이에 따라, 이하에서 언급할 "주행 궤적"은 모두 한 사람, 즉 상기 대상 운전자에 대응하는 것임을 밝혀 둔다.
이때, 상기 대상 운전자에 대한 상기 주행 궤적은, 상기 실제 상황 벡터에 대응하는 하나 이상의 실제 상황을 참조로 하여, 상기 실제 상황 벡터에 대응하는 시점에 수행된 하나 이상의 실제 상황 벡터 및 하나 이상의 실제 동작에 대한 정보를 포함할 수 있다. 다만, 추후 더욱 자세히 설명하겠지만, 상기 실제 동작이 아닌 공통 최적 동작을 가상으로 수행하여 초래되는 각각의 가상 상황에 관한 정보를 포함하는 추가 정보, 즉 가상 상황 벡터는, 상기 주행 궤적 시점 각각에 상기 주행 궤적과 함께 사용될 수 있다. 이때, 상기 실제 상황 벡터는 주변 객체의 위치 정보 및 그의 클래스 정보와 같이 대응하는 시점에 상기 대상 차량의 주변 정보 또는 세그멘테이션(segmentation) 이미지에 관한 정보를 포함할 수 있다. 이러한 주행 궤적 및 상기 추가 정보를 살펴보기 위해 도 2를 참조하도록 한다.
도 2는 본 발명의 일 실시예에 따라 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법을 수행하는데 사용된 주행 궤적의 일 예시를 개략적으로 나타낸 도면이다.
도 2를 참조로 하면,
Figure 112020006674111-pat00035
으로 표시된 원과 화살표를 확인할 수 있을 것이다. 여기서, 각각의
Figure 112020006674111-pat00036
는 각각의 상기 실제 상황 벡터 및 각각의 상기 실제 동작을 의미하고, 각각의
Figure 112020006674111-pat00037
Figure 112020006674111-pat00038
는 각각의 상기 가상 상황 벡터 및 이에 대응하는 공통 최적 동작을 의미한다. 보다 상세하게는,
Figure 112020006674111-pat00039
는, 각각의 상기 실제 상황 벡터
Figure 112020006674111-pat00040
에 대응하는 각각의 상태에서, 상기 실제 동작
Figure 112020006674111-pat00041
가 아닌, 각각의 상기 공통 최적 동작
Figure 112020006674111-pat00042
을 수행하여 초래된 각각의 상기 가상 상황 벡터를 의미한다.
여기서 상기 공통 최적 동작 및 상기 가상 상황 벡터가 어떻게 획득될 수 있는지에 대해서도 설명하도록 한다. 먼저, 상기 공통 최적 동작은, 상기 주행 궤적에 포함된 상기 실제 상황 벡터를 상기 강화 학습 에이전트에 입력하여, 상기 공통 최적 정책을 포함하는 상기 강화 학습 에이전트로부터 획득될 수 있다. 상기 가상 상황 벡터는 추가 연산, 즉 상황 예측 연산을 사용하여 획득될 수 있다. 그리고 상기 상황 예측 연산은 두 가지 방법으로 수행될 수 있다.
먼저, 상기 가상 상황 벡터는 기학습된 상황 예측 네트워크를 사용하여 획득될 수 있다. 상기 상황 예측 네트워크는 다중 뉴런을 포함하는 각각의 다중 레이어를 포함할 수 있다. 이러한 상황 예측 네트워크는 학습용 상황 벡터 및 이에 대응하는 학습용 동작을 트레이닝 데이터로서 획득할 수 있고, 학습용 예측 다음 상황 벡터를 출력할 수 있으며, 상기 학습용 상황 벡터에 대응하는 상황에서 상기 학습용 동작에 의해 초래된 상황에 관한 정보를 포함하는, 상기 학습용 예측 다음 상황 벡터 및 이에 대응하는 GT(Ground-Truth) 다음 상황 벡터를 사용하여 로스를 생성할 수 있다. 이후, 상기 상황 예측 네트워크는 상기 로스를 사용하여 백프로퍼게이션(backpropagation)을 수행함으로써 상기 상황 예측 네트워크의 파라미터를 학습할 수 있다. 이러한 학습 과정은 일반 피드-포워드 네트워크의 학습 과정과 유사하므로, 통상의 기술자는 상기 설명을 쉽게 이해할 수 있을 것이다.
다른 예로, 상기 가상 상황 벡터는 가상 세계 시뮬레이터를 사용하여 획득될 수 있다. 즉, 상기 상황 예측 연산은, 상기 가상 세계 시뮬레이터로 하여금, 가상 세계에 포함된 특정 실제 상황 벡터에 대응하는 특정 실제 상황을 시뮬레이션하도록 하고, 상기 특정 실제 상황의 가상 차량으로 하여금 상기 공통 최적 정책에 따른 상기 공통 최적 동작 중 하나를 수행하도록 하며, 상기 공통 최적 동작 중 상기 하나에 의해 초래된 상기 가상 세계의 변화를 검출함으로써 상기 가상 상황 벡터를 획득할 수 있다.
상기 예측 네트워크(140)에 대해서도 간략히 설명하도록 한다. 상기 예측 네트워크(140)는, 특정 시점에 대응하는 특정 상황 벡터를 입력으로서 획득할 수 있고, 상기 공통 최적 동작이 계속 수행될 경우, 상기 특정 시점부터 이에 대응하는 주행 궤적의 최종 시점까지 발생할 맞춤형 리워드의 예측된 합을 출력할 수 있다.
이상의 대략적인 설명에 기반하여, 본 발명의 학습 방법의 전반적인 흐름에 대해 도 3을 참조로 하여 설명하도록 한다.
도 3은 본 발명의 일 실시예에 따라 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법의 흐름도를 개략적으로 나타낸 도면이다.
도 3을 참조로 하면, 상기 학습 장치(100)는, 상기 대상 운전자의 상기 주행 궤적 각각에 포함된 상기 실제 상황을 참조로 하여, 상기 실제 상황 벡터에 대응하는 시점들에 수행된 상기 실제 동작에 관한 정보 및 상기 실제 상황 벡터를 획득할 수 있다(S00). 또한, 상기 학습 장치(100)는, 상기 조정 리워드 네트워크(130)로 하여금, 상기 실제 동작 및 상기 실제 상황 벡터에 관한 정보를 참조로 하여 하나 이상의 제1 조정 리워드 각각을 생성하도록 할 수 있다(S01-1). 또한, 이와 병렬적으로, 상기 학습 장치(100)는, 상기 공통 리워드 모듈(170)로 하여금, 상기 실제 동작 및 상기 실제 상황 벡터에 관한 정보를 참조로 하여 하나 이상의 제1 공통 리워드 각각을 생성하도록 할 수 있다(S01-2). 그리고, 병렬적으로, 상기 학습 장치(100)는, 상기 예측 네트워크(140)로 하여금, 상기 실제 상황 벡터를 참조로 하여, 하나 이상의 실제 예상값 각각을 생성하도록 할 수 있다(S01-3).
이후, 상기 학습 장치(100)는, 상기 제1 로스 레이어(150)로 하여금, (i) 상기 제1 조정 리워드 각각 및 상기 제1 공통 리워드 각각에 대응하는 제1 맞춤형 리워드 각각 및 (ii) 상기 실제 예상값을 참조로 하여 적어도 하나의 조정 리워드 로스를 생성하도록 할 수 있다(S02). 이후, 상기 학습 장치(100)는, 상기 제1 로스 레이어(150)로 하여금, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션을 수행함으로써 상기 조정 리워드 네트워크(130)의 파라미터 중 적어도 일부를 학습하도록 할 수 있다(S03).
보다 상세하게, 상기 S01-1 단계에서 생성된 상기 제1 조정 리워드 각각은, 상기 시점 각각에 수행된 각각의 상기 실제 동작에 대응하는 각각의 조정 리워드일 수 있다. 이를 "제1"조정 리워드로 구분한 이유는, 상기 예측 네트워크(140)를 학습하는 데 사용할 타 조정 리워드, 예를 들어 제2 조정 리워드와 구분하기 위함이다.
또한, 각각의 상기 제1 공통 리워드는, 각각의 상기 시점에 수행된 각각의 상기 실제 동작에 대응하는 각각의 공통 리워드일 수 있다. 이 역시 상기 예측 네트워크(140)를 학습하는 데 사용할 타 공통 리워드, 예를 들어 제2 공통 리워드와 구분하기 위해 "제1"로 표시되었다.
이러한 제1 조정 리워드와 이러한 제1 공통 리워드는 서로 상응하여 합쳐져 상기 제1 맞춤형 리워드를 생성할 수 있다. 이들 두 종류의 리워드를 합침으로써, 본 발명의 기법에서 보여주듯이, 상기 공통 리워드 함수를 조정하여 상기 맞춤형 리워드 함수를 생성하는 본 발명의 기법이 완성될 수 있다.
또한, 상기 실제 예상값은, 각각의 상기 시점에 상기 실제 상황 각각에 수행된 상기 공통 최적 동작 각각에 대응하는 맞춤형 리워드에 관한 값일 수 있다. 일 예로는, 상기 실제 예상값은 이러한 맞춤형 리워드의 총합일 수 있다.
이하, 상기 제1 맞춤형 리워드 및 상기 실제 예상값을 참조로 하여 상기 조정 리워드 로스를 생성하는 방법에 대해 설명하도록 한다. 이는 하기 수식에 따라 생성될 수 있다.
Figure 112020006674111-pat00043
상기 수식에서,
Figure 112020006674111-pat00044
는 상기 주행 궤적에 해당하는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
Figure 112020006674111-pat00045
는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미할 수 있다. 또한,
Figure 112020006674111-pat00046
는 상기 특정 주행 궤적의 제t 시점과 같거나 이후인 제r 시점에 대응하는, 상기 제1 맞춤형 리워드 중 제1 특정 맞춤형 리워드를 의미하며,
Figure 112020006674111-pat00047
는 상기 특정 주행 궤적의 상기 최초 시점부터 상기 최종 시점까지의 시점 동안 생성된, 상기 제1 조정 리워드 중의 제1 특정 조정 리워드의 절대값의 합을 의미할 수 있다. 여기서,
Figure 112020006674111-pat00048
Figure 112020006674111-pat00049
는 기설정된 상수일 수 있다.
더욱 상세하게는, 맥스 연산은, (i) 상기 공통 최적 리워드를 수행했을 때 생성된 맞춤형 리워드의 합을 나타내는 상기 특정 실제 예상값인
Figure 112020006674111-pat00050
와 상기 실제 동작이 동시에 수행할 때 생성된 맞춤형 리워드의 합인
Figure 112020006674111-pat00051
를 비교한 후, (ii) 후자가 더 클 경우 0을 출력하고, 전자가 더 클 경우 전자와 후자 간 차를 출력하고자 상기와 같이 설계되었다. 상기 맞춤형 리워드 네트워크(130)가 상기 대상 운전자의 선호도를 그의 파라미터에 반영하고자 학습되므로, 상기 공통 최적 동작에 대한 맞춤형 리워드가 상기 실제 동작에 대한 맞춤형 리워드 보다 클 경우, 더 큰 그래디언트는 상기 조정 리워드 네트워크의 파라미터에 적용될 수 있다. 이 경우, 상기 두 종류의 맞춤형 리워드가 비교된다.
또한, 상기 맥스 함수가 없는 상기 조정 리워드 로스에 대한 상기 식의 뒷 항은 상기 제1 조정 리워드가 너무 커지는 것을 방지하고자 추가되었다. 상기 조정 리워드는 너무 커지지 않도록 방지되어야 하는데, 그 이유는 상기 조정 리워드가 너무 커지는 경우, 상기 맞춤형 리워드가 상기 대상 운전자에 과다 적합(overfit)되기 때문이다. 상기 조정 리워드 로스가 상기 뒷 항을 배제할 경우, 상기 조정 리워드 네트워크(140)는 상기 조정 리워드를 생성하도록 학습될 수 있고, 이에 대응하는 강화 학습 에이전트가 상기 실제 동작과만 유사하게 수행할 때 커지는 맞춤형 리워드를 추가로 생성할 수 있다. 따라서, 상기 과대 적합을 방지하기 위해, 상기 제1 조정 리워드 중, 제1 특정 조정 리워드의 절대값의 합은 상기 조정 리워드 로스에 추가된다.
상기 조정 리워드 로스가 생성되면, 상기 제1 로스 레이어(150)는 이를 사용하여 상기 백프로퍼게이션을 수행함으로써 상기 조정 리워드 로스의 파라미터를 학습할 수 있다.
이후, 상기 학습 장치(100)는, 상기 예측 네트워크(140)의 학습 과정을 수행할 수 있다. 이에 대해 이하 자세히 설명하도록 한다.
즉, 상기 학습 장치(100)는, 상기 조정 리워드 네트워크(130)로 하여금, 상기 실제 상황 벡터를 참조로 하여 하나 이상의 제2 조정 리워드를 생성하도록 할 수 있다. 또한, 이와 병렬적으로, 상기 학습 장치(100)는, 상기 공통 리워드 모듈(170)로 하여금, 상기 실제 상황 벡터를 참조로 하여 하나 이상의 제2 공통 리워드를 생성하도록 할 수 있다. 그리고, 역시 이와 병렬적으로, 상기 학습 장치(100)는, 상기 예측 네트워크(140)로 하여금, 각각의 상기 가상 상황 벡터를 참조로 하여 상기 가상 상황에 대응하는 하나 이상의 가상 예상값을 생성하도록 할 수 있다. 이후, 상기 학습 장치(100)는, 상기 제2 로스 레이어(160)로 하여금, (i) 각각의 상기 제2 조정 리워드 및 각각의 상기 제2 공통 리워드에 대응하는 각각의 제2 맞춤형 리워드, (ii) 상기 가상 예상값, 및 (iii) 상기 실제 예상값을 참조로 하여, 적어도 하나의 예측 로스를 생성하도록 하고, 상기 예측 로스를 참조로 하여 백프로퍼게이션을 수행함으로써 상기 예측 네트워크(140)의 파라미터 중 적어도 일부를 학습하도록 할 수 있다.
여기서, 상기 제2 조정 리워드는, 상기 주행 궤적의 각각의 시점에서 수행될 각각의 상기 공통 최적 동작에 대응하는 조정 리워드를 나타낼 수 있다. 상기 제1 조정 리워드와는 달리, 상기 제2 조정 리워드는 상기 실제 동작이 아닌 상기 공통 최적 동작용이다. 또한, 상기 제2 공통 리워드는 상기 주행 궤적의 상기 시점 각각에 수행될 상기 공통 최적 동작 각각에 대응하는 공통 리워드를 나타낼 수 있다. 상기 제1 공통 리워드와는 달리, 상기 실제 동작이 아니라 상기 공통 최적 동작용이 있을 수 있다. 따라서, 상기 제2 조정 리워드 및 상기 제2 공통 리워드를 상응하게 합침으로써 생성된 상기 제2 맞춤형 리워드는 상기 실제 동작이 아니라, 상기 공통 최적 동작에 대한 맞춤형 리워드에 대응할 수 있다. 상기 "공통" 최적 동작에 대한 이러한 제2 맞춤형 리워드가 사용되는 이유는 상기 예측 네트워크(140)가 상기 공통 최적 동작을 위해 생성된 맞춤형 리워드의 총합을 예측하는 네트워크이기 때문이다. 그러므로, 상기 공통 최적 동작에 대한 상기 제2 맞춤형 리워드는 상기 트레이닝 데이터로서 사용된다.
상기 설명을 참조로 하여, 상기 제2 맞춤형 리워드, 상기 가상 예상값 및 상기 실제 예상값을 이용하여 상기 예측 로스를 생성하는 방법에 대해 설명하도록 하며, 하기 수식에 따라 생성될 수 있다.
Figure 112020006674111-pat00052
상기 수식에서,
Figure 112020006674111-pat00053
는 상기 주행 궤적에 포함되는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
Figure 112020006674111-pat00054
는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미할 수 있다. 또한,
Figure 112020006674111-pat00055
는, 상기 제t 시점에 상기 공통 최적 동작 중 하나를 수행하여 초래된 특정 가상 상황에 기반하는 제t+1시점부터 상기 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 가상 예상값 중의 특정 가상 예상값을 의미하며,
Figure 112020006674111-pat00056
는 상기 제t 시점에 대응하는, 상기 제2 맞춤형 리워드 중 제2 특정 맞춤형 리워드를 의미하고,
Figure 112020006674111-pat00057
는 기설정된 상수를 의미한다.
보다 상세하게는,
Figure 112020006674111-pat00058
Figure 112020006674111-pat00059
는 모두 제t 시점으로부터 최종 시점까지 생성된 맞춤형 리워드의 총합을 의미할 수 있다. 다만, 후자의 항은 상기 제t 시점부터 상기 최종 시점까지 생성된 상기 맞춤형 리워드의 총합을 직접 예측한 상기 예측 네트워크(140)의 결과이고, 전자의 항은 (i) 상기 조정 리워드 네트워크(130) 및 상기 공통 리워드 모듈(170)에 의해 생성된, 상기 제t 시점에 수행된 상기 공통 최적 동작 중 하나에 대한 맞춤형 리워드, 및 (ii) 상기 공통 최적 동작이 상기 제t 시점에 수행될 때, 제t+1 시점부터 상기 최종 시점까지 생성된 맞춤형 리워드의 총합을 예측하는 상기 예측 네트워크(140)의 출력값의 총합이다. 전자의 항이 후자의 항에 비해 다소 정확할 것으로 볼 수 있는데 이는, 실제로, 상기 공통 최적 동작이 수행될 때, 상기 예측 네트워크(140)는 상기 조정 리워드 네트워크(130) 및 상기 공통 리워드 모듈(170)의 출력값의 총합을 예측하기 때문이다. 보다 상세하게는, 후자의 항은 상기 제t 시점에 대한 상기 조정 리워드 네트워크(130) 및 상기 공통 리워드 모듈(170)의 출력값의 예측된 총합을 포함하고, 전자의 항은 후자의 항과는 달리 상기 예측 총합이 아닌, 상기 조정 리워드 네트워크(130) 및 상기 공통 리워드 모듈(170)의 실제 출력값의 실제 총합을 포함하므로, 전자의 항은 보다 정확하다. 따라서, 상기 예측 네트워크(140)가 제대로 학습되지 않는 경우, 전자의 항과 후자의 항의 차는 클 것이고, 그 반대도 마찬가지이다. 상기 예측 로스 식은, 상기 예측 네트워크(140)의 적절성과 차이점 간의 이러한 관계를 상기 예측 로스에 반영하기 위해 설계되었다. 이상의 학습 과정은 마르코프 결정 과정(Markov Decision Process) 기법을 사용한 과정과 유사하므로, 통상의 기술자는 상기 설명을 참조로 하면 상기 학습 과정을 쉽게 이해할 수 있을 것이다.
이상, 상기 조정 리워드 네트워크(130) 및 상기 예측 네트워크(140)의 학습 과정이 설명되었다. 상기 학습 과정에서 볼 수 있듯이, 두 네트워크는 각각의 학습 과정에서 서로가 필요하다. 즉, 상기 조정 리워드 네트워크(130)를 학습할 때는 상기 예측 네트워크(140)의 출력값인 상기 실제 예상값이 필요하고, 상기 예측 네트워크(140)을 학습할 때는 상기 조정 리워드 네트워크(130)의 출력값인 상기 제2 조정 리워드가 필요하다. 따라서, 상기 두 네트워크는 번갈아 가면서 학습할 수 있다. 즉, 상기 조정 리워드 네트워크(130)를 먼저 학습하고, 상기 예측 네트워크(140)를 그 다음으로 학습한 후, 다시 상기 조정 리워드 네트워크(130)을 학습하고, 또다시 상기 예측 네트워크(140)를 학습하는 과정을 반복할 수 있다. 전술했던 설명에서는 상기 조정 리워드 네트워크(130)가 상기 예측 네트워크(140)보다 먼저 학습하는 것처럼 묘사하였으나, 반드시 그래야 하는 것은 아니므로, 상기 예측 네트워크(140)를 먼저 학습할 수도 있을 것이다.
이때, 상기 트레이닝 데이터, 즉 상기 두 네트워크를 학습하는데 이용된, 상기 대상 운전자에 대한 상기 주행 궤적은, (i) 쿼리(query)를 데이터베이스에 전송하고, (ii) 상기 데이터베이스에 포함된 상기 대상 운전자에 대응하는 주행 궤적 그룹으로부터, 상기 주행 궤적을 무작위로 샘플링(sampling)하며, (iii) 이를 상기 학습 장치(100)에 전송함으로써, 미니 배치(mini batch)로서 상기 학습 장치에 제공될 수 있다.
이상의 설명에서, 상기 동일한 미니 배치는 상기 조정 리워드 네트워크(130) 및 상기 예측 네트워크(140)에 사용된다고 설명했지만, 본 발명의 범위는 이에 한정되지 않는다. 즉, 각각의 다른 미니 배치는 각각의 상기 두 네트워크의 학습 과정 각각을 위해 선택될 수 있다. 본 발명에 대한 이러한 변형예는 통상의 기술자에 있어서 당연하므로, 이러한 실시예는 본 발명의 범위에 포함된다.
이상 본 발명의 학습 과정에 대해 설명하였다. 이하 본 발명의 테스트 과정에 대해 설명하도록 한다.
즉, (1) 상기 학습 장치(100)가, 상기 대상 운전자의 하나 이상의 학습용 주행 궤적 각각에 포함된, 하나 이상의 학습용 실제 상황 벡터에 대응하는 학습용 시점에 하나 이상의 학습용 실제 상황을 참조로 하여 수행된 하나 이상의 학습용 실제 동작에 대한 정보 및 이에 대응하는 상기 학습용 실제 상황 벡터가 획득되면, (i) 상기 공통 최적 정책에 대응하는 공통 리워드 함수로부터 상기 맞춤형 리워드 함수를 생성하기 위해 사용되는 조정 리워드 함수로서 작동하도록 구현된 상기 조정 리워드 네트워크(130)로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 조정 리워드 각각을 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 함수에 대응하는 상기 공통 리워드 모듈(170)로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 공통 리워드 각각을 생성하도록 하는 프로세스 및 (iii) 상기 학습용 공통 최적 정책에 따른 학습용 공통 최적 동작이 이에 대응하는 학습용 실제 상황에 근거하여 수행되는 동안에 생성된 학습용 맞춤형 리워드의 합을 예측하는 상기 예측 네트워크(140)로 하여금, 상기 학습용 실제 상황 벡터를 참조로 하여, 상기 학습용 주행 궤적의 상기 학습용 시점 각각에서의 상기 학습용 실제 상황 각각에 대응하는 하나 이상의 학습용 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하고, (2) 상기 학습 장치(100)가, 상기 제1 로스 레이어(150)로 하여금, (i) 각각의 상기 학습용 제1 조정 리워드 및 각각의 상기 학습용 제1 공통 리워드에 대응하는 학습용 제1 맞춤형 리워드 각각, 및 (ii) 상기 학습용 실제 예상값을 참조로 하여, 적어도 하나의 조정 리워드 로스를 생성하도록 하고, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션을 수행함으로써 상기 조정 리워드 네트워크의 파라미터 중 적어도 일부를 학습하도록 한 상태에서, 테스팅 장치는 상기 조정 리워드 네트워크(130) 및 상기 공통 리워드 모듈(170)로 하여금, (i) 제t 시점에 대응하는 테스트용 실제 상황 벡터 및 (ii) 상기 맞춤형 강화 학습 에이전트에 의해 생성된 테스트용 실제 동작을 참조로 하여, 테스트용 조정 리워드 및 테스트용 공통 리워드를 포함하는 테스트용 맞춤형 리워드를 생성하도록 할 수 있다.
이후, 상기 테스팅 장치가, 상기 맞춤형 강화 학습 에이전트로 하여금, 상기 테스트용 맞춤형 리워드를 참조로 하여 자기 자신의 파라미터를 학습하도록 할 수 있다. 상기 강화 학습 에이전트가, 상기 공통 리워드 모듈(170) 및 상기 조정 리워드 네트워크(130)에 의해 수립된 상기 맞춤형 리워드 함수를 이용하는 방법은 상기 강화 학습 상의 컨벌루션 아트(conventional arts)의 방법과 유사하므로 추가 설명은 생략된다.
상기 테스트용 맞춤형 리워드를 사용하여 상기 맞춤형 강화 학습 에이전트를 학습함으로써, 상기 대상 차량은 상기 학습용 실제 동작과 유사하게 주행하도록 하여 상기 대상 운전자에게 운전자 특정 개선된 주행 경험을 자율적으로 제공할 수 있게 된다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (20)

  1. 자율 주행에 대한 공통 기준에 따라 수립된 공통 최적 정책을 조정하여 획득된 대상 운전자에 대한 맞춤형 최적 정책에 대응하는, 강화 학습 알고리즘의 수행에 사용되는 적어도 하나의 맞춤형 리워드(reward) 함수를 사용하여 대상 차량의 상기 자율 주행을 지원하는 학습 방법에 있어서,
    (a) 학습 장치가, 상기 대상 운전자의 하나 이상의 주행 궤적 각각에 포함된, 하나 이상의 실제 상황 벡터에 대응하는 시점에 하나 이상의 실제 상황을 참조로 하여 수행된 하나 이상의 실제 동작에 대한 정보 및 이에 대응하는 상기 실제 상황 벡터가 획득되면, (i) 상기 공통 최적 정책에 대응하는 공통 리워드 함수로부터 상기 맞춤형 리워드 함수를 생성하기 위해 사용되는 조정 리워드 함수로서 작동하도록 구현된 조정 리워드 네트워크로 하여금, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 상기 시점 각각에 수행된 상기 실제 동작 각각에 대응하는 하나 이상의 제1 조정 리워드 각각을 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 함수에 대응하는 공통 리워드 모듈로 하여금, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 상기 시점 각각에 수행된 상기 실제 동작 각각에 대응하는 하나 이상의 제1 공통 리워드 각각을 생성하도록 하는 프로세스 및 (iii) 상기 공통 최적 정책에 따른 공통 최적 동작이 이에 대응하는 실제 상황에 근거하여 수행되는 동안에 생성된 맞춤형 리워드의 합을 예측하는 예측 네트워크로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에서의 상기 실제 상황 각각에 대응하는 하나 이상의 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하는 단계; 및
    (b) 상기 학습 장치가, 제1 로스 레이어로 하여금, (i) 각각의 상기 제1 조정 리워드 및 각각의 상기 제1 공통 리워드에 대응하는 제1 맞춤형 리워드 각각, 및 (ii) 상기 실제 예상값을 참조로 하여, 적어도 하나의 조정 리워드 로스를 생성하도록 하고, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션(backpropagation)을 수행함으로써 상기 조정 리워드 네트워크의 파라미터 중 적어도 일부를 학습하도록 하는 단계;
    를 포함하는 것을 특징으로 하는 방법.
  2. 제 1항에 있어서,
    상기 (b) 단계에서,
    상기 학습 장치는, 상기 제1 로스 레이어로 하여금 하기 수식에 따라 상기 조정 리워드 로스를 생성하도록 하되,
    Figure 112021126435930-pat00060

    상기 수식에서,
    Figure 112021126435930-pat00061
    는 상기 주행 궤적에 해당하는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
    Figure 112021126435930-pat00062
    는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지, 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미하며,
    Figure 112021126435930-pat00063
    은 상기 특정 주행 궤적의 상기 제t시점과 같거나 그 이후인 제r 시점에 대응하는, 상기 제1 맞춤형 리워드 중의 제1 특정 맞춤형 리워드를 의미하고,
    Figure 112021126435930-pat00064
    는 상기 특정 주행 궤적의 최초 시점부터 상기 최종 시점까지의 시간 범위 동안 생성된, 상기 제1 조정 리워드 중의 제1 특정 조정 리워드의 절대값의 합을 의미하며,
    Figure 112021126435930-pat00089
    Figure 112021126435930-pat00090
    는 기설정된 상수인 것을 특징으로 하는 방법.
  3. 제 1항에 있어서,
    (c) 상기 학습 장치가, (i) 상기 조정 리워드 네트워크로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에 수행될 상기 공통 최적 동작 각각에 대응하는 하나 이상의 제2 조정 리워드를 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 모듈로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에 수행될 상기 공통 최적 동작 각각에 대응하는 하나 이상의 제2 공통 리워드를 생성하도록 하는 프로세스 및 (iii) 상기 예측 네트워크로 하여금, 상기 주행 궤적의 상기 시점 각각에 상기 공통 최적 동작을 수행함에 따라 초래되는 가상 상황 각각에 대응하는 하나 이상의 가상 상황 벡터 각각을 참조로 하여, 상기 가상 상황에 대응하는 하나 이상의 가상 예상값을 생성하도록 하는 프로세스를 수행하는 단계; 및
    (d) 상기 학습 장치가, 제2 로스 레이어로 하여금, (i) 각각의 상기 제2 조정 리워드 및 각각의 상기 제2 공통 리워드에 대응하는, 각각의 제2 맞춤형 리워드, (ii) 상기 가상 예상값, 및 (iii) 상기 실제 예상값을 참조로 하여, 적어도 하나의 예측 로스를 생성하도록 하고, 상기 예측 로스를 참조로 하여 백프로퍼게이션(backpropagation)을 수행함으로써 상기 예측 네트워크의 파라미터 중 적어도 일부를 학습하도록 하는 단계;
    를 더 포함하는 것을 특징으로 하는 방법.
  4. 제 3항에 있어서,
    상기 (d) 단계에서,
    상기 학습 장치가, 상기 제2 로스 레이어로 하여금 하기 수식에 따라 상기 예측 로스를 생성하도록 하되,
    Figure 112020006674111-pat00067

    상기 수식에서,
    Figure 112020006674111-pat00068
    는 상기 주행 궤적에 해당하는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
    Figure 112020006674111-pat00069
    는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미하며,
    Figure 112020006674111-pat00070
    는, 상기 제t 시점에 상기 공통 최적 동작 중 하나를 수행하여 초래된 특정 가상 상황에 기반하는 제t+1시점부터 상기 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 가상 예상값 중의 특정 가상 예상값을 의미하며,
    Figure 112020006674111-pat00071
    는 상기 제t 시점에 대응하는, 상기 제2 맞춤형 리워드 중의 제2 특정 맞춤형 리워드를 의미하고,
    Figure 112020006674111-pat00072
    는 기설정된 상수를 의미하는 것을 특징으로 하는 방법.
  5. 제 3항에 있어서,
    상기 가상 상황 벡터는, 상기 공통 최적 정책에 대응하는 상기 공통 최적 동작 및 이에 대응하는 상기 실제 상황 벡터 중 적어도 일부 각각에 상황 예측 연산을 수행함으로써 획득되되,
    상기 상황 예측 연산은, 기학습된 상황 예측 네트워크를 통해 수행되거나, (i) 가상 공간 시뮬레이터로 하여금, 특정 실제 상황 벡터에 대응하는 특정 실제 상황을 가상 공간 상에 시뮬레이션하도록 하고, (ii) 상기 특정 실제 상황에서의 가상 차량으로 하여금, 상기 공통 최적 정책에 따른 상기 공통 최적 동작 중 하나를 수행하도록 하고, (iii) 상기 공통 최적 동작 중 상기 하나에 의해 초래되는, 상기 가상 공간의 변화를 검출함으로써 수행되는 것을 특징으로 하는 방법.
  6. 제 3항에 있어서,
    상기 학습 장치는, 상기 (a) 단계 및 상기 (b) 단계에 대응하는, 상기 조정 리워드 네트워크를 학습하는 프로세스 및 상기 (c) 단계 및 상기 (d) 단계에 대응하는, 상기 예측 네트워크를 학습하는 프로세스를 반복함으로써, 상기 조정 리워드 네트워크 및 상기 예측 네트워크를 완전히 학습하는 것을 특징으로 하는 방법.
  7. 제 1항에 있어서,
    상기 주행 궤적은, 상기 대상 운전자에 대응하는 주행 궤적 그룹으로부터, 상기 주행 궤적을 무작위로 샘플링(sampling)하여 생성된 미니 배치(mini batch)로서 상기 학습 장치에 제공되는 것을 특징으로 하는 방법.
  8. 제 1항에 있어서,
    상기 공통 최적 정책에 따른 상기 공통 최적 동작은, 상기 공통 최적 정책에 대응하는 상기 공통 리워드 모듈을 사용하여 상기 강화 학습 알고리즘을 수행함으로써 최적화된 일반 강화 학습 에이전트에 의해 결정되는 것을 특징으로 하는 방법.
  9. 자율 주행에 대한 공통 기준에 따라 수립된 공통 최적 정책을 조정하여 획득된 대상 운전자에 대한 맞춤형 최적 정책에 대응하는, 맞춤형 강화 학습 에이전트를 학습하기 위한 적어도 하나의 맞춤형 리워드 함수를 사용하여 대상 차량의 상기 자율 주행을 지원하는 테스트 방법에 있어서,
    (a) (1) 학습 장치가, 상기 대상 운전자의 하나 이상의 학습용 주행 궤적 각각에 포함된, 하나 이상의 학습용 실제 상황 벡터에 대응하는 학습용 시점에 하나 이상의 학습용 실제 상황을 참조로 하여 수행된 하나 이상의 학습용 실제 동작에 대한 정보 및 이에 대응하는 상기 학습용 실제 상황 벡터가 획득되면, (i) 상기 공통 최적 정책에 대응하는 공통 리워드 함수로부터 상기 맞춤형 리워드 함수를 생성하기 위해 사용되는 조정 리워드 함수로서 작동하도록 구현된 조정 리워드 네트워크로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 조정 리워드 각각을 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 함수에 대응하는 공통 리워드 모듈로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 공통 리워드 각각을 생성하도록 하는 프로세스 및 (iii) 상기 공통 최적 정책에 따른 학습용 공통 최적 동작이 이에 대응하는 학습용 실제 상황에 근거하여 수행되는 동안에 생성된 학습용 맞춤형 리워드의 합을 예측하는 예측 네트워크로 하여금, 상기 학습용 실제 상황 벡터를 참조로 하여, 상기 학습용 주행 궤적의 상기 학습용 시점 각각에서의 상기 학습용 실제 상황 각각에 대응하는 하나 이상의 학습용 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하고, (2) 상기 학습 장치가, 제1 로스 레이어로 하여금, (i) 각각의 상기 학습용 제1 조정 리워드 및 각각의 상기 학습용 제1 공통 리워드에 대응하는 학습용 제1 맞춤형 리워드 각각, 및 (ii) 상기 학습용 실제 예상값을 참조로 하여, 적어도 하나의 조정 리워드 로스를 생성하도록 하고, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션을 수행함으로써 상기 조정 리워드 네트워크의 파라미터 중 적어도 일부를 학습하도록 한 상태에서, 테스팅 장치가, 상기 조정 리워드 네트워크 및 상기 공통 리워드 모듈로 하여금, (i) 제t 시점에 대응하는 테스트용 실제 상황 벡터 및 (ii) 상기 맞춤형 강화 학습 에이전트에 의해 생성된 테스트용 실제 동작을 참조로 하여, 테스트용 조정 리워드 및 테스트용 공통 리워드를 포함하는 테스트용 맞춤형 리워드를 생성하도록 하는 단계; 및
    (b) 상기 테스팅 장치가, 상기 맞춤형 강화 학습 에이전트로 하여금, 상기 테스트용 맞춤형 리워드를 참조로 하여 자기 자신의 파라미터를 학습하도록 하는 단계;
    를 포함하는 것을 특징으로 하는 방법.
  10. 제 9항에 있어서,
    상기 (b) 단계에서,
    상기 맞춤형 강화 학습 에이전트는, 상기 테스트용 맞춤형 리워드를 참조로 하여 상기 자신의 파라미터를 학습함으로써, 상기 학습용 실제 동작과 유사하게 상기 대상 차량이 주행하도록 지원하는 것을 특징으로 하는 방법.
  11. 자율 주행에 대한 공통 기준에 따라 수립된 공통 최적 정책을 조정하여 획득된 대상 운전자에 대한 맞춤형 최적 정책에 대응하는, 강화 학습 알고리즘의 수행에 사용되는 적어도 하나의 맞춤형 리워드(reward) 함수를 사용하여 대상 차량의 상기 자율 주행을 지원하는 학습 장치에 있어서,
    적어도 하나의 인스트럭션들을 저장하는 적어도 하나의 메모리; 및
    (I) 상기 대상 운전자의 하나 이상의 주행 궤적 각각에 포함된, 하나 이상의 실제 상황 벡터에 대응하는 시점에 하나 이상의 실제 상황을 참조로 하여 수행된 하나 이상의 실제 동작에 대한 정보 및 이에 대응하는 상기 실제 상황 벡터가 획득되면, (i) 상기 공통 최적 정책에 대응하는 공통 리워드 함수로부터 상기 맞춤형 리워드 함수를 생성하기 위해 사용되는 조정 리워드 함수로서 작동하도록 구현된 조정 리워드 네트워크로 하여금, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 상기 시점 각각에 수행된 상기 실제 동작 각각에 대응하는 하나 이상의 제1 조정 리워드 각각을 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 함수에 대응하는 공통 리워드 모듈로 하여금, 상기 실제 상황 벡터 및 상기 실제 동작에 대한 정보를 참조로 하여, 상기 시점 각각에 수행된 상기 실제 동작 각각에 대응하는 하나 이상의 제1 공통 리워드 각각을 생성하도록 하는 프로세스 및 (iii) 상기 공통 최적 정책에 따른 공통 최적 동작이 이에 대응하는 실제 상황에 근거하여 수행되는 동안에 생성된 맞춤형 리워드의 합을 예측하는 예측 네트워크로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에서의 상기 실제 상황 각각에 대응하는 하나 이상의 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하는 프로세스, 및 (II) 제1 로스 레이어로 하여금, (i) 각각의 상기 제1 조정 리워드 및 각각의 상기 제1 공통 리워드에 대응하는 제1 맞춤형 리워드 각각, 및 (ii) 상기 실제 예상값을 참조로 하여, 적어도 하나의 조정 리워드 로스를 생성하도록 하고, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션(backpropagation)을 수행함으로써 상기 조정 리워드 네트워크의 파라미터 중 적어도 일부를 학습하도록 하는 프로세스를 수행하기 위한 상기 인스트럭션들을 실행하도록 구성된 적어도 하나의 프로세서;
    를 포함하는 것을 특징으로 하는 장치.
  12. 제 11항에 있어서,
    상기 (II) 프로세스에서,
    상기 프로세서는, 상기 제1 로스 레이어로 하여금 하기 수식에 따라 상기 조정 리워드 로스를 생성하도록 하되,
    Figure 112021126435930-pat00073

    상기 수식에서,
    Figure 112021126435930-pat00074
    는 상기 주행 궤적에 해당하는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
    Figure 112021126435930-pat00075
    는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지, 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미하며,
    Figure 112021126435930-pat00076
    은 상기 특정 주행 궤적의 상기 제t시점과 같거나 그 이후인 제r 시점에 대응하는, 상기 제1 맞춤형 리워드 중의 제1 특정 맞춤형 리워드를 의미하고,
    Figure 112021126435930-pat00077
    는 상기 특정 주행 궤적의 최초 시점부터 상기 최종 시점까지의 시간 범위 동안 생성된, 상기 제1 조정 리워드 중의 제1 특정 조정 리워드의 절대값의 합을 의미하며,
    Figure 112021126435930-pat00091
    Figure 112021126435930-pat00092
    는 기설정된 상수인 것을 특징으로 하는 장치.
  13. 제 11항에 있어서,
    상기 프로세서가, (III) (i) 상기 조정 리워드 네트워크로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에 수행될 상기 공통 최적 동작 각각에 대응하는 하나 이상의 제2 조정 리워드를 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 모듈로 하여금, 상기 실제 상황 벡터를 참조로 하여, 상기 주행 궤적의 상기 시점 각각에 수행될 상기 공통 최적 동작 각각에 대응하는 하나 이상의 제2 공통 리워드를 생성하도록 하는 프로세스 및 (iii) 상기 예측 네트워크로 하여금, 상기 주행 궤적의 상기 시점 각각에 상기 공통 최적 동작을 수행함에 따라 초래되는 가상 상황 각각에 대응하는 하나 이상의 가상 상황 벡터 각각을 참조로 하여, 상기 가상 상황에 대응하는 하나 이상의 가상 예상값을 생성하도록 하는 프로세스를 수행하는 프로세스; 및 (IV) 제2 로스 레이어로 하여금, (i) 각각의 상기 제2 조정 리워드 및 각각의 상기 제2 공통 리워드에 대응하는, 각각의 제2 맞춤형 리워드, (ii) 상기 가상 예상값, 및 (iii) 상기 실제 예상값을 참조로 하여, 적어도 하나의 예측 로스를 생성하도록 하고, 상기 예측 로스를 참조로 하여 백프로퍼게이션(backpropagation)을 수행함으로써 상기 예측 네트워크의 파라미터 중 적어도 일부를 학습하도록 하는 프로세스;를 더 수행하는 것을 특징으로 하는 장치.
  14. 제 13항에 있어서,
    상기 (IV) 프로세스에서,
    상기 프로세서가, 상기 제2 로스 레이어로 하여금 하기 수식에 따라 상기 예측 로스를 생성하도록 하되,
    Figure 112020006674111-pat00080

    상기 수식에서,
    Figure 112020006674111-pat00081
    는 상기 주행 궤적에 해당하는 제1 주행 궤적 내지 제N 주행 궤적을 의미하고,
    Figure 112020006674111-pat00082
    는 상기 주행 궤적 중 특정 주행 궤적의 제t 시점부터 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 실제 예상값 중의 특정 실제 예상값을 의미하며,
    Figure 112020006674111-pat00083
    는, 상기 제t 시점에 상기 공통 최적 동작 중 하나를 수행하여 초래된 특정 가상 상황에 기반하는 제t+1시점부터 상기 최종 시점까지 상기 공통 최적 정책에 따른 상기 공통 최적 동작이 수행되는 동안 생성된 맞춤형 리워드의 합에 대응하는, 상기 가상 예상값 중의 특정 가상 예상값을 의미하며,
    Figure 112020006674111-pat00084
    는 상기 제t 시점에 대응하는, 상기 제2 맞춤형 리워드 중의 제2 특정 맞춤형 리워드를 의미하고,
    Figure 112020006674111-pat00085
    는 기설정된 상수를 의미하는 것을 특징으로 하는 장치.
  15. 제 13항에 있어서,
    상기 가상 상황 벡터는, 상기 공통 최적 정책에 대응하는 상기 공통 최적 동작 및 이에 대응하는 상기 실제 상황 벡터 중 적어도 일부 각각에 상황 예측 연산을 수행함으로써 획득되되,
    상기 상황 예측 연산은, 기학습된 상황 예측 네트워크를 통해 수행되거나, (i) 가상 공간 시뮬레이터로 하여금, 특정 실제 상황 벡터에 대응하는 특정 실제 상황을 가상 공간 상에 시뮬레이션하도록 하고, (ii) 상기 특정 실제 상황에서의 가상 차량으로 하여금, 상기 공통 최적 정책에 따른 상기 공통 최적 동작 중 하나를 수행하도록 하고, (iii) 상기 공통 최적 동작 중 상기 하나에 의해 초래되는, 상기 가상 공간의 변화를 검출함으로써 수행되는 것을 특징으로 하는 장치.
  16. 제 13항에 있어서,
    상기 프로세서는, 상기 (I) 프로세스 및 상기 (II) 프로세스에 대응하는, 상기 조정 리워드 네트워크를 학습하는 프로세스 및 상기 (III) 프로세스 및 상기 (IV) 프로세스에 대응하는, 상기 예측 네트워크를 학습하는 프로세스를 반복함으로써, 상기 조정 리워드 네트워크 및 상기 예측 네트워크를 완전히 학습하는 것을 특징으로 하는 장치.
  17. 제 11항에 있어서,
    상기 주행 궤적은, 상기 대상 운전자에 대응하는 주행 궤적 그룹으로부터, 상기 주행 궤적을 무작위로 샘플링(sampling)하여 생성된 미니 배치(mini batch)로서 상기 학습 장치에 제공되는 것을 특징으로 하는 장치.
  18. 제 11항에 있어서,
    상기 공통 최적 정책에 따른 상기 공통 최적 동작은, 상기 공통 최적 정책에 대응하는 상기 공통 리워드 모듈을 사용하여 상기 강화 학습 알고리즘을 수행함으로써 최적화된 일반 강화 학습 에이전트에 의해 결정되는 것을 특징으로 하는 장치.
  19. 자율 주행에 대한 공통 기준에 따라 수립된 공통 최적 정책을 조정하여 획득된 대상 운전자에 대한 맞춤형 최적 정책에 대응하는, 맞춤형 강화 학습 에이전트를 학습하기 위한 적어도 하나의 맞춤형 리워드 함수를 사용하여 대상 차량의 상기 자율 주행을 지원하는 테스팅 장치에 있어서,
    적어도 하나의 인스트럭션들을 저장하는 적어도 하나의 메모리; 및
    (I) (1) 학습 장치가, 상기 대상 운전자의 하나 이상의 학습용 주행 궤적 각각에 포함된, 하나 이상의 학습용 실제 상황 벡터에 대응하는 학습용 시점에 하나 이상의 학습용 실제 상황을 참조로 하여 수행된 하나 이상의 학습용 실제 동작에 대한 정보 및 이에 대응하는 상기 학습용 실제 상황 벡터가 획득되면, (i) 상기 공통 최적 정책에 대응하는 공통 리워드 함수로부터 상기 맞춤형 리워드 함수를 생성하기 위해 사용되는 조정 리워드 함수로서 작동하도록 구현된 조정 리워드 네트워크로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 조정 리워드 각각을 생성하도록 하는 프로세스, (ii) 상기 공통 리워드 함수에 대응하는 공통 리워드 모듈로 하여금, 상기 학습용 실제 상황 벡터 및 상기 학습용 실제 동작에 대한 정보를 참조로 하여, 상기 학습용 시점 각각에 수행된 상기 학습용 실제 동작 각각에 대응하는 하나 이상의 학습용 제1 공통 리워드 각각을 생성하도록 하는 프로세스 및 (iii) 상기 공통 최적 정책에 따른 학습용 공통 최적 동작이 이에 대응하는 학습용 실제 상황에 근거하여 수행되는 동안에 생성된 학습용 맞춤형 리워드의 합을 예측하는 예측 네트워크로 하여금, 상기 학습용 실제 상황 벡터를 참조로 하여, 상기 학습용 주행 궤적의 상기 학습용 시점 각각에서의 상기 학습용 실제 상황 각각에 대응하는 하나 이상의 학습용 실제 예상값 각각을 생성하도록 하는 프로세스를 수행하고, (2) 상기 학습 장치가, 제1 로스 레이어로 하여금, (i) 각각의 상기 학습용 제1 조정 리워드 및 각각의 상기 학습용 제1 공통 리워드에 대응하는 학습용 제1 맞춤형 리워드 각각, 및 (ii) 상기 학습용 실제 예상값을 참조로 하여, 적어도 하나의 조정 리워드 로스를 생성하도록 하고, 상기 조정 리워드 로스를 참조로 하여 백프로퍼게이션을 수행함으로써 상기 조정 리워드 네트워크의 파라미터 중 적어도 일부를 학습하도록 한 상태에서, 상기 조정 리워드 네트워크 및 상기 공통 리워드 모듈로 하여금, (i) 제t 시점에 대응하는 테스트용 실제 상황 벡터 및 (ii) 상기 맞춤형 강화 학습 에이전트에 의해 생성된 테스트용 실제 동작을 참조로 하여, 테스트용 조정 리워드 및 테스트용 공통 리워드를 포함하는 테스트용 맞춤형 리워드를 생성하도록 하는 프로세스, 및 (II) 상기 맞춤형 강화 학습 에이전트로 하여금, 상기 테스트용 맞춤형 리워드를 참조로 하여 자기 자신의 파라미터를 학습하도록 하는 프로세스를 수행하기 위한 상기 인스트럭션들을 실행하도록 구성된 적어도 하나의 프로세서;
    를 포함하는 것을 특징으로 하는 장치.
  20. 제 19항에 있어서,
    상기 (II) 프로세스에서,
    상기 맞춤형 강화 학습 에이전트는, 상기 테스트용 맞춤형 리워드를 참조로 하여 상기 자신의 파라미터를 학습함으로써, 상기 학습용 실제 동작과 유사하게 상기 대상 차량이 주행하도록 지원하는 것을 특징으로 하는 장치.
KR1020200007631A 2019-01-31 2020-01-20 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법 및 학습 장치 KR102373448B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962799368P 2019-01-31 2019-01-31
US62/799,368 2019-01-31
US16/740,135 US11074480B2 (en) 2019-01-31 2020-01-10 Learning method and learning device for supporting reinforcement learning by using human driving data as training data to thereby perform personalized path planning
US16/740,135 2020-01-10

Publications (2)

Publication Number Publication Date
KR20200095378A KR20200095378A (ko) 2020-08-10
KR102373448B1 true KR102373448B1 (ko) 2022-03-14

Family

ID=69185463

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200007631A KR102373448B1 (ko) 2019-01-31 2020-01-20 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법 및 학습 장치

Country Status (5)

Country Link
US (1) US11074480B2 (ko)
EP (1) EP3690769A1 (ko)
JP (1) JP6931937B2 (ko)
KR (1) KR102373448B1 (ko)
CN (1) CN111507501B (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11279372B2 (en) * 2019-08-23 2022-03-22 Toyota Research Institute, Inc. System and method for controlling a vehicle having an autonomous mode and a semi-autonomous mode
CN112414420B (zh) * 2020-08-13 2023-05-02 腾讯科技(深圳)有限公司 一种基于交通流量的导航方法以及相关装置
CN111880549A (zh) * 2020-09-14 2020-11-03 大连海事大学 面向无人船路径规划的深度强化学习奖励函数优化方法
US11626021B2 (en) 2020-10-07 2023-04-11 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for dispatching shared rides through ride-hailing platform
CN112558601B (zh) * 2020-11-09 2024-04-02 广东电网有限责任公司广州供电局 一种基于Q-learning算法和水滴算法的机器人实时调度方法及系统
CN113173170B (zh) * 2021-01-08 2023-03-17 海南华天科创软件开发有限公司 基于人员画像个性化算法
CN113050634B (zh) * 2021-03-12 2022-03-18 北方工业大学 一种攀爬机器人闭环控制方法及系统
CN113065709B (zh) * 2021-04-13 2023-06-30 西北工业大学 一种基于强化学习的跨域异构集群路径规划方法
CN113240118B (zh) * 2021-05-18 2023-05-09 中国科学院自动化研究所 优势估计方法、装置、电子设备和存储介质
CN113548047B (zh) * 2021-06-08 2022-11-11 重庆大学 一种基于深度学习的个性化车道保持辅助方法及装置
CN113353102B (zh) * 2021-07-08 2022-11-25 重庆大学 一种基于深度强化学习的无保护左转弯驾驶控制方法
CN113635909B (zh) * 2021-08-19 2022-07-12 崔建勋 一种基于对抗生成模仿学习的自动驾驶控制方法
CN113723012B (zh) * 2021-09-10 2024-04-30 上海交通大学 一种基于多智能体生成对抗模仿安全学习的协作围捕方法
CN114089762A (zh) * 2021-11-22 2022-02-25 江苏科技大学 一种基于强化学习的水空两栖无人航行器路径规划方法
CN113879339A (zh) * 2021-12-07 2022-01-04 阿里巴巴达摩院(杭州)科技有限公司 自动驾驶的决策规划方法、电子设备及计算机存储介质
CN114146420B (zh) * 2022-02-10 2022-04-22 中国科学院自动化研究所 一种资源分配方法、装置及设备
CN115235476B (zh) * 2022-09-26 2023-01-17 宁波均胜智能汽车技术研究院有限公司 一种全覆盖路径规划方法、装置、存储介质、电子设备
CN116010621B (zh) * 2023-01-10 2023-08-11 华中师范大学 一种基于规则引导的自适应路径生成方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018211140A1 (en) 2017-05-19 2018-11-22 Deepmind Technologies Limited Data efficient imitation of diverse behaviors

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000122992A (ja) * 1998-08-12 2000-04-28 Sony Corp 情報処理装置および方法、並びに提供媒体
KR102096875B1 (ko) * 2016-10-21 2020-05-28 네이버랩스 주식회사 자율 주행 기술을 응용한 3차원 실내 정밀 지도 자동 생성 로봇 및 로봇의 제어 방법
DK3535705T3 (da) * 2016-11-04 2022-05-30 Deepmind Tech Ltd Forstærkningslæring med hjælpeopgaver
US11062207B2 (en) * 2016-11-04 2021-07-13 Raytheon Technologies Corporation Control systems using deep reinforcement learning
WO2018132608A2 (en) * 2017-01-12 2018-07-19 Mobileye Vision Technologies Ltd. Navigation based on occlusion zones
JP2018135068A (ja) * 2017-02-23 2018-08-30 パナソニックIpマネジメント株式会社 情報処理システム、情報処理方法及びプログラム
US11670420B2 (en) * 2017-04-12 2023-06-06 Koninklijke Philips N.V. Drawing conclusions from free form texts with deep reinforcement learning
EP3422130B8 (en) * 2017-06-29 2023-03-22 The Boeing Company Method and system for autonomously operating an aircraft
US11093829B2 (en) * 2017-10-12 2021-08-17 Honda Motor Co., Ltd. Interaction-aware decision making
US10739776B2 (en) * 2017-10-12 2020-08-11 Honda Motor Co., Ltd. Autonomous vehicle policy generation
JP6628819B2 (ja) * 2018-01-15 2020-01-15 本田技研工業株式会社 車両走行制御装置
CN108932840B (zh) * 2018-07-17 2021-09-07 北京理工大学 基于强化学习的无人驾驶车辆城市交叉口通行方法
CN110322017A (zh) * 2019-08-13 2019-10-11 吉林大学 基于深度强化学习的自动驾驶智能车轨迹跟踪控制策略
CN110646009B (zh) * 2019-09-27 2022-03-01 北京邮电大学 一种基于dqn的车辆自动驾驶路径规划的方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018211140A1 (en) 2017-05-19 2018-11-22 Deepmind Technologies Limited Data efficient imitation of diverse behaviors

Also Published As

Publication number Publication date
US20200250486A1 (en) 2020-08-06
JP6931937B2 (ja) 2021-09-08
US11074480B2 (en) 2021-07-27
CN111507501B (zh) 2024-02-09
KR20200095378A (ko) 2020-08-10
EP3690769A1 (en) 2020-08-05
CN111507501A (zh) 2020-08-07
JP2020126646A (ja) 2020-08-20

Similar Documents

Publication Publication Date Title
KR102373448B1 (ko) 사람의 주행 데이터를 트레이닝 데이터로서 사용하여 강화 학습을 지원함으로써 맞춤형 경로 플래닝을 수행하는 학습 방법 및 학습 장치
KR102328732B1 (ko) 다양한 소스로부터 획득되는 정보의 퓨전을 통해 주변 객체의 모션을 예측함으로써, 사고 위험을 회피하여 안전한 자율 주행을 지원하는 학습 방법, 그리고 이를 이용한 학습 장치, 테스트 방법, 및 테스트 장치
US20200216094A1 (en) Personal driving style learning for autonomous driving
US11087175B2 (en) Learning method and learning device of recurrent neural network for autonomous driving safety check for changing driving mode between autonomous driving mode and manual driving mode, and testing method and testing device using them
KR102296507B1 (ko) 트래킹 네트워크를 포함한 cnn을 사용하여 객체를 트래킹하는 방법 및 이를 이용한 장치
JP6913969B2 (ja) 強化学習に基づいて協同走行で多重エージェントセンサフュージョンを遂行する方法及び装置
JP2020123343A (ja) 自動駐車システムを提供するために決定地点間の関係及び決定地点に対するリグレッション結果を利用して駐車スペースを検出する学習方法及び学習装置、そしてこれを利用したテスティング方法及びテスティング装置
JP7092383B2 (ja) 各領域において最適化された自律走行を遂行できるように位置基盤アルゴリズムの選択によってシームレスパラメータ変更を遂行する方法及び装置
US10496899B1 (en) Learning method and learning device for adjusting parameters of CNN in which residual networks are provided for meta learning, and testing method and testing device using the same
WO2022100107A1 (en) Methods and systems for predicting dynamic object behavior
US10872297B2 (en) Learning method and learning device for generating training data from virtual data on virtual world by using generative adversarial network, to thereby reduce annotation cost required in training processes of neural network for autonomous driving, and a testing method and a testing device using the same
EP3690811A1 (en) Learning method and learning device for removing jittering on video acquired through shaking camera by using a plurality of neural networks for fault tolerance and fluctuation robustness in extreme situations, and testing method and testing device using the same
JP2020126618A (ja) 自律走行ネットワークの検出プロセスを検証する説明可能な人工知能を利用して運転者に潜在的リスクの状況について警告することにより機能的安全性を提供する学習方法及び学習装置、そしてこれを用いたテスティング方法及びテスティング装置{learning method and learning device for providing functional safety by warning driver about potential dangerous situation by using explainable ai which verifies detection processes of autonomous driving network, and testing method and testing device using the same}
US10402686B1 (en) Learning method and learning device for object detector to be used for surveillance based on convolutional neural network capable of converting modes according to scales of objects, and testing method and testing device using the same
CN111476082A (zh) 在线批次归一化、在线学习及持续学习的方法和装置
KR20200094645A (ko) 온 디바이스 독립형 예측에 기반하여 자율 주행 차량의 모드를 전환함으로써 자율 주행의 안전성을 도모하는 학습 방법 및 학습 장치, 그리고 이를 이용한 테스팅 방법 및 테스팅 장치
EP3690723A1 (en) Learning method and learning device for heterogeneous sensor fusion by using merging network which learns non-maximum suppression
KR102246418B1 (ko) 차선 유지 제어 방법 및 그 장치
US10776542B2 (en) Method and device for calibrating physics engine of virtual world simulator to be used for learning of deep learning-based device, and a learning method and learning device for real state network used therefor
US20220269948A1 (en) Training of a convolutional neural network
KR20220088497A (ko) 서브-커널 써칭 모듈을 사용하여 온-디바이스 뉴럴 네트워크 모델을 최적화하는 방법 및 장치
EP3913530B1 (en) Learning method and learning device for updating object detector, based on deep learning, of autonomous vehicle to adapt the object detector to driving circumstance, and updating method and updating device using the same
US20230082654A1 (en) System and method for inferring driving constraints from demonstrations
Sakthivel et al. Intelligent Systems Context-Aware Adaptive Reinforcement Learning Approach for Autonomous Vehicles

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