Table-based approach 의 한계

2021-12-05-rlpost15-01.png

table-based approach는 위 그림과 같이 trap이 움직이는 dynamic 환경에서는 state가 급격하게 증가하기 때문에 문제가 생긴다. 따라서 이를 해결하기 위해 neural network를 사용하는 방식을 써야한다.




Deep Sarsa

2021-12-05-rlpost15-02.png

앞에도 말했듯이 위의 한계를 극복하려면 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

2021-12-05-rlpost15-03.png

위 수식은 MSE(mean squared error)를 말한다.

2021-12-05-rlpost15-04.png

Update rule은 위 수식과 같다. 이것은 Gradient descent(경사하강법) 이다.

2021-12-05-rlpost15-05.png

따라서 output도 이런식으로 업데이트를 할 수 있다. 이부분을 참고하여 실제 deep sarsa에 쓰이는 loss function을 살펴보면 다음과 같다.

2021-12-05-rlpost15-06.png


제가 올린 글에서 잘못된 부분이 있으면 제 메일로 연락주세요!

Reference : 파이썬과 케라스로 배우는 강화학습

크리에이티브 커먼즈 라이선스
이승수의 저작물인 이 저작물은(는) 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 4.0 국제 라이선스에 따라 이용할 수 있습니다.