with-RL
강화 학습2024년 1월 17일

바닥부터 배우는 강화 학습 | 03. 벨만 방정식

'바닥부터 배우는 강화 학습' 3장에는 밸류를 구할 수 있는 벨만 방정식과 벨만 최적 방정식에 대해서 설명하고 있습니다. 아래 내용은 공부하면서 핵심 내용을 정리한 것입니다.

참고자료

벨만 방정식

재귀 함수

$$fib(n) = fid(n-1) + fib(n-2)$$

3.1 벨만 기대 방정식

0단계

$$\begin{equation}
\begin{split}
v_{\pi}(s_t) &= \mathbb{E}[G_t] \\
&= \mathbb{E}[r_{t+1} + \gamma r_{t+2} + \gamma^2 r_{t+3} + ...] \\
&= \mathbb{E}[r_{t+1} + \gamma (r_{t+2} + \gamma r_{t+3} + ...)] \\
&= \mathbb{E}[r_{t+1} + \gamma G_{t+1}] \\
&= \mathbb{E}[r_{t+1} + \gamma v_{\pi}(s_{t+1})]
\end{split}
\end{equation}$$

1단계

1. $q_{\pi}$를 이용해 $v_{\pi}$ 계산하기

$$\begin{equation}
\begin{split}
v_{\pi}(s) & = \pi(a_1|s) * q_{\pi}(s, a_1) + \pi(a_2|s) * q_{\pi}(s, a_2) \\
& = 0.6 * 1 + 0.4 * 2 \\
& = 1.4
\end{split}
\end{equation}$$

$$v_{\pi}(s)=\sum_{a \in A} \pi(a|s) q_{\pi}(s, a)$$

2. $v_{\pi}$를 이용해 $q_{\pi}$ 계산하기

$$\begin{equation}
\begin{split}
q_{\pi}(s, a_1) & = r_s^{a_1} + P_{ss_1}^{a_1} * v_{\pi}(s_1) + P_{ss_2}^{a_1} * v_{\pi}(s_2) \\
& = 0.5 + 0.7 * 1.5 +  0.3 * (-1) \\
& = 1.25
\end{split}
\end{equation}$$

$$q_{\pi}(s,a) = r_s^a + \gamma \sum_{s' \in S} P_{ss'}^a v_{\pi}(s')$$

2단계

3.2 벨만 최적 방정식

◈ 최적 밸류와 최적 정책

$$\begin{equation}
\begin{split}
v_{*}(s) &= \underset{\pi}{\mathrm{max}} \; v_{\pi}(s) \\
q_{*}(s, a) &= \underset{\pi}{\mathrm{max}} \; q_{\pi}(s, a)
\end{split}
\end{equation}$$

◈ 벨만 최적 방정식

0단계

$$\begin{equation}
\begin{split}
v_{*}(s) &= \underset{a}{\mathrm{max}} \; \mathbb{E}[r + \gamma v_{*}(s') | s_t = s, a_t = a] \\
q_{*}(s, a) &= \mathbb{E}[r + \gamma \underset{a'}{\mathrm{max}} \; q_{*}(s', a')| s_t = s, a_t = a]
\end{split}
\end{equation}$$

1단계

1. $q_{*}$를 이용해 $v_{*}$ 계산하기

$$v_{*}(s) = \underset{a}{\mathrm{max}} \; q_{*}(s, a)$$

$$\begin{equation}
\begin{split}
v_{*}(s) &= \underset{a}{\mathrm{max}} \; q_{*}(s, a) \\
&= \mathrm{max}(q_{*}(s, a_1), q_{*}(s, a_2)) \\
&= \mathrm{max}(1, 2) = 2
\end{split}
\end{equation}$$

2. $v_{*}$를 이용해 $q_{*}$ 계산하기

$$q_{*}(s, a)=r_s^a + \gamma \sum_{s' \in S} P_{ss'}^av_{*}(s')$$

2단계

바닥부터 배우는 강화 학습 | 03. 벨만 방정식 | with-RL