KR102616364B1 - 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템 및 방법 - Google Patents

신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템 및 방법 Download PDF

Info

Publication number
KR102616364B1
KR102616364B1 KR1020230069242A KR20230069242A KR102616364B1 KR 102616364 B1 KR102616364 B1 KR 102616364B1 KR 1020230069242 A KR1020230069242 A KR 1020230069242A KR 20230069242 A KR20230069242 A KR 20230069242A KR 102616364 B1 KR102616364 B1 KR 102616364B1
Authority
KR
South Korea
Prior art keywords
uncertainty
ensemble
cost function
models
model
Prior art date
Application number
KR1020230069242A
Other languages
English (en)
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 KR1020230069242A priority Critical patent/KR102616364B1/ko
Application granted granted Critical
Publication of KR102616364B1 publication Critical patent/KR102616364B1/ko

Links

Images

Classifications

    • 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
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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/091Active learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)

Abstract

인공 신경망 동역학 학습 모델을 사용하는 자율 시스템에서, 불확실성을 효과적으로 완화하는 시스템이 제공된다. 상기 시스템은, 현재 상태에서 다양한 제어 입력을 샘플링한 자율 장치의 상태-입력 세트를 입력받아 다수개의 인공 신경망 동역학 모델에서 인식적 불확실성을 계산하고, 상기 인식적 불확실성을 제 1 최적화 비용함수에 적용하여 제 1 수정 비용함수를 산출하는 액티브 러닝 모델 블럭, 상기 제 1 수정 비용함수로 액티브 러닝을 수행하여 제 1 최적 제어 명령을 산출하는 제 1 모델 예측 제어기, 다수개의 상기 인공 신경망 동역학 모델중 하나를 선택하고, 상기 자율 장치의 상태-입력 세트를 입력받아 우연적 불확실성을 계산하고, 상기 우연적 불확실성을 제 2 최적화 비용함수에 적용하여 제 2 수정 비용함수를 산출하는 앙상블 동역학 모델 블럭, 및 상기 제 2 수정 비용함수를 이용해 제 2 최적 제어 명령을 산출하는 제 2 모델 예측 제어기를 포함하는 것을 특징으로 한다.

Description

