- Deep Q Learning: 단순하지만 연속컨트롤도메인에서 제대로 동작X - A3C:Data효율성 및 Robustness가 떨어짐 - TRPO: 너무 복잡 & policy와 value function이 parameter공유하는 구조와 호환X
Background)
✔️Policy Gradient
Policy 학습을 위해 아래의 Objective Function과 Policy Gradient사용 ∙ 목적함수를 미분해 policy의 gradient를 구하고, ∙ gradient로 policy를 update해 학습을 진행: 다만, Policy Update시, 매우 크게 update하기에 성능저하가능
✔️ TRPO (Trust Region Policy Optimization)
제약이 있는 Objective Function으로 Policy Update시, Update가 되는 크기에 제약을 둠. 다만, Second-Order Optimization이기에 복잡함.
Sol) Clipped Surrogate Objective Function
빨간색: 본 논문에서 제시한 Objective Functionold: policy update전을 의미. r(θ)는 [1-ϵ, 1+ϵ]으로 clipping한 후 min값을 반환한다.- TRPO의 복잡성 완화 및 성능유지하는 Objective Function을 새롭게 제시.
[A; Advantage] - A > 0 : 정책을 더욱 개선하고자 할 때, 작게 움직여 update - A < 0 : 정책을 악화하는 방향이면, 더 크게 움직여 update
2. Adaptive KL Penalty Coefficient
🤔 조절가능한 KL Penalty의 계수항
Background) TRPO알고리즘에서 KL항이 제약조건에 있었다. 위 식의 경우, KL Penalty항에 계수항을 추가해 Objective Function을 설계한 내용이다. 계수를 계산하는 방법은 아래 Compute d를 보면 된다: ∙ d가 target값보다 작으면 초기 beta/2 ∙ d가 target값보다 크면 초기 beta*2
앞선 Surrogate Objective Function보다 성능은 떨어지나 중요해서 Baseline으로 채택
🤔 PPO Algorithms
✔️ Actor-Critic구조를 사용, Policy와 Value-Func의 parameter를 공유.