반응형
이는 저번 시간에 배웠던 Decaying E-greedy 방법이다.
그리고 env.action_space.sample() 이라는 것은 action space 에서 sample을 해서 살펴보겠다는 것이다.
아니면 Q 값 중에서 가장 큰 값을 선택하겠다는 뜻이다.
그리고 위에서 언급한 Decaying E-greedy 에서
이제는 Add Random noise 를 해준 다면 위의 그림과 같이 된다는 것을 알 수 있다.
여기서 Discounted reward를 위해 0.99 를 해준 것을 볼 수 있다.
그리고 오른그림 아래쪽에 보면, Q를 update해주는 것에 있어서 기존 reward와 dis * Q' 을 해주는 것을 볼 수 있다.
결과를 보면 기존의 Dummy Q-learning은 출력된 Q 값이 0 아니면 1이라는 사실을 알고 있다.
근데 여기서는 Discounted 가 적용되었기 때문에, 0.9xx와 같은 값이 나온다는 것을 알 수 있다.
여기서 // 하게 되면 python2/3 상관없이 사용할 수 있게 된다.
아무튼 e-greedy를 쓰게 되면, random 하게 달리기 때문에 약간의 성능이 줄어든다는 것을 알 수 있다.
위의 결과와 비슷하게 optimal한 길을 찾아냈을 것이다.
반응형
댓글