본문 바로가기

Quadruped Robot/Quadruped Robot Theory

Quadruped 공부 하고 싶다. #4 [Task1 - Policy-Gradient (for PPO)①]

728x90

#Policy-Gradient

Proximal Policy Optimization (PPO)를 배우기 전에

사전 지식으로 Policy - Gradient에 관한 용어 정리가 필요했다.

그림 1. Policy-Gradient 기호 정리

일반적인 Deep-Learning과는 다르게 Gradient descent가 아닌 'ascent'이다.

이상적인 action의 확률을 뽑기 위해 SoftMax로 출력을 하며

해당 action의 확률을 높이는 방향으로 학습하는 것이 직관적으로 옳기 때문에

ascent라고 한다. 이 부분을 (-) 부호를 붙여 표현하기도 한다.

그림 2. Q-Learning이 update되는 중요한 키워드 'Pushing'

위 설명을 통해 강화 학습에서 어떤 것을 중점적으로 업데이트하며,

Exploration 중 Agent가 좋지 못한 길로 빠졌을 때, 이에 대한 reward 값이 어떻게 조정되어

다시 좋은 길로 수정되는지를 Value의 배수를 통해 설명한다.

 

그림 3. Policy's - 'LOG' Notation.

그리고 Reinforcement Learning을 하면서 자주 보는 log의 정체에 대해 해설해준다.

어떻게 유도되고 어떤 의미를 갖는지에 대해 설명한다.

 

이렇게 PPO를 알아보기 전 Policy-Gradient에 대해 알아보았다. 

이제 해당 지식을 바탕으로 PPO(②)를 읽어보고 

Cartpole-PPO (Pytorch) 코드(③)를 작성해보기로 한다.

 

[Reference]

https://towardsdatascience.com/an-intuitive-explanation-of-policy-gradient-part-1-reinforce-aa4392cbfd3c

 

An Intuitive Explanation of Policy Gradient — Part 1: REINFORCE

Policy gradient is behind some of the best RL algorithms out there, yet few people understand the intuition behind its loss function.

towardsdatascience.com