MDP 프레임워크에서 경계값은 꼭 Agent의 물리적 경계값 일 필요는 없다. 또한, MDP 프레임워크에서 Agent는 환경(Environment)을 임의대로 변경 할 수 없다.
Reward Hypothesis
The goal of the agent is the maximization of the expected value of the cumulative sum of a received scalar (reward) signal.
Agent의 최종 목적은 보상 합의 기댓값을 최대화 하는 것이다. 목적을 달성하기 위해서 sub-goal를 추가하는 것이 도움이 될까? 도움이 될 수도 있고 안될 수 도 있다. 예를 들어, 체스게임에서 퀸을 잡는 것이 중요하다는 것을 sub-goal로 두어서 왕을 제외한 다른 모든 말들을 희생시켰다면, 이는 최종 목표인 게임 승리에 도움이 안된다(물론 적은 말들로 달성 했을 수도 있지만…).
Agent 목표 장기적인 보상 합의 최대화를 달성하기 위해서 **기대 수익(expected return)**을 Gt 라고 하면 두 가지 시나리오에서 수식으로 다음과 같이 정의 할 수 있다.
“Expected Reward from difference scenario”
Episodic
Gt:=Rt+1+Rt+1+⋯+RT
Continuing
Gt:=Rt+1+γRt+1+⋯+=k=1∑∞γkRt+k+1
여기서 $\gamma \in \lbrack 0, 1 \rbrack$는 할인율(discount rate)이라고 한다.
Episodic + Continuning
이러한 모형을 absorbing state라고 한다. $T = \infty$ 혹은 $\gamma = 1$
Gt:=k=t+1∑Tγk−t−1Rk
Policies and Value Functions
Policy는 주어진 상태 St=s 에서 가능한 행동 At=a으로 매핑하는 함수 πt(a∣s)다. Policy 함수는 항상 확률 함수일 필요는 없다. 예를 들어 다음과 같은 deterministic policy 도 존재한다.
πt(a∣s)={10where a=a′where a=a′
Policy가 확률 함수의 경우 선택된 행동의 실패 확률을 보통 noise라고 한다. 예를 들어, 특정 상태 s에서 a,a′ 두 개의 행동을 선택할 수 있는 경우, πt(a∣s)=0.9 이면 a를 선택할 확률이 90%이고, a′를 선택할 확률은 10%이다(noise).
γ는 할인율으로써 0≤γ≤1의 값을 가지며, 돈의 미래가치를 생각하면 이해가 된다. 현재 1만원을 가지고 있으면 지금은 1만원의 가치가 있지만, 내년에는 할인율에 따라 1만원 보다 적은 가치를 가지게 된다(10000×gamma).
Value Function은 {==Policy가 주어졌을 때==}, 상태(혹은 상태-행동 쌍)가 얼마나 좋은 지를 평가하는 함수다. 왜 좋은지를 평가해야하고 좋은 평가는 무엇인지는 앞으로 차차 알아가 본다.
아래 그림은 bellman-backup diagram 이라는 그림인데, Bellman Equation을 잘 설명하고 있다. 즉, policy π 하에 현재 상태-가치(state-value) vπ(s) 는 모든 기대 수익을 각각의 행동에 따른 가중 평균을 구하는 것이며, 각 기대 수익은 할인된 다음 상태-가치 γvπ(s′) 와 다음 보상 r의 합을 가중 평균함으로써 구할 수 있다.
“Example: Grid-World”
아래의 좌측 그림 처럼 지도가 있는데, 네 개의 행동 A={N,S,E,W}을 취할 수 있다. 그리고 웜홀이 있어서 A 에서 A′로 전송하는 웜홀을 타면 +10, B 에서 B′로가는 웜홀을 타면 +5, 그리고 지도 밖을 벗어나면 −1를 받는 보상 상황이 주어졌다. 여기서 각각의 grid(네모칸)은 state라고 할 수 있다. 따라서, state transition은 결정적이다. 우측 그림은 state value를 구한 것이다. 우측 그림에서 볼 수 있듯이 A와 B grid(state)에서 높은 value를 갖는다.
Optimal Policies and Optimal Value Functions
Policy의 비교는 주어진 policy π하에서 state-value vπ(s) 가 높으면 좋은 것이다 (주의: state-value function이 항상 monotic한 것은 아니다). 따라서 최적의 policy π∗는 주어진 상태 s에서 다른 {++모든 policy++} 보다 좋은 state-value를 가지면 된다. 이 최적의 state-value를 optimal state-value function 이라고 하며 다음과 같이 정의 된다.
이전의 Bellman backup diagram과 다르게 최적 상태-가치(optimal state-value)를 구하기 위해서 v∗ 이제는 기대 수익을 모든 행동에 대한 가중 평균 합이 아니라 최적 행동에 해당하는 기대 수익만 선택하면 되는 것이다. 그리고 최적 행동 가치(optimal action-value)는 선택된 최적 상태-가치를 보상에 대한 가중 평균 하면 되는 것이다.
또한 Bellman optimality equation은 v∗에 대해 단 하나의 유일한 솔루션을 가진다.
“Example: Grid-World 에서의 optimal value function과 policy”
중간의 그림이 optimal state-value 이고 우측은 optimal policy다. 각 state에서 여러 optimal policy를 가질 수 있지만, optimal state-value는 단 하나다. 예를 들어, 좌표 (4, 0)에서는 N으로 이동하던 E로 이동하던 모두 최적의 v∗를 얻을 수 있다.
ETC
두 개의 policy πA, πB가 있는데, 어떤 state에서 optimal state-value가 πA가 더 큰 경우가 있고, 어떤 state에서는 πB가 더 크다. 그렇다면 optimal policy는 없는 것일까? 아니다. 각 state에서 state-value가 큰 policy를 선택해서 새로운 policy πC를 만들면 된다. 따라서, 항상 vπ(s)≥vπ′(s)를 만족하는 π를 찾을 수 있다.