REINFORCE
이전 글의 다양한 Policy gradient 중 Return을 사용하는 REINFORCE Algorithm이다.
1.
현재 주어진 parameter 를 바탕으로 M개의 trajectory 생성
2.
episode에서 Return 계산
3.
를 sample mean으로 근사
4.
전체 trajectory에 대한 Return의 기댓값으로 objective function이 정의되어 있으므로 Gradient ascent 방식을 parameter update에 적용
•
REINFORCE 단점
하나의 episode가 종료되어야 policy update가 가능하다는 문제가 있으며, 이와 같은 특징을 가지므로 Monte Carlo policy gradient라고 부른다. 또한 gradient가 Return에 비례하므로 분산이 크다. 마지막으로 update의 대상이 되는 policy와 실제 sample을 얻는 policy가 동일한 on-policy 방식이라는 점이 단점이다.
•
REINFORCE with baseline
REINFORCE의 단점인 variance를 줄이기 위해서 baseline을 도입한 형태를 고려한다. 이때 baseline에 action과 무관한 함수를 사용한다면, 이전의 증명에 의하여 기댓값이 변하지 않으므로 여전히 unbias를 유지할 수 있다는 장점이 있다.
1.
현재 주어진 policy 의 parameter 에 대해 episode 생성
2.
해당 time-step의 return 계산
3.
계산된 return을 target으로 하여 gradient descent 적용하여, baseline ( state-function ) parameter update
4.
gradient ascent 방식을 적용하여 policy의 parameter update
5.
하나의 episode에 대해 update 종료 이후 생성된 다른 episode에 대해 다시 반복 적용
**5 단계에서 를 sample mean으로 근사하여 사용하며 1-step만큼 진행하여 얻은 data로 즉시 update하는 방식을 택하고 있음
**Policy Gradient 수식