The environment used in RL is often defined as finite MDP
- MDP는 decision making problems을 모델링하는 수학적 프레임워크이다.
→ agent가 좋은 행동을 하기 위하는데 이를 수학적으로 푸는 것이다. decision making 자체를 수학적으로 모델링으로 바꿀수 있도록함.- 배우는 것을 agent, 그 외 다른 모든 것들을 environment라고 한다.
A MDP decision process is a 4-tuple
S
: set of states
A
: set of actions
P
: 조건부 확률, 현재 state가 s이고 action a를 했을 때 다음 state가 s’이 될 확률
R
: state s에서 a 라는 action을 취해서 s’으로 갔을 때 부여받는 immediate Rewaed (or expected immediate reward)
policy function π
: state s에서 action state a를 선택할 때 사용하는 mapping function
MDP는 good policy를 찾는 것
→ state s에서 가장 reward를 많이 받을 수 있는 acion이 뭐지? 를 판단
s0에서 a1을 택하면 s2로 감. s2에서 a0을 택하면 0.4의 확률로 s0으로 가고 0.6의 확률로 s2로 감
→ = 0.4
In MDP, agent-environment interactions are repeated until the goal is reached
goal을 찾을 때까지 아래의 루프를 반복
agent는 action을 선택한다
어떤 state에서 acion을 취하는 것에 의해 reward를 받는다.
time step t ,
를 기준으로 라는 액션을 취함
내가 취한 action에 의해 environment의 변화가 생김
→ 다음 state 로 넘어감 + 리워드 을 생성
trajectory that begins like
s0에서 a0을 취하면 r1이 나오고 다시 s1에서 a1을 취하면 r2가 나오고…
In finite MDP, the sets of states, actions, and rewards all have a finite number of elements
한정된 element를 가지고 있다는 가정
는 내가 바로 직전에 무엇을 했느냐에만 영향을 받는다
p(s’, r | s, a) : 현재 s에서 a를 한 상태에서 s’로 넘어가면서 r이라는 보상을 받을 확률
a dynamic function p: S × R × S × A → [0,1] (→ 4개의 파라미터 사용)
p
는 environment에서 어떻게 행동했을 때 얘가 나한테 뭘 줄 수 있는지를 정의하는 것Why do we use Markov Property?
It enables theoretical proofs of RL
바로 이전에만 고려해도 된다. 학습을 할 때 loop를 돌아야 하는데 수많은 루프를 계속 돌리려면 힘들다.
더 효율적으로 하기 위해서
이전 것들을 모두 고려해서 결정을 내리는 거나 이전것만 고려하는 거랑 똑같은 확률을 갖도록 한다 → 메모리 절약 가능
four-argument dynamics functio**n
: p(s′, r | s, a)
three-argument state-transition probability function
: p(s′ | s, a)
expected rewards for **state-action** pairs as a **two-argument function
: r(s, a)
expected rewards for state-action-next state triples as a **three**-argument function
: r(s, a, s′)
✔ Example
주머니에 100원 500 동전에 각각 하나씩 들어있다. 각가의 동전을 뽑을 확률이 1/2씩이다.
→ 주머니에서 하나의 동전을 뽑았을 때 가져올 수 있는 기대값 : 0/5 100 + 0.5 500
→ 여기서 Reward : 100, 500 / Reward가 나올 확률 : 0.5
→ 이 둘을 곱하면 기댓값이 되는거고 시그마로 전체 모든 가능한 r에 대해 계산하는 것이다.
모바일 로봇이 비어있는 소다 캔을 오피스에서 주워담는다. 센서로 센싱해서 arm을 이용해 주어담는다. 로봇 등에는 충전이 필요한 배터리가 있다. 로봇에는 컨트롤 시스템이 있다. 캔을 어떻게 찾을지를 강화학습에 의해 결정한다.
이 글은 강형엽 교수님의 게임공학[GE-23-1] 수업을 수강하고 정리한 내용입니다.
[mdpw] https://en.wikipedia.org/wiki/Markov_decision_process
[sutton] Sutton, R. S., & Barto, A. G. (2018). Reinforcement learning: An introduction. MIT press