Reinforcement  Learning

 

강화학습이란 잘한 행동에 대해 칭찬 받고 잘못한 행동에 대해 벌을 받은 경험을 통해 자신의 지식을 키워나가는 학습법이다. 로봇 (Robot) 이 여러 번의 실패와 성공경험을 쌓으며 주어진 작업을 잘 수행할 수 있도록 하는 것이다. 로봇은 어떤 상태에서 가능한 행동들 중의 하나를 선택, 이 행동 결과에 따른 포상 (reward) 을 받고 나서 다음 상태를 알게 된다.......  (김종환 2001)

강화학습은 자신과 환경과의 상호관계와 이에 따른 강화신호를 통하여 자신의 행동을 개선해 나가는 방법으로서 환경에 대한 정확한 사전 지식이 없이 학습 및 적응성을 보장 하기 때문에 로봇의 학습에 유용하다. 그러나 강화학습법의 가장 큰 문제는 취한 행동에 대한 보상이 즉각적으로 계산되지 않을 경우 학습이 어려운 점이다. .... (심귀보)

강화학습은 수치로 표현되는 보상 (reward) 신호를 최대로 하기위해서 무엇을 해야할지 (어떻게 상황과 행동을 매핑 해야할지) 를 학습하는 것이다. 학습자는 대부분의 기계학습 (Machine Learning) 에서 처럼 어떤 행동을 취해야 할지를 직접 배우는 것이 아니라 어떤 행동을 해야 가장 좋은 보상이 주어지는 지를 발견해야 하는 것이다. ...... (AI Topics : reinforcement learning)

paper

기계학습의 문제에서는 어떤 환경에 놓여있는 에이전트 (또는 로봇) 를 가정하고, 그 에이전트가 자신의 현재상태를 지각하고 행동을 한다. 마찬가지로 환경은 보상 (reward, 긍정적이든 부정적이든) 을 한다. 강화학습 알고리즘은 문제의 해결과정에서 에이전트에 대한 누적된 보상을 최대로 만드는 policy 를 찾으려는 것이다.

환경은 일반적으로 finite-state Markov decision process (MDP) 로서 형식화하고, 이러한 맥락을 위한 강화학습 알고리즘은 dynamic programming 기술과 직접적으로 관련된다. MDP 에서의 State transition probabilities 와 reward probabilities 은 문제를 푸는 과정에서 일반적으로 stochastic 이지만 stationary 하다.

강화학습은, 정확한 입력/출력 짝 (correct input/output pairs) 도 존재하지 않으며 명시적으로 정확한 차선의 (sub-optimal) 행동도 존재하지 않는 지도학습 (Supervised Learning) 문제와는 다르다. 더구나 미지의 영역의 탐험 (exploration of uncharted territory) 과 현재의 지식을 개척 (exploitation of current knowledge) 하는 것 간의 균형을 찾는 것을 포함하는 온라인 수행 (on-line performance) 에 초점이 있다.

형식적으로 기본적인 강화학습 모델은 다음과 같이 구성된다 :

  1. 일련의 환경상태 S ;
  2. 일련의 행동 A ;
  3. 일련의 scalar "보상" (in ?)

각각의 시간 t 에, 에이전트는 그의 상태 st∈S 와 가능한 행동 A(st) 들을 지각한다. 에이전트는 하나의 행동 a∈A(st) 을 선택하고, 환경으로부터 새로운 상태 st+1 와 하나의 보상 rt+1 을 받는다. 이러한 상호작용 (에이전트와 환경 사이에) 에 기초해서, 강화학습 에이전트는, 하나의 최종 상태를 가지는 MDP 들을 위한 보상의 누적량 r0+r1+...+rn 또는  최종상태가 아닌 MDP 들을 위한 보상의 누적량 Σtγtrt 을 최대화 하는 하나의 policy π:S→A 를 개발해야 한다 (여기서 γ 은 0.0 과 1.0 사이의 some "future reward" discounting factor 이다).

강화학습은 특히 long-term reward 가 short-term reward 의 비용으로 수행될수 있는 (long-term reward can be had at the expense of short-term reward) 문제에서 잘 응용된다. 이러한 종류의 문제들은 temporal difference learning 이라고 알려진 강화학습 기술을 사용하여 정상적으로 다루어진다. 강화학습은 다양한 문제, 예를들면 robot control, elevator scheduling, backgammon 과 같은 문제에 성공적으로 응용되어왔다.

강화학습은 어떤 상태의 바람직한 정도를 나타내는 optimal value function (V)를 추정 (estimate) 한다. 이러한 추정은 recursive Bellman equations 에 기초한 것이다. ..... (Wikipedia : Reinforcement learning)

term :

강화 학습 (Reinforcement learning)    강화 (Reinforcement)   AlphaGo    로봇 (Robot)    기계학습 (Machine Learning)    딥 러닝 (Deep Learning)

site :

Wikipedia : Reinforcement learning    위키백과 : 강화학습

강화학습을 이용한 자율이동로봇의 행동계획  : 중앙대  심귀보

[로봇이야기] 강화학습… 칭찬하면 똑똑해지죠 : 중앙일보 2001. 10. 26  김종환

video :

강화학습을 이용한 NPC AI 구현 - 이경종 : IBS 인벤방송국 : 2016/10/31

 

알아두면 쓸데있는 신기한 강화학습 - 김태훈 : naver d2 : 2017/09/11

 

Introduction of Deep Reinforcement Learning - 곽동현 : naver d2 : 2017/09/04

 

Reinforcement Learning : An Introduction - Richard Sutton : 교과서 강독 1 : J Hong : 2017/07/31

 

Reinforcement Learning : An Introduction - Richard Sutton : 교과서 강독 2 : J Hong : 2017/07/31