1. Bellman equation for MRP
V(s)=E[Gt|st=s]
=E[rt+γrt+1+γ2rt+2+...|st=s]
=E[rt+γGt+1|st=s]
=E[rt|st=s]+γE[E[Gt+1|st+1]|st=s]
=R(s)+γE[V(st+1)|st=s]
V(s)=R(s)+γE[V(st+1)|st=s]
V=R+γTV
(1−γT)V=R
V=(1−γT)−1R
위 식을 통해 state-value funtion을 구할 수 있다. 그러나 o(n3)의 시간 복잡도가 소요된다. 이를 해결하기 위해 Dynamic programming을 사용한다.
2. DP for solving Bellman equation for MRP
- V0(s)=0 으로 초기화
- Vk(s)=R(s)+γ∑s2cSTss2Vk−1(s2)
- 수렴할 때까지 반복
o(n2)의 시간 복잡도가 소요된다.
*참고 - 수렴하는 이유
Vk=R+γTVk−1
=R+γT(R+γTVk−2)
=R(1+γT+...+(γT)k−1)+(γT)kV0
{0<γ<1,0<T<1}
Vk = R(1+γT+...+(γT)k−1) + (γT)kV0
Vk−1 = R(1+γT+...+(γT)k−2) + (γT)k−1V0
Vk−Vk−1 = (γT)k−1R + (γT)k−1(γT−1)V0
코시수열 Vk −Vk−1이 0임을 보이면 V는 수렴하게 된다.
0<γ<1,0<T<1이면 수렴함이 자명하다.
만약 γ=1이라면 0<T<1이면 수렴하고, T=1이면 코시수열의 차이가 좁혀지지 않아 수렴하지 않는다.
3. Value function for MDP (with policy π)
- State-value function
First action이 정해져 있다. 그 뒤로는 policy의 action을 따라간다.
Qπ(s,a)=R(s,a)+γEπ[Vπ(st+1)|st=s,at=a]
=R(s,a)+γEπ[Qπ(st+1,π(a|st+1))|st=s,at=a]
- Action-value function
처음부터 policy의 action을 따라간다.
Vπ(s)=R(s,π(a,s))+γEπ[Vπ(st+1)|st=s]
- For discrete MDP
Qπ(s,a)=R(s,a)+γ∑s′p(s′|s,a)Vπ(s′)
Vπ(s)=Rπ(s)+γ∑s′p(s′|s,a)Vπ(s′)
Vπ(s)=∑aπ(a|s)Qπ(s,a)
4. Policy Evaluation for MDP
Bellman equation으로 다음을 사용한다.
Qπ(s,a)=R(s,a)+γ∑s′p(s′|s,a)Qπ(s′,a′)
Qπ(s,a)=R(s,a)+γ∑s′p(s′|s,a)Vπ(s′)
Vπ(s)=Rπ(s)+γ∑s′p(s′|s,a)Vπ(s′)
MRP와 마찬가지로 DP를 이용해 state-value function을 구한다.
- Vπ0=0 for all V
- Vπk(s)=Rπ(s)+γ∑s′p(s′|s,π(a|s))Vπk−1(s′)
5. Finding Optimal Policy
모든 value function을 maximize하는 policy를 구한다.
V∗(s)=maxπVπ(s)
Q∗(s,a)=maxπQπ(s,a)
π∗(s)=argmaxπVπ(s)
Optimal policy는 unique하지 않다. 값이 같지만, policy가 다를 수 있다.
Deterministic, stochastic policy 모두 optimal이 될 수 있다.
만약 유한한 action과 state를 가진다면, 계산량은 |A||S|이다.
6. Relation of Two Optimality Value Functions
V∗(s)=maxπVπ(s)=maxaQπ(s,a)

Q∗(s,a)=R(s,a)+γE∗π[V∗(st+1)|st=s,at=a]

V∗(s)=maxaR(s,a)+γEπ∗[V∗(st+1)|st=s,at=a∗]
where a∗=argmaxaR(s,a)

7. 기억할 것들
*Bellman Expectation Equation
State-Value function |
Vπ(s)=Eπ[Gt|St=s] Vπ(s)=Eπ[R(s)+γVπ(st+1)|St=s] Vπ(s)=∑aπ(s,a)Qπ(s,a) Qπ(s,a)=R(s,a)+γ∑s′P(s′|s,a)Vπ(s′) Vπ(s)=∑aπ(s,a)(R(s,a)+γ∑s′P(s′|s,a)Vπ(s′)) |
Action-Value function |
Qπ(s,a)=R(s,a)+γ∑s′P(s′|s,a)Vπ(s′) |
*Bellman Optimality Equation
V∗(s)=maxπVπ(s), Q∗(s,a)=maxπQπ(s,a)
State-Value function |
V∗(s)=maxπVπ(s)=maxaQπ(s,a) V∗(s)=maxa(R(s,a)+γ∑s′P(s′|s,a)Vπ(s′)) V∗(s)=maxaR(s,a)+γ∑s′P(s′|s,a)V∗(s′) |
Action-Value function |
Q∗(s,a)=maxπQπ(s,a)=maxπ(R(s,a)+γ∑s′P(s′|s,a)Vπ(s′)) Q∗(s,a)=R(s,a)+γ∑s′P(s′|s,a)Vπ(s′)) |
'Study > Reinforcement Learning' 카테고리의 다른 글
[project] QMIX review (0) | 2023.05.01 |
---|---|
4. Monte Carlo Methods and Temporal Difference Learning in Policy Evaluation (0) | 2023.05.01 |
3. Policy Improvement by Iterative Method (0) | 2023.05.01 |
1.Introduction (0) | 2023.05.01 |