신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템 및 방법{System and Method for alleviating uncertainty handling in dynamics learning model using neural network}
본 발명은 자율 제어 기술에 관한 것으로서, 더 상세하게는 인공신경망 동역학 학습 모델을 사용하는 자율시스템에서, 불확실성을 효과적으로 완화하는 시스템 및 방법에 대한 것이다.
로봇과 차량 등 복잡한 환경에서 높은 수준의 상호작용 및 수행 능력이 요구되는 자율 시스템에서 모델의 불확실성 문제는 필수적으로 고려되어야 한다. 고전적인 방법에서는 동역학 모델을 선형으로 근사하여 가장 적합한 모델 파라미터를 튜닝하는 방식으로 접근했다.
하지만, 높은 비선형성을 띄는 시스템에서는 정확한 모델링이 불가능했다. 따라서, 인공지능의 발전과 함께 동역학 모델을 데이터 기반의 인공신경망으로 학습하는 시도가 활발하게 연구되고 있다.
인공 신경망으로 모델을 학습하는 경우, 모델의 불확실성을 고려해야 한다. 센서의 노이즈나 환경으로부터 오는 외란 등이 불확실성을 발생시킨다. 이를 제대로 고려하지 못하면 해당 모델을 사용하는 제어기는 안전하거나 강건하지 못한다.
이를 해결하기 위해 불확실성을 효율적으로 줄이고자 불확실성이 높은 상태-입력 공간을 의도적으로 방문하여 학습 데이터를 얻는 액티브 러닝(Active Learning)이 연구되었다.
이와 정반대로, 불확실성이 높은 상태-입력 공간을 제약조건 또는 비용함수에 포함시킴으로써 자율 시스템이 불확실성을 회피하도록 제어기를 설계하는 제어기 또한 연구되어왔다.
그러나, 두 방법은 상호 배타적으로 연구되고 적용되어 왔다. 하지만, 두 방법이 효과적으로 통합되어야만 인공 신경망 동역학 모델을 사용하는 자율 시스템에서 좋은 성능을 발휘할 수 있을 것이다.
예를 들면, 학습 데이터에 모델의 특성을 잘 표현하는 데이터가 다수 포함되어야만 모델의 불확실성이 줄어들어 자율 시스템을 운용할 때 제어 성능이 보장될 것이다.
또한, 아무리 효과적인 방법으로 학습 데이터를 수집하여다고 해도 필연적으로 해소하지 못한 모델 불확실성이 존재할 것이다. 따라서, 이를 자율 시스템을 배포하여 운용할 때 제어기에서 고려해야할 필요가 있다.
요약하자면, 기존 강화학습 기반 신경망 정책을 사용할 경우, 안정성을 고려할 수 없고, 학습 후 목적함수를 수정할 수 없다는 문제가 있다.
또한, 기존의 액티브 러닝 방법을 사용할 경우, 인공 신경망을 사용할 수 없다는 문제점이나 자율 시스템을 배포 운용할 경우 제어기를 완전히 변경해야 한다는 문제점이 존재한다.
마지막으로, 불확실성을 고려한 제어기의 경우 동역학을 학습하는 방법과 배타적으로 사용되어 왔기 때문에, 별도의 동역학 학습을 진행해줘야 한다는 문제점이 있다.
1. 대한민국 공개특허번호 제10-2013-0074310호
본 발명은 위 배경기술에 따른 문제점을 해소하기 위해 제안된 것으로서, 인공 신경망 동역학 학습 모델을 사용하는 자율 시스템에서, 불확실성을 효과적으로 완화하는 시스템 및 방법을 제공하는데 그 목적이 있다.
또한, 본 발명은 자율 시스템의 동역학 모델을 일부만 알고 있거나 알지 못할 경우라도 불확실성을 효과적으로 대응할 수 있는 시스템 및 방법을 제공하는데 다른 목적이 있다.
본 발명은 위에서 제시된 과제를 달성하기 위해, 인공 신경망 동역학 학습 모델을 사용하는 자율 시스템에서, 불확실성을 효과적으로 완화하는 시스템을 제공한다.
상기 시스템은,
현재 상태에서 다양한 제어 입력을 샘플링한 자율 장치의 상태-입력 세트를 입력받아 다수개의 인공 신경망 동역학 모델에서 인식적 불확실성을 계산하고, 상기 인식적 불확실성을 제 1 최적화 비용함수에 적용하여 제 1 수정 비용함수를 산출하는 액티브 러닝 모델 블럭;
상기 제 1 수정 비용함수로 액티브 러닝을 수행하여 제 1 최적 제어 명령을 산출하는 제 1 모델 예측 제어기;
다수개의 상기 인공 신경망 동역학 모델중 하나를 선택하고, 상기 자율 장치의 상태-입력 세트를 입력받아 우연적 불확실성을 계산하고, 상기 우연적 불확실성을 제 2 최적화 비용함수에 적용하여 제 2 수정 비용함수를 산출하는 앙상블 동역학 모델 블럭; 및
상기 제 2 수정 비용함수를 이용해 제 2 최적 제어 명령을 산출하는 제 2 모델 예측 제어기;를 포함하는 것을 특징으로 한다.
이때, 상기 액티브 러닝 모델 블럭은, 각각 파라미터로 매개된 평균 예측치와 분산 예측치를 생성하는 다수개의 제 1 앙상블 모델; 및 상기 평균 예측치와 상기 분산 예측치를 이용하여 상기 인식적 불확실성을 산출하고, 상기 인식적 불확실성을 적용하여 상기 제 1 수정 비용함수를 산출하는 제 1 계산 모듈;을 포함하는 것을 특징으로 한다.
또한, 상기 앙상블 동역학 모델 블럭은, 각각 파라미터로 매개된 평균 예측치와 분산 예측치를 생성하는 다수개의 제 2 앙상블 모델; 및 상기 평균 예측치와 상기 분산 예측치를 이용하여 우연적 불확실성을 산출하고, 상기 우연적 불확실성을 적용하여 제 2 수정 비용함수를 산출하는 제 2 계산 모듈;을 포함하는 것을 특징으로 한다.
또한, 다수개의 상기 제 1 앙상블 모델 및 다수개의 상기 제 2 앙상블 모델은 다음 상태의 변화량()을 다음 수학식 (여기서, E는 평균, 은 앙상블 모델, 은 자율 장치의 상태, 은 자율 장치의 입력, B는 앙상블 모델의 개수, b는 양의 정수이고, ,는 각각 파라미터 로 매개된 평균 예측치 및 분산 예측치, 은 가우시안 분포를 나타낸다)으로 산출하는 것을 특징으로 한다.
또한, 다수개의 상기 앙상블 모델 및 다수개의 상기 제 2 앙상블 모델의 학습을 위한 데이터셋(D)은 다음 수학식 으로 정의되는 것을 특징으로 한다.
또한, 상기 학습은 다음 수학식 (여기서, T는 전치이고, det는 행렬식을 나타낸다)에 의해 이루어지는 것을 특징으로 한다.
또한, 시스템은, 설정된 시간 동안 상기 자율 장치의 상태-입력 세트를 위한 움직임 데이터를 수집하는 제 1 센서계 및 제 2 센서계; 및 설정된 시간 동안 상기 움직임 데이터를 저장하는 저장소;를 포함하는 것을 특징으로 한다.
또한, 상기 인식적 불확실성은 JRD(Jensen-Renyi Divergence)을 이용하여 산출되는 것을 특징으로 한다.
또한, 상기 제 1 수정 비용함수는 상기 인식적 불확실성(uncertainty)이 클수록 비용이 작아지게 하여 상기 인식적 불확실성이 큰 곳을 일부로 선택하도록 유도하는 함수로서 상기 제 1 최적화 비용함수에 상기 인식적 불확실성을 감산하는 것을 특징으로 한다.
또한, 상기 제 1 수정 비용함수는 다음 수학식 (여기서, q(xt)는 상태비용함수이고, 는 입력비용함수이고, R는 R은 양의 준정 부호(positive semi-definite) 매트릭스 파라미터이고, 은 자율 장치의 상태, 은 자율 장치의 입력, 는 비용 가중치, 는 앙상블 모델 간의 부정합 정도 (disagreement) )으로 정의되는 것을 특징으로 한다.
또한, 상기 제 2 수정 비용함수는 상기 우연적 불확실성(uncertainty)이 작을수록 비용이 작아지게 하여 상기 우연적 불확실성이 적은 곳을 일부로 선택하도록 유도하는 함수로서 상기 제 2 최적화 비용함수에 상기 우연적 불확실성을 합산하는 것을 특징으로 한다.
또한, 상기 제 2 수정 비용함수는 다음 수학식 (여기서, q(xt)는 상태비용함수이고, 는 제어비용함수이고, R는 R은 양의 준정 부호(positive semi-definite) 매트릭스 파라미터이고, 은 자율 장치의 상태, 은 자율 장치의 입력, 는 비용가중치, Var는 분산 함수이고, 는 샘플링된 다음 상태의 변화량, Eb는 각 앙상블 모델, 는 우연적 불확실성의 추정치이다)으로 정의되는 것을 특징으로 한다.
한편, 상기 제 2 수정 비용함수는 다음 수학식(여기서, ,는 비용함수의 가중치, I는 인디케이터 함수 (임계값을 넘을 때 작동하는 함수) , ξ는 임의의 설정값이다)으로 정의되는 것을 특징으로 한다.
또한, 다수개의 상기 제 1 앙상블 모델 및 다수개의 상기 제 2 앙상블 모델은 GPU(graphics processing unit)를 이용한 병렬 계산을 위해 MLP(Multi-Layer Perception)를 사용하고 상기 MLP를 병렬 계산하도록 각 파라미터(θb)가 독립적으로 초기화되는 것을 특징으로 한다.
또한, 다수개의 상기 제 1 앙상블 모델 또는 다수개의 상기 제 2 앙상블 모델을 합하여 생성되는 전체 모델을 학습 데이터로 학습하는 경우, 각 앙상블 모델을 독립적으로 포워딩하여 손실함수(ob)로 구성되는 것을 특징으로 한다.
또한, 상기 손실함수는 수학식 (여기서, z와 는 앙상블 모델의 입력과 그 출력을 의미하고, 는 b번째 앙상블 모델의 특정 레이어의 가중치(weight)와 편향치(bias)이다)으로 정의되는 것을 특징으로 한다.
다른 한편으로, 본 발명의 다른 일실시예는, (a) 액티브 러닝 모델 블럭이 현재 상태에서 다양한 제어 입력을 샘플링한 자율 장치의 상태-입력 세트를 입력받아 다수개의 인공 신경망 동역학 모델에서 인식적 불확실성을 계산하고, 상기 인식적 불확실성을 제 1 최적화 비용함수에 적용하여 제 1 수정 비용함수를 산출하는 단계; (b) 제 1 모델 예측 제어기가 상기 제 1 수정 비용함수로 액티브 러닝을 수행하여 제 1 최적 제어 명령을 산출하는 단계; (c) 앙상블 동역학 모델 블럭이 다수개의 상기 인공 신경망 동역학 모델중 하나를 선택하고, 상기 자율 장치의 상태-입력 세트를 입력받아 우연적 불확실성을 계산하고, 상기 우연적 불확실성을 제 2 최적화 비용함수에 적용하여 제 2 수정 비용함수를 산출하는 단계; 및 (d) 제 2 모델 예측 제어기가 상기 제 2 수정 비용함수를 이용해 제 2 최적 제어 명령을 산출하는 단계;를 포함하는 것을 특징으로 하는 신경망을 이용한 동역학 학습 모델의 불확실성 완화 방법을 제공한다.
본 발명에 따르면, 자율 시스템의 동역학 모델을 일부만 알고 있거나 알지 못할 경우 데이터 기반의 학습모델을 사용하여 불확실성을 효과적으로 대응할 수 있다.
또한, 본 발명의 다른 효과로서는 안정성을 고려할 수 있고, 학습후 목적함수를 수정할 수 있다는 점을 들 수 있다.
또한, 본 발명의 또 다른 효과로서는 기존의 액티브 러닝 방법을 사용할 경우라도, 인공 신경망을 사용할 수 있으며, 자율 시스템을 배포 운용할 경우 제어기를 완전히 변경하지 않아도 된다는 점을 들 수 있다.
또한, 본 발명의 또 다른 효과로서는 별도의 동역학 학습을 진행하지 않아도 되는 점을 들 수 있다.
또한, 본 발명의 또 다른 효과로서는 다양한 로봇 플랫폼에 적용할 수 있으며, 자율 주행 자동차, RC(Remote Control) 카등에서 효과적인 제어 성능을 보장할 수 있다는 점을 들 수 있다.
도 1은 본 발명의 일실시예에 따른 신경망을 이용한 동역학 학습 모델의 불확실성을 완화하기 위한 시스템의 구성 블럭도이다.
도 2는 본 발명의 일실시예에 따른 액티브 학습(active learning) 과정을 보여주는 흐름도이다.
도 3은 도 2에 도시된 움직임 데이터를 수집하는 단계를 상세하게 보여주는 흐름도이다.
도 4는 본 발명의 일실시예에 따른 불확실성-인식 과정을 보여주는 흐름도이다.
도 5는 도 4에 도시된 태스크 실행 단계를 상세하게 보여주는 흐름도이다.
도 6은 본 발명의 일실시예에 따른 액티브 탐색 동안 수집 데이터의 산포도이다.
도 7은 본 발명의 일실시예에 따른 탐색 반복에 따른 블록 껍질 체적을 보여주는 그래프이다.
도 8은 본 발명의 일실시예에 따른 레이스 트랙과 완료 횟수를 보여주는 그래프이다.
도 9는 본 발명의 일실시예에 따른 속도 비용 및 불안정 횟수를 보여주는 그래프이다.
도 10은 본 발명의 일실시예에 따른 차량 시뮬레이터에 관한 내비게이션 결과를 시각적으로 보여주는 도면이다.
도 11은 본 발명의 일실시예에 따른 추가적인 실험을 보여주는 예시이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 구체적으로 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다.
제 1, 제 2등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. "및/또는" 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미가 있는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않아야 한다.
이하 첨부된 도면을 참조하여 본 발명의 일실시예에 따른 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템 및 방법을 상세하게 설명하기로 한다.
도 1은 본 발명의 일실시예에 따른 신경망을 이용한 동역학 학습 모델의 불확실성을 완화하기 위한 시스템(100)의 구성 블럭도이다. 도 1을 참조하면, 시스템(100)은, 액티브 러닝 모델 블럭(110-1), 앙상블 동역학 모델 블럭(110-2), 제 1 비용 함수(130-1), 제 2 비용 함수(130-2), 제 1 센서계(140-1), 제 2 센서계(140-2), 제 1 모델 예측 제어기(150-1), 제 2 모델 예측 제어기(150-2), 수집 데이터(160) 등을 포함하여 구성될 수 있다.
액티브 러닝 모델 블럭(110-1)은 현재 상태에서 다양한 샘플링된 제어 입력을 입력받아 인식적 불확실성을 계산하고, 계산된 인식적 불확실성을 제 1 최적화 비용함수에 적용하여 제 1 비용함수를 산출하는 기능을 수행한다. 자율 장치는 로봇, 자율 주행 차량, 드론 등이 될 수 있다.
이를 위해, 액티브 러닝 모델 블럭(110-1)은 각각 파라미터로 매개된 평균 예측치와 분산 예측치를 생성하는 B개의 제 1 앙상블 모델(112-1), 평균 예측치와 분산 예측치를 이용하여 인식적 불확실성을 산출하고, 인식적 불확실성을 적용하여 제 1 수정 비용함수를 산출하는 제 1 계산 모듈(111-1)로 구성된다.
제 1 모델 예측 제어기(150-1)는 샘플링 기반 모델 예측 제어(MPPI: Model Predictive Path Integral) 알고리즘으로서, 최적의 입력 시퀀스를 찾기 위해 최적화를 수행하여 제 1 최적 제어 명령을 산출하는 기능을 수행한다.
일반적으로 MPPI 제어는 모델 예측 제어(MPC: Model predictive control)와 경로 적분 제어 프레임 워크를 결합하여 고차원 상태 및 동작 공간이 있는 시스템에 대해 제어 신호를 생성한다.
또한, MPPI 제어는 시스템 역학 모델을 사용하여 다양한 제어 입력과 관련된 미래 상태 및 비용을 예측한다. 제어 문제를 최적화 작업으로 공식화하고 이를 반복적으로 해결하여 비용 함수를 최소화하는 최적의 제어 조치를 찾는다.
경로 적분 제어 프레임 워크는 제어를 확률적 최적 제어 문제로 취급하고, 제어 궤적에 대한 확률 분포로 제어 정책을 나타낸다. 이 분포에서 샘플링하고 관련 비용을 평가함으로써 MPPI는 제어 공간을 탐색하여 바람직한 시스템 동작으로 이어지는 궤적을 찾는다.
도 1을 참조하면, 제 1 모델 예측 제어기(150-1)는 명령 입력(
Figure 112023059475177-pat00033
)을 자율 장치에 전송하여 탐색 국면(170-1)을 실행한다. 탐색 국면(170-1)은 휴먼 모니터를 사용하며, 모델 바이어스를 최소화하기 위한 것이다. 물론, 자율 장치에는 제 1 센서계(140-1)가 구성되며, 이 제 1 센서계(140-1)에 의해 수집되는 자율 장치의 상태(xo)는 저장소(160)에 저장된다. 저장소(160)는 상태(xo)와 입력(
Figure 112023059475177-pat00034
) 정보를 제 1 앙상블 모델(112-1)에 제공할 수 있다.
물론, 제 1 앙상블 모델(112-1)은 제 1 센서계(140-1), 제 1 모델 예측 제어기(150-1), 제 1 계산 모듈(111-1)로부터 상태(
Figure 112023059475177-pat00035
)와 입력(
Figure 112023059475177-pat00036
)을 입력받아, 평균 예측치와 분산 예측치{
Figure 112023059475177-pat00037
}를 산출한다. 제 1 계산 모듈(111-1)은 이를 이용하여 다음 상태의 변화량(
Figure 112023059475177-pat00038
)을 예측한다.
동역학 모델
Figure 112023119327293-pat00039
은 자율 장치의 상태(
Figure 112023119327293-pat00040
)와 입력(
Figure 112023119327293-pat00041
)을 입력받아 다음 상태의 변화량(
Figure 112023119327293-pat00042
)을 예측한다. 이때, 동역학 모델은 B개의 앙상블 모델들로 구성된다.
Figure 112023119327293-pat00043
번째 앙상블 모델()은 다음 상태의 변화량을 다음과 같은 가우시안(Gaussian) 분포로 예측한다:
여기서,
Figure 112023059475177-pat00046
Figure 112023059475177-pat00047
는 각각 파라미터
Figure 112023059475177-pat00048
로 매개된 평균 예측치와 분산 예측치이다.
Figure 112023059475177-pat00049
은 가우시안 분포이다. 해당 네트워크는 아래와 같은 N 크기의 학습 데이터 세트에 의해 학습된다. 네트워크는 전체 앙상블 모델 중, 하나의 앙상블 모델을 설명하는 수식으로써, 각 앙상블 모델은 시스템의 다음 상태를 가우시안 분포로 추정하는 역할을 한다.
여기서, D는 학습 데이터셋,
Figure 112023059475177-pat00051
는 다음 상태의 변화량이다.
학습은 Gaussian Negative Log-Likelihood(NLL) 함수에 의해 이뤄진다.
여기서, T는 전치이고, det는 행렬식을 나타낸다. 각 앙상블 모델이 사후 Gaussian 분포를 예측하고 있으므로, 전체 모델, 즉 앙상블 모델들의 합은 Gaussian Mixture Model(GMM)을 이루게 된다:
여기서,
Figure 112023059475177-pat00054
이다.
따라서, 다음 상태의 변화량은 아래와 같은 오일러 식으로 예측된다.
여기서, E는 평균 함수, Eb는 각 앙상블 모델이다.
또한, 비용 함수부(130-1)가 구성되며, 비용 함수부(130-1)는 IG(Information Gain, 정보 이득), 태스크 함수로 구성된다. 부연하면, 정보 이득은 인식적 불확실성(epistemic uncertainty)과 동일한 용어이고, 태스크는 최대한 다양한 데이터를 획득하는 것, 즉 탐색 문제를 의미한다.
도 1을 참조하면, 앙상블 동역학 모델 블럭(110-2)은 다수개의 상기 인공 신경망 동역학 모델중 하나를 선택하고, 자율 장치의 상태-입력 세트를 입력받아 우연적 불확실성(즉, 인식적 불확실성 + 우연적 불확실성)을 계산하고, 상기 우연적 불확실성을 제 2 최적화 비용함수에 적용하여 제 2 수정 비용함수를 산출하는 기능을 수행한다.
이를 위해, 앙상블 동역학 모델 블럭(110-2)은 각각 파라미터로 매개된 평균 예측치와 분산 예측치를 생성하는 B개의 제 2 앙상블 모델(112-2), 평균 예측치와 분산 예측치를 이용하여 우연적 불확실성을 산출하고, 산출된 우연적 불확실성을 적용하여 제 2 수정 비용함수를 산출하는 제 2 계산 모듈(111-2)로 구성될 수 있다.
B개의 제 2 앙상블 모델(112-2)은 B개의 제 1 앙상블 모델(112-1)과 연결될 수 있다. 이 둘이 연결되는 이유는, 데이터를 획득하고 학습할 때 사용했던 앙상블 모델을, 태스크를 수행할 때 그대로 갖고와서 사용한다는 의미이다. 따라서 동일한 모델이 될 수 있다.
제 2 모델 예측 제어기(150-2)는 SMPPI(Smooth MPPI) 제어기로서, 제 2 수정 비용함수를 이용해 제 2 최적 제어 명령을 산출하는 기능을 수행한다. 일반적으로 SMPPI 제어는 MPPI 제어 알고리즘의 단순화된 버전으로서, Monte Carlo 샘플링을 통해 제어 궤적을 샘플링하고 비용을 평가하는 대신 샘플링된 제어 작업 세트를 사용하여 궤적 분포를 근사화한다.
도 1을 참조하면, 제 2 모델 예측 제어기(150-2)는 명령 입력(
Figure 112023059475177-pat00056
)을 자율 장치에 전송하여 배포 국면(170-2)을 실행한다. 배포 국면은 휴먼 모니터없이 진행되며, 예측하지 못하는 모션을 회피하기 위한 것이다. 물론, 자율 장치에는 제 2 센서계(140-2)가 구성된다. 제 2 센서계(140-2)는 이해의 편의를 위해 제 1 센서계(140-1)와 구분하여 도시하였으나, 제 1 센서계(140-1)에 해당될 수 있다.
앙상블 동역학 모델 블럭(112-2)은 제 2 센서계(140-2), 제 2 모델 예측 제어기(150-2), 제 2 계산 모듈(111-2)로부터 상태와 입력을 입력받아, 평균 예측치와 분산 예측치{
Figure 112023059475177-pat00057
}를 산출한다. 제 2 계산 모듈(111-2)은 이를 이용하여 다음 상태의 변화량(
Figure 112023059475177-pat00058
)을 예측한다.
또한, 제 2 비용 함수부(130-2)가 구성되며, 제 2 비용 함수부(130-2)는 Uncet., 태스크 함수, 스테이블(stable) 함수 등으로 구성된다. 부연하면, uncert.는 uncertainty, 즉 불확실성에 해당하는 비용을 의미하고, 태스크 함수는 함수가 아니고, 태스크를 수행하기 위한 비용을 의미한다. 예를 들면 목표 속도를 달성하기 위한 비용 등이 있다. stable은 말 그대로 안정성에 대한 비용을 의미한다.
데이터를 획득할 때는 안정할 필요가 없어서 이러한 비용을 사용하지 않았지만, 실제 태스크를 수행할 때는 안정할 필요가 있어서 이러한 비용을 부과할 수도 있음을 예시로 든 것이다.
도 1을 참조하면, 자율 장치의 온-보딩(on-boarding) 컴퓨팅만으로 실시간 제어 성능을 보장하려면, 인공 신경망 모델의 예측이 충분히 빠르게 이뤄져야 한다.
따라서, 해당 앙상블 모델을 GPU(graphics processing unit)를 이용한 병렬 계산할 수 있는 방식이 적용될 수 있다. 우선, 동역학 특성을 정확하게 포착하기 위해 연속된 상태-입력을 앙상블 모델에 입력값으로 제공한다.
이럴 경우, 시퀀스 데이터를 다루는데에 특화된 RNN(Recurrent Neural Network) 등을 사용하는 것이 일반적이다. 하지만, 이들은 GPU에서 앙상블 모델을 처리할 때 병렬 계산이 불가하기 때문에, 예측 시간이 앙상블의 크기에 따라 선형적으로 증가하게 된다.
따라서, Multi-Layer Perception(MLP)를 사용하고 이를 병렬 계산하도록 한다. 우선, 각 앙상블 모델의 파라미터(θb)를 독립적으로 초기화한다. 초기화에는 일반적으로 사용되는 He-Initialization 등이 사용될 수 있다. 그 후, 전체 모델을 학습 데이터로 학습할 때는, 각 앙상블 모델을 독립적으로 포워딩(forwarding)하여 손실 함수를 구성하도록 한다.
여기서, z와
Figure 112023059475177-pat00060
는 앙상블 모델의 입력과 그 출력을 의미하고, 는 b번째 앙상블 모델의 특정 레이어의 가중치(weight)와 편향치(bias)이다.
이를 각 앙상블에서 모든 레이어에 대해 적용하면 각 앙상블의 최종 예측 가우시안(Gaussian) 분포를 얻을 수 있다. 이를 이용해 각 앙상블 모델에 대해 학습을 독립적으로 진행한다. 학습을 진행할 때는 병렬 계산을 적용하지 않는다.
이와 반대로, 전체 인공 신경망 모델을 일반적인 예측 모델로서 사용할 때는, 병렬 계산을 적용한다. 전체 모델의 모든 레이어에 대해 다음과 같은 매트릭스 연산으로 병렬화를 적용한다:
W,b는 모든 앙상블 모델의 가중치와 편향치를 순서대로 정렬한 매트릭스를 의미한다. 이와 같은 병렬 계산은 다양한 라이브러리의 기정의된 함수로 손쉽게 얻을 수 있다. 예를 들면, PyTorch의 baddbmm 함수를 이용할 수 있다.
도 2는 본 발명의 일실시예에 따른 액티브 학습(active learning) 과정을 보여주는 흐름도이다. 도 2를 참조하면, 우선, 액티브 러닝에는 인식적 불확실성을 이용해야 한다. 예를 들면, 센서 노이즈와 같은 지속적으로 발생하는 우연적 불확실성(aleatoric uncertainty)이 액티브 학습에 포함된다면, 해당 불확실성이 데이터의 부족으로 인한 것인지 혹은 기본적으로 시스템에 내재된 불확실성인지 알 수 없게 된다.
인식적 불확실성은 데이터가 부족하여 미처 확정짓지 못해서 생긴 불확실성이다. 한편, 우연적 불확실성은 센서 노이즈 등 시스템 자체에 생기는 줄일 수 없는 불확실성이다. 따라서, 인식적 불확실성(epistemic uncertainty)을 줄이는 것이 중요하다. 이를 효과적으로 줄이는 방법 중 액티브 학습 방법은, 불확실성이 큰 곳을 자율 장치가 의도적으로 방문하게(혹은 그 입력을 수행하게)함으로써, 인식적 불확실성을 빠르게 출이고자 하는 것이다.
액티브 학습의 목표는 가장 효율적인 방법, 즉 적은 데이터 샘플 수와 적은 투자 시간으로 좋은 학습 데이터셋을 얻는 것이기 때문에, 학습 데이터 부족으로 인해 발생하는 인식적 불확실성을 효과적으로 추출해야 한다.
사람이 감독하는 환경에서 자율 장치(예를 들면, 로봇)를 초기화한다(단계 S210).
이후, 임의로 정한 약 30초 동안 센서계(140-1)를 이용하여 자율 장치의 움직임 데이터를 수집하고 저장한다(단계 S210,S220). 부연하면, 움직임 데이터는 현재 상태에서 다양한 제어 입력을 샘플링한 자율 장치의 상태-입력 세트이고, 이를 저장소(160)에 저장한다.
이후, 움직임 데이터를 이용하여 인공 신경망 동역학 모델을 재학습한다(단계 S230).
이후, 사람의 입력에 의한 종료 명령이 있는지 또는 설정한 설정 시간이 경과하였는지를 확인한다(단계 S240). 자율 장치에 대한 종료를 위한 사람의 입력 명령이 있는지를 확인한다. 이는 사용자가 원할때 알고리즘을 종료하기 위한 것이다.
단계 S240에서, 종료 명령이 없거나 설정 시간이 경과하지 않으면 단계 S210 내지 S240이 다시 진행된다.
이와 달리, 단계 S240에서, 종료 명령이 있거나 설정 시간이 경과하면 학습이 종료한 모델로 인공 신경망 동역할 모델을 교체한다(단계 S250).
도 3은 도 2에 도시된 움직임 데이터를 수집하는 단계(S210)를 상세하게 보여주는 흐름도이다. 도 3을 참조하면, 현재 상태에서 다양한 제어입력을 샘플링하고, 샘플링한 제어 입력을 인공 신경망 동역학에 통과시킨후, 다음 상태 1,000개를 계산한다(단계 S310,S320). 즉, 샘플링한 제어 입력이 1,000개라면, 인공 신경망 동역학모델(112-1)에 통과시킨후 다음 상태 1,000개의 입력-상태 세트를 계산한다.
이후, 이 1,000개의 입력-상태 세트에 대해 인식적 불확실성을 계산한다(단계 S330). 확률적 앙상블 모델의 예측값은 GMM으로 표현되기 때문에, 이 문제는 GMM에서 인식적 불확실성을 추출하는 것으로 귀결된다. 일반적으로 사용되는 Kullback-Leibler (KL) 분산 등은 적용될 수 없는데, 이는 앙상블 모델의 개수가 2개를 초과할 수 있기 때문이다. 따라서, Jensen-Renyi Divergence(JRD)를 사용하여 인식적 불확실성을 계산한다. 이를 수학식으로 나타내면 다음과 같다.
여기서, α는 JRD(Jensen-Renyi Divergence)의 차수, Eb는 각 앙상블 모델, Hα는 Renyi 엔트로피를 의미하며, 랜덤 변수 X에 대해 다음과 같이 정의된다.
JRD를 구하기 위해 몬테카를로 샘플링을 하여 추정치를 구하는 것이 일반적이지만, 이는 계산적 부담을 가중시키기 때문에 적합하지 않다. α가 2일 경우, 해석적 해가 존재하기 때문에 이를 이용해 JRD를 계산한다.
여기서, D는 인식적 불확실성이다.
이후, 계산된 인식적 불확실성을 제 1 최적화 비용함수에 추가한다(단계 S340). 즉, 계산된 인식적 불확실성을 샘플링 기반으로 모델을 예측 제어하는 제 1 모델 예측 제어기(150-1)의 최적화 비용함수에 추가한다. 이때, 불확실성(uncertainty)이 클수록 비용이 작아지게 함으로써, 불확실성이 큰 곳을 일부로 선택하도록 유도한다. 정확히는 기존 비용함수에 측정된 uncertainty를 뺌(감산)으로써 구현한다.
이렇게 추출한 인식적 불확실성(D)은 앙상블 모델간의 비동의치(disagreement)로 해석될 수 있다. 해당 불확실성을 제어기의 비용함수에 포함시켜, 불확실성이 높은 상태-입력 공간을 의도적으로 방문하도록 한다. 하지만, 이렇게 구한 불확실성은 미분이 불가능하며, 시간에 따라 비규칙적으로 변한다. 따라서, 일반적인 경사기반 모델 예측 제어기(gradient-based model predictive controller)로는 최적화가 불가능하다.
본 발명의 일실시예에서는 MPPI(Model Predictive Path Integral)이라는 샘플링 기반 모델 예측 제어기(sampling-based model predictive controller)를 이용해 최적화를 진행한다. 제 1 모델 예측 제어기(150-1)는 최적의 입력 시퀀스(U*)를 찾기 위해 최적화하며, 다음 수학식과 같이 정의할 수 있다.
여기서, φ는 종결비용함수, XT는 종결 시 시스템의 상태, 는 비용함수이다.
상태비용함수를 q(xt)로 정의하고, 입력비용함수를 일반적인 이차비용(R은 양의 준정 부호(positive semi-definite) 매트릭스 파라미터)으로 정의할 경우, 다음 식과 같은 전체비용함수로 액티브 러닝을 수행할 수 있다(단계 S340,S350,S360).
여기서, 는 비용 가중치, 는 앙상블 모델 사이의 비정합 정도(disagreement)이다.
의 크기를 조절하여 제어기가 불확실성을 고려하는 정도를 설정할 수 있다.
본 발명의 실험에서는 최신 샘플링 기반 모델 예측 제어기인 MPPI(model predictive path integral) 알고리즘을 사용하였다. 하지만, 다른 제어기도 사용이 가능하다. 최적화를 통해 구한 제 1 최적 제어 명령을 자율 장치가 수행하도록 한다.
액티브 러닝은 충분한 예측 모델을 얻을 때까지 반복된다. 일정 시간 동안 인공 신경망을 동역학 모델로 사용하여 액티브 러닝으로 하여금 기존에 얻지 못한 새로운 데이터를 효율적으로 모으도록 한다. 그 후, 새로 모은 데이터를 이용해 모델의 학습을 진행한다. 이와 같은 과정을 반복하여 정확한 예측 모델을 획득한다.
도 4는 본 발명의 일실시예에 따른 불확실성-인식 과정을 보여주는 흐름도이다. 도 4를 참조하면, 자율 장치를 초기화한다(단계 S410). 이때 사람이 감독하고 있지 않아도 된다. 왜냐하면, 학습이 끝난 모델을 배포하는 것임으로 감독이 필요 없다.
도 2 및 도 3에 기술된 바와 같이, 액티브 러닝(학습)에 의해 획득된 인공 신경망 동역학 모델 중 가장 성능이 우수한 모델을 선택한다(단계 S420). 이는 사용자가 임의로 선택하는 것이므로 별도의 측정 방법이 없으며, 말 그대로 마음대로 선택하면 된다.
태스크를 순차적으로 선택하여 실행한다(단계 S420). 즉, 학습이 끝난후, 알고리즘을 배포(deploy)할 때, 현실적으로 제거하지 못한 인식적 불확실성(epistemic uncertainty)과 필연적으로 생기는 우연적 불확실성(aleatoric uncertainty)를 고려하여 제어를 해야 한다. 이러한 제어 기법을 uncertainty-aware deployment, uncertainty-aware control, safety-aware control 등 다양한 용어로 불리고 있다.
최종 태스크인지를 확인한다(단계 S440).
확인 결과, 단계 S440에서 최종 태스크가 아니면, 단계 S410 내지 단계 S440가 진행된다.
이와 달리, 확인 결과, 단계 S440에서 최종 태스크이면, 프로세스가 종료된다(단계 S450).
도 5는 도 4에 도시된 태스크 실행 단계(430)를 상세하게 보여주는 흐름도이다. 도 5를 참조하면, 현재 상태에서 다양한 제어입력을 샘플링하고, 샘플링한 제어 입력을 인공 신경망 동역학에 통과시킨후, 다음 상태 1,000개를 계산한다(단계 S510,S520). 즉, 샘플링한 제어 입력이 1,000개라면, 인공 신경망 동역학모델(112-1)에 통과시킨후 다음 상태 1,000개의 입력-상태 세트를 계산한다.
이후, 이 1,000개의 입력-상태 세트에 대해 우연적 불확실성(인식적 불확실성 + 우연적 불확실성)을 계산한다(단계 S530). 이때, 우연적 불확실성과 인식적 불확실성을 모두 고려해야 하기 때문에, 굳이 우연적 불확실성(epistemic uncertainty)만 분리할 필요가 없다.
따라서, 고전적인 방법인 불확실성 샘플링(uncertainty sampling)을 이용해도 된다. 본 발명의 실험에서는 이를 사용했다. 이 외의 uncertainty를 획득할 수 있는 어떠한 방법도 상관이 없다. 피하고 싶은 불확실성(uncertainty)을 정의만 해주면 된다.
이후, 계산된 우연적 불확실성을 샘플링 기반 제 2 모델 예측 제어기(150-2)의 최적화 비용함수에 추가해준다(단계 S540). 이때, 불확실성(uncertainty)이 작을수록 비용이 작아지게 함으로써, 불확실성(uncertainty)이 작은 곳을 일부로 선택하도록 유도한다. 정확히는 기존 비용함수에 측정된 우연적 불확실성(uncertainty)를 더함(합산)으로써 구현한다.
수정된 비용함수를 이용해 최적화를 수행하고, 최적화를 통해 구한 최적 제어 명령을 수행한다(단계 S550,S560). 본 발명의 일실험에서는 최신 샘플링 기반 모델 예측 제어기인 SMPPI(smooth model predictive path integral) 알고리즘을 사용하였다. 하지만 다른 제어기도 사용이 가능하다.
충분한 시간 동안 학습 데이터를 모아 학습을 진행한 후, 자율 시스템을 배포하여 운용을 할 때 불확실성을 고려한 제어기를 설계해야 한다. 이는 액티브 러닝 과정시, 미처 해결하지 못한 인식적 불확실성이 남아있고, 시스템에 내재적으로 존재하는 불가피한 우연적 불확실성이 있기 때문이다. 두 불확실성 모두 시스템으로 하여금 기피하도록 해야 한다. 불확실한 상태 공간을 방문할 경우, 시스템이 오작동할 수 있고, 최악의 경우 시스템에 물리적 손상을 가할 수 있다.
본 발명의 일실시예에서는 액티브 러닝을 진행하면서 사용했던 요소를 최소한의 수정만으로 배포를 위한 제어기로 전환할 수 있음을 보인다. 우선, 샘플링 기반 제어기를 MPPI에서 SMPPI(Smooth MPPI)로 변환한다.
SMPPI는 MPPI 제어기에 스무딩 효과를 개선한 제어기로써, 그 효과 때문에 빠른 움직임이 요구되는 액티브 러닝때는 적합하지 않지만, 매끄러운 제어 입력을 산출할 수 있다는 점이 시스템을 배포할 때 큰 장점으로 작용한다.
MPPI와 SMPPI는 기존 알고리즘에서 최소한의 수정만을 가하면 상호 전환이 가능하다. SMPPI에서는 입력의 변화량()에서 샘플링을 진행하다는 점이 유일한 차이점이기 때문이다. 부연하면, 기존 MPPI는 입력에서 샘플링을 했다면, SMPPI는 입력의 변화량에서, 즉 입력값을 미분한 값에서 샘플링을 한다. 이러한 값을 한번 적분하기 때문에 스무딩 효과를 갖는다.
액티브 러닝 과정에서 학습한 확률적 앙상블 모델을 자율 장치의 동역학 모델로 사용함으로써, 데이터 기반 예측 모델은 아무런 수정 없이 획득 가능하다.
마지막 수정 사항은 비용함수에서 불확실성의 부호를 바꿔주는 것이다. 이를 수학식으로 나타내면 다음과 같다.
여기서, 는 제어비용함수, 는 입력의 변화량이고, 은 비용가중치, Var는 분산 함수이고, 는 샘플링된 다음 상태의 변화량, Eb는 각 앙상블 모델 , 는 우연적 불확실성의 추정치이다.
두 불확실성을 모두 포함하는 우연적 불확실성의 추정치는 위와 같이 각 앙상블 모델에서 샘플링을 진행한 뒤, 샘플들의 실험 분산(empirical variance)을 구하는 것으로 얻을 수 있다.
한편, 샘플링기반 모델 예측 제어기를 사용하기 때문에 임의의 형태를 가지는 비용함수를 모두 최적화할 수 있다. 따라서, 일정 이상의 불확실성, 즉 불확실성이 ξ보다 클 때, 이를 최적화문제의 제한 조건으로 부과할 수 있다. 이러한 상태에 무한비용을 부과함으로써 손쉽게 부과할 수 있다. 이를 수학식으로 나타내면 다음과 같다.
여기서, 비용 가중치, I는 인디케이터 함수, ξ는 임의의 설정값이다.
두 비용함수 모두 사용 가능하며, 운용 목적에 따라 임의의 수정을 가하는 것이 가능하다. 이는 제어기로 강화학습 정책 등을 사용하지 않고 샘플링 모델예측제어기를 이용했기 때문이다. 예를 들면, 시스템을 배포 운용할 때 주행 속도를 변경하거나, 모터의 최대 각도를 새로 설정하는 등 목적함수의 변경이 가능하다.
따라서, 본 발명의 방법을 이용하면 자율 장치의 동역학을 효율적으로 학습한 후, 최소한의 수정만으로 배포 운용할 수 있으며, 환경이 바뀌거나 목적함수가 바뀌는 경우에도 재학습이 필요없이 대응할 수 있다.
동역학을 학습하기 위한 액티브 러닝(active leaning) 알고리즘에서 로봇을 사용하기 위한 uncertainty-aware deployment로 전환할 때, 불확실성(uncertainty)을 획득하는 방법과 이를 비용함수에 추가해줄 때의 부호를 바꾸는 것 외에는 바꾼 것이 없다는 것이 중요하다. 즉, 최소한의 수정으로 전혀 다른 두 태스크를 수행할 수 있다.
도 6은 본 발명의 일실시예에 따른 액티브 탐색 동안 수집 데이터의 산포도이다. 도 6을 참조하면, 순차적으로 위에서부터 아래로 10회, 30회, 100회, 300회 반복할 때의 데이터이다. 모든 반복동안 JRD 정보 이득은 다른 방식과 비교하여 횡슬립 각도 및 요속도(yaw rate)의 가장 큰 상태 공간을 커버한다. 도 6에서, JDRX는 Jensen-Renyi Divergence Reactive Exploration이고, US는 Uncertainty Sampling이고, RN은 Random Noise이다.
도 7은 본 발명의 일실시예에 따른 탐색 반복에 따른 블록 껍질 체적을 보여주는 그래프이다. 도 7을 참조하면, 탐색 반복에 따라 블록 껍질 체적(volume of convex hull)이 본 발명의 실시예가 가장 많이 증가함을 볼 수 있다.
도 8은 본 발명의 일실시예에 따른 레이스 트랙과 완료 횟수를 보여주는 그래프이다. 도 8을 참조하면, 레이스 트랙(810)은 직접 배포 실험을 위한 IPG CarMaker 시뮬레이터에서 디자인된 트랙이다. 그래프(820)는 매 50회 반복동안 전체 랩을 완료하는 횟수를 나타낸다.
도 9는 본 발명의 일실시예에 따른 속도 비용 및 불안정 횟수를 보여주는 그래프이다. 도 9를 참조하면, 반복횟수-속도 비용 그래프(910)에서 탐색 반복에 따라 각 저장된 모델의 평균 속도 비용이다. 또한, 반복횟수-불안정 횟수 그래프(920)에서 적어도 한번 안전화 제한조건(stabilizing constraint)을 위반하는 각 방식의 시도 횟수는 매 50회 반복동안 0.3rad보다 더큰 횡슬립 각도를 갖는다.
도 10은 본 발명의 일실시예에 따른 차량 시뮬레이터에 관한 내비게이션 결과를 시각적으로 보여주는 도면이다. 도 10을 참조하면, 궤적상 차량에 가해지는 회전 충격이 디스플레이된다. 3초 윈도우 동안 회전 충격의 최대값이 시각적 명확성을 위해 사용된다.
도 11은 본 발명의 일실시예에 따른 추가적인 실험을 보여주는 예시이다. 도 11을 참조하면, 1:5 척도 휠구동 로봇 테스트 베드를 사용한 추가적인 실험을 나타낸다. (a) 내지 (c)는 가제보(GaZebo), (d) 내지 (f)는 엔비디아 이삭 심(Nvidia Isaac Sim)이다. (a) 및 (d)는 탐색 국면동안 시뮬레이션 환경이다. (b), (e)는 배포 국면 동안 시뮬레이션 환경이다. (c), (f)는 반시계방향에서 10랩 드라이빙을 위해 300회 로봇에 의해 수행된 차량 궤적을 나타낸다.
또한, 여기에 개시된 실시형태들과 관련하여 설명된 방법 또는 알고리즘의 단계들은, 마이크로프로세서, 프로세서, CPU(Central Processing Unit) 등과 같은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 (명령) 코드, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 매체에 기록되는 프로그램 (명령) 코드는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프 등과 같은 자기 매체(magnetic media), CD-ROM, DVD, 블루레이 등과 같은 광기록 매체(optical media) 및 롬(ROM: Read Only Memory), 램(RAM: Random Access Memory), 플래시 메모리 등과 같은 프로그램 (명령) 코드를 저장하고 수행하도록 특별히 구성된 반도체 기억 소자가 포함될 수 있다.
여기서, 프로그램 (명령) 코드의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
100: 불확실성 완화 시스템
110-1: 액티브 러닝 모델 블럭 110-2: 앙상블 동역학 모델 블럭
130-1: 제 1 비용 함수 130-2: 제 2 비용 함수
140-1: 제 1 센서계 140-2: 제 2 센서계
150-1: 제 1 모델 예측 제어기 150-2: 제 2 모델 예측 제어기
170-1: 탐색 국면(Exploration phase)
170-2: 배포 국면(Deployment phase)

