MDP를 안다 = 상태 전이 확률과 보상함수를 안다.
MDP를 알 때 이를 이용하여 정책을 개선하는 것을 플래닝이라고 한다.
prediction - 정책 가 주어졌을 때 각 상태의 value를 평가하는 것
control - 최적의 정책 함수를 찾는 것
본 과정은 크게 2단계로 이루어져 있다.
이 두 과정을 무한히 반복하여 수렴하는 곳이 optimal policy와 optimal value가 된다.
이 방법은 상당히 많은 연산이 필요하다.
우선 첫번째 단계인 policy evaluation의 경우 각 state의 value를 계산하기 위해 value가 수렴할 때 까지 진행해야 하는데 state의 개수, action의 개수가 많을수록 시간이 오래 걸린다.
그리고 두번째 단계는 policy가 수렴할 때 까지 진행해야 하는데 언제 수렴하는지 알 수 없다.
이러한 문제를 해결하기 위해서는 첫번째 단계에서 과연 각 state value가 수렴할 때까지 진행해야 하는가? 라는 질문을 던져봐야 한다.
만약 state value의 값들의 대소관계가 수렴했을 때와 같은 상황에 있더라면 여기서의 greedy policy는 수렴했을 때의 greedy policy와 같다. 따라서 우리는 어느 정도만 방향성이 나온다면 두번째 단계로 넘어갈 수 있다.
이 개념을 알기 위해서는 optimal value에 대한 정의를 다시 살펴볼 필요가 있다.
optimal value란 optimal policy를 따라갔을 때 얻는 값이다.
이번엔 policy iteration과 다르게 벨만 최적 방정식을 이용한다.
우리는 MDP를 알기 때문에 위를 바로 계산할 수 있다.
이를 무한히 반복하면 state가 수렴하게 되고, 그때에서의 greedy policy가 optimal policy가 된다.