여타 머신러닝과 마찬가지로 강화학습 역시 내부 또는 외부 요인에 따라 원하는 과정이 수행되지 않거나 결과가 나오지 않을 수도 있다. 예를 들면 자율 주행 자동차가 주행하는데 카메라 또는 라이더의 센서 오류로 실제 input과는 다른 input을 받아들여 원치 않는 행동을 야기할 수 있고, 이는 사고로 이어질 수 있다. 또는 딥러닝을 사용하는 추세에 따라 모델 자체의 오류로 인하여 원치 않는 행동을 하거나 잘못된 state로 이어질 수도 있다.
이와 같이 input disturbances 또는 modeling errors 등에 의하여 잘못된 상황이 이어질 것을 우려하여 등장한 것이 'Robust Reinforcement Learning(Robust RL)'이며, 오늘 리뷰할 논문은 해당 개념을 처음 제시한 논문으로 제목부터 'Robust Reinforcement Learning'이 되겠다.
이 논문은 $ H_{\infty} $ control theory에 기반하여, differential game을 고안해 상황을 만들었으며 가장 좋지 못한 상황에서도 agent가 최대한 잘 행동할 수 있는 것을 목표로 삼았다. 이제 차근차근 어떻게 진행되는지 살펴보도록 하자.
1. $ H_{\infty} $ Control
가장 먼저 언급된 $ H_{\infty} $ control에 대해 잠깐 살펴보도록 하자. $ H_{\infty} $ control은 위 그림 (a)와 같은 시스템에 대해 다루는 것이라고 요약할 수 있겠는데, 각각 G는 plant, K는 controller, u는 control input, y는 controller에 대한 measurement, w는 'unknown disturbance', z는 'error output'으로 두고 있다. 구조 자체는 기본적인 Control Theory에서 다루는 closed loop의 형태를 가지고 있으며 controller K의 목적은 시스템 자체를 G의 구조에 기반하여 최대한 안정적으로 만드는 것이 목적이다. 즉, z를 최대한 작게 만드는게 목적이라고 할 수도 있겠다. 하지만 보통 우리는 G는 modeling하여 사용하는데, 만약 model과 실제 사이에 큰 차이가 발생하면 위의 loop 자체는 unstable할 것이다. 이러한 modeling error는 $ w = \vartriangle(z) $라는 z에 대한 mapping w로 나타내어진다.
이러한 상황에서 $ H_{\infty} $ control은 controller K가 error z를 최대한 작게 만들도록 하는 것이 목적인데, 정확히 수식적으로는 다음을 만족하는 것이 목적이다.
$$ \parallel T_{zw} \parallel_{\infty} = \text{sup}_{\mathbf{w}} \frac{\parallel \mathbf{z} \parallel_{2}}{\parallel \mathbf{w} \parallel_{2}} = \text{sup}_{w} \bar{\sigma}(T_{zw}(jw))$$
($\bar{\sigma}$는 maximum sigular value를 의미한다.)
The small gain theorem에 따라 $ \parallel T_{zw} \parallel_{\infty} \leq \gamma $이면, Fig. 1(b)는 임의의 mapping $ \parallel \vartriangle \parallel_{\infty} < \frac{1}{\gamma}$에 대해 stable할 것임을 보장해준다고 한다.
2. Min-Max Solution to $ H_{\infty} $ Problem
이번에는 dynamical system $ \dot{\mathbf{x}} = f(\mathbf{x}, \mathbf{u}, \mathbf{w})$에 대해 생각해보자.
$ H_{\infty} $ control problem은 다음의 제약조건을 만족하는 control output $ \mathbf{u}$를 찾는 것과 동치인 문제이다.
(이 때, 모든 가능한 disturbance $\mathbf{w}$와 $\mathbf{x}(0) = 0$에 대해 위의 constraint를 만족시켜야 한다.)
이는 위의 조건들을 만족하면 다음을 만족하기 때문이다.
저자들은 이 문제를 worst disturbance w에 대해서 best control output u를 찾는 differential game이란 것으로 간주할 수 있다고 말하며, 이에 대한 optimal한 solution인 optimal value function $V^*$는 다음과 같이 정의된다고 말한다.
그리고 optimal value function에 대한 condition은 다음과 같이 된다.(간단한 미분으로 구할 수 있다.) 이는 Hamilton-Jacobi-Isaacs (HJI) equation으로 불리기도 한다고 한다.
위의 식으로부터 optimal control output과 worst disturbance, $\mathbf{u}_{op}$와 $\mathbf{w}_{op}$는 다음의 미분 방정식을 풂으로써 구할 수 있다.
3. Robust Reinforcement Learning
앞서 우리는 $H_{\infty}$ control problem의 formulation과 optimal한 해가 어떻게 도출되어지는지에 대해 살펴보았다. 이제는 이를 RL에 적용하여 Robust한 해를 구할 수 있도록 해보자.
상황은 continuous-time RL을 다루며 system dynamics $\dot{\mathbf{x}} = f(\mathbf{x}, \mathbf{u})$와 reward $r(\mathbf{x}, \mathbf{u})$와 함께 다룬다. 가장 기본적인 목표는 cumulative future reward $ \int_{t}^{\infty}e^{-\frac{s-t}{\tau}}r(\mathbf{x}, \mathbf{u}) ds$를 모든 state $\mathbf{x}(s)$에 대해 maximize 시키는 policy $\mathbf{u}$를 구하는 것이다. ($\tau$는 time constant of evaluation)
하지만 지금은 어떤 disturbance가 존재할 때, 그에 잘 대응할 수 있는 policy를 구하는 것이 목표이므로 기존의 reward를 다음과 같이 augmentation하도록 한다.
이 때 $\mathbf{s}(\mathbf{w}(t))$는 disturbing input을 잘 견뎌냈을 때 주는 additional reward로 논문에서는 예시로 L2 norm을 주는 것으로 하였다.
그러면 이에 대한 augmented value function은 다음과 같이 정의된다.
그리고 이에 대한 optimal value function은 HJI 방정식을 변형한 것의 해로 주어지는데, 다음과 같다.
이 때 $\gamma$값이 너무 작으면 적절한 policy를 구할 수 없음에 주의하여라.
Robust RL에서도 역시 value function은 TD error에 기반하여 업데이트가 되며, 여기서는 function approximator를 쓸 것이기에 마치 GAN을 업데이트 하듯이 best action과 worst disturbance가 구해지게 된다. function approximator를 사용한 value function은 $V(\mathbf{x}(t);\mathbf{v})$로 쓰도록 한다. 이 때 $\mathbf{v}$는 parameter vector이다. TD error는 $\delta(t)$로 나타낸다.
(논문에서는 eligibility trace도 도입을 하였지만 여기서는 생략하도록 하겠다.)
3-1. Actor-disturber-critic
여기서는 model-free RL, actor-critic 구조에서 Robust RL을 실현하기 위한 actor-disturber-critic architecture에 대해 설명한다.
actor와 disturber의 policy들은 각각 다음과 같이 정의하여 구현하였다.
$$ \mathbf{u}(t) = A_{\mathbf{u}}(\mathbf{x}(t);\mathbf{v}^{u}) + \mathbf{n}_{\mathbf{u}}(t) $$
$$ \mathbf{w}(t) = A_{\mathbf{w}}(\mathbf{x}(t);\mathbf{v}^{w}) + \mathbf{n}_{\mathbf{w}}(t) $$
$A$는 function approximator이며, $\mathbf{n}$은 탐색을 위한 노이즈에 해당한다.
이제 우리는 파라미터를 업데이트하여 정책을 찾는게 목표이므로 gradient descent(ascent)방법에 따라 다음과 같이 파라미터를 업데이트하여 최적의 actor와 disturber를 찾을 수 있다.
뒤의 내용은 특정 케이스에서 어떻게 작동되는지에 대한 내용과 실험에 대한 내용으로 생략하도록 하겠다. 이 논문은 Robust RL을 처음 등장시킨 논문으로 disturber라는 adversary를 등장시켜 문제를 formulation하고 풀었는데, 다른 논문들에서는 다른 방식으로 접근한 것도 있다 하니 추후에는 해당 논문들에 대해서 리뷰해보도록 하겠다.
'논문 리뷰 > RL' 카테고리의 다른 글
[RL] Robust Adversarial Reinforcement Learning (2) | 2023.09.09 |
---|---|
[RL] Algorithms for Inverse Reinforcement Learning (0) | 2023.08.30 |
[RL] Efficient Online Reinforcement Learning with Offline Data (0) | 2023.08.18 |
[RL] Deep Reinforcement Learning at the Edge of the Statistical Precipice (0) | 2023.07.06 |