Claims (17)

  1. 인식적 불확실성, 우연적 불확실성, 및 다수개의 인공 신경망 동역학 모델을 이용한 동역학 학습 모델의 불확실성 완화 시스템에 있어서,
    현재 상태에서 다양한 제어 입력을 샘플링한 자율 장치의 상태-입력 세트를 입력받아 다수개의 인공 신경망 동역학 모델에서 인식적 불확실성을 계산하고, 상기 인식적 불확실성을 제 1 최적화 비용함수에 적용하여 제 1 수정 비용함수를 산출하는 액티브 러닝 모델 블럭(110-1);
    상기 제 1 수정 비용함수로 액티브 러닝을 수행하여 제 1 최적 제어 명령을 산출하는 제 1 모델 예측 제어기(150-1);
    다수개의 상기 인공 신경망 동역학 모델중 하나를 선택하고, 상기 자율 장치의 상태-입력 세트를 입력받아 우연적 불확실성을 계산하고, 상기 우연적 불확실성을 제 2 최적화 비용함수에 적용하여 제 2 수정 비용함수를 산출하는 앙상블 동역학 모델 블럭(110-2); 및
    상기 제 2 수정 비용함수를 이용해 제 2 최적 제어 명령을 산출하는 제 2 모델 예측 제어기(150-2);를 포함하며,
    상기 액티브 러닝 모델 블럭(110-1)은,
    다수개의 상기 인공 신경망 동역학 모델의 각각 파라미터로 매개된 평균 예측치와 분산 예측치를 생성하는 다수개의 제 1 앙상블 모델(112-1); 및
    상기 평균 예측치와 상기 분산 예측치를 이용하여 상기 인식적 불확실성을 산출하고, 상기 인식적 불확실성을 적용하여 상기 제 1 수정 비용함수를 산출하는 제 1 계산 모듈(111-1);을 포함하며,
    상기 앙상블 동역학 모델 블럭(110-2)은,
    다수개의 상기 인공 신경망 동역학 모델의 각각 파라미터로 매개된 평균 예측치와 분산 예측치를 생성하는 다수개의 제 2 앙상블 모델(112-2);
    상기 평균 예측치와 상기 분산 예측치를 이용하여 우연적 불확실성을 산출하고, 상기 우연적 불확실성을 적용하여 제 2 수정 비용함수를 산출하는 제 2 계산 모듈(111-2);을 포함하며,
    다수개의 상기 제 1 앙상블 모델(112-1) 및 다수개의 상기 제 2 앙상블 모델(112-2)은 다음 상태의 변화량()을 다음 수학식 (여기서, E는 평균 함수, 은 앙상블 모델, 은 자율 장치의 상태, 은 자율 장치의 입력, B는 앙상블 모델의 개수, b는 양의 정수이고, ,는 각각 파라미터 로 매개된 평균 예측치 및 분산 예측치, 은 가우시안 분포를 나타낸다)으로 산출하며,
    다수개의 상기 앙상블 모델 (112-1)) 및 다수개의 상기 제 2 앙상블 모델(112-2)의 학습을 위한 데이터셋(D)은 다음 수학식 으로 정의되고,
    상기 학습은 다음 수학식 (여기서, T는 전치이고, det는 행렬식을 나타낸다)에 의해 이루어지는 것을 특징으로 하는 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 제 1 항에 있어서,
    설정된 시간 동안 상기 자율 장치의 상태-입력 세트를 위한 움직임 데이터를 수집하는 제 1 센서계(140-1) 및 제 2 센서계(140-2); 및
    설정된 시간 동안 상기 움직임 데이터를 저장하는 저장소(160);를 포함하는 것을 특징으로 하는 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템.
  8. 제 1 항에 있어서,
    상기 인식적 불확실성은 JRD(Jensen-Renyi Divergence)을 이용하여 산출되는 것을 특징으로 하는 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템.
  9. 제 1 항에 있어서,
    상기 제 1 수정 비용함수는 상기 인식적 불확실성(uncertainty)이 클수록 비용이 작아지게 하여 상기 인식적 불확실성이 큰 곳을 일부로 선택하도록 유도하는 함수로서 상기 제 1 최적화 비용함수에 상기 인식적 불확실성을 감산하는 것을 특징으로 하는 동역학 학습 모델의 불확실성 완화 시스템.
  10. 제 9 항에 있어서,
    상기 제 1 수정 비용함수는 다음 수학식 (여기서, q(xt)는 상태비용함수이고, 는 입력비용함수이고, R은 양의 준정 부호(positive semi-definite) 매트릭스 파라미터이고, 은 자율 장치의 상태, 은 자율 장치의 입력, 는 비용 가중치, 는 앙상블 모델 간의 부정합 정도(disagreement)이다)으로 정의되는 것을 특징으로 하는 동역학 학습 모델의 불확실성 완화 시스템.
  11. 제 1 항에 있어서,
    상기 제 2 수정 비용함수는 상기 우연적 불확실성(uncertainty)이 작을수록 비용이 작아지게 하여 상기 우연적 불확실성이 적은 곳을 일부로 선택하도록 유도하는 함수로서 상기 제 2 최적화 비용함수에 상기 우연적 불확실성을 합산하는 것을 특징으로 하는 동역학 학습 모델의 불확실성 완화 시스템.
  12. 제 11 항에 있어서,
    상기 제 2 수정 비용함수는 다음 수학식 (여기서, q(xt)는 상태비용함수이고, 는 제어비용함수이고, R은 양의 준정 부호(positive semi-definite) 매트릭스 파라미터이고, 은 자율 장치의 상태, 은 자율 장치의 입력, 는 비용가중치, Var는 분산 함수이고, 는 샘플링된 다음 상태의 변화량, Eb는 각 앙상블 모델, 는 우연적 불확실성의 추정치이다)으로 정의되는 것을 특징으로 하는 동역학 학습 모델의 불확실성 완화 시스템.
  13. 제 11 항에 있어서,
    상기 제 2 수정 비용함수는 다음 수학식(여기서, 는 비용가중치, I는 인디케이터 함수, ξ는 임의의 설정값이다)으로 정의되는 것을 특징으로 하는 동역학 학습 모델의 불확실성 완화 시스템.
  14. 제 1 항에 있어서,
    다수개의 상기 제 1 앙상블 모델(112-1) 및 다수개의 상기 제 2 앙상블 모델(112-2)은 GPU(graphics processing unit)를 이용한 병렬 계산을 위해 MLP(Multi-Layer Perception)를 사용하고 상기 MLP를 병렬 계산하도록 다수개의 상기 인공 신경망 동역학 모델의 각 파라미터(θb)가 독립적으로 초기화되는 것을 특징으로 하는 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템.
  15. 제 14 항에 있어서,
    다수개의 상기 제 1 앙상블 모델(112-1) 또는 다수개의 상기 제 2 앙상블 모델(112-2)을 합하여 생성되는 전체 모델을 학습 데이터로 학습하는 경우, 각 앙상블 모델을 독립적으로 포워딩하여 손실함수(ob)로 구성되는 것을 특징으로 하는 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템.
  16. 제 15 항에 있어서,
    상기 손실함수는 수학식 (여기서, z와 는 앙상블 모델의 입력과 그 출력을 의미하고, 는 b번째 앙상블 모델의 특정 레이어의 가중치(weight)와 편향치(bias)이다)으로 정의되는 것을 특징으로 하는 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템.
  17. 인식적 불확실성, 우연적 불확실성, 및 다수개의 인공 신경망 동역학 모델을 이용한 동역학 학습 모델의 불확실성 완화 방법에 있어서,
    (a) 액티브 러닝 모델 블럭(110-1)이 현재 상태에서 다양한 제어 입력을 샘플링한 자율 장치의 상태-입력 세트를 입력받아 다수개의 인공 신경망 동역학 모델에서 인식적 불확실성을 계산하고, 상기 인식적 불확실성을 제 1 최적화 비용함수에 적용하여 제 1 수정 비용함수를 산출하는 단계;
    (b) 제 1 모델 예측 제어기(150-1)가 상기 제 1 수정 비용함수로 액티브 러닝을 수행하여 제 1 최적 제어 명령을 산출하는 단계;
    (c) 앙상블 동역학 모델 블럭(110-2)이 다수개의 상기 인공 신경망 동역학 모델중 하나를 선택하고, 상기 자율 장치의 상태-입력 세트를 입력받아 우연적 불확실성을 계산하고, 상기 우연적 불확실성을 제 2 최적화 비용함수에 적용하여 제 2 수정 비용함수를 산출하는 단계; 및
    (d) 제 2 모델 예측 제어기(150-2)가 상기 제 2 수정 비용함수를 이용해 제 2 최적 제어 명령을 산출하는 단계;를 포함하며,
    상기 액티브 러닝 모델 블럭(110-1)은,
    다수개의 상기 인공 신경망 동역학 모델의 각각 파라미터로 매개된 평균 예측치와 분산 예측치를 생성하는 다수개의 제 1 앙상블 모델(112-1); 및
    상기 평균 예측치와 상기 분산 예측치를 이용하여 상기 인식적 불확실성을 산출하고, 상기 인식적 불확실성을 적용하여 상기 제 1 수정 비용함수를 산출하는 제 1 계산 모듈(111-1);을 포함하며,
    상기 앙상블 동역학 모델 블럭(110-2)은,
    다수개의 상기 인공 신경망 동역학 모델의 각각 파라미터로 매개된 평균 예측치와 분산 예측치를 생성하는 다수개의 제 2 앙상블 모델(112-2);
    상기 평균 예측치와 상기 분산 예측치를 이용하여 우연적 불확실성을 산출하고, 상기 우연적 불확실성을 적용하여 제 2 수정 비용함수를 산출하는 제 2 계산 모듈(111-2);을 포함하며,
    다수개의 상기 제 1 앙상블 모델(112-1) 및 다수개의 상기 제 2 앙상블 모델(112-2)은 다음 상태의 변화량()을 다음 수학식 (여기서, E는 평균 함수, 은 앙상블 모델, 은 자율 장치의 상태, 은 자율 장치의 입력, B는 앙상블 모델의 개수, b는 양의 정수이고, ,는 각각 파라미터 로 매개된 평균 예측치 및 분산 예측치, 은 가우시안 분포를 나타낸다)으로 산출하며,
    다수개의 상기 앙상블 모델 (112-1)) 및 다수개의 상기 제 2 앙상블 모델(112-2)의 학습을 위한 데이터셋(D)은 다음 수학식 으로 정의되고,
    상기 학습은 다음 수학식 (여기서, T는 전치이고, det는 행렬식을 나타낸다)에 의해 이루어지는 것을 특징으로 하는 신경망을 이용한 동역학 학습 모델의 불확실성 완화 방법.
