강화학습에서도 미래의 보상을 전부 경험하지 않더라도,
현재의 상태에서 예측을 통해 미래의 상태를 가늠해 볼 수 있다.
벨만 방정식은 이처럼 현재 상태와 미래의 성공확률에 대한 연결을 수식화 해준다.
이것을 공부하는 관점에서 바라보면, 시점 t에서의 밸류와 시점 t + 1 에서의 밸류 사이의 관계를 다루고 있으며 또 가치 함수와 정책 함수 사이의 관계도 다룬다.
벨만 기대 방정식을 3단계로 나누어서 생각해보자
● 0 단계 :
위수식을 조금 풀어서 쓰면 다음과 같이 풀수 있습니다.
은 현재 행동을 선택했을 때 즉각적으로 일어나는 결과, 즉 보상 이 된다.
그리고 은 더 미래에 일어날 일들에 대한 결과이다.
그런데 여기서 봐야할 점은 이 기댓값 Eπ 입니다.
처음 s 에서 시작해서 s'이 정해지기까지 두번의 확률적인 과정을 거쳐야한다.
이때 처음시작은 정책이 액션을 선택하고 그 다음은 환경에 의하여 두번째 동전을 시행한다.
이때 s -> a1 -> s'1 될 확률은 s 가 a1 으로 갈때 비로소 생긴다.
이 s -> a1 이 될 확률을 수식으로 표현하면 π(a1|s) 이라 말할수 있다.
이에 기존 수식을 더 풀어서 표현하자면 이렇다
● 1 단계 :
위 수식을 보면 액션밸류 qπ(a|s) 를 이용하여 상태 밸류 vπ(s) 를 표현하는 식입니다
이것을 그림으로 표현하자면 이렇습니다.
정책은 π 로 고정되었을때 vπ(s) = 0.6 * 1 + 0.4 * 2 = 1.4
그래서 우리가 만약 어떤 상태에서 선택할수 있는 모든 액션의 밸류를 알고있다면, 이를 이용해 해당 상태의 밸류를 계산할수 있습니다.
그렇다면 반대로 상태의 밸류를 이용해 액션의 밸류를 평가할수 있을까?
위 수식을 보면 vπ 를 이용해 qπ 를 표현하고자 하는 것입니다
이것을 그림으로 표현하자면 이렇습니다.
정책은 π 로 고정되었을때 qπ(s,a) = 0.5 +0.7 * 1.5 + 0.3 * (-1) = 1.25
그래서 우리가 만약 어떤 상태에서 선택할수 있는 모든 액션의 밸류를 알고있다면, 이를 이용해 해당 상태의 밸류를 계산할수 있습니다.
● 2 단계 :
2단게를 마지막으로 진행되어지는데. 이것을 들여다보면 S 에서 a 가 일어날 확률 과 s 에서 a 를 실행하는 것의 밸류를 실행한다. 이때 행동-가치 기대 방정식은 또다시 기댓값으로 풀어지게 되는데, 미래에 일어날 모든 일의 평균치와 같은 것이다.
위 수식의 기댓값은 재귀적으로 끝날때까지 계속 이어질 수 있다.
지금까지 우리는 보상함수 r 과 전이함수 P에 대한 정보를 알고 있는 상태에서 MDP 를 구상했습니다.
그러나 우리는 MDP 에 대한 정보를 모르는 상황에서도 강화 학습을 해야합니다.
이러한 상황에서 우리는 보상을 경험을 통해 깨우치고 전이함수를 이해합니다.
이러한 접근법을 모델-프리 접근법이라고 합니다.
반대로 지금처럼 r 과 P 에 대해서 알고있는 상태라면 이를 모델 기반 혹은 플래닝 이라고 합니다
벨만 최적 방정식
최적 밸류와 최적 정책
벨만 기대 방정식이 vπ(s) 와 qπ(s,a) 에 대한 수식이라면 벨만 최적 방정식은 v*(s) 와 q*(s,a) 에 대한 수식입니다. vπ(s) 와 qπ(s,a) 는 모두 정책이 π 로 고정되었을때의 밸류라면 v*(s) 와 q*(s,a) 는 최적 밸류에 대한 함수 입니다. 이것을 말로 풀어보자면 MDP 안에 정책π 중 가장 좋은 π* 를 선택하는 것입니다.
그림을 통하여 설명하자면
v*(s) = maxq*(s,a) = max(q*(s,a1),q*(s,a2)) = max(1,2) = 2 입니다
여기서 확률을 계산하지 않는 이유는 100% 의 확률로 a2가 100% 일때 최적의 밸류를 얻게 해주기 때문입니다.
reference : https://jyoondev.tistory.com/142?category=826957
강화학습 - (9) 벨만방정식
강화학습 벨만방정식 (Bellman Equation) 현실에서 우리는 피드백을 받지 않고도 많은 것을 배울 수 있다. 처음 자전거를 타고 있다고 가정해 보자. 자전거를 타다가 넘어진 뒤 바위에 부딛쳐 무릎을
jyoondev.tistory.com
https://zoomkoding.github.io/%EA%B0%95%ED%99%94%ED%95%99%EC%8A%B5/2019/07/19/RL-2.html
줌코딩의 코딩일기
Zoom in Coding from the Basic.
zoomkoding.github.io
https://coalery.github.io/2020-10-24-bgm-ai-study-introduction-mdp/
마르코프 결정 과정(MDP)
마르코프 결정 과정(MDP) 마르코프 결정 과정은 아래처럼 구성되어있다. 상태(State)들의 집합 S 행동(Action)들의 집합 A 전이 함수 P : S×A → S 보상 함수 R : S×A → 실수 집합 R 할인율 𝛾 ∈ [0, 1] 정
coalery.github.io
강화학습 한글자료(PDF) : https://www.gitbook.com/book/dnddnjs/rl/details.
파이썬과 케라스로 배우는 강화학습 : http://wikibook.co.kr/reinforcement-learning/
Reinforcement Learning: An introduction: http://www.incompleteideas.net/book/bookdraft2017nov5.pdf
'AI 공부 > RL 끄적' 카테고리의 다른 글
강화학습 겉햙기(6)[에이전트] (0) | 2021.05.25 |
---|---|
강화학습 겉햙기(5)[Deep RL] (0) | 2021.05.25 |
강화학습 겉햙기(4)[MDP 접근법] (0) | 2021.05.22 |
강화학습 겉햙기(2)[마르코프 결정 프로세스] (0) | 2021.05.19 |
강화학습 겉햙기(1) (0) | 2021.05.19 |