Average Reward


서론

지금까지는 정책이 만들어내는 마르코프 체인을 장기적인 관점에서 분석하기 위한 이론적 기반을 살펴보았다. 정상분포와 에르고딕 성질을 통해, 정책을 충분히 오래 수행하면 각 상태를 얼마나 자주 방문하는지를 하나의 확률분포로 표현할 수 있음을 확인하였다.

그러나 상태를 얼마나 자주 방문하는지만으로는 정책의 성능을 평가할 수 없다. 어떤 상태는 좋은 상태일 수도 있고, 어떤 상태는 피해야 하는 상태일 수도 있기 때문이다. 즉, 상태의 방문 빈도에 '좋음'이라는 기준이 함께 주어져야 비로소 정책의 우수성을 비교할 수 있다.

이를 위해 강화학습에서는 각 상태(또는 상태-행동)에 보상(Reward) 을 부여하여 상태의 가치를 수치로 표현한다. 그리고 에르고딕 성질에 의해 얻은 장기 방문 비율과 이 보상을 결합하면, 정책이 장기간 수행되었을 때 평균적으로 얼마나 좋은 성과를 내는지를 하나의 값으로 나타낼 수 있다. 이러한 정책의 장기 성능 지표를 평균보상(Average Reward) 이라 한다.

목차

정책을 평가하려면, 그 정책을 따랐을 때 에이전트가 장기적으로 얼마나 좋은 결과를 얻는지를 하나의 값으로 나타내야 한다. 이를 위해 각 시점에서 에이전트가 받는 보상을 \(R_{t+1}\) 이라 하자.

\[R_1 + R_2 + \cdots + R_T\]

가 된다. 그러나 계속되는 환경에서는 시간이 길어질수록 이 합이 계속 커지므로, 총보상만으로는 정책을 적절히 비교하기 어렵다. 따라서 누적보상을 전체 시간 T로 나누어, 한 스텝 당 평균적으로 얼마나 많은 보상을 얻었는지를 계산한다.

\[\bar{R}_T = \frac{1}{T} \sum_{t=0}^{T-1} R_{t+1}\]

그리고 정책을 무한히 오래 수행했을 때 이 값이 수렴하는 극한을 정책 \(\pi\)의 평균보상(Average Reward) 이라 한다.

  • \(T:\) 정책을 수행한 전체 스텝 수
  • t: 현재 스텝을 나타내는 인덱스
  • \(R_{t+1}\): t시점의 상태에서 한 번 전이한 뒤 받은 보상
  • \(\bar{R}_T\): \(T\)스텝 동안 실제로 관측한 보상의 평균
\[g_{\pi} = \lim_{T \to \infty} \frac{1}{T} \mathbb{E}_{\pi} \left[ \sum_{t=0}^{T-1} R_{t+1} \right]\]

여기서 \(g_\pi\)는 정책 \(\pi\)를 계속 따랐을 때 한 단계마다 평균적으로 얻는 보상을 의미한다.

Example: Sunny–Cloudy 날씨의 평균보상

앞에서 사용한 날씨예제로 평균보상을 구해보자. 상태는 두 가지가 있다.

\[S = \{\text{Sunny}, \text{Cloudy}\}\]

상태전이행렬은

\[\mathcal{P} = \begin{pmatrix} \displaystyle\frac{2}{3} & \displaystyle\frac{1}{3} \\[1.5em] \displaystyle\frac{1}{2} & \displaystyle\frac{1}{2} \end{pmatrix}\]

앞에서 이 마르코프 체인의 정상분포를 구한 결과는

\[d = \begin{pmatrix} \displaystyle\frac{3}{5} & \displaystyle\frac{2}{5} \end{pmatrix}\]

이였다.

이 결과의 의미는 장기적으로 전체 스텝(시간)의 \(\displaystyle\frac{3}{5}\)는 Sunny상태에 머물고, \(\displaystyle\frac{2}{5}\)정도는 Cloudy 상태에 머문다는 뜻이다.

이제 각 상태에 보상을 부여하여 Sunny 상태에서는 보상 +1, Cloudy 상태에서는 보상 0을 받는다고 하자.