강화학습 개념

Seulgi Kim·2023년 5월 9일
0

reinforce learning

목록 보기
8/14

마르코프 결정 프로세스

정의

상태, 상태 천이 확률 밀도 함수, 행동, 보상함수로 이루어진 stochastic process.

마르코프 시퀀스

p(xt+1xt,xt1,...,x0,ut,ut1...,u0)=p(xt+1xt,ut)p(x_{t+1}|x_t, x_{t-1}, ..., x_0, u_t, u_{t-1} ..., u_0)=p(x_{t+1}|x_t, u_t) 이면 마르코프 시퀀스라고 부른다.
즉, t+1t+1 시간의 상태는 tt 상태와 행동에만 의존한다.

확률적 MDP와 확정적 MDP

확률적 MDP

환경 모델이 상태천이 확률밀도함수로 주어지는 경우

확정적 MDP

환경 모델과 정책이 모두 확정적으로 주어지는 경우
이때 확정적 MDP에서는 보상함수도 확정적으로 주어지고, 이때의 정책은 ut=π(xt)u_t = \pi(x_t)로, 상태변수에서 행동을 직접 계산할 수 있는 확정적 정책이 된다.

감가율

감가율(discount factor)이란 먼 미래에 받을 보상보다는 가까운 미래에 받을 보상에 더 큰 가중치를 주는 변수로, TT\rightarrow\infty 일 때 보상의 총 합이 무한대로 발산하는 것을 막는 수학적 장치이다.
감가율을 고려한 보상의 총합은 다음과 같다.

Gt=r(xt,ut)+γr(xt+1,ut+1)+γ2r(xt+2,ut+2)+...=k=tTγktr(xk,uk)\begin{aligned} G_t &= r(x_t, u_t) + \gamma r(x_{t+1}, u_{t+1}) + \gamma^2 r(x_{t+2}, u_{t+2}) + ...\\ &=\sum\limits_{k=t}^T \gamma^{k-t} r(x_k, u_k) \end{aligned}

즉, 0γ<10\leq\gamma<1이면,

Gt=k=tγktr(xk,uk)rmaxk=0γk=rmax1γ\begin{aligned} |G_t|&=|\sum\limits_{k=t}^\infty \gamma^{k-t} r(x_k, u_k)| \\ &\leq r_{max} \sum\limits_{k=0}^\infty \gamma^k \\ &= {r_{max} \over 1-\gamma} \end{aligned}

이다.

가치 함수

상태가치함수(state-value function)

어떤 상태변수 xtx_t에서 시작해 그로부터 정책 π\pi에 의해 행동이 가해졌을 때 기대할 수 있는 반환값을 상태 가치 함수라고 부른다.

Vπ(xt)=Eτ[k=tTγktr(xk,uk)xt]=(k=tTγktr(xk,uk))p(τxt)dτ\begin{aligned} V^\pi(x_t) &= {\mathbb E}_{\tau}[\sum \limits_{k=t}^T \gamma^{k-t} r(x_k, u_k)|x_t]\\ &=\int(\sum\limits_{k=t}^T \gamma^{k-t} r(x_k, u_k))p(\tau|x_t) d\tau \end{aligned}

행동가치함수(action-value function)

어떤 상태변수 xtx_t에서 행동 utu_t를 선택하고 그로부터 정책 π\pi에 의해 행동이 가해졌을 때 기대할 수 있는 반환값을 행동 가치 함수라고 부른다.

Qπ(xt,ut)=Eτ[k=tTγktr(xk,uk)xt,ut]=(k=tTγktr(xk,uk))p(τxt,ut)dτ\begin{aligned} Q^\pi(x_t, u_t) &= {\mathbb E}_\tau [\sum\limits_{k=t}^T \gamma^{k-t} r(x_k, u_k) | x_t, u_t] \\ &=\int(\sum\limits_{k=t}^T \gamma^{k-t} r(x_k, u_k)) p(\tau|x_t, u_t) d\tau \end{aligned}

여기서 τ\tau는 궤적을 나타내며, τut:uT=(ut)τxt+1:uT\tau_{u_t:u_T}=(u_t)\cup\tau_{x_{t+1}:u_T}이다.

상태가치함수와 행동가치함수의 관계

마르코프 확률 연쇄 법칙에 의해 p(τut:uTxt)=p(τxt+1,uTxt,ut)π(utxt)p(\tau_{u_t:u_T}|x_t) = p(\tau_{x_{t+1}, u_T}|x_t, u_t)\pi(u_t|x_t)이다.
이를 상태가치 함수에 대입하면, 다음과 같은 행동가치함수와 상태가치함수의 관계를 얻을 수 있다.

Vπ(xt)=utQπ(xt,ut)π(utxt)dut=Eutπ(utxt)[Qπ(xt,ut)]\begin{aligned} V^\pi(x_t) &= \int\limits_{u_t} Q^\pi(x_t, u_t) \pi(u_t|x_t)du_t\\ &= {\mathbb E}_{u_t\sim\pi(u_t|x_t)}[Q^\pi(x_t, u_t)] \end{aligned}

즉, 상태가치함수는 상태 변수 xtx_t에서 선택 가능한 모든 행동 utu_t에 대한 행동가치의 평균값이다.

0개의 댓글