3. Bellman equation and Dynamic Programming(1/3) - The Bellman Equation
value function
어떤 state의 가치 - 현재 state를 초기 상태로 하고 끝까지 갔을 때의 return 의 기대값
가치가 높은 상태로 가는 것이 좋음
어떤 상태에서 어떤 행동을 결정했을 때, 나에게 주어지는 return의 기대값
어떻게 계산하는가?
어떤 state에서 출발해서 가보면 알지만 policy, environment stochastic할 수 있다.
stochastic environmnet- 내가 행동을 취했을 때, 내가 state가 이쪽으로 갈 수도 있고 저쪽으로 갈 수도 있는 확률값이 주어지는 환경
stochastic policy - 어떤 action을 정할 때, 70%로 오른쪽(action) 30%로 왼쪽(action)으로 결정
stochastic이 존재하는 상황 속에서 어떻게 state의 가치를 정할 것인가 ?
=> Bellman Equation !
dynaminc에서 어떤 state의 가치는 행동을 취했을 때 나타나는 reward + 다음state의 가치 합
*environmnet가 stochastic 할 때,
추가로, policy도 stochastic하다면?
Bellman Equation of the Q function
어떤 state에서 행동을 취할 때 가치는 다음 state로 갈때 취하는 행동의 reward + 다음 행동에서 agent의 가치
stochastic environmnet일 때
Q는 어떤 action 값이 정해졌을 때의 가치 이므로, stochastic policy 상황에서는 아래와 같이 표현
이제 Optimal policy를 어떻게 계산할 것인가
어떤 state 의 V값은 어떤 policy가 정해져있을 때, 그 state의 가치
policy(각 state마다 action을 정해놓았다.)
가능한 모든 policy를 계산해 봤을 때, maximum 값으로 만드는 그 V(s) 값
Bellman Optimality Equation -V(s)
Bellman Optimality Equation -Q(s)
Q의 경우 어떤 state에서 어떤 action을 취했을 때의 가치 이므로, Q값은 다음 state에서 내가 취할 수 있는 action이 여러가지
그 중에 전체값을 maximum으로 만들 수 있는 값을 보고 그 때의 최대값 Qmax
V- 어떤 state의 가치 / Q - 어떤 state에서 어떤 action을 취했을 때의 가치
V, Q의 관계
Dynamic programming으로 optimal policy를 찾는 방법
value iteration
policy iteration