HIerarchical Reinforcement learning with Off-policy correction (HIRO)
Key idea: FuN + TD3 + off-policy correction
โข
FuN์ ํ๊ณ์
1.
FuN์ worker์ manager๊ฐ ๋ชจ๋ ํ์ฌ policy๋ก๋ง ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ๋ฐฉ์์ธ on-policy ์ด๋ค. ๋ฐ๋ผ์ ์์ง ํจ์จ์ด ๋ฎ๊ณ , sample efficiency๊ฐ ๋งค์ฐ ๋จ์ด์ง๋ค.
2.
manager๊ฐ ์ค์ ํ๋ subgoal ์ latent space์ vector๋ก ์ด subgoal ์ด ์ค์ action๊ณผ ์ผ๋ง๋ ์๋ฏธ ์๊ฒ ์ฐ๊ฒฐ๋๋์ง ํด์์ด ์ด๋ ต๋ค. reward๋ subgoal ์ cosine similarity ๊ธฐ๋ฐ์ผ๋ก ์ถ์ ๋จ โ ๋ถ์์ ํ ๊ฐ๋ฅ์ฑ์ด ์๋ค.
3.
manager์ worker๊ฐ ์๋ก ๋ค๋ฅธ time step ๋จ์๋ก update๋๋ฉด์ non-stationarity ๋ฐ์ํ๋ค. reward assignment๊ฐ ์ด๋ ต๊ณ , worker๊ฐ subgoal ์ ์ ๋ฐ๋ผ๊ฐ์ง ๋ชปํ๋ฉด manager์ ํ์ต๋ ์คํจํ ์ ์๋ค.
Off-policy correction
Off-policy learning : behavior policy๋ก ์์ง๋ data๋ฅผ ์ฌ์ฉํด์ target policy๋ฅผ ํ์ตํ๋ ๋ฐฉ๋ฒ.
off-policy learning์ ๋ฌธ์ ์ : behavior policy๋ก๋ถํฐ ์์ง๋ ๋ฐ์ดํฐ๊ฐ target policy์์ ๋์ฌ ๋งํ data๊ฐ ์๋ ์๋ ์๋ค โ gradient๊ฐ ์๋ชป๋ ๋ฐฉํฅ์ผ๋ก ํ๋ฌ์ ํ์ต์ด ๋ถ์์ ํด์ง๋ค. ์ด ๋์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๊ธฐ๋๊ฐ ๊ณ์ฐ์ด ํ์ด์ง๋ค.
๊ทธ๋ฌ๋ฏ๋ก correction์ ํด์ค์ผ ์ฌ๋ฐ๋ฅธ ๋ฐฉํฅ์ผ๋ก policy๋ฅผ updateํ ์ ์๋ค.
โข
์ด๋ป๊ฒ correction์ ํ๋๊ฐ?
1.
Importance Sampling (IS)
์ด๋ค ๋ถํฌ์์ ๊ธฐ๋๊ฐ์ ๊ตฌํ๊ณ ์ถ์ง๋ง, ๊ทธ ๋ถํฌ์์ ์ง์ sampling ํ ์ ์์ ๋, ๋ค๋ฅธ ๋ถํฌ๋ก๋ถํฐ samplingํ ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํด ์ํ๋ ๊ธฐ๋๊ฐ์ ๋ณด์ ํด์ ๊ณ์ฐํ๋ค.
2.
Clipping or truncation
importance weight๋ฅผ clippingํ๊ฑฐ๋ truncated Importance sampling์ ์ฌ์ฉํ๋ค.
์: V-trace, Q(ฮป), GAE ๋ฑ โ ์์ ์ฑ์ ๋์ด๋ฉฐ, bias/variance trade-off ๋ฅผ ์กฐ์ ํ๋ค.
โข
HER์์์ off-policy correction
HER๋ off-policy ๋ฐฉ์์ด๊ธฐ ๋๋ฌธ์, hindsight goal์ด target policy๊ณผ๋ ๋ค๋ฅผ ์ ์๋ค. ์ด๋์๋ correction ๊ธฐ๋ฒ(์: importance sampling)์ ์ ์ฐ๋ ๋์ , goal relabeling์ ํตํด ์ ์ ํ ๋ณด์์ ์ฃผ๋ ๊ฒ์ผ๋ก ์๋ฌต์ ์ผ๋ก correction์ ์ํํ๋ค.
HIRO๋ FuN์ฒ๋ผ 2๊ฐ์ hierarchy๋ฅผ ์ฌ์ฉํ๋ hierarchical policy architecture ์ด์ง๋ง, Off-policy Reinforcement Learning ์๊ณ ๋ฆฌ์ฆ์ธ TD3 ์ ๋งค์ปค๋์ฆ์ ์ฌ์ฉํ์ฌ sample efficiency์ ํ์ต ์์ ์ฑ์ ๊ฐ์ ํ์๋ค.
๊ฐ ์๋๋ผ ๋ก ์์ฑํ ์ด์
TD3๋ deterministic policy ๊ธฐ๋ฐ์ด๊ธฐ ๋๋ฌธ. ๋ stochastic policy์ผ ๋ ์ด๋ค.
โข
Low-level policy () - worker
Input:
Output:
low-level policy๋ ํ์ฌ ์ํ ์ high-level policy๊ฐ ์ ์ํ goal ๋ฅผ ์
๋ ฅ์ผ๋ก ๋ฐ์ action ๋ฅผ ์ ํํ๊ณ , ์ด action์ ํ๊ฒฝ๊ณผ ์ง์ ์ํธ์์ฉํ๋ค. reward ๋ ์ด ํ๋์ ๊ฒฐ๊ณผ๋ก์ goal ๋ฅผ ์ผ๋ง๋ ์ ๋ฐ๋ผ๊ฐ๋์ง๋ฅผ ์ธก์ ํ๋ฉฐ, ๊ทธ ๊ธฐ๋ฐ์ผ๋ก ๊ณ์ฐ๋๋ค.
Actor-Critic ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๋ฉฐ, ์ด๋ critic์ , actor๋ ๋ก TD3 ๊ธฐ๋ฐ ํ์ต์ ์ํํ๋ค.
โข
High-level policy () - manager
์ผ์ ์ฃผ๊ธฐ๋ง๋ค (์: steps๋ง๋ค) goal ์ ์์ฑํ๋ค. ์ฌ๊ธฐ์ goal ์ state space ์์ vector ํน์ target state๋ฅผ ์๋ฏธํ๋ค.
reward๋ ํ๊ฒฝ์์ ๋ฐ๋ ์ค์ reward์ ๋์ ๊ฐ์ ์๋ฏธํ๋ค. ๋จ, worker ๊ฐ goal ๊ฐ ์๋ ์ด์ goal ๊ธฐ์ค์ผ๋ก ํ๋ํ์ ์ ์๋ค. ๊ทธ๋์ goal mismatch๋ก ์ธํ off-policy ๋ฌธ์ ๋ฐ์ํ๋ค.
๋ฐ๋ผ์ goal relabeling์ ํตํด high-level policy๋ off-policy๋ก ํ์ต ๊ฐ๋ฅํ๊ฒ ํ๋ค.
โข
subgoal transition function
Low-level policy ๋ฅผ ์ํ intrinsic reward ๋ goal state ์์ distance ๋ก ๊ณ์ฐ๋๋ค. goal state ๋ฅผ ํ์ฌ stateย ์์์ relative position ์ผ๋ก ๋ค๋ฃจ๊ธฐ ๋๋ฌธ์ state ๊ฐ ๋ฐ๋๋ฉด goal state ๋ ๋ฐ๋ผ ๋ฐ๋๊ฒ ๋๊ณ , ์ด๋ฅผ ์ํด goal transition function ๋ฅผ ์ฌ์ฉํ๋ค:
์ง๊ด์ ์ผ๋ก ๋ณด๋ฉด "goal ๋๋ก ๊ฐ์ผ๋ฉด ์ด ์ ๊ฐ์์ ๊ฒ" ๊ณผ ๊ฐ๋ค.
Off-policy correction in HIRO
โข
(A) Low-level policy correction
low-level policy goal ์ ์กฐ๊ฑดํ๋ policy์ด๋ค. ๋ฐ๋ผ์ ๊ธฐ์กด replay buffer์ ์๋ transition๋ค์ ํ์ตํ ๋, ํ์ฌ ์ ์ฑ
๊ณผ mismatch๋๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค. ์ด๋ฅผ ๋ณด์ํ๊ธฐ ์ํด โgoal-conditioned rewardโ ๋ฅผ ์ฌ์ฉํ๋ค. goal ๋ฐฉํฅ๊ณผ ์ค์ ์ด๋์ด ์ ์ฌํ ์๋ก ๊ฐ์ด ์ปค์ง๋ค (์์ ์ค์ฐจ โ ํฐ reward)
goal-conditioned reward
Worker๋ Manager๊ฐ ์ง์ ํ goal ๋ฅผ ๋ฌ์ฑํ๋ ค๋ ํ์ต์ ํ๋๋ฐ, reward๊ฐ sparseํ ํ๊ฒฝ์์๋ Worker๋ reward๋ฅผ ์ ํ ๋ฐ์ ์ ์๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค. ์ด๋ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด Worker๊ฐ ํ์ฌ state ์ Manager์ goal ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ฅผ ์ค์ผ ์๋ก ๋น๋กํด์ intrinsic reward๋ฅผ ์ค๋ค.
โข
(B) High-level policy correction: goal relabeling
high-level policy๋ ๊ณผ๊ฑฐ low-level action๋ค์ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ณ , ์ด๋ค goal์ ์ฃผ๋ฉด ๊ทธ๋ฐ action๋ค์ด ๋์์์ง๋ฅผ ์ถ์ ํด์ผ ํ๋ค. low-level policy๋ ๋งค step๋ง๋ค updateํ๋๋ฐ, high-level policy์ step๋ง๋ค updateํ๊ธฐ ๋๋ฌธ์ด๋ค. replay buffer์ transition ์ ๋ํด์ ํ์ฌ์ low-level policy๊ฐ ์ค์ ๋ก ์ด ํ๋์ ์์ฑํ์ ๊ฒ์ฒ๋ผ ๋ณด์ด๋๋ก goal์ relabel ํ๋ค.
๊ทธ๋์ past low-level actions์ ์ต๋ํํ ์ ์๋๋ก ์ค์ goal ๋์ relabel๋ goal ๋ฅผ ์ฌ์ฉํด์ ํ์ตํ๋ค. ์ด๊ฒ์ goal relabeling์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค.
goal์ ์ฃผ์์ ๋ ํ์ฌ low-level policy๊ฐ replay buffer์ ์ ์ฅ๋์ด ์๋ ๊ฒ๊ณผ ๊ฐ์ ํ๋์ ํ๋๋ก goal ๋ฅผ relabelingํ์ฌ ์ฐพ์์ค๋ค.
โข
Step 1 : Collect experience
ํ๊ฒฝ์์ ์ํธ์์ฉํ๋ฉฐ ๋ค์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ค. (ํ์ฌ state , high-level policy๊ฐ ์์ฑํ subgoal , low-level policy ๊ฐ ์ํํ action , ํ๊ฒฝ์์ ๋ฐ์ reward ) ์ด๋ค์ replay buffer์ ์ ์ฅ๋๋ค.
โข
Step 2: Low-level policy ํ์ต
low-level policy๋ subgoal์ ๋ชฉํ๋ก action์ ์ํํ๋๋ก ํ์ต๋๋ค. ์ฌ๊ธฐ์ ๋ state ์ ํจ๊ป ์
๋ ฅ๋๊ณ , reward๋ subgoal๊ณผ ์ค์ ์ด๋ ๊ฐ์ ์ฐจ์ด๋ก ์ ์๋๋ค. (L2 distance) off-policy actor-critic (TD3) ๊ตฌ์กฐ๋ก ํ์ตํ๋ค.
โข
Step 3: High-level policy ํ์ต
high-level policy๋ -step๋ง๋ค ํ ๋ฒ ํ์ต๋๊ณ , ์ ์ฒด ๊ตฌ๊ฐ ๋ถํฐ ๊น์ง ๋์ reward๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ตํ๋ค. ์ฌ๊ธฐ์ ์ฌ์ฉ๋๋ goal ๋ goal relabeling ์ ํตํด ์ป์ ๊ฒ์ผ๋ก โ์ด ํ๋๋ค์ด ํ์ฌ low-level policy ๊ธฐ์ค์ผ๋ก ๋์ค๋๋ก ๋ง๋ค ์ ์๋ ๊ฐ์ฅ ์ ์ ํ subgoal์ ๋ฌด์์ธ๊ฐ?โ๋ฅผ ์ญ์ผ๋ก ์ถ์ ํ๋ ๊ณผ์ ์ด๋ค.
โข
Step 4: Repeat
์์ ๊ณผ์ ์ ๋ฐ๋ณตํ๋ค.