소프트 상태가치와 소프트 행동가치의 시간적인 관계식을 알아보기 위해서, 소프트 행동가치 함수를 한 시간스텝 전개해 보자.
위 식에서 조건부 확률밀도함수에 확률의 연쇄법칙을 적용하면 다음과 같이 된다.
여기서
식 (2)를 식 (1)의 적분 식에 적용하면 다음과 같이 된다.
소프트 상태가치 함수의 정의에 의하면 위 식은 대괄호항은
소프트 상태가치 함수와 행동가치 함수의 관계식은 아래 식과 같으므로,
식 (4)를 식 (5)에 대입하면, 소프트 상태가치 함수는 다음과 같이 된다.
식 (5)를 식 (4)에 대입하면 소프트 행동가치 함수는 다음과 같이 된다.
식 (6)과 (7)을 각각 소프트 벨만 방정식(soft Bellman equation)이라고 한다.
표준 목적함수 문제에서 탐욕(greedy)적인 방법으로 정책을 계산하였듯이 이제 최대 엔트로피 목적함수 문제에서도 탐욕적인 방법으로 정책을 계산해 보자. 탐욕적인 방법이란 현재의 시간스텝만을 고려하여 최대값을 구하는 것을 의미한다.
현재 시간스텝
식 (8)은 소프트 행동가치가 작다면 정책의 무작위성이 커지면서 탐색 성향이 강하지고 반대로 소프트 행동가치가 크다면 현재의 정책으로 생성된 행동의 가치가 크다는 의미이므로 탐색 대신에 정책의 활용 성향이 커지게 된다고 해석할 수 있겠다.
정책
위 식에 의하면 최적 정책은 다음과 같이 주어진다.
최적 정책이

위 그림에서 왼쪽 그림은 기존의 Q-러닝과 DDPG의 접근 방식을 보여준다. 기존 정책은 최대
반면 오른쪽 그림은 식 (10)으로 표현되는 정책의 접근 방식을 보여준다. 정책이
표준 목적함수 문제에서는 탐욕적 정책이 확정적 정책이었다면 최대 엔트로피 목적함수 문제에서는 정책이 확률적 정책으로 계산된다. 확률적 정책은
참고로 표준 목적함수 문제에서는 탐욕적 정책을
만약
탐욕적 정책 (11)을 적용한다면 상태가치 함수는 식 (5)에 의해서 다음과 같이 계산된다.
한편, 식 (8)의 목적함수를 전개하면 다음과 같이 KL 발산(KL divergence)식과 관련 지울 수 있다.
여기서 기댓값이
위 수식에 의하면 목적함수 (8)을 최대화하는 정책은 그 정책과 소프트 행동가치 함수의 KL 발산을 최소화하는 정책임을 알 수 있다.
식 (16)을 최소로 만드는 정책은 이미 식 (11)에서 계산했듯이 정책이
따라서 식 (16)은
'AI 딥러닝 > RL' 카테고리의 다른 글
Soft Actor Critic (SAC) 알고리즘 - 1 (0) | 2021.05.29 |
---|---|
소프트 정책 이터레이션 (0) | 2021.05.28 |
최대 엔트로피 목적함수 (0) | 2021.05.26 |
Tensorflow2로 만든 DDPG 코드: Pendulum-v0 (0) | 2021.05.14 |
DQN에서 DDPG로 (0) | 2021.05.14 |
댓글