강화학습 기초 이론

Seulgi Kim·2023년 4월 23일
0

reinforce learning

목록 보기
2/14

벨만 방정식 (Bellman Equation)

정의

현재 상태의 가치 함수와 다음 상태의 가치 함수 사이의 관계를 나타낸 식

가치함수에 대한 벨만 방정식

Vπ(St)=Eπ[Rt+1+γVπ(st+1)St=s]V_\pi(S_t) = E_\pi [R_{t+1} + \gamma V_\pi(s_{t+1})|S_t = s]

큐 함수에 대한 벨만 방정식

Qπ(s,a)=Eπ[Rt+1+γQπ(St+1,At+1)St=s,At=a]Q_\pi(s,a)=E_\pi[R_{t+1} + \gamma Q_\pi(S_{t+1},A_{t+1})|S_t=s,A_t=a]

벨만 방정식과 MDP

가치함수로부터 기댓값을 계산하려면 앞으로 받을 모든 보상에 대해 고려해야 한다.
벨만 방정식을 이용하면 t+1t+1 시간의 가치함수만 알고 있다면 현재 tt 시간의 가치함수를 구할 수 있다.
가치함수를 다르게 써보면 다음과 같다.

vπ(s)=aAπ(as)qπ(s,a)v_\pi(s)=\sum\limits_{a \in A} \pi(a|s) q_\pi(s,a)
qπ(s,a)=Rsa+γsSPssavπ(s)q_\pi(s,a) = R^a_s + \gamma\sum\limits_{s' \in S} P^a_{ss'} v_\pi(s')

가치함수는 정책에 의존하기 때문에 정책을 뜻하는 π\pi를 붙여주어야 한다.
상태 ss일 때의 가치함수 vπ(s)v_\pi(s)는 에이전트가 취할 수 있는 모든 행동 집합 AA에 대해 그 행동 aa를 취할 확률 π(as)\pi(a|s)에 상태 ss일 때 행동 aa의 가치를 나타내는 큐 함수 qπ(s,a)q_\pi(s,a)를 곱해주어야 한다.
상태 ss에서 행동 aa를 취했을 때의 가치를 나타내는 큐 함수 qπ(s,a)q_\pi(s,a)를 구하기 위해서는, 그때의 보상 RsaR^a_s에 감가율 γ\gamma, 행동 aa를 취했을 때 나타날 수 있는 모든 상태 sSs' \in S에 대한 상태 변환 확률 PssaP^a_{ss'}, 그때의 가치함수 vπ(s)v_\pi(s')이 필요하다.
즉, 벨만 방정식을 구하기 위해서는 보상 RsaR^a_s와 상태 변환 확률 PssaP^a_{ss'}을 미리 알고 있어야만 한다.
이러한 보상함수와 상태변환확률, 감가율은 MDP(Markov Decision Process)의 5가지 구성요소 중 하나로, MDP에서 모델이라고 부를 수 있다.

벨만 최적 방정식

강화학습의 목적

최적의 의사 결정을 하여 보상을 최대화 하는 것.
현재 정책에 대한 최적의 가치 함수를 찾아야 한다.
최적의 가치함수란 모든 가능한 정책 중 제일 높은 가치를 반환하는 가치 함수

v(s)=maxπvπ(s)=maxaE[Rt+1+γvπ(St+1)St=s,At=a]v_*(s)=\max\limits_\pi v_\pi(s)=\max\limits_a E[R_{t+1} + \gamma v_\pi(S_{t+1})|S_t=s, A_t=a]
q(s,a)=maxπqπ(s,a)=E[Rt+1+γmaxaq(St+1,a)St=s,At=a]q_*(s,a)=\max\limits_\pi q_\pi(s,a)= E[R_{t+1}+\gamma\max\limits_{a'} q_*(S_{t+1},a')|S_t=s, A_t=a]

탐험과 이용 (Exploration & Exploitation)

에이전트가 최적 정책을 찾기 위해서는 여러 상황에서 다양한 행동을 하며 많은 경험을 해보아야 한다.

탐험

에이전트가 다양한 경험을 할 수 있도록 에이전트의 행동을 결정하는 기법
Random exploration : 같은 확률로 에이전트가 취할 수 있는 행동 중 하나를 임의로 선택하는 기법
하지만 에이전트가 모든 경험을 다 해보려면 너무 많은 시간이 필요하다
어느정도는 에이전트가 학습된 대로 행동하는 것도 필요.

이용

학습된 결과에 에이전트의 행동을 결정하는 기법
Greedy method : 주어진 상태에서 에이전트가 가장 큰 가치를 얻을 수 있을 것으로 기대되는 행동만을 취하는 것.

ε\varepsilon-greedy

최적 정책을 찾기 위해서 탐험과 이용이 적절한 밸런스를 맞춰서 수행되어져야 함
이를 위해 제안된 기법이 ε\varepsilon-greedy 방법.
학습 초기에는 탐색을 수행할 확률을 높게 설정하고, 학습이 진행될수록 이용을 수행하는 확률을 늘리는 방법.

ε\varepsilon : Random exploration을 수행할 확률

일반적으로 ε\varepsilon의 값을 1부터 시작하여 조금씩 감소하여 고정값으로 (일번적으론 0.1) 수렴하는 방법을 택함.

0개의 댓글