[강화학습] 강화학습 기본 개념 정리
강화학습의 기본 개념인 MDP, state, action, reward, policy 등과 벨만방정식에 대하여 알아보겠습니다.
- MDP (Markov Decision Process)
강화학습에서는 사용자가 문제를 직접 정의해야 합니다. 문제를 잘못 정의하면 학습을 못 할 수도 있기 때문에 문제의 정의는 강화학습에서 중요한 단계 중 하나입니다.
학습을 하기 위해 많지도, 적지도 않은 적절한 정보를 에이전트가 알 수 있도록 문제를 순차적으로 정의해야 합니다.
MDP는 순차적으로 결정해야 하는 문제를 수학적으로 표현한 것으로, 강화학습은 MDP의 문제를 푸는 것입니다.
MDP는 상태, 행동, 보상함수, 상태 변환 확률, 할인율로 구성됩니다.
각 구성요소를 살펴보기 전에 그리드 월드에 대해 먼저 살펴보겠습니다.
- 그리드 월드
그리드 월드란 강화학습에서 자주 사용되는 예시로 위 그림처럼 격자 상의 위치(좌표)가 상태가 됩니다.
- 상태 $\mathbf{S}$
$\mathbf{S}$는 에이전트가 관찰 가능한 상태의 집합입니다.
그리드 월드에서 관찰 가능한 상태는 $(1,1), (1,2), (1,3) ,\cdots, (5,4), (5,5)$ 가 되기 때문에
$$\mathbf{S} = (1,1), (1,2), (1,3) ,\cdots, (5,4), (5,5)$$ 입니다.
그리드 월드에서 에이전트는 시간에 따라 25개의 상태를 가질 수 있습니다. 시간 $t$에서의 상태를 $\mathbf{S}_t$ 라고 하며 만약 시간 $t$에서 상태가 $(1,3)$이면 $\mathbf{S}_t = (1,3)$ 으로 표현합니다.
일반화하여 정리해보면
"시간 $t$에서의 상태 $\mathbf{S}_t$가 어떤 상태 $s$이다" : $\mathbf{S}_t = s$입니다.
- 행동 $\mathbf{A}$
$\mathbf{A}$는 에이전트가 상태 $\mathbf{S}_t$에서 할 수 있는 행동의 집합입니다.
보통 모든 상태에서 에이전트가 할 수 있는 행동은 동일하기 때문에 집합 $\mathbf{A}$로 표현이 가능합니다.
그리드 월드에서 관찰 가능한 행동은 $$\mathbf{A} = \{up, down, left, right\}$$ 입니다.
시간 $t$에서 선택한 행동을 $\mathbf{A}_t$라고 하며 만약 시간 $t$에서 행동 $left$를 선택하였다면 $\mathbf{A}_t = left$ 입니다.
일반화하여 정리해보면
"시간 $t$에서 선택한 행동 $\mathbf{A}$는 a이다" : $ \mathbf{A}_t = a$ 입니다.
- 보상함수 $r(s,a)$
보상은 에이전트가 학습할 수 있는 유일한 정보입니다.
시간 $t$에서 상태 $\mathbf{S}_t = s$ 이고, 행동 $\mathbf{A}_t = a$일 때 에이전트가 받는 보상$r(s,a)$은 다음과 같습니다.
$$r(s,a) = E[R_{t+1}| \mathbf{S}_t = s, \mathbf{A}_t = a]$$
위의 수식을 말로 정리해보면 "$r(s,a)$는 상태 $s$에서 행동$a$를 할 때 받을 보상에 대한 기댓값" 정도가 되겠습니다.
그런데 수식에서 $R_{t+1}$을 보면 아래 첨자가 $t$가 아닌 $t+1$로 되어있습니다.
이는 보상을 에이전트가 알고 있는 것이 아니고, 환경이 알려주기 때문입니다.
(상태 $s$에서 행동 $a$를 하게 되면 다음 상태 $s'$과 보상을 에이전트에서 알려주기 때문에 "다음"의 느낌을 강조하고자 $t+1$로 표기하는 것 같습니다.)
- 상태 변환 확률
상태 변환 확률이란 상태 $s$에서 행동 $a$를 취했을 때 다른 상태 $s'$에 도달할 확률입니다.
상태 변화에는 확률적인 요인이 들어가기 때문에 상태 변환 확률로 나타내며 식은 다음과 같습니다.
$$P_{ss'}^a = P[S_{t+1} = s' | S_t = s, A_t = a]$$
에이전트가 행동을 취하면 상태 변환 확률을 통해 다음 상태를 알려줍니다.
- 할인율
현재에 가까운 보상일수록 더 큰 가치를 갖습니다. 반대로 말하면 나중에 받는 보상일수록 가치가 줄어든다는 말이 됩니다.
미래의 가치를 현재의 가치로 환산할 때 할인율 $\gamma$를 사용하여 표현합니다.
$$\gamma \in [0,1]$$
할인율 $\gamma$를 사용하여 미래의 보상을 표현하면 $$\gamma^{k-1}R_{t+k}$$ 입니다.
$\gamma$가 [0,1]의 값이기 때문에 $k$가 커질수록 즉, 미래의 보상일수록 가치가 줄어듭니다.
'[강화학습]' 카테고리의 다른 글
[강화학습] 벨만 방정식, 벨만 최적 방정식 (0) | 2021.08.19 |
---|---|
[강화학습] 큐함수 - 행동 가치함수 (0) | 2021.08.19 |
[강화학습] 정책, 가치함수, 벨만 기대 방정식 (0) | 2021.08.17 |
[강화학습] 1. 강화학습이란? (0) | 2021.08.14 |