본문 바로가기
공부 정리/강화 학습

[강화학습4]벨만 방정식(Bellman Equation)

by 블로그별명 2023. 9. 27.

벨만 방정식을 통해 계산되는 가치(value)는 특정 상태(또는 상태-행동 쌍)에서 시작하여 미래에 받게 될 모든 보상의 기댓값, 즉 누적보상(return)의 기댓값이다. 벨만방정식은 크게 기대벨만방정식과 최적벨만방정식으로 나뉘는데, 이번포스팅에서는 기대벨만방정식에 대해서만 다룬다.

정책(Policy)

$$\pi(a \mid s) = \mathbb {P}[A_t = a \mid S_t = s]$$

하나의 정책은 모든 가능한 상태들에 대해 행동을 선택하는 방법을 제공한다

상태가치함수(State Value Function)와 상태-행동가치함수 (State-Action Value Function)

  • 상태 가치 함수$v_\pi$
    주어진 정책$\pi$아래, 상태 $s$의 기대 리턴
  • 상태-행동 가치 함수$q_\pi$
    주어진 정책$\pi$아래, 상태 $s$에서 행동 $a$를 취했을 때의 기대 리턴

상태가치함수와 상태-행동가치함수의 관계

그림1

$v_\pi(s)$는 $q_\pi (s, a)$의 기댓값이다.

$$v_\pi(s) = \sum_{a}\pi(a \mid s) q_\pi(s, a)$$

$q_\pi(s, a)$는 기대보상 $R(s, a)$와 할인계수가 적용된 $v_\pi(s')$의 기댓값의 합과 같다

$$q_\pi(s, a) = R(s, a) + \gamma \sum_{s'} P(s' \mid a, s)  v_\pi(s')$$


두 관계식을 조합한 최종적인 상태가치함수와 상태-행동가치함수의 형태는 다음과 같다

$$V_\pi(s) = \sum_{a}\pi(a \mid s) \left( R(s, a) + \gamma \sum_{s'} P(s' \mid a, s)  V_\pi(s') \right)$$

$$Q_\pi(s, a) = R(s, a) + \gamma \sum_{s'} P(s' \mid a, s)  \sum_{a'}\pi(a' \mid s') Q_\pi(s', a') $$

댓글