본 포스팅은 David Silver 교수님의 강화학습 강의와 그 강의를 정리한 팡요랩 강의를 바탕으로 정리한 것입니다.
문제를 해결하기 위해서는 먼저 문제를 잘 정의하는 것에서부터 시작하여야한다.
대부분의 강화학습 문제는 Environment를 MDP로 formal하게 표현할 수 있다.(fully observable) 그렇다면 MDP는 무엇이며, MDP를 풀기 위해서는 어떻게 해야하는가?
✂️ “The future is independent of the past given the present”
Definition of Markov Property
A state is Markov if and only if
State Transition Matrix
Basic Markov Process에서는 action 없이, 매번의 time-step마다 state를 확률에 기반하여 옮겨다니게 된다.
Markov state 에서 로 transition할 probability은 다음과 같이 정의된다.
가능한 모든 state 와 pair를 원소로 갖는 matrix로 표현할 수 있다. (matrix의 각각의 row의 합은 1)
A Markov Reward Process is a tuple
- is a finite set of states
- is a state transition probability matrix,
- is a reward function,
- is a discount factor,
Definition of Return
The return is the total discounted reward from time-step
discount
값에 따른 효과*
why discount?
discount가 없을 때 발생할 수 있는 문제점
Definition of Value Function
The state value function of an MRP is the expected return starting from state
value function은 다음의 2가지 part로 분리할 수 있다.
유도과정
Bellman Equation의 직관적인 이해
Bellman Equation
현재 state 가 transition할 수 있는 다음 state 들의 후보는 여러가지가 있을 수 있다. 여러가지 후보 중에서 “확률”에 따라 next state를 결정하게 된다. 따라서 가능한 여러가지 episode들에 대한 기댓값으로서 리턴을 계산하며, 이 때 같은 value-function을 사용하여 재귀 형태로 표현할 수 있게된다.
Expectation을 제거한 형태
for Matrix Form
is a column vector with one entry per state*
solving Bellman Equation
⇒ Bellman Equation을 linear equation으로 표현하여 directly solve할 수 있다!
단점
대부분의 경우 MRPs는 iterative method를 이용하여 해결한다.
여기서 소개된 iterative method는 MDP를 solve하기 위해서 사용되는 방법이기도 하다. MRP와 달리 MDP는 directly solve를 위한 방법이 존재하지 않기 때문에, iterative method를 채택한다.
Sample returns for Student MRP
starting from with 일 때, 각각의 sample episode들에 대한 Return은 다음과 같이 계산될 수 있다.
discount value에 따른 state value의 변화
Bellman Equation
Q. 빨간색 state의 value가 이라고 알려져 있을 떄, Bellman Equation을 만족하는가?
MP, MRP에서는 state의 변화가 오로지 Environment의 transition probability 에 의해 결정되었다.
그러나 MDP에서는 state의 변화가 Agent의 Action 에 의해 결정되게 된다! (다만, 여전히 환경의 불안정함은 존재)
A Markov Reward Process is a tuple
- is a finite set of states
- is a finite set of actions
- is a state transition probability matrix, → state 에서 action 를 취할 때, state 에 도달할 확률 (환경의 불안정함)
- is a reward function,
- is a discount factor,
Definition of Policy
A policy is a distribution over actions given states,
(번외) policy와 MDP를 이용하여 MRP로 표현하기
MDP에서 Agent의 policy가 고정이라면 Agent가 없는 Markov Process로 표현할 수 있다.
Given an MDP and a policy
Value Function
어떤 “policy” 를 따라 episode를 진행하는지에 따라 value가 달라질 수 있기 때문에, Agent가 어떻게 행동하는지를 나타내는 policy 를 함께 기술해야한다.
Definition of state-value function
The state value function of an MDP is the expected return starting from state , and then following policy
Definition of action-value function
The action value function is the expected return starting from state , taking action , and then following policy
MRP에서 value function을 2가지 part(immediate reward, discounted value)로 분리했던 과정을 동일하게 적용하면 MDP에서도 초기 Bellman Equation을 쉽게 얻을 수 있다.
Bellman Expectation Equation (초기)
에서의 state-value는 를 따라** 1-step 수행하여 받은 reward와 next-state 에서의 value의 합의 기댓값과 동일하다.
state와 action의 관계 - (1)
→ 에 대한 기댓값의 다른 표현
Bellman Expectation Equation for
에서 action 를 선택하여 받은 action-value는 를 선택해 1-step 수행하여 받은 reward와 next-state 에서의 action-value의 합의 기댓값과 동일하다.
action과 state의 관계 - (2)
action의 value는 action을 수행함으로써 전달받는 1-step reward 과 가능한 모든 next-state()에 대한 state-value의 (감쇄)기댓값의 합과 동일하다.
특정 action 를 수행하면 그 때 받게되는 reward의 값을 확실하게 알 수 있기 때문에 immediate rewrd를 이용하여 표현한다.
Bellman Expectation Equation에서 Expectation 를 제거한 형태
Bellman Expectation Equation [재귀]
MRP에서의 Bellman Equation과 달리, MDP에서는 action의 존재로 인하여 가장 초기의 Bellman Equation을 바로 재귀적으로 표현하기 힘들다. 따라서 action-value와 state-value간의 관계를 이용하여 재귀적 표현으로 Bellman Expectation Equation을 표현한다.
→ 그대로 관계식을 대입한다!
Bellman Expectation Equation for
Bellman Expectation Equation for
MDP의 예시 : Action에 대하여 reward가 제공된다
MDP에서 state-value function의 계산
Definition of Optimal Value Function
가능한 모든 policy에 대하여 계산했을 때, 그 중에서 가장 maximum 값을 갖는 value function
The optimal state value function is the maximum value function over all policies
The optimal action value function is the maximum action-value function over all policies
Optimal Value Function
Example
optimal policy를 따랐을 때, state-value function과 action-value function
policy간의 partial ordering
모든 state에 대하여 가 보다 같거나 크다면, 가 보다 더 나은 policy 라고 말할 수 있다.
Theorem of policy
For any Markov Decision Process
Optimal Policy를 찾는 방법
optimal action-value function에 대하여 max가 되게하는 action만을 계속해서 취하는 policy
즉, optimal action-value function 을 알고있다면 그 즉시 deterministic optimal policy를 구할 수 있다. ⇒ MDP를 solve!
deterministic
Example : Optimal Policy
기본적으로 Bellman Expectation Equation과 동일한 구조를 이룬다. 다만, optimal policy를 알지 못하여 모든 수식을 Expectation으로부터 표현하기 시작했던 것과 달리 여기서는 optimal policy 를 알고있기 때문에 이를 이용하여 equation을 표현한다.
Optimal state-value function과 Optimal action-value function의 관계
state과 action의 관계 - (1)
state 의 optimal value는 그 state에서 optimal action-value가 최대가 되게하는 action 을 취했을 때의 optimal action value와 동일하다.
action-value를 maximize하는 action을 선택하는것이 optimal하기 때문에 자명하다.
action과 state의 관계 - (2)
(state 에서) action 의 optimal value는 action을 수행함으로써 전달받는 1-step reward 과 가능한 모든 next-state()에 대한 optimal state-value의 (감쇄)기댓값의 합과 동일하다.
action을 하더라도 그 다음 state가 무엇으로 결정되는지는 환경의 불안정성(=state probability)를 따르기 때문에 기댓값의 형태로 표현한다.
Bellman Optimality Equation [재귀]
Bellman Optimality Equation for
Bellman Optimality Equation
Example
Q. 빨간색 state의 value가 이라고 알려져 있을 떄, Bellman Optimality Equation을 만족하는가?
Bellman Optimaliy Equation을 푸는 방법