- peter482431
CS 285 Optimal Control and Planning 리뷰 - 전편
오늘은 Model-Based learning에 들어가기 앞서 왜 Model-Based learning이란 방법이 나오게 되었는지 살펴보는 시간이 되겠습니다.
몇 가지를 설명하기 위해서는 용어에 대한 이해가 필요한데요 모르시는 분들은 해당 링크 에서 Environment와 Dynamics에 대한 설명을 본다면 더 쉽게 이해할 수 있습니다.
너무 어려운 Dynamics와 무자비한 Environment

policy를 학습하는 Vanila Q-learning 계열의 단점은 agent가 적당히 리워드를 얻는 선에서 만족하기 때문에 최대한의 성능이 안나온다는 것입니다. 물론, 여러가지 개선을 통해 현존하는 최강의 강화학습 방법이 되었지만 일부 연구자들은 다른 방법을 찾아보았습니다. 그 중 하나인 Model-Based learning은 Environment의 Dynamics를 학습해보자라는 아이디어에서 출발한듯 합니다.

Dynamics를 추정한다는 것은 Environment의 법칙을 추정한다는 것인데요
신경망으로 조금씩조금씩 추정하다가 잘되는 경우도 실제로 있습니다. 이런경우에는 보통 복잡하지않고, 몇 가지 Dynamics가 없는 경우입니다. 예를들어, 게임, 자동차 네비게이션 같은 경우는 쉬운 축에 속합니다.
그 외에는 모두 어려운 case로 실제 세상의 Dynamics는 뉴턴의 운동법칙, 상대성이론 등등이 있고 모두가 한 시대의 업적이 될만큼 어려운 작업이며 실제 Dynamics를 제대로 알 수 없기 때문에 Environment와 제대로된 상호작용을 하지못해 휴머노이드의 이족보행이 아직도 매우 어려운 과제가 되고있습니다.
Model-based reinforcement learning

CS285 다음장에 자세히 나올 내용으로 만약 agent가 Dynamics를 안다면 어떻게 행동하게 될까요?
아마도, 증명된 수식에 따라 행동하면 되기때문에 완벽한 action을 취할 수 있을 것입니다.
해당 그림은 기존 state-action 표를 Dynamics를 추정하여 Optimal한 결정을 내리는 policy 함수로 바꾼 그래프입니다.
그런데, 어떻게 agent에게 해당 사실을 전달 해줄 수 있을까요?
Stochastic optimization

간단히, 해당 state에서 dynamics에 제일 잘맞는 action을 고르면 됩니다. 그러한 action들이 reward를 최대한 많이 가져다주면 최적화가 될것이구요
첫 번째 방법으로는 크로스엔트로피를 통해 정보량을 가장 많이가진 An을 선택하는 방식이 있습니다.

하지만, 크로스엔트로피는 continuos 할때만 사용이 가능하죠 거의 대부분의 action은 수 가 discrete하여 사용하지 못한다고 합니다.(푸리에 변환..)
그리하여 두 번째 discrete한 경우에는 몬테카를로 트리 검색 방법을 사용한다고 합니다.

트리를 사용하여 discrete한 action을 가질 때에는 reward가 최대가 되는 policy를 탐색할 수 있게되었습니다.
하지만.. 이 방식이 여전히 잘되지는 못했나봅니다. 후에 선형/비선형적 방식이 언급되나 결국에는 학습을 거듭할 수록 Optimal trajectory를 벗어난다고 하네요

다음 시간에는 Dynamics를 제대로 추정하여 아래 로봇들이 실제 세계에서도 어느정도 동작할 수 있을 정도로 동작하는 강화학습에대해 소개해보겠습니다.