Skip to content

Commit 7028928

Browse files
committed
bellman equation
1 parent 5fb9d34 commit 7028928

File tree

1 file changed

+73
-5
lines changed

1 file changed

+73
-5
lines changed

_posts/2025-08-20-policy_evaluation.md

Lines changed: 73 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ discount factor를 적용하면, $G_t$가 마치 멱급수처럼 되어서, 항
145145

146146
transition dynamics 혹은 환경모델은 환경이 어떻게 구성되어있느냐를 나타낸다.
147147
$S_t$, $A_t$가 주어졌을 때 $S_{t+1}$, $R_{t+1}$의 분포를 결정해준다.
148-
그렇다면 이것으로 식 (3.1)의 trajectory가 완전히 결정될 수는 없다.
148+
하지만 아직 이것으로 식 (3.1)의 trajectory가 완전히 결정될 수는 없다.
149149
즉, $S_t$가 주어졌을 때 $A_t$가 어떻게 결정될 것인가 하는 문제가 남는다.
150150
이것을 결정하는 것이 정책(policy)이다.
151151

@@ -162,7 +162,75 @@ $$a=\mu(s)$$
162162

163163
라는 notation을 썼던 것 같다.
164164

165-
환경에 대한 모델 $p(s',r|s,a)$, $r(s,a)$와 agent의 정책 $\pi$이 주어지면, trajectory 전체가 이론적으로는 모든 가능성이 확률적으로 결정된다.
166-
그러면 어떤 시점 $t$에서 $G_t$ 즉 episode가 끝날때까지 혹은 영원히에 대한 보상의 합의 기댓값을 계산할 수 있다.
167-
이것을 value function이라고 하며, 즉 state만 인자로 받는 state-value-function $v(s)$과 state과 action 두 개를 인자로 받는 action-value-function $q(s,a)$이 있다.
168-
정확한 의미로 $q$는 state-action-value-function이라고 불러야 할테지만, 그냥 action-value-function이라고만 불러도 구분이 되니 그렇게 부르는 것이라고 대학원에서 배웠던 것 같다.
165+
환경에 대한 모델 $p(s',r|s,a)$, $r(s,a)$와 agent의 정책 $\pi$이 주어지면, 이론적으로는 모든 종류의 trajectory의 가능성이 확률적으로 결정된다.
166+
즉, 어떤 시점 $t$에서 $G_t$ 즉 episode가 끝날때까지 혹은 영원히에 대한 보상의 합의 기댓값을 계산할 수 있다.
167+
이것을 가치함수(value function)이라고 한다.
168+
가치함수에는 두 가지가 있어서 state만 인자로 받는 state-value-function $v_\pi(s)$가 있고, state과 action 두 개를 인자로 받는 action-value-function $q_\pi(s,a)$이 있다.
169+
정확한 의미로 $q$는 state-action-value-function이라고 불러야 할테지만, 그냥 action-value-function이라고만 불러도 구분이 되니 그렇게 부르는 것이라고 대학원에서 배웠던 것 같다.
170+
환경은 이미 주어졌다는 가정 하에, 정책 $\pi$가 명시되어야 하므로 아랫첨자로 달려있다.
171+
상태 $s\in\mathcal S$에 대하여 $v_\pi(s)$를 식으로 적으면
172+
173+
$$v_\pi(s) = \mathbb E\left[G_t|S_t=s\right]\tag{3.12}$$
174+
175+
이며, 이것은 현재 상태 $s$에서 정책 $\pi$를 따라나갈 때의 return의 기댓값이다.
176+
상태 $s\in\mathcal S$와 행동 $a\in\mathcal A$에 대하여 $q_\pi(s,a)$를 식으로 적으면
177+
178+
$$q_\pi(s,a)=\mathbb E\left[G_t|S_t=s,A_t=a\right]\tag{3.13}$$
179+
180+
이며, 이것은 현재 상태 $s$에서 행동 $a$를 취하고 정책 $\pi$를 따라나갈 때의 return의 기댓값이다.
181+
182+
<!-- 모든 상태 $s\in\mathcal S$에 대하여 식(3.14)가 성립한다.
183+
이것은 Bellman equation이라고 불린다. -->
184+
<!-- 하지만 그 전에 -->
185+
return에 대한 다음 식을 상기하자.
186+
187+
$$
188+
\begin{align*}
189+
G_t
190+
&=R_{t+1}+\gamma R_{t+2}+\gamma^2R_{t+3}+\cdots\\
191+
&=R_{t+1}+\gamma\left(R_{t+2}+\gamma R_{t+3}+\cdots\right)\\
192+
&=R_{t+1}+\gamma G_{t+1}
193+
\end{align*}
194+
\tag{3.9}
195+
$$
196+
197+
그러면 모든 $s\in\mathcal S$에 대하여 다음과 같은 Bellman equation이 성립한다.
198+
199+
$$
200+
\begin{align*}
201+
v_\pi(s)
202+
&=\mathbb E_\pi\left[G_t|S_t=s\right]\\
203+
&=\mathbb E_\pi\left[R_{t+1}+\gamma G_{t+1}|S_t=s\right]\\
204+
&=\sum_a\pi(a|s)\mathbb E_\pi\left[R_{t+1}+\gamma G_{t+1}|S_t=s,A_t=a\right]\\
205+
&=\sum_a\pi(a|s)\sum_{r,s'}p(r,s'|s,a)\mathbb E_\pi\left[R_{t+1}+\gamma G_{t+1}|S_t=s,A_t=a,R_{t+1}=r,S_{t+1}=s'\right]\\
206+
&=\sum_a\pi(a|s)\sum_{r,s'}p(r,s'|s,a)\mathbb E_\pi\left[r+\gamma G_{t+1}|S_{t+1}=s'\right]\\
207+
&=\sum_a\pi(a|s)\sum_{r,s'}p(r,s'|s,a)\left(r+\gamma\mathbb E_\pi\left[G_{t+1}|S_{t+1}=s'\right]\right)\\
208+
&=\sum_a\pi(a|s)\sum_{r,s'}p(r,s'|s,a)\left(r+\gamma v_\pi(s')\right)\tag{3.14}
209+
\end{align*}
210+
$$
211+
212+
두번째 줄에는 (3.9)가 쓰였고 세번째줄과 네번재 줄에는 conditional expectation의 의미가 쓰였다.
213+
다섯번째 줄에는 Markov property가 쓰였고 여섯번째 줄에는 $\mathbb E$의 linearity가 쓰였다.
214+
일곱번째 줄에는 $v_\pi$의 정의가 변형된 형태로 쓰였다.
215+
이 중요한 식이, 처음 배울 때는 참 어렵게 느껴졌다.
216+
지금은 잘 이해가 간다.
217+
218+
중요한 사실 중 하나는, 식 (3.14)가 복잡하게 생겼지만, 결국 $\lvert\mathcal S\rvert$개의 변수 $v_\pi(s)$에 대한 일차식이라는 것이다.
219+
그리고 식이 $\lvert\mathcal S\rvert$개 있으므로, 결국 변수가 $\lvert\mathcal S\rvert$개이고 식이 $\lvert\mathcal S\rvert$개인 일차연립방정식인 셈이다.
220+
221+
방금 것은 $v$에 대한 Bellman equation이다.
222+
$q$에 대해서도 Bellman equation이 있다.
223+
모든 $s\in\mathcal S$와 모든 $a\in\mathcal A$에 대하여
224+
225+
$$
226+
\begin{align*}
227+
q_\pi(s,a)
228+
&=\mathbb E_\pi\left[G_t|S_t=s, A_t=a\right]\\
229+
&=\mathbb E_\pi\left[R_{t+1}+\gamma G_{t+1}|S_t=s, A_t=a\right]\\
230+
&=\sum_{r, s'} p(r, s'|s,a)\mathbb E_\pi\left[R_{t+1}+\gamma G_{t+1}|S_t=s,A_t=a, R_{t+1}=r, S_{t+1}=s'\right]\\
231+
&=\sum_{r, s'} p(r, s'|s,a)\mathbb E_\pi\left[r+\gamma G_{t+1}|S_{t+1}=s'\right]\\
232+
&=\sum_{r, s'} p(r, s'|s,a)\left(r+\gamma\mathbb E_\pi\left[G_{t+1}|S_{t+1}=s'\right]\right)\\
233+
&=\sum_{r, s'} p(r, s'|s,a)\left(r+\gamma\sum_{a'}\pi(a'|s')\mathbb E_\pi\left[G_{t+1}|S_{t+1}=s', A_{t+1}=a'\right]\right)\\
234+
&=\sum_{r, s'} p(r, s'|s,a)\left(r+\gamma\sum_{a'}\pi(a'|s')q_\pi(s',a')\right)\\
235+
\end{align*}
236+
$$

0 commit comments

Comments
 (0)