Off-policy Monte Carlo Control
control 문제에서 off-policy 방법에 대해 다룬다. on-policy는 control을 위해 사용했던 policy의 가치(value)를 추정(estimate)하지만, off-policy는 policy가 행동하는 behavior policy와 평가(evaluate)되고 개선되는 target policy로 나뉜다. 이렇게 나누면서 생기는 장점은 target policy가 greedy 같은 deterministic policy가 되면서도, behvior policy를 통해 계속해서 새로운 다른 행동을 할 수 있다.
아래 알고리즘은 GPI와 weighted importance sampling 기반으로 하여 최적의 $\pi_\ast$와 $q_\ast$를 찾는 Off-policy Monte control 방법이다. target policy는 $Q$를 기반으로 greedy하게 행동을 선택하며, 이 $Q$값은 이 정책에 대한 가치 $q_\pi$를 추정(estimate)한다. behavior policy는 무엇을 사용하든 상관 없지만, $\pi$가 확실히 최적의 정책으로 수렴하게 하기 위해서, 유한한 수의 return값이 들어와야하기에 $\epsilon$-soft해야 한다.(즉 $\epsilon$ 확률에 따라 exploit과 explore하면서, 탐험할 때 모든 행동에 대한 확률이 0보다 커야 한다.) 또한 target policy가 할만한 모든 행동들은 behvior policy도 할 가능성이 있어야 한다.(coverage) 그렇게만 된다면 정책 $\pi$는 다른 soft 정책인 $b$에 의한 상태와 행동에서도 최적으로 수렴한다.
여기서 잠재적인 문제는 어떤 에피소드에서 남아있는 행동을 모두 greedy하게 행동해야 하는데, 이 방법은 에피소드 마지막에서 학습한다는 점이다. nongreedy하게 행동하니 학습을 느려질 수 밖에 없고, 특히 긴 에피소드의 초기 상태들에서 발생한다면 느려질 것이다. 이 것이 얼마나 심각한 문제인지 평가하기엔 경험이 부족하다.(실험을 덜 해본듯) 만약 심각한 문제라면, temporal-difference 학습 방법을 같이 사용해서 해결해야 할 것이다. 이러한 방법은 다음 챕터에서 다룰 것이고, 대신 $\gamma$가 1보다 작은 경우라면 다음 절에서 다루는 게 꽤 도움이 될 수 있다.