오늘은 -greedy policy와 MC Control 그리고 GLIE에 대해 배워볼 예정이다.


Exploitation이란 우리가 이미 알고 있는 정보 내에서 최선의 결정을 내리는 것.
ex) 자주 가는 집 중에서 가장 맛있는 집을 찾아가는 방식
가장 큰 Q-value를 사용하여 action을 선택하는 방법.
greedy policy와 같은 개념
이미 알고 있는 정보에서 최적의 policy를 찾는 것이기 때문에 효율적으로 업데이트하는 방식으로 이해할 수 있다.
단점: 경험하지 않는 sample에 대해서는 접근하지 않는다.
Exploration이란 우리가 알고 있는 것 외에 추가적인 정보를 참고해서 새로운 결정을 내릴 수 있도록 찾는 방법
ex) 가보지는 않았지만 새로운 맛집의 정보를 찾아 시도해보는 것
Exploitation에서 선택할 최적의 action을 확률로 취한다.
만큼은 random하게 다른 action을 취한다.
장점: 그동안 경험하지 않았던 state-action을 경험하여 더 좋은 policy를 찾을 수 있다.
단점: risk가 따른다.
-greedy policy이란 Exploitation 방법과 Exploration 방법을 trade-off로 조절하는 방법이다.
만큼은 ramdom하게 선택하고 만큼은 최적의 -value를 선택하는 방법이다.
궁극적으로 더 좋은 decision을 할 수 있다.
물론 short-term sacrifice 가 존재한다.

MC Control에서는 policy를 개선한다. 그 전에 앞서 살펴본 -greedy policy를 생각해보자.
-greedy Policy에서 ramdom action을 취할 확률은 이다.
이때 모델이 취할 수 있는 action의 수가 m개라면, 각 action은 의 확률로 발생한다.
Stochastic policy를 사용할 때도 policy를 개선할 때마다 더 좋은 policy가 도출된다는 보장이 있을까?🤔
부등호가 성립하는 이유는 최대값이 기대값보다 항상 크다는 때문이다.
합은 1을 만족하지만, 음수인 항 역시 존재할 수 있다. 기존 policy의 action에 대한 확률 분포와 개선된 policy의 확률 분포는 다를 수 있기 때문이다.
Policy Improvement Theorem에 따라 -greedy Policy Improvement 방식에서는 policy가 계속해서 개선된다.

아래의 2조건을 만족하면 이를 GLIE라고 한다.
State-action pair의 sample을 무한히 방문해야 한다.
State-action에 대한 정확한 mean Return값을 구하기 위해서다.
Sample data를 늘리는 방법으로 조건을 만족할 수 있다.
최종적으로 stochastice이 사라지고, Greedy policy에 수렴해야 한다.
값이 0에 수렴하도록 조정해야 한다.
Incremental Monte Carlo update를 적용한 것이다.
물론 를 적용할 수도 있다.
and - 을 통해 값을 조절할 수 있다.

모든 state, action 쌍에 대한 Q-value 를 초기화한다.
Terminal state의 Q-value값은 암묵적으로 0으로 한다.
Return 를 저장할 리스트를 만든다.
Policy 역시 초기화하되, 모든 action이 약간의 확률을 가지도록 한다.
2, 3 단계는 각 episode별로 반복한다.
Data sample:
Return값은 0으로 초기화
연산을 통해 을 계산한다.
Unless 부터는 처음 등장한 에 적용하는 방식으로 first-visit에만 적용된다.
Return값을 통해 mean Return 값을 적용할 수 있다.
하나의 episode 내에 존재하는 state action에 대해 업데이트를 진행한다.
Action의 수
이러한 과정을 반복하면 Policy Evaluation과 Policy Improvement가 각각 수렴하게 된다. 이때 학습을 종료하면 된다.
- -greedy Policy에 대해 배웠다.
- Policy를 개선하는 MC Control 단계에 대해 배웠다.
- -greedy Policy에서도 policy가 개선됨을 증명하였다.
- GLIE와 GLIE가 되기 위한 조건 2가지를 살펴보았다.
- Monte Carlo method의 pseudo code에 ****대해 살펴보았다.