๐Legged Robots that Keep on Learning
0. Abstract
Legged robots are physically capable of traversing a wide range of challenging environments but designing controllers that are sufficiently robust to handle this diversity has been a long-standing challenge in robotics. Reinforcement learning presents an appealing approach for automating the controller design process and has been able to produce remarkably robust controllers when trained in a suitable range of environments. However, it is
difficult to predict all likely conditions the robot will encounter
during deployment and enumerate them at training-time. What if instead of training controllers that are robust enough to handle any eventuality,we enable the robot to continually learn in any setting it finds itself in?
This kind of real-world reinforcement learning poses a number of challenges, including efficiency, safety, and autonomy. To address these challenges, we propose a practical robot reinforcement learning system forfine-tuning locomotion policies in the real world.
We demonstrate that a modest amount of real-world training can substantially improve performance during deployment, and this enablesa real A1 quadrupedal robot
to autonomously fine-tune multiple locomotion skills in a range of environments, includingan outdoor lawn and a variety of indoor terrains.
I. Introduction
๊ฐํํ์ต์ด ๋ก๋ด ์ ์ด ๋ถ์ผ์์ ๊ฐ๊ด ๋ฐ๋ ์ด์ ๊ฐ ๋ฌด์์ผ๊น? ๊ธฐ์กด์ ๋ก๋ด ์ ์ด ์๊ณ ๋ฆฌ์ฆ๋ค์ ์ ๋ง ๋ง์ engineering ์ ์ธ ๊ณ ๋ ค์ ๋ณต์กํ ์ํ์ ๋ชจ๋ธ๋ง์ด ํ์ํ๋ค. ๊ทธ๋ฐ๋ฐ ๊ทธ๋ง์ ์์ง๋์ด๊ฐ ๋ฏธ์ฒ ๊ณ ๋ คํ์ง ๋ชปํ ์๋์ ํด์ผ ํ ๋๋ ๋ฐ๋ก ์คํจํ controller ๋์์ธ์ด ๋์ด ๋ฒ๋ฆฌ๊ธฐ ๋๋ฌธ์ ๋ก๋ด ์ ์ด๋ ์ฝ์ง ์์ ๋ฌธ์ ์๋ค. ์ด๋ฐ ๋ฉด์์ ๊ฐํํ์ต์ controller๋ฅผ trial-and-error
๋ก ๋ก๋ด agent๊ฐ ์์์ ์ด๋ป๊ฒ ์๋ํด์ผ ํ ์ง ํ์ตํ๊ธฐ ๋๋ฌธ์ ๊ณตํ์์๊ฒ controller ๋์์ธ์ ๋ํ ๋ถ๋ด์ ์ค์ฌ์ฃผ์๊ณ ์ด๋ฐ ์ ์ ๊ฐํํ์ต์ด ๋ก๋ด ์ ์ด ๋ถ์ผ์์ ์ฃผ๋ชฉ ๋ฐ๋ ์ด์ ์๋ค.
ํ์ง๋ง, ์ํ๊น๊ฒ๋ ๊ฐํํ์ต์ด controller๋ฅผ ๋ง๋๋ ๊ฒ์ ๋ถ๋ด์ ์ค์ฌ์ฃผ์์ง๋ง ๊ฐํํ์ต์ environment ์ค๊ณ์ ๋ํ ๋ถ๋ด์ด์๋ค. ์์์ ์ค๋ช
ํ ๋๋ก ๊ฐํํ์ต์์ trial-and-error๋ก ์์์
ํ์ตํ๋ค๋ ์ ์ด ๋งค๋ ฅ์ ์ด์ง๋ง, ์ด๋ฐ ํ์ต์ ์กฐ๊ฑด์๋ ์ข์ environment๊ฐ ํ์ํ๋ค. ๊ฐํํ์ต ๋ถ์ผ์์ ์์ฃผ ์ธ๊ธ๋๋ ์ข์ agent์ ๋ฐฐ๊ฒฝ์๋ ์ข์ environment๊ฐ ์๋ค.
๋ ๋ง์ฒ๋ผ agent๊ฐ environment์์ ๊ฒฝํํ๋ฉด์ ์ข์ ํ์ต์ ํ์ง ๋ชปํ๋ฉด ์ข์ ๊ฒฐ๊ณผ๋ฅผ ๊ธฐ๋ํ ์ ์๋ค. ๋ฐ๋ผ์ ๋ง์น controller ๋์์ธ๊ณผ environment ๋์์ธ์ trade-off ๊ด๊ณ๋ก ์์ง๋์ด์๊ฒ ๊ณผ์ ๋ฅผ ๋จ๊ธฐ๊ฒ ๋๋ค.
agent๊ฐ ํ์ตํ๋ ๋์์ ๊ฒฝํํ๊ฒ ๋๋ environment์ ํ
์คํธ ์(์ค์ฌ์ฉ ์) ๊ฒฝํํ๊ฒ ๋๋ environment์ ์ฐจ์ด๊ฐ ํฌ๋ฉด ํด์๋ก agent๋ ์ ๋๋ก ์๋ํ ์ ์๋ค. ํ์ต๋์ง ์์ ๊ฒฝํ๋ค์ด๊ธฐ ๋๋ฌธ์ ํ์ต๋ agent์ policy๊ฐ ์ข์ action์ ํ ์ ์๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ ๊ฒฝํํด๋ณด์ง ๋ชปํ, ์ฆ ํ์ตํ์ง ๋ชปํ ๊ฒฝ์ฐ์ ๋ํด์๋ ์ ๋๋ก agent๊ฐ ๋์ํ๊ธฐ ์ํด zero-shot generalization
(ํ๋ฒ๋ ๋ณด์ง ๋ชปํ-zero shot ๊ฒฝํ ๋ฐ์ดํฐ์ ๋ํด ์ ์ผ๋ฐํ-generalization ํ ์ ์๋ ๋ฅ๋ ฅ) ์ด ํ์ํ์ง๋ง, ๋ณธ ๋
ผ๋ฌธ์์๋ ์๋ฒฝํ zero-shot generalization
์ ์ผ์ด๋ ์ ์๋ค๋ ๊ฐ์ ํ์ ๋ฌธ์ ๋ฅผ ์ด๋ป๊ฒ ํ๊ฒ์ธ๊ฐ ๊ณ ๋ฏผํ๋ค.
๊ทธ๋ ๊ฒ ํด์ ์ ์๋ ๋ฐฉ๋ฒ์ ํ
์คํธ ํ๊ฒฝ์์ ๋น ๋ฅด๊ฒ fine-tuning ํด์ agent๊ฐ ์ ๋์ํ๊ฒ ๋ง๋ค์
์๊ณ , ์ด ๋ฐฉ๋ฒ์ด ๊ฐ๋ฅํ๋ค๋ฉด ๋ก๋ด์ ์ค์ ๋ก ๋์ํ๋ฉด์ ์ธ์ ๋ ์ง ๋ง์ฃผ์น ์ ์๋ ์๋ก์ด ํ๊ฒฝ์ ์ ์ํด์(fine-tuned) ์ ๋์ํ ์ ์์ ๊ฒ์ด๋ค.
๐ฏ ๋ณธ ๋ ผ๋ฌธ์ ๋ชฉํ๋ ์ค์ ํ๊ฒฝ(real-world)์์ ๋ก๋ด์ locomotion policy๋ค์ด fine-tuningํ ์ ์๋ ์์ ํ ์์คํ ์ ๋์์ธ ํ๋ ๊ฒ์ด๋ค.
System Process
- ์์ ์ฌ์ง์ ๋ณด์ด๋ ๊ณต์๊ณผ ๊ฐ์
์๋ก์ด ํ๊ฒฝ
์์ ๋จผ์ ๋ก๋ด agent๊ฐ ์ฒซ๋ฒ์งธ ์๋๋ก locomotion task๋ฅผ ์งํํ๋ค. - ๋ง์ฝ์ ๋ ์ด ๊ณ ๋ฅด์ง ๋ชปํด์ agent์ ํ์ต๋ policy๋ฅผ ํ์ฉํ ์ ์๋ ์ํฉ์ด ๋์ด์ ๋์ด์ง๊ฒ ๋๋ ์ํฉ์ด ๋ ์ ๋ ์๋ค.
- ์ด๋
reset controller
๋ฅผ ์ด์ฉํด์ ๋น ๋ฅด๊ฒ ๋ค์ ์ผ์ด๋๋ค. - ์ค์ task์์ ์ข ๋ ๋ช ๋ฒ ์๋๋ฅผ ํ๋ฉด์ 1~3์ ๊ณผ์ ์ ๋ช ๋ฒ ๋ฐ๋ณตํ๊ฒ ๋๊ณ ์ด ๊ณผ์ ์์
policy๊ฐ ์ ๋ฐ์ดํธ
๋๊ฒ ๋๋ค. - ์
๋ฐ์ดํธ๊ฐ ๋๋ฉด์ policy๋
์๋ก์ด test ํ๊ฒฝ์์ ์ ๋๋ก ์๋
ํ ์ ์๊ฒ ๋๋ค.
How
- ๊ฐํํ์ต์ reward ๊ฐ robot์
on-board ์ผ์๋ก ์ธก์ ๋๋ ๊ฐ๋ค๋ก๋ง
๋์์ธ ๋์ด์ผ ์ค์ Real-world์์ ์๋ํ๋ฉด์ fine tuning์ ํ ์ ์๋ค. - Agileํ behavior๋ฅผ ํ์ตํ๊ธฐ ์ํด์
Motion imitation
๊ธฐ๋ฒ์ ํ์ฉํ๋ค. - ๋ก๋ด์ ๋์ด์ง๊ณ ๋์ ๋น ๋ฅด๊ฒ ์ ์์์ธ๋ก ํ๋ณตํ ์ ์๋๋ก
Recovery policy
๋ฅผ ํ์ตํ๋ค. - ๊ฐํํ์ต ์๊ณ ๋ฆฌ์ฆ๋ค ์ค์์
REDQ(Randomized Ensembled Double Q-Learning)
๋ผ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋๋ฐ, ์ด ์๊ณ ๋ฆฌ์ฆ์ ์ฌ๋ฌ๊ฐ Q-network๋ค์ ์์๋ธ์ ํตํด randomization์ ํด์ Q-learning ๊ณ์ด์ ์๊ณ ๋ฆฌ์ฆ๋ค์ sample-efficiency์ ์์ ์ฑ์ ํฅ์์ํจ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
Main Contribution
๋ณธ ๋ ผ๋ฌธ์ ์ฃผ์ contribution์ ๋ค์๊ณผ ๊ฐ๋ค.
- 4์กฑ ๋ณดํ ๋ก๋ด์ agileํ locomotion skill์ real-world์์ ํ์ตํ๊ธฐ ์ํ
fine-tuning ์๋ํ ์์คํ
์ ์ ์ํ์๋ค. - ์ฒ์์ผ๋ก
์๋ํ reset
๊ณผon-board ์ํ ์ถ์
์ ํตํด real-world์์ fine-tuning์ด ๋ ์ ์์์ผ๋ก ๋ณด์๋ค. A1
๋ก๋ด์ ๊ฐ์ง๊ณ dynamic skill๋ค์ ํ์ตํด์ ์ธ๋ถ ์๋์์ ์์ผ๋ก, ๋ค๋ก pacing์ ํ๊ณ 3๊ฐ์ง ๋ค๋ฅธ ์งํ ํน์ง์ ๊ฐ์ง ํ๊ฒฝ์์ side-stepping์ ํ ์ ์์๋ค.
II. Fine-tuning Locomotion in the Real World
๊ฐํํ์ต ์๊ณ ๋ฆฌ์ฆ์ผ๋ก multi-tasking
์ ํ ์ ์๋๋ก ํ์ต์์ผฐ๋ค.
REDQ
์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ด์ฉํด์ sample efficiency๋ฅผ ๋์ผ ์ ์์๋ค.- ํ์ต๋
reset policy
๋ฅผ ์ด์ฉํด์ ์ฌ๋ฌ๊ฐ์ episode๋ค์ ์ด์ด์(stitch together) ํ์ต์์ผฐ๋ค.
Overview
์๋ ์ฌ์ง์ ์ ์ฒด ์์คํ ์ ๊ฐ๋ต๋์์ ๋ณผ ์ ์๋ฏ์ด ๊ฐ๊ฐ์ policy๋ ํ๋์ desired skill์ ํ์ตํ๊ฒ ๋๋ค. ์ฆ ํ๋์ policy๋ forward๋ฅผ, ๋ค๋ฅธ policy๋ backward๋ฅผ, ๋ง์ง๋ง ๋ค๋ฅธ policy๋ reset์ ๋ด๋นํ์ฌ ํ์ตํ๊ฒ ๋๋ค. ์ด๋ ๊ฒ ๋ค์ํ task๋ฅผ ์ํํ ์ ์๋๋ก ๋ง๋ ํ๋ ์์ํฌ ์ด๊ธฐ ๋๋ฌธ์ Multitask framework์ธ ๊ฒ์ด๋ค.
Pseudo Algorithm
์์คํ
๊ฐ๋ต๋์์ ๋ดค๋ฏ์ด ๋
ผ๋ฌธ์ ๋์์๋ ์์คํ
์ ์ฒด๋ฅผ ๋ณด์ฌ์ฃผ๋ Algorithm2
์๊ณ ๋ฆฌ์ฆ์ ํฌ๊ฒ 2๊ฐ์ ๊ณผ์ ์ผ๋ก ์งํ๋๋ค.
- Agent์ policy๋ ์๋ฎฌ๋ ์ด์
์์ pretrained ํ๋ค. (Algorithm 2
line 2~7
)- ๊ฐ ์ํผ์๋๊ฐ ๋๋ ๋๋ง๋ค ํ์ต๋ recovery policy๊ฐ ๋ก๋ด์ ๋ค์ rollout์ ํ ์ ์๋๋ก ์ค๋น์์ผ์ค๋ค.
- ๊ฐ skill์ ์ํ policy๋ค์ ๋ ๋ฆฝ์ ์ผ๋ก ํ์ต๋๊ณ recovery policy๋ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ ๋ฆฝ์ ์ผ๋ก ํ์ต๋๋ค.
- Fine-tuning์ ์ค์ ๋ฌผ๋ฆฌ์ ์ธ ํ๊ฒฝ์์ ์งํํ๋ฉด์ training process๋ฅผ ๊ณ์ ์ด์ด๋๊ฐ ์ ์๋ค. (Algorithm 2
line 8~14
)- ์๋ฎฌ๋ ์ด์
๊ณผ ์ค์ ํ๊ฒฝ์ ์ฐจ์ด๋ฅผ ๊ณ ๋ คํ์ฌ ๊ฐ policy๋ค์ replay buffer๋ ์ด๊ธฐํ ์์ผ์ค๋ค.(Algorithm 2
line 12
)
- ์๋ฎฌ๋ ์ด์
๊ณผ ์ค์ ํ๊ฒฝ์ ์ฐจ์ด๋ฅผ ๊ณ ๋ คํ์ฌ ๊ฐ policy๋ค์ replay buffer๋ ์ด๊ธฐํ ์์ผ์ค๋ค.(Algorithm 2
Motion Imitation & Off-policy RL
Motion Imitation
Motion Imiation
๋ฐฉ๋ฒ์ ์ด์ฉํ์ฌ reference motion clip๋ค์ skill๋ค์ ๋ชจ๋ฐฉ ํ์ตํ๋๋ก ํ๋๋ฐ ์ด๋ Learning Agile Robotic Locomotion Skills by Imitating Animals
๋ผ๋ ๋
ผ๋ฌธ์์ ์ ์ํ ๋ฐฉ๋ฒ์ ๋ฐ๋ผํ๋ค. (Algorithm 1 line1~4
)
Reference motion M์ด ์ฃผ์ด์ง๋ฉด agent์์ผ๋ จ์ pose๋ค๊ณผ ๋น๊ตํ์ฌ section III-B
์์ ์๊ฐ๋ reward function์ ๊ธฐ๋ฐ์ผ๋ก ํ์ตํ๋ค. - ์ด ๋ฐฉ๋ฒ์ ํตํด reference motion data๋ง ๋ฐ๊ฟ์ฃผ๋ฉด ๋ฐ๋ก ๋ค๋ฅธ ์ฌ๋ฌ skill๋ค์ ๋ฐฐ์ธ ์ ์๋ค. - recovery policy๋ฅผ ํ์ตํ๊ธฐ ์ํด์ standing pose๋ฅผ ๋ชจ๋ฐฉํ๋๋ก ํ ์ ์๋ค.(III-C
์ฐธ๊ณ )
Off-policy RL
off-policy ์๊ณ ๋ฆฌ์ฆ์ธ REDQ algorithm ์ฌ์ฉํ๋ค.(Algorithm 1 line5~9
) - SAC ์๊ณ ๋ฆฌ์ฆ์ ๋ ๋ฐ์ ์ํจ ์๊ณ ๋ฆฌ์ฆ - time step์ ๋ํ gradient step๋น์จ์ ์ฆ๊ฐ์์ผ์ ๊ฐํํ์ต ์๊ณ ๋ฆฌ์ฆ์sample efficiency๋ฅผ ๋์๋ค. - ๋๋ฌด ๋ง์ gradient step์ ํ ๊ฒฝ์ฐ์ ์ผ์ด๋ ์ ์๋ overestimation issue๋ฅผ ์์๋ธ ๊ธฐ๋ฒ์ ์ด์ฉํด์ ์ํํ ์ ์์๋ค.
III. System Design
Setting - A1 robot from Unitree - PyBullet simulator - motion imitation skills์ ์ป๊ธฐ ์ํด์ - ๊ณต๊ฐ๋ ๋ฐ์ดํฐ ์ ๋ค ์ค์ dog pacing์ mocap์ ๋ นํํ๊ณ retargetting ํ์๋ค. - ๋ก๋ด์ ์ญ๊ธฐ๊ตฌํ์ ์ด์ฉํด์ A1 ๋ก๋ด์ side-step motion์ ์ ๋๋ฉ์ด์ ์ผ๋ก ๋ง๋ค์ด์ ์ฌ์ฉํ๋ค. - REDQ ์๊ณ ๋ฆฌ์ฆ - Adam optimizer - learning rate of 10โ4 - batch size of 256 transitions - TensorFlow
A. State & Action Spaces
State space
- State๋ ์ฐ์์ ์ธ 3 timesteps์์ ์ป์ ์๋ ์ ๋ณด๋ค๋ก ์ ์ํ๋ค.
- Root orientation (read from the IMU)
- Joint angles
- Previous actions
- Policy๋ ์์์ ๋งํ Proprioceptive input ๋ฟ๋ง ์๋๋ผ a goal g_t์ ๋ํ ์ ๋ณด๋ input์ผ๋ก ๋ฐ๊ฒ ๋๋ค.
- g_t๋ future timesteps์์์ reference motion์์ ๊ณ์ฐ๋ Target pose (root position, root rotation, joint angles)์ ์ ๋ณด๋ฅผ ํฌํจํ๋ค.
- 4 future target poses ๋ ํ์ฌ timestep์์ ์ฝ 1์ด ์ ๋ ์ดํ์ pose๋ค์ด๋ค.
- State๋ ์ฐ์์ ์ธ 3 timesteps์์ ์ป์ ์๋ ์ ๋ณด๋ค๋ก ์ ์ํ๋ค.
Action space
- Action์ 12 joints๋ค์ ๋ํ PD position targets ์ด๋ค.
- 33Hz์ ์ฃผํ์๋ก command๊ฐ ์ ์ฉ๋๋ค.
- ์์ฐ์ค๋ฌ์ด ์์ง์์ ์ํด PD targets์ low-pass filter๋ฅผ ๋ก๋ด์ ์ ์ฉํ๊ธฐ ์ ์ ํต๊ณผ์์ผ์ค๋ค.
B. Reward Function
\begin{gathered}r_{t}=w^{\mathrm{p}} r_{t}^{\mathrm{p}}+w^{\mathrm{v}} r_{t}^{\mathrm{v}}+w^{\mathrm{e}} r_{t}^{\mathrm{e}}+w^{\mathrm{rp}} r_{t}^{\mathrm{rp}}+w^{\mathrm{rv}} r_{t}^{\mathrm{rv}} \\w^{\mathrm{p}}=0.5, w^{\mathrm{v}}=0.05, w^{\mathrm{e}}=0.2, w^{\mathrm{rp}}=0.15, w^{\mathrm{rv}}=0.1\end{gathered}
r_{t}^{\mathrm{p}} : ๋ก๋ด์ joint rotation ๊ฐ๋ค์ reference motion์ joint rotation๊ณผ ๋ง์ถ๋๋ก ํ๋ reward term
r_{t}^{\mathrm{p}}=\exp \left[-5 \sum_{j}\left\|\hat{q}_{t}^{j}-q_{t}^{j}\right\|^{2}\right]
- \hat{q}_{t}^{j} : ์์ t์ reference motion์ j๋ฒ์งธ joint์ local rotation
- q_{t}^{j} : ๋ก๋ด์ j๋ฒ์งธ joint local rotation
r_{t}^{\mathrm{v}} : joint velocities
r_{t}^{\mathrm{e}} : end-effector positions
๋ก๋ด์ด reference root motion์ ์ tracking ํ๊ฒ ํ๊ธฐ ์ํ reward term
- r_{t}^{\mathrm{rp}} : root pose reward
- r_{t}^{\mathrm{rv}} : root velocity reward
์ด์ ๋ถํฐ ๊ฐ์กฐํด์๋ฏ์ด, ์ค์ ํ๊ฒฝ์์ fine-tuning
๊ณผ์ ์ ์งํํ๊ธฐ ์ํด์ on-board ์ผ์๋ค์ ๊ฐ์ ์ด์ฉํด์ reward function์ ๋์์ธํ์๊ณ ์ค์ ๋ฌผ๋ฆฌ์ ์ธ ํ๊ฒฝ์์ ๊ตฌ๋ํ ๋ ์ด๋ฅผ ์ํ ์ถ์ ๊ธฐ๋ฒ์ ์ด์ฉํด์ reward๋ฅผ ๊ตฌํ๊ฒ ๋๋ค. ๋ฐ๋ผ์ ์๋์ ์ํ ์ถ์ ๋ฐฉ๋ฒ(State Estimation)์ด fine-tuning์ ์ฑ๋ฅ์ ๊ฒฐ์ ํ๋ ์ค์ํ ๋ถ๋ถ์ด ๋๋ค.
- Real-world์์ ๋ก๋ด์ linear root velocity๋ฅผ ์ ์ถ์ ํ๊ธฐ ์ํด์ Kalman filter๋ฅผ ์ฌ์ฉํ๋ค.
- ์นผ๋ง ํํฐ๋ IMU ์ผ์์์ acceleration๊ณผ orientation ๊ฐ๋ค์ ์ฝ์ด์ foot contact sensors๋ก ๊ฐ๋ค์ ๋ณด์ ํ๋ค.
- ์ฒ์์ ๋ฐ ๋์ ์๋๋ฅผ 0์ผ๋ก ์๊ฐํด์ ๊ฐ ๋ค๋ฆฌ์ joint velocities๋ฅผ ๊ณ ๋ คํ์ฌ ๋ชธ์ฒด์ ์๋๋ฅผ ๊ณ์ฐํ๊ณ IMU์ผ๋ก๋ถํฐ ์ถ์ ํ๋ ๊ฐ์ ๋ณด์ ํ๋ค.
- ์ด๋ ๊ฒ ๊ณ์ฐ๋ linear velocity๋ฅผ ๋ก๋ด์ position ์ถ์ ๊ฐ์ ํตํฉ์ํจ๋ค.
์์ ๊ทธ๋ํ๋ค์ ๋ณผ ์ ์๋ฏ์ด(์๋์์ ์ ๋ฐฉํฅ์ผ๋ก),
- angular velocity์ orientation ์ผ์ ๊ฐ๋ค์ ๋งค์ฐ ์ ํํ๋ค.
- linear velocity๋ ๋งค์ฐ ์ ํํ์ง ์์์ง๋ง ํ์ฉ๊ฐ๋ฅํ๋ค.(reasonable)
- position drifts๋ ์๋นํ ๋ฒ์ด๋๋ ๋ถ๋ถ์ด ์์์ง๋ง, ๊ฐ ์ํผ์๋์์ reward function์ ๊ณ์ฐํ ์ ๋๋ก์ ์ ํฉํ ๊ฐ๋ค์ ๋ณด์ฌ์ฃผ์๋ค.
C. Reset Controller
- reset policy๋ฅผ ์๋ฎฌ๋ ์ด์ ์์ ํ์ตํ๊ธฐ ์ํด ๋ค์ํ initial states์์ ์์ํ๋๋ก ํ๋ค.
โ ๋ก๋ด์ randomํ height & orientation์์ ๋จ์ด๋จ๋ ค์ ์๋ ์ฌ์ง์์ ๋ณผ ์ ์๋ฏ์ด ๋ค์ํ initial states๋ฅผ ์ค์
Motion imitation ๋ชฉ์ ํจ์๋ฅผ ์์ ํด์ single, streamlined reset policy๋ฅผ ํ์ต์์ผฐ๋ค.
Reference motion์ ๊ฐ์ง๊ณ ๋ก๋ด์ด ์ ํํ ์ด๋ป๊ฒ ์ผ์ด๋์ผ ํ ์ง๋ฅผ ์๋ ค์ฃผ๋ ๊ฒ์ด ์๋๋ผ, ์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก reset policy๋ฅผ ํ์ต์์ผฐ๋ค.
- policy๊ฐ rolling right side up์ ์ํ reward๋ง์ ๊ฐ์ง๊ณ ํ์ตํ๋ค.
- ๋ง์ฝ ๋ก๋ด์ด uprightํ๋๋ฐ ์ฑ๊ณตํ๋ฉด ์ดํ์ motion imitation reward๋ฅผ ์ถ๊ฐ์์ผ์ ํ์ต๋๋ค.
- ์ด๋์ reference motion์ standing pose๊ฐ ๋๊ณ ๋ก๋ด์ด ๋๋ฐ๋ก ์ค ์ ์๋๋ก ํ์ต์ํจ๋ค.
- ์ด๋ฐ ๋ฐฉ์์ผ๋ก ํ์ต๋ reset policy๋ ๋ค์ํ test ์งํ์์ fine-tuning ์์ด๋ ์ ๋์ํ๋ค.(tranfered well)
IV. Experiments
๐ก ์คํ ๊ฒฐ๊ณผ์์ ์ฃผ๋ชฉํด์ ๋ด์ผํ ์ง๋ฌธ 3๊ฐ์ง!
- ๋ณธ ๋
ผ๋ฌธ์์ ์ ์ํ finetuning-based method๊ฐ ์ด์ ์ ๋ฐฉ๋ฒ๋ค์ ๋นํด
์๋ฎฌ๋ ์ด์ trianing์ ์ถฉ๋ถํ ํ์ฉ
ํ๊ณ์ค์ ๋ฌผ๋ฆฌ ํ๊ฒฝ์์ ์ ์
ํ ์ ์์๋๊ฐ? - ๋ณธ ๋
ผ๋ฌธ์์ ์ ์ํ ์์คํ
๋์์ธ ์์๋ค์ด
feasibility of real-world training
์ ์ด๋ค ์ํฅ์ ์ฃผ์๋๊ฐ? ์ผ๋ง๋ ๋ค์ํ ์ค์ ๋ฌผ๋ฆฌ์ ์ธ ํ๊ฒฝ๋ค
์์ autonomous, online fine-tuning ๋ฐฉ๋ฒ์ด ๋ก๋ด์ skill์ ํฅ์์์ผฐ๋๊ฐ?
A. Simulation Experiments
- agent์ policy๋ฅผ ๋จผ์ ํน์ ์๋ฎฌ๋ ์ด์ ์ ํ ์์ ํ์ต์ํจ ํ์ ํ์ต๋ ์๋ฎฌ๋ ์ด์ ๊ณผ ๋ ๋ค๋ฅธ ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ ์ ํ ์ โdeployedโํ ํ ๊ฒฐ๊ณผ๋ฅผ ์ดํด๋ณด์๋ค.
- Learned forward pacing gait๊ฐ ํ ์คํธ ํ๊ฒฝ๋ค์์ ์ผ๋ง๋ ๋นจ๋ฆฌ ์ ์ฉ๋๋์ง ํ์ธํด๋ณด์๋ค.
- Standard dynamics randomization (mass, inertia, motor strength, friction, latency ๋ณ๋)์ผ๋ก Pre-train์ flat ground์์ ์งํํ๋ค.
The test terrains
test ํ๊ฒฝ๋ค๋ก๋ ์ด 3๊ฐ์ง๋ก ์คํํ์์ผ๋ฉฐ pre-training ๊ณผ์ ์ ์๋ฎฌ๋ ์ด์ ์ ํ ๊ณผ ์ ์ฌํ test ํ๊ฒฝ [1]๊ณผ pre-training ๊ณผ์ ์ ์๋ฎฌ๋ ์ด์ ์ ํ ๊ณผ ๋ค์ ๋ค๋ฅธ test ํ๊ฒฝ [2], [3]์์ ์งํ๋๋ค.
- a flat ground
- randomized heightfield : ๋๋คํ๊ฒ ์งํ์ ๋์ด๋ฅผ ์ค์ ํ ์ธํ๋ถํํ ์งํ
- a low friction surface : ๋ฎ์ ๋ง์ฐฐ๊ณ์๋ฅผ ๊ฐ์ง๋ ์งํ, ๋นํ๊ธธ๊ณผ ๊ฐ์ ๋ฏธ๋๋ฌ์ด ์งํ(Training ๊ณผ์ ์์ ๊ฒฝํํ ๋ง์ฐฐ๊ณ์ ๋ถํฌ์ ํ์ฐธ ๋๋จ์ด์ง ๋ง์ฐฐ๊ณ์๋ฅผ ๊ฐ์ง๊ณ ์์)
๋น๊ต๊ตฐ
latent space
: ํธ์จ์ ์ธ ๋ค์ํ dynamics parameters์ ๋ํ ํ์ต์ ํ๊ธฐ ์ํด latent space์ ํํ๋ behaviors์ ํ์ตRMA
: dynamics randomizationํ ๋ชจ๋ธ. ์์์ ์ธ๊ธํAdaptation Module
์ ๊ฐ์ง๊ณ ํ์ตVanilla SAC
: Soft Actor-Critic ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ํ์ตOurs(REDQ)
: 10๊ฐ์ Q-functions์ ๊ฐ์ง๊ณ randomly sample 2๋ก ํ์ต
์คํ ๊ฒฐ๊ณผ๋ฅผ ์ดํด๋ณด๋ฉด, RMA
๋ training ํ๊ฒฝ์์๋ง ๋์ ์ฑ๋ฅ์ ๋ณด์ฌ์ฃผ์ด Adaptation Module์ ํ๊ณ์ ์ ๋ช
ํํ ๋ณด์ฌ์ฃผ์๋ค. SAC
์ ๋นํด์ REDQ(Ours)
๊ฐ sample efficiency๊ฐ ์ข์ ๋ฟ๋ง ์๋๋ผ ์๋ ดํ๋ Return ๊ฐ๋ ๋์๋ค.
B. Real-World Experiments
์๋ฎฌ๋ ์ด์ ์์ ํ์ต๋ Agent๋ฅผ 4๊ฐ์ real-world ํ๊ฒฝ(Outdoor 1๊ฐ, Indoor 3๊ฐ)์์ test ํ๋ค. ๋ชจ๋ (real-world) test ์งํ ์คํ์ ์๋ฎฌ๋ ์ด์ ์ flat ground์์ pre-training๋ agent๋ก ์คํํ ๊ฒ์ด์์ผ๋ฉฐ, ์ฒ์์ buffer๋ฅผ 5000 samples๋ก ์ด๊ธฐํ ํด์ฃผ๊ณ ์์ํ ๋ค์ test real world ํ๊ฒฝ์์ policy๋ฅผ fine-tuning ํด์ฃผ์๋ค.
Outdoor
grassy lawn
:slippery surface๋ฅผ ๊ฐ์ง๊ณ ์์ด์ ๋ฐ์ด ์๋์์ ๋ฏธ๋๋ฌ์ง๊ฑฐ๋ ํ์ ๋น ์ง ์ ์๋ค.
์ ํน์ ๋ค๋ก ์์ง์ด๋ pacing gait๋ฅผ fine-tuning ํ๋๋ก ํ๋ค.(pacing gait: ์ข๋ ์ฐ์ 2๊ฐ์ ๋ค๋ฆฌ๊ฐ ํ๋ฒ์ ์์ง์ด๋ ๊ฑธ์์)
Pre-trained forward pacing policy๋ ๋งค์ฐ ์กฐ๊ธ๋ง ์์ผ๋ก ๊ฐ ์ ์์๊ณ , pre-trained backward pacing policy๋ ์ ๋์ด์ง๋ ๊ฒฝํฅ์ด ์์๋ค.
์๋ํ ์ง ์ฝ 2์๊ฐ ๋ง์, ๋ก๋ด์ (์์ฃผ ์กฐ๊ธ์ ๋์ด์ง์ ์์์ง๋ง) ์ง์์ ์ด๊ณ ์์ ์ ์ผ๋ก ์ ํน์ ๋ค๋ก pacing gait๋ฅผ ํ ์ ์์๋ค.
Indoor
Carpeted room
: ๋์ ๋ง์ฐฐ๊ณ์๋ฅผ ๊ฐ์ง๋ ์งํ์ผ๋ก (์นดํซ์ด ํน์ ํ๋ฏ๋ก) ๋ก๋ด์ ๊ณ ๋ฌด๋ก ๋ง๊ฐ๋์ด ์๋ ๋ฐ์ด ์๋ฎฌ๋ ์ด์ ์์ ํ์ต๋ ๊ฒ๊ณผ ๋ค๋ฅด๊ฒ ์์ ์ ์ด์ง ์์ ์ปจํ์ ํ๊ฒ ๋ ์ ์๋ค.
Doormat with crevices
: ๋งคํธ ํ๋ฉด์ ๋ฐ์ด ๋น ์ง ์๋ ์๋ ํ๊ฒฝ์ด๋ค.
Memory foam
: 4cm ์ ๋์ ๋๊ป์ ๋ฉ๋ชจ๋ฆฌํผ์ผ๋ก ๋ฐ์ด ๋งคํธ๋ฆฌ์ค์ ๋น ์ง๊ณ ํํํ๊ณ ๋ฑ๋ฑํ ๋ฐ๋ฅ๊ณผ ๋น๊ตํ์ ๋ ์ด ํ๊ฒฝ์์๋ gait(๊ฑธ์์)๊ฐ ์๋นํ ๋ณํ๊ฐ ๋ง์ด ์ผ์ด๋ ์ ์๋ค.
Indoors
์์๋, pre-trained side stepping policy๊ฐ ์์ง์ผ ๋ ๋งค์ฐ ๋ถ์์ ํ๊ณ motion์ ๋๋ด๊ธฐ ์ ์ ๋์ด์ก๋ค.๊ทธ๋ฌ๋ ๊ฐ ์งํ ์ ํ ์์ 2.5 ์๊ฐ ์ด๋ด๋ก ๋ก๋ด์ด ๋นํ๊ฑฐ๋ฆผ ์์ด skill์ ์ํํ ์ ์์๋ค.
C. Semi-autonomous training
- ์ ๋ฐ์ ์ธ ๋ชจ๋ ์คํ๋ค์์, the recovery policy๋ 100% ์ฑ๊ณต์ ์ด์๋ค.
- ๋ณธ ๋
ผ๋ฌธ์์ ์ ์๋ ๋ฐฉ๋ฒ์ผ๋ก ํ์ต๋ reset controller์ Unitree์์ ์ ๊ณตํ built-in rollover controller๋ฅผ ๋น๊ตํด๋ณด์๋ค.
- On hard surfaces : ๋ ๊ฐ์ง controllers ๋ชจ๋ ํจ๊ณผ์ ์ผ๋ก ์ ์๋ํ์ง๋ง built-in ์ปจํธ๋กค๋ฌ๋ learned policy์ ๋นํด ์๋นํ ๋๋ ธ๋ค.
- On the memory foam : built-in ์ปจํธ๋กค๋ฌ๋ ๋ ์ฑ๋ฅ์ด ์ข์ง ๋ชปํ๋ค.
V. Conclusion
- grass, carpets, doormats and memory foam๊ณผ ๊ฐ์ ๋ค์ํ real-world settings์์ finetune locomotion policies์ ํ์ตํ ์ ์๋ ์์คํ ์ ์ ์ํ์๋ค.
- autonomous data collection๊ณผ data-efficient model-free RL์ ๊ฒฐํฉ์ ๋ณด์ฌ์ฃผ์๋ค.
- ๋ก๋ด์ ๋์ด์ง์์ automated recoveries๋ฅผ ์ํํ ์ ์๋๋ก, ๋ก๋ด์ on-board sensors๋ค์ ๊ฐ์ง๊ณ state estimation์ ํ์ผ๋ฉฐ, ์ด ์ ๋ณด๋ค์ ๊ธฐ๋ฐ์ผ๋ก ํจ๊ณผ์ ์ธ reward calculation์ ์ ์ํ์๋ค.
- ๋ค์ํ locomotion skill์ ๋ํ data-efficient fine-tuning ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ฃผ์๋ค.
- ๋ณต์กํ๊ณ ๋ค์ํ๋ฉฐ ๋์์์ด ๋ณํํ๋ real-world environments์ ๋์ํ ์ ์๋
a lifelong learning system for legged robots
๋ฅผ future work๋ก ๋ณด๊ณ ์๋ค.
Review
๋ ผ๋ฌธ ๋ฆฌ๋ทฐํ์ ์ฃผ๊ด์ ์ธ ์ฅ๋จ์ ์ ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
- Pros ๐
- ๋ก๋ด operation์ ๋ช ํํ ํ๊ณ์ , ๊ฒฐ๊ตญ ๋ก๋ด์ด ๋์ํด์ผ ํ๋ ํ๊ฒฝ์ด ๊ณ์ ๋ณํํ ์ ๋ฐ์ ์๋ค๋ ๋ฌธ์ ์ ์ธ์์ด ์ข์ ๊ฒ ๊ฐ์
- ์ค์ ์ฐ์ ์์๋ ํจ์จ์ ์ผ ๊ฒ ๊ฐ์ ๋ฐฉ๋ฒ์ด๋ผ๊ณ ์๊ฐ์ด ๋ค์์
- rest policy์ ์ฑ๊ณต๋ฅ ์ด ๋๋จํ์
- Cons ๐
- Out door ์คํ์์๋ ์ฌ๋ฌ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ๋น๊ตํด๋ณด์ง ์์์
- ์๊ณ ๋ฆฌ์ฆ์ ๋์ผํ๊ฒ ํ๊ณ 3๊ฐ์ policy๋ฅผ ๋ฐ๋ก ๋์ง ์๊ณ 1๊ฐ์ policy๋ก ๋ง๋ค์์ ๋๋ ๋น๊ต๊ตฐ์ผ๋ก ๋น๊ตํด์ ์คํ๊ฒฐ๊ณผ๊ฐ ์์์ผ๋ฉด ๋ ์ข์์ ๊ฒ ๊ฐ์