Model-free Prediction & Control
RL이란
1) 일단, 해보고 => 경험
2) 자신을 평가하고 ==> evaluation , prediction
3) 평가한대로 자신을 업데이트 => improve, control
4) 1~3 반복 ==> Iteration
http://www.kocw.net/home/search/kemView.do?kemId=1367683
Model-free Prediction
Monte Carlo Approximation
무작위로 일단 해본다.
그 경험으로부터 얻은 sample을 통해서, True값 추청
sample이 많아지면, True값에 근사.
샘플링 : Agent가 Environment에서 한번 Episode (= sample ) 를 진행하는것
=> 샘플링을 통해 얻은 Sample의 평균은 참가지함수의 추정값
Policy evaluation에서 [기대값을 계산하지않고], 샘플링을 통해 참가치함수 예측
V𝛑(s) = 𝚬𝛑[Gt | St =s]
= 𝚬𝛑[Rt+1 + 𝜸∙Rt+2 + 𝜸2∙Rt+3 + 𝜸3∙Rt+4 + … + 𝜸T-t-1∙RT | St =s]
, Temporal Difference
MonteCarlo 예측은 가치함수의 업데이트를 위해, Episode가 끝날때까지 기다려야 함. (실시간이 아님)
=> Episode마다가 아니라, Time Step마다 가치함수 업데이트
Bootstrap : 다른 State의 가치함수 예측값을 통해, 지금 상태의 가치함수를 예측하는 방식’
Gt가 아니라 다음상태 V(St+1)의 예측값만 있으면 된다. 에피소드가 끝나는걸 기다릴 필요없음.


Model-free Control
SARSA : on-Policy
TD(Time difference) Control에서 (가치함수가아닌) Q함수를 업데이트함. ε-greedy로 policy improvement
현재상태은 Q함수(추정값) 를 다음상태의 Q함수(추정값) 로 업데이트

ε-greedy 정책을 통해 [St, At, Rt+1, St+1, At+1] 정책 샘플을 획득하고,
이 샘플을 이용해 Q함수 Q(St, At) 를 업데이트
Q-learning : off-Policy
SALSA에서는 Agent가 ε-greedy로 Action을 하면서 Learning을 한다. (online으로 Action을 하고, online으로 Learning)
=> (자신이 행동하는 대로 학습) Exploration으로 선택한 정책때문에 잘못된 정책을 학습
따라서, Q-Learning은 Action하는 Policy (behavior policy μ, ε-greedy정책) 와
Learning하는 Policy (target policy 𝛑, greedy정책으로 Q함수 업데이트)를 분리
Q함수 업데이트를 위해 [s,a,r,s’] 샘플필요
