Deep Learning/RL

RL) 01. MDP

zooyeonii 2021. 3. 19. 20:50

MDP(Markov Decision Processes)

  • Markov Property

(3.4) next state (S_t+1)은 이전의 모든 state들의 영향을 받는다.

(3.5) t+1의 시점의 환경의 반응(Reward, State)은 S_t(현재상태)의 영향만을 받는다.

식 3.4 처럼 처음 어떠한 상태(S_0)로부터 시작해서 현재 상태(S_t)까지 올 확률이 바로 전 상태에서 현재 상태까지 올 확률과 같을 때, 식 3.5처럼 표현이 될 수 있고 state는 Markov하다고 일컬어질 수 있다.

Markov state : Markov property(위의 성질)를 갖고있는 state.


  • MDP

S(State) 상태, A(Action)행동, P(transition probability)상태변환확률, R(Reward)보상, r(discount factor)감가율

여기서 State는, agent가 인식하는 자신의 상태를 뜻한다. 이 상태는 단순 좌표(예. 그리드월드)가 될 수도 있고, ("현재 100km/h의 속도로 달리고 있고, 사람이 4명 타고있다.") 라는 상태로도 표현될 수 있으며, 이미지로 표현될 수도 있다.

상태변환확률은 stochastic world에서 필요하다. 간단히 말하자면, agent가 a_1를 선택하더라도, agent는 s'_1이 아닌 s'_2로 가게 될수도 있다. 이 때 s'_1, s'_2로 가게 될 확률을 뜻한다.

Deterministic : 결정론적(어떤 특정한 입력이 들어오면 언제나 똑같은 과정을 거쳐서 언제나 똑같은 결과를 내놓는다.)

Stochastic : 확률적 (상태의 변화에는 확률적인 요인이 들어가기 때문에 agent는 s'상태에 도달하지 못할 수도 있다. )

보상은 agent가 학습할 수 있는 유일한 정보로서 환경이 agent에게 주는 정보이다.

 

Agent는 반환값(G)을 episode가 끝난 후에 알 수 있다. 직접 경험해서 보상을 받아보지 않더라도 얼마의 보상을 받을 것이라 예상(가치함수)할 수 있다.


  • Value function (상태 가치 함수)

각 타임스텝마다 받는 보상 (보상은 기댓값으로, 확률변수이다)이 모두 확률적이고, 반환값이 그 보상들의 합이므로 반환값은 확률변수이다. 

  • Q function (Action-Value function) 행동 가치 함수

  • 강화학습의 목표 : 누적 보상을 최대로 하는 Optimal Policy를 찾는 것.
  • Bellman Equation

현재 상태의 가치함수와 다음 상태의 가치함수의 관계식

기댓값에는 어떠한 action을 취할 확률(policy)와 그 action을 했을 때 어떤 state로 변할 확률(state-transition probability) P_ss' 이 포함되어 있다.

강화학습은 가치함수를 벨만 방정식을 풀어 업데이트함으로써, 최적의 value function과 해당 policy(최적의 policy)를 찾아가는 것이다.


참고 자료

문헌 :

파이썬과 케라스로 배우는 강화학습 (위키북스)

David Silver, http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching_files/MDP.pdf

링크 :

모두의 연구소 : http://www.modulabs.co.kr/RL_library/2136

대손 : https://daeson.tistory.com/317

팡요랩 : https://www.youtube.com/watch?v=NMesGSXr8H4

'Deep Learning > RL' 카테고리의 다른 글

RL) Hindsight Experience Replay  (0) 2021.08.27
Multi-task RL  (0) 2021.08.22
[paper review] Asynchronous Methods for Deep RL  (0) 2021.05.21
RL) 03. Monte-Carlo Prediction  (0) 2021.03.30
RL) 02. Dynamic Programming  (0) 2021.03.30