정책에 대해 가치 함수를 계산하는 이유는 더 좋은 정책을 찾기 위해서다. 임의의 결정론적 정책 pi 에 대해 가치 함수 v_pi 를 결정했다고 가정해 보자.
어떤 상태 s 에 대해 a != pi(s) 를 만족하는 행동을 결정론적으로 선택하기 위해 정책을 변화시켜야 할지 그대로 두어야 할지를 알 필요가 있다.
상태 s 에서 현재 정책을 따르는 것이 얼마나 좋은지는 v_pi(s) 를 통해 알고 있지만, 정책 자체를 새로운 정책으로 바꾸는 것은 어떠한가? 더 좋은지에 대한 대답하는 방법은 상태 s 에서 행동 a 를 선택하고 그 후에는 현재 정책 pi 를 따르는 것을 생각해보는 것이다.
이 행동의 가치는 다음과 같다.
이 값이 v_pi(s) 보다 큰지 작은지를 판단하는 것이 핵심이다.
만약 더 크다면, 즉 상태 s 에서 행동 a를 한 번 선택하고 이후부턴 정책 pi 를 따르는 것이 항상 정책 pi 를 따르는 것보다 더 좋다면, 상태 s 에 놓일 때마다 행동 a 를 선택하는 것이 여전히 더 좋은 선택이며 이 새로운 정책이 사실 전반적으로 더 좋은 결과를 가져올 것이라고 기대된다.
이러한 기대가 실제로 이뤄지는 상황은 정책 향상 정리 policy improvement theorem 라고 불리는 일반적인 이론이 적용되는 특수한 경우에 해당한다. 임의의 결정론적 정책 pi 와 pi' 이 모든 s 에 대해 다음의 부등식을 만족하다고 하자.
그러면 정책 pi' 은 pi 만큼 좋거나, 그 이상으로 더 좋은 것임에 틀림없다. 즉, 정책 pi' 이 모든 상태 s 로부터 도출하는 이득의 기댓값은 정책 pi 가 도출하는 것보다 크거나 같아야 한다.
더욱이, 임의의 상태가 부등식을 만족하면 최소한 하나의 상태는 위의 식을 만족해야 한다.
정책과 그것의 가치 함수가 주어졌을 때 하나의 상태에서 어떤 특별한 행동을 선택하게 하는 정책의 변화를 어떻게 평가할 것인지에 대해 인지, 이것을 자연스럽게 확장하여 모든 상태에 대해 그리고 선택가능한 모든 행동에 대해 q(s,a) 의 측면에서 가장 좋아보이는 행동을 선택하게 하는 정책의 변화를 생각해 보자.
다시 말해, 다음과 같은 새로운 탐욕적 정책 pi' 를 생각해 본다.
argmax는 뒤의 식을 최대로 만드는 매개변수의 값을 나타낸다.
탐욕적 정책은 한 단계 앞을 내다보고 v_pi 의 측면에서 단기적으로 가장 좋아보이는 행동을 선택한다. 탐욕적 정책은 스스로의 형성 고자ㅓㅇ을 통해 정책 향상 정리의 조건을 만족하기에 원래의 정책 이상으로 좋은 결과를 가져온다.
기존 정책의 가치 함ㅅ수에 대해 탐욕적이 되게 함으로써 기존 정책을 능가하는 새로운 정책을 만드는 과정을 정책 향상이라고 부른다.
결정론적 정책의 특별한 경우, 일반적인 경우 화귤론적 정책 pi 는 pi(a|s) 의 확률로 상태 s 에서 행동 a 를 선택한다.
정책 향상 단계에서 행동이 유일하지 않다면, 즉 최대로 만드는 행동이 여러 개라면, 확률론적 정책의 경우에는 여러 개의 행동 중 하나의 행동만을 선택할 필요는 없다.
'단단한 강화학습' 카테고리의 다른 글
4.4 가치 반복 (0) | 2023.06.28 |
---|---|
4.3 정책 반복 (0) | 2023.06.28 |
4.1 정책 평가(예측) (0) | 2023.06.27 |
4. 동적 프로그래밍, DP (0) | 2023.06.27 |
3.8 요약, 강화학습 문제의 구성 요소 (0) | 2023.06.27 |