sutton 교수의 Reinforcement Learning An Introduction을 읽고 공부하기
Exercise 3.11 현재 state가 \( {S}_{t} \), action이 확률적 policy \( \pi \)에 의해 선택될 때 4개의 아규먼트를 가지는 함수 p(3.2)와 \( \pi \)를 사용해 \( {R}_{t+1} \)의 기대값을 표현해라.
p(3.2)를 다시 가져와보기
여기서 \( \pi \)를 사용해 다시 나타내보기
$$ {R}_{t+1} = p \left( s^{'}, r | {s}_{t}, {a}_{t} \right) \times \pi \left( {a}_{t} | {s}_{t} \right) $$
다음과 같이 않을까 라고 예상함
Exercise 3.12 \( {q}_{\pi} \)와 \( \pi \)로 \( {v}_{\pi} \)를 표현해라
\( {q}_{\pi} \)는 action에 대한 가치함수이고 \( {v}_{\pi} \)는 상태에 대한 가치함수라는 것을 기억하고 시작. \( {q}_{\pi} \)에 대해 각 action을 할 확률과 그 때의 action value를 곱해주면 그 상태에 맞는 상태 가치함수가 나올 것임.
그래서 식으로 표현하자면 다음과 같을 것
$$ {v}_{\pi} = \pi \left( a|s \right) \times {q}_{\pi} $$
Exercise 3.13 \( {v}_{\pi} \)와 4개의 아규먼트 p를 이용해 \( {q}_{\pi} \)를 나타내자.
4개의 아규먼트 p는 위쪽에 써놨으니 저걸 참고하자.
여기서 p는 state가 s, action이 a일때 다음 state로 갈 확률이라고 할 수 있음. 근데 어떻게 p와 value function만을 이용해 q함수를 나타낼 수 있다는 건지 잘 모르겠음.
패스하자.
Exercise 3.14 벨만방정식(3.14)은 Example 3.5의 그림 3.2(오른쪽)과 같이 각 state마다 value function을 반드시 유지해야 한다. 이 방정식이 주변 state의 value들이 +2.3, +0.4, -0.4, +0.7이고 가운데 state의 value가 +0.7임을 수학적으로 보여라.
(3.14)의 벨만방정식으로 이 문제를 풀어보자.
deterministic한 환경이기 때문에 확률 p의 경우 1이므로 이 식은 다음과 같이 다시 쓸 수 있음.
$$ \sum_{a}^{} \pi \left( a|s \right) \left\{ r + \gamma {v}_{\pi} \left( s' \right) \right\}, \textrm{for all}\,\,\, s \in S $$
이걸 계산하면 다음과 같이 나옴
Exercise 3.15 그리드월드 예제에서 목표(goal)에 가면 reward는 +이고 그리드의 가장자리에 가면 reward는 -이며, 나머지 시간동안 reward는 0이다. 이러한 reward의 표시가 중요할까 아니면 그 사이의 간격만 중요할까? (3.8)을 사용해 증명한다. 모든 reward에 상수 c를 추가하면 모든 state의 value에 상수 \( {v}_{c} \)를 추가하는 것으로 어떤 policy에서도 어떤 state에 영향을 미치지 않는다. c와 \( \gamma \)를 사용해 어떻게 \( {v}_{c} \)를 나타낼까?
다시 가져온 (3.8)
근데 이부분도 번역을 잘못한건지 무슨 소리인지 잘 모르겠음... 패스
Exercise 3.16 미로탐색같은 episodic task에서 모든 reward에 상수 c를 더한다고 생각해보자. 어떤 효과가 있는가? 아니면 위의 continuing task와 차이가 없는가? 왜 그런가? 예를 들어라.
위의 문제를 이해를 못하겠으니 이것도 모르겠네
Exercise 3.17 \( {q}_{\pi} \) 즉, action valued의 벨만방정식은 무엇인가? action value의 쌍 \( {q}_{\pi} \left( s',a' \right) \)로 action value \( {q}_{\pi} \left( s,a \right) \)를 나타내라. Hint: 아래의 backup 다이어그램은 이 방정식에 대응한다. 식(3.14)와 비슷한 부등식을 aciton value로 나타내라.
다음 state s', action a'으로 현재 state s와 action a의 큐함수를 표현하면 되는 듯 함.
그래서 다음과 같이 쓸 수 있음. state value function을 action value function으로 표현하기 위해 policy에 큐함수를 곱함.
Exercise 3.18 state value는 그 state에서 가능한 action들의 value와 현재 policy에 따라 어떻게 각 action을 선택할지에 달려있다. 우리는 state가 루트에 있고 각 가능한 action이 나온 작은 backup 다이어그램으로 생각해 볼 수 있다.
\( {S}_{t}=s \)이고 expected leaf node의 value가 \( {q}_{\pi} \left(s,a \right) \)일 때, 이를 이용해 루트 노드가 \( {v}_{\pi} \left(s \right) \)인 다이어그램에 일치하는 방정식을 주어라. 이 방정식은 policy \( \pi \)를 따르는 expectation 조건을 포함해야한다. 그다음 두번째 방정식은 expected value를 \( \pi \left( a|s \right) \)를 사용해 expected value 표기법이 이 방정식에 없게 쓴다.
그러니까 이 그림은 현재 state가 루트 노드이고 그 하위 노드들이 정책의 확률을 따르는 action들이라는 뜻. 그리고 그 action은 검은색 노드로 표현하는데 바로 상태 s에서 action a를 선택했을 때의 state-action value임.
이런 조건들이 있을때 state s의 가치함수를 두가지로 표현하라는 말임. 하나는 기대값이 나와있는 형태이고 하나는 없는 형태로. 자 이제 문제를 풀어보자
첫번째는 기대값을 포함하게 해서 식을 세우는 건데 그 때의 state value는 다음과 같음.
\( {G}_{t} \) 대신 큐함수로 쓸수가 있을까?라고 생각해봤는데 그러면 기대값이 벗겨져야하니 그건 아닌 것 같음.
$$ {v}_{\pi} \left(s \right) = {E}_{\pi}\left[ {G}_{t} | {S}_{t}=s \right] $$
두번째는 policy \( \pi \)가 explicit하게 나와있는 경우로 그때의 state value는 다음과 같이 쓸 수 있음.
$$ {v}_{\pi} \left( s \right) = \sum_{a}^{} \pi \left( a|s \right) {q}_{\pi} \left( s,a \right) $$
Exercise 3.19 action value \( {q}_{\pi} \left( s,a \right) \)는 expected next reward와 remaing reward의 expected sum에 의존한다. 이거를 작은 backup 다이어그램으로 생각해보면 action(state-action pair)이 루트에 있고 가능한 다음 state가 뻗어있는 형태다.
주어진 state와 action이 \( {S}_{t}=s, {A}_{t}=a \)일때, expected next reward \( {R}_{t+1} \)과 expected next state value \( {v}_{\pi} \left( {S}_{t+1} \right) \)을 사용해 action value \( {q}_{\pi} \left(s,a \right) \)로 이 다이어그램에 대응하는 방정식을 주어라. 이 방정식은 expectation을 포함해야 하지만 policy를 따라야하는 조건은 포함되지 않아야 한다. 두번째 방정식은 (3.2)에서 정의된 \( p \left( s', r | s, a \right) \)를 사용해 expected value를 써야한다. expected value 표기법은 이 방정식에 나타나지 않는다.
이번에는 state-action value를 표현해보자. 첫번째는 policy가 없는 expectation으로만 표현하고 두번째 방정식은 확률 p가 있고 기대값이 없는 형태로 방정식을 나타내보자.
첫번째는 state s와 action a를 가지고 기대값으로 표현해보자
$$ {q}_{\pi} \left( s,a \right) = {E}_{\pi} \left[ {G}_{t} | {S}_{t}=s, {A}_{t}=a \right] $$
두번째 state s와 action a가 주어졌고 확률 p로 다른 상태 s'을 고려해서 계산
$$ {q}_{\pi} \left(s,a \right) = \sum_{s', r}^{} p \left( s',r | s, a \right) \left[ r+\gamma {v}_{\pi} \left( s' \right) \right] $$
Exercise 3.20 golf example에서 optimal state-value function을 그리거나 설명해보자
수정중
Reference : Reinforcement Learning : An Introduction
'강화학습 > Reinforcement Learning An Introduction' 카테고리의 다른 글
Reinforcement Learning 책 읽고 공부하기(4-2) (0) | 2020.12.14 |
---|---|
Reinforcement Learning 책 읽고 공부하기(4) (0) | 2020.05.22 |
Reinforcement Learning 책 읽고 공부하기(3-3) (0) | 2020.03.12 |
Reinforcement Learning 책 읽고 공부하기(3-2) (0) | 2020.03.09 |
Reinforcement Learning 책 읽고 공부하기(3, Exercise) (2) | 2020.03.09 |