버티의 블로그
[강화학습 #06] Model-Free Control 본문
728x90
앞선 3장에서는 MDP 환경에서 policy를 evaluation하고 improvement하는 방법을 공부했는데, 이제 model-free 상황에서 어떻게 좋은 policy를 얻어낼 것인지를 살펴볼 것이다. 6장은 이를 위한 기초를 잡고 가는 단원이라 생각하면 된다.
On and Off-Policy Learning
- On-Policy : 현재의 policy로 샘플링을 하여 현재 policy를 개선해 나간다. 즉 에이전트가 행동을 선택하고 그 행동의 결과를 기반으로 policy를 업데이트 해간다.
- SARSA
- Off-Policy : 에이전트가 샘플링을 위한 정책(행동 정책)과 학습을 위한 정책(목표 정책)으로 나누어 policy를 개선한다. 행동 정책에서 더 다양한 탐험을 하여, 목표 정책에 가까워지게 하는 것이 목표이다.
- Q-Learning, DQN
Model-Free Policy Iteration
지금까지는 위와 같은 방식으로 policy improvement를 했을텐데, model-free 환경일 때는 2가지의 의문이 생긴다.
- model-free에서는 MC와 TD등의 방법으로 state value를 업데이트(policy evaluation)을 하게 되는데, 그럼 여기서 나온 Q값은 실제 value가 아닌 추정치이므로 policy가 monotonic하게 증가할 것인가?
- 또한 경험한 것들을 바탕으로 Q값이 계산되고 Q를 바탕으로 action들이 deterministic하게 결정되버리는데 그 action이 최선일지? 경험하지 못한 action이 만약 더 좋았다면?
따라서 explorationi(탐험)이 부족할 수 있기 때문에, 우리는 랜덤성을 부여해서 탐험을 조금 더 하자는 것이 목표고 여기서 나온 개념이
ϵ-Greedy Exploration
그래서 이 방법은 1-ϵ의 확률로 최적의 값을 선택하는 greedy한 방식을 따르게 하고, 나머지 ϵ의 확률로 랜덤한 action을 취하게 한다. 이때 취하는 action의 수가 A개일 것이므로, 각각의 랜덤할 action을 할 확률이 ϵ/|A|가 되는 것이다.
그럼 이런 방식으로 policy가 정말로 monotonic하게 좋아지는지가 궁금할텐데, 이에 대한 증명은 아래와 같다.
GLIE
GLIE는 다음 2가지 조건을 모두 만족하는 ϵ-greedy policy를 의미한다.
- 학습이 진행되는 동안 에이전트는 모든 state, action쌍을 무한히 방문한다.
- 이렇게 무한히 탐험하면 ϵ값이 0으로 수렴하고, 결국 학습을 할수록 greedy policy로 수렴하게 된다.
위 내용들을 모두 정리해서, MC로 Q값을 계산하고 ϵ-greedy로 on-policy improvement를 하는 수도코드가 다음과 같다.
'AI > 강화학습' 카테고리의 다른 글
[강화학습 #08] Value Function Approximation (0) | 2024.06.06 |
---|---|
[강화학습 #07] SARSA and Q-Learning (0) | 2024.06.05 |
[강화학습 #05] λ-returns on TD (0) | 2024.05.20 |
[강화학습 #04] Monte-Carlo and Temporal-Difference (0) | 2024.05.19 |
[강화학습 #03] MDP Planning (0) | 2024.05.19 |