KR1020230069242A 2023-05-30 2023-05-30 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템 및 방법 KR102616364B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230069242A KR102616364B1 (ko) 2023-05-30 2023-05-30 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230069242A KR102616364B1 (ko) 2023-05-30 2023-05-30 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102616364B1 true KR102616364B1 (ko) 2023-12-21

Family

ID=89320599

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230069242A KR102616364B1 (ko) 2023-05-30 2023-05-30 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102616364B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130074310A (ko) 2011-12-26 2013-07-04 고려대학교 산학협력단 불확실성을 이용한 자율 이동 로봇의 경로 생성 방법
KR20180104213A (ko) * 2017-03-09 2018-09-20 씨드로닉스(주) 앙상블 인공 신경망 조합을 이용한 자율 운항 선박 제어 장치 및 그 방법
KR20190106861A (ko) * 2019-08-27 2019-09-18 엘지전자 주식회사 학습 데이터를 생성하는 인공 지능 장치, 인공 지능 서버 및 그 방법
JP2020529664A (ja) * 2017-09-22 2020-10-08 日本電気株式会社 組み合わせ制御システム、組み合わせ制御方法、および、組み合わせ制御プログラム
KR20210082247A (ko) * 2018-11-30 2021-07-02 에이에스엠엘 네델란즈 비.브이. 기계 학습 모델 예측 내의 불확실성을 감소시키기 위한 방법.

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130074310A (ko) 2011-12-26 2013-07-04 고려대학교 산학협력단 불확실성을 이용한 자율 이동 로봇의 경로 생성 방법
KR20180104213A (ko) * 2017-03-09 2018-09-20 씨드로닉스(주) 앙상블 인공 신경망 조합을 이용한 자율 운항 선박 제어 장치 및 그 방법
JP2020529664A (ja) * 2017-09-22 2020-10-08 日本電気株式会社 組み合わせ制御システム、組み合わせ制御方法、および、組み合わせ制御プログラム
KR20210082247A (ko) * 2018-11-30 2021-07-02 에이에스엠엘 네델란즈 비.브이. 기계 학습 모델 예측 내의 불확실성을 감소시키기 위한 방법.
KR20190106861A (ko) * 2019-08-27 2019-09-18 엘지전자 주식회사 학습 데이터를 생성하는 인공 지능 장치, 인공 지능 서버 및 그 방법

