Table-based approach 의 한계
table-based approach는 위 그림과 같이 trap이 움직이는 dynamic 환경에서는 state가 급격하게 증가하기 때문에 문제가 생긴다. 따라서 이를 해결하기 위해 neural network를 사용하는 방식을 써야한다.
Deep Sarsa
앞에도 말했듯이 위의 한계를 극복하려면 neural network를 사용해야한다. 참고로 이 그림에서는 심층신경망은 은닉층(hidden layer)이 있는 neural network를 가지고 deep Neural Network(심층 신경망) 이라고 한다. 이런 neural network에는 항상 input 과 output이 있는데, 여기 우리가 풀려는 deep sarsa문제에서 input은 상태의 특징벡터가 되겠고, output은 q value가 될것이다.
input에 대해서 좀더 보면 지금 이 환경은 dynamic하게 계속 변하는 환경이기 때문에 state를 정의하기가 쉽지 않다. 따라서 이 문제에서는 input에 들어가는 state들은 상대 위치를 이용해서 state를 정의한다.
loss function
위 수식은 MSE(mean squared error)를 말한다.
Update rule은 위 수식과 같다. 이것은 Gradient descent(경사하강법) 이다.
따라서 output도 이런식으로 업데이트를 할 수 있다. 이부분을 참고하여 실제 deep sarsa에 쓰이는 loss function을 살펴보면 다음과 같다.
제가 올린 글에서 잘못된 부분이 있으면 제 메일로 연락주세요!
Reference : 파이썬과 케라스로 배우는 강화학습
이승수의 저작물인 이 저작물은(는) 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 4.0 국제 라이선스에 따라 이용할 수 있습니다.