정책 이터레이션은 주어진 정책 하에서 벨만 기대 방정식을 사용해 가치를 평가하고 개선
정책 이터레이션은 정책 평가와 정책 개선 단계를 번갈아 수행하면서 최적의 정책을 찾음
정책 평가(Policy Evaluation):
정책 개선(Policy Improvement):
평가된 가치 함수를 바탕으로 각 상태에서 최적의 행동을 선택하는 새로운 정책을 만듦.
이 단계에서는 각 상태에 대해 가능한 모든 행동을 고려하고, 가장 높은 기대 리턴을 제공하는 행동을 선택하여 정책을 개선합니다.
정책이 더 이상 개선되지 않을 때(수렴할 때)까지 두 단계를 반복
상태 가치 함수를 사용하여 최적의 정책을 도출
실행 코드는 https://github.com/rlcode/reinforcement-learning-kr 를 참조해주세요.
가치 이터레이션은 각 반복에서 직접적으로 최적의 가치 함수를 추정하고, 이를 바탕으로 최적의 정책을 결정함.
이 방법은 정책 평가와 정책 개선 단계를 하나로 합쳐 더 효율적으로 계산할 수 있게 해줌.
가치 함수 업데이트:
모든 상태에 대해 가능한 모든 행동의 결과를 고려하여, 각 상태의 가치 함수를 업데이트함
벨만 최적 방정식을 사용하여, 각 상태에서 가능한 행동 중에서 최대의 기대 가치를 제공하는 행동을 통해 가치 함수를 업데이트함.
이렇게 계산된 가치 함수를 기반으로, 각 상태에서 가능한 행동들 중에서 가장 - 높은 가치를 제공하는 행동을 선택하여 최적의 정책을 결정함.
가치 이터레이션은 일반적으로 정책 이터레이션보다 더 빠르게 수렴할 수 있으며, 계산 과정이 좀 더 단순함
value_iteration.py 파일 실행