Similar Documents

Publication Publication Date Title
Brunke et al. Safe learning in robotics: From learning-based control to safe reinforcement learning
Nagabandi et al. Neural network dynamics for model-based deep reinforcement learning with model-free fine-tuning
Shin et al. Reinforcement learning–overview of recent progress and implications for process control
Amin et al. A survey of exploration methods in reinforcement learning
KR102242516B1 (ko) 복수의 기계 학습 태스크에 대해 기계 학습 모델들을 훈련
Badgwell et al. Reinforcement learning–overview of recent progress and implications for process control
Ross et al. A reduction of imitation learning and structured prediction to no-regret online learning
Jeerige et al. Comparison of deep reinforcement learning approaches for intelligent game playing
Fenjiro et al. Deep reinforcement learning overview of the state of the art
Ribeiro Reinforcement learning agents
Mahapatro et al. Towards stabilization and navigational analysis of humanoids in complex arena using a hybridized fuzzy embedded PID controller approach
Tesch et al. Adapting control policies for expensive systems to changing environments
De Villiers et al. Particle predictive control
Oliveira et al. Learning to race through coordinate descent bayesian optimisation
KR102616364B1 (ko) 신경망을 이용한 동역학 학습 모델의 불확실성 완화 시스템 및 방법
Rottmann et al. Adaptive autonomous control using online value iteration with gaussian processes
Werner et al. Learning a model is paramount for sample efficiency in reinforcement learning control of PDEs
Mothanna et al. Review on reinforcement learning in cartpole game
Sivaraman et al. Modeling of an inverted pendulum based on fuzzy clustering techniques
Yoo et al. A dynamic penalty approach to state constraint handling in deep reinforcement learning
Yassin et al. Comparison between NARX parameter estimation methods with Binary Particle Swarm Optimization-based structure selection method
US20210341904A1 (en) Device and method for controlling a robot
Rasmussen et al. Probabilistic inference for fast learning in control
Kochenderfer Adaptive modelling and planning for learning intelligent behaviour
Fountain et al. Motivated reinforcement learning for improved head actuation of humanoid robots

Legal Events

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