공부 정리 블로그
10. Temporal Differnence Learning(2/2) SARSA vs - Q learning 본문
Off- policy
혁신적이고 diverse한 탐험 가능
문제점 : 실제 나의 action과 관찰 action이 많이 벌어질 때, 해결하기 위해 importance sampling
monte model free
부트스트래핑 다음 state v,q값의 value를 계산
Policy를 만든다는 것은 Q table을 업데이트 해감
Q table에서 s,a의 최대값을 취하니까 Q table 업데이트
초기 p 로 부터 출발해서 ep를 run 해서 action에 대한 Q값을 계속 업데이트 해가면서 진행
On-policy TD control - SARSA
Off-policy TD control - Q-learning
On-Policy TD Control: SARSA
next state의 value를 알아야 업데이트 가능
(4,2) right 가치는 0.8
Q값이 업데이트 되면 다음 state에 반영이 됨
Q값이 바뀌면 내 policy 가 바뀐다.
state action, next action을 알아야 Q값을 업데이트한다는 차원에서 SARSA라고 명명
SARSA vs Q
SARSA 다음 스테이트에서 어떤 액션을 취하는 Q값을 결정하려면 다음에 어떤 액션이 취할지 결정을 해야하는데,
어떤 액션을 취하는지 결정하기 위해 같은 policy로 결정
next state, next action 미리 구해둠
on policy 때, exploration
2. 다음 action 정해서
3. 을 계산
4. 그냥 골랐던 것을 써준다.
미리 next state next action을 구해둔다.
계속해서 action이 Epsilon agreedy 로 결정된다.
SARSA에서 next action 구할때, epsilon
Off-Policy TD Control: Q-Learning
varianction이 굉장히 많음
*next state action을 고를 때, 내 policy를 epsilon policy로 고르는 게 아니라 그냥 greedy로 고름*
learning하는 Q값은 epsilon greedy 하면서 episode 진행, 내가 하는 것은 100% greedy
Q값을 결정할 때 항상 greedy하게 항상 maximum인 action 취하게
그냥 Q값을 update 정해진 값이기 때문에 그냥 계산
ep를 run은 epsilon 하면서 ep를 고름 나는 behavior
내가 하고 있는 50퍼 epsilon이 아닌. 쟤는 그냥 greedy
의문
1. SARSA / Q-learning 차이는?
(안 풀림)^^...ㅎㅎ
2. Importance sampling ratio
한 스텝만 보는 경우, TD(0)이면 Importance sampling Ratio 줄 필요 x
On-policy SARSA
행동 하나하나의 Reward를 신경써서 general한 가이드라인 cost 에러가 크면 on-policy
off-policy Q-learning