🚨해당 게시글에 포함된 이미지 중 출처가 쓰여있지 않은 이미지는 모두 직접 그렸습니다.
2.1. 마르코프 프로세스(Markov Process)

위의 그림은 아이가 잠이 들 때 벌어지는 상황을 마르코프 프로세스로 모델링한 그림이다. 아이가 취할 수 있는 상태의 종류는 총 5가지로, 아이가 하나의 상태로 진입하게 되면 해당 상태에서 1분씩 머물게 된다. 1분이 지나면 다음 상태로 전이한다. 아이가 잠에 드는 과정은 항상 자리에 눕는 것으로 부터 시작하기 때문에 마르코프 프로세스의 첫 상태는 s0이다. 아이가 잠이 들어 s4 상태에 도달하는 순간 마르코프 프로세스는 끝이 난다.

- 상태의 집합 S
가능한 상태들을 모두 모아놓은 집합이다. 아이가 잠드는 마르코프 프로세스에서는 집합의 원소가 $s_0, s_1, s_2, s_3, s_4$로 총 5개이다.
- 전이 확률 행렬 P
전이 확률은 상태 s에서 다음 상태 s'에 도착할 확률을 가리킨다. 전이 확률 행렬이라고 부르는 이유는 각 상태 s와 s'에 대해 행렬의 형태로 표현할 수 있기 때문이다. 아이가 잠드는 마르코프 프로세스에서 P_{ss'}를 행렬로 표현해보면 아래와 같은 행렬이 생긴다.

2.1.1. 마르코프 성질
위에서 설명한 과정의 이름이 “마르코프” 프로세스인 이유는 마르코프 프로세스의 모든 상태가 마르코프 성질을 따르기 때문이다. 마르코프 성질을 따른다는 것의 정의와 뜻은 다음과 같다.

- 마르코프한 상태
체스 게임을 생각해보자. 현재 상황에서 해야 하는 일과 과거 경기 양상이 어떠했는지 여부는 아무런 관련이 없다. 당장 맞닥뜨린 상황을 잘 읽고 미래를 내다보며 최선의 수를 둬야하는 것이다. 따라서 체스 판의 상태를 마르코프한 상태라고 할 수 있다.
- 마르코프하지 않은 상태
운전하고 있는 운전자의 상태를 생각해보자. 특정 시점에 사진을 찍어서 그 사진으로만 운전을 해야 한다고 하면 이해가 쉽다. 특정 시점의 사진만 보고 브레이크를 밟아야 할지, 엑셀을 밟아야 할지, 앞으로 가야할지, 뒤로 가야할지 알 수 없다. 따라서 운전자의 상태는 마르코프한 상태가 아니다. 하지만 여기서, 최근 10초동안의 사진 10장을 묶어서 상태로 제공한다면 완전히 마르코프한지는 모르겠지만 마르코프한 상태에 가까워짐을 알 수 있다.
마르코프한 상태도 있고, 마르코프하지 않은 상태도 있지만, 어떤 현상을 마르코프 프로세스로 모델링 하려면 상태가 마르코프해야 하며, 단일 상태 정보만으로도 정보가 충분하도록 상태를 잘 구성해야한다.
2.2. 마르코프 리워드 프로세스(Markov Reward Process)

위의 그림과 같이 마르코프 프로세스에 보상의 개념이 추가되면 마르코프 리워드 프로세스가 된다. 따라서, 이제는 어떤 상태에 도착하게 되면 그에 따르는 보상을 받게 된다.

- 상태의 집합 S
가능한 상태들을 모두 모아놓은 집합이다.
- 전이 확률 행렬 P
전이 확률은 상태 s에서 다음 상태 s’에 도착할 확률을 가리킨다.
- 보상함수 R
R은 어떤 상태 s에 도착했을 때 받게 되는 보상을 의미한다.

여기서 기댓값이 등장한 이유는 특정 상태에 도달했을 때 받는 보상이 매번 조금씩 다를 수도 있기 때문이다. 예를 들어, 어떤 상태에 도달하면 500원짜리 동전을 던져서 앞면이 나오면 500원을 갖고 뒷면이 나오면 갖지 못한다고 할 때, 보상의 값이 매번 바뀌지만 그 기댓값은 250원으로 정해진다.
- 감쇠 인자 γ
γ는 0에서 1사이의 숫자이다. 강화 학습에서 미래 얻을 보상에 비해 당장 얻는 보상을 얼마나 더 중요하게 여길 것인지를 나타내는 파라미터이다. 미래에 얻을 보상의 값에 γ가 여러 번 곱해지며 그 값을 작게 만드는 역할을 한다. γ는 리턴을 이해한 뒤에 다시 살펴보자.
2.2.1. 감쇠된 보상의 합, 리턴
MRP에서는 MP와 다르게 상태가 바뀔 때마다 해당하는 보상을 얻는다. 상태 s0에서 보상 R0을 받고 시작하여 종료 상태인 sT에 도착할 때 보상 RT을 받으며 끝이난다. 그러면 s0에서 시작하여 sT까지의 여정은 다음과 같다. s0,R0,s1,R1,s2,R2,…,sT,RT 이와 같은 여정을 강화학습에서는 에피소드(episode)라고 한다. 이러한 표기법을 이용하여 리턴 Gt를 정의할 수 있다.

보다시피 현재 타임 스텝이 t라면 그 이후에 발생하는 모든 보상의 값을 더해준다.
리턴은 강화 학습에서 정말 중요한 개념이다. 리턴은 과거의 보상을 고려하지 않고 미래의 보상을 통해서 정의된다는 것을 유념해야한다. “강화 학습은 보상을 최대화하도록 학습하는 것이 목적이다”는 엄밀하게 얘기하면 틀린 말이다. 강화 학습은 보상이 아니라 리턴을 최대화하도록 학습하는 것이다.
→ 보상의 합인 리턴이 바로 우리가 최대화하고싶은 궁극의 목표!
2.2.2. γ는 왜 필요할까?
- 수학적 편리성
γ를 1보다 작게 해줌으로써 리턴값이 무한의 값을 가지는 것을 방지할 수 있다. 즉, 에피소드에서 얻는 각각의 보상의 최댓값이 정해져있다면, Gt는 유한하다. 그렇게 때문에 이후에 어떤 상태로부터 리턴을 예측하는 것이 가능해진다.
- 사람의 선호 반영
당장 5만원권 20장, 100만원을 받는 것과 5년 후에 100만원을 받는 것을 생각해보자. 사람은 기본적으로 당장 벌어지는 눈 앞의 보상을 선호한다. 따라서 에이전트도 그렇다.
- 미래에 대한 불확실성 반영
현재와 미래 사이에는 다양한 확률적 요소들이 있고 이로 인해 당장 느끼는 가치에 비해 미래에 느끼는 가치가 달라질 수 있다. 그렇기 때문에 미래의 가치에는 불확실성을 반영하고자 감쇠를 해준다.
2.2.3. MRP에서 각 상태의 밸류 평가하기
예를 들어 아이가 잠드는 MRP에서 눈을 감고 있는 상태 s2의 밸류 혹은 가치를 숫자 하나로 딱 평가하고 싶다면? 정답은 리턴의 기댓값을 사용하는 것이다. 이를 이해하기 위해 “에피소드를 샘플링한다”는 개념을 먼저 보자.
2.2.4. 에피소드의 샘플링
하나의 에피소드 안에서 방문하는 상태들은 매번 다르고 그에 따라 리턴도 달라진다. 강화학습에서 사용되는 용어를 빌려 말하면 매번 에피소드가 어떻게 샘플링되느냐에 따라 리턴이 달라진다는 것이다. 샘플링이란 sample에 ing가 더해져서 샘플을 뽑아본다는 뜻을 가진다. 어떤 확률 분포가 있을 때 해당 분포에서 샘플을 뽑아보는 것이 샘플링이다. 우리에게 P(전이 확률 행렬)가 주어져 있기 때문에 이런 샘플들은 원한다면 무한히 뽑아낼 수 있다.
2.2.5. 상태 가치 함수(State Value Function)
2.2.3.에서 우리는 상태를 어떻게 하면 주어진 상태 s의 가치를 평가할 수 있을까?에서 출발하였다.
그래서 상태 가치 함수라는 것을 가정해보자. 상태 가치 함수는 상태를 인풋으로 넣으면 그 상태의 밸류를 아웃풋으로 출력하는 함수이다. 에피소드마다 리턴이 다르기때문에 어떤 상태 s의 밸류 v(s)는 기댓값을 이용하여 정의한다.

하지만 기댓값을 구하려면 에피소드별로 해당 에피소드가 발생할 확률과 그때의 리턴값을 곱해서 더해주어야한다. 가능한 에피소드가 무한히 많기 때문에 이런 접근법은 현실적으로 불가능하고, 샘플로 얻은 리턴의 평균을 통해 밸류를 근사하게나마 계산해볼 수 있다. 더 정확한 방법은 다음 챕터부터 시작된다.
2.3. 마르코프 결정 프로세스(Markov Decision Process)
MP나 MRP에서는 상태변화가 자동으로 이루어졌기 때문에 MP나 MRP만 가지고는 순차적 의사결정 문제를 모델링 할 수 없다. 순차적 의사결정에서는 의사결정이 핵심이기 때문이다. 그래서 의사결정에 관한 부분이 모델에 포함되어 있어야 한다.
2.3.1. MDP의 정의
MDP는 MRP에 에이전트가 더해진 것이다. 에이전트는 각 상황마다 액션을 취한다. 해당 액션에 의해 상태가 변하고 그에 따른 보상을 받는다. 따라서 MDP를 정의하기 위해서는 액션의 집합 A가 추가된다.

- 상태의 집합 S
가능한 상태들을 모두 모아놓은 집합이다.
- 액션의 집합 A
에이전트가 취할 수 있는 액션들을 모아 놓은 것이다. 에이전트는 스텝마다 액션의 집합 중에서 하나를 선택하며 액션을 취하며, 그에 따라 다음에 도착하게 될 상태가 달라진다.
- 전이 확률 행렬 P

전이 확률은 현재 상태가 s이며 에이전트가 액션 a를 선택했을 때 다음 상태가 s'이 될 확률 (같은 상태 s에서 같은 액션 s를 선택해도 매번 다른 상태에 도착할 수 있다. 액션 실행 후 도달하는 상태 s'에 대한 확률 분포가 있고 그게 바로 전이 확률 행렬 P이다)
- 보상함수 R
상태 s에서 액션 a를 선택하면 받는 보상을 가리킨다.

- 감쇠 인자 γ
γ는 0에서 1사이의 숫자로 MRP에서의 γ와 같다.
2.3.2. 아이 재우기 MDP

아이가 잠드는 상황에서 어머니라는 에이전트가 개입되었다고 하자. 어머니가 선택할 수 있는 액션은 a0, a1이다. 아이가 눈을 감은 상태인 s2에서 아이에게 놀아주는 액션을 선택하면 다음 상태는 그날 아이의 상태에 따라 s0가 될 수도 있고, s1이 될 수도 있다.

위의 그림과 같은 상황에서는 보상의 합을 최대화하기 위해서 어머니는 a0만을 선택하면 아이가 잠드는 상태에 도달하여 큰 보상을 받고 에피소드가 끝난다. 하지만, MDP가 복잡해지면 최적 행동을 바로 찾을 수 있을까?

이전 MDP에 비해 그림이 많이 복잡해졌다. 위 그림의 MDP가 나름 복잡해졌다고는 하나 실제 세계에서 마주하는 MDP는 훨씬 복잡하다.
이처럼 복잡한 MDP에서 결국 우리가 찾고자 하는 것은 각 상태 s에 따라 어떤 액션 a를 선택해야 보상의 합을 최대로 할 수 있는가이다. 이것을 강화 학습의 언어에서는 정책(Policy)이라고 한다.
2.3.3. 정책 함수와 2가지 함수
- 정책 함수
정책 혹은 정책 함수는 각 상태에서 어떤 액션을 선택할지 정해주는 함수이다. 예를 들어, 아이를 재우려는 어머니의 입장에서 아이의 상태에 따라 a0을 선택할지, a1을 선택할지 결정해야한다. 이것을 어머니의 정책이라고 할 수 있다. 정책 함수를 이용하여 정의하면 아래와 같다.

따라서 이전의 MDP 속 상태 s0에서 선택할 수 있는 액션은 a0, a1, a2 세 가지이고 정책함수는 아래와 같은 값으로 설정할 수 있다.

각 상태에서 할 수 있는 모든 액션의 확률 값을 더하면 1이 되어야한다. 에이전트가 각 상태일 때 액션 선택에 대한 운용 방침을 담고 있어서 이를 정책이라고 한다. 환경은 변하지 않지만 에이전트는 자신의 정책을 언제든 수정할 수 있다. 더 큰 보상을 얻기 위해 계속해서 정책을 교정해 나가는 것이 곧 강화학습이다.
- 상태 가치 함수
어떤 상태가 주어졌을 때 그 상태를 평가해주는 함수이다. 가치 함수를 정의하기 위해서는 먼저 정책 함수 π가 정의되어야한다. π가 주어졌다고 가정했을 때 가치함수는 아래와 같다.

- 액션 가치 함수
그렇다면 해당 상태의 액션도 평가할 수 있지 않을까? 그렇다면 그 중에 가장 가치있는 액션을 선택할 수 있다.

2.4. Prediction과 Control
큰 흐름에서 강화 학습이라는 것을 문제와 솔루션으로 나누어서 본다면 이번 챕터의 내용은 문제를 세팅하는 단계에 해당한다고 볼 수 있다. 문제의 세팅이라 함은 주어진 상황이 있을 때 이를 MDP의 형태로 만들어서, MDP를 풀고자 하는 것이다.
MDP를 푼다는 것은 어떤 의미일까? MDP가 주어졌을 때, 즉 (S,A,P,R,γ)이 주어졌을 때, 우리가 관심있어하는 태스크는 크게 Prediction과 Control이 있다.
Prediction : π가 주어졌을 때 각 상태의 밸류를 평가하는 문제
Control : 최적 정책 π*를 찾는 문제

위와 같은 그리드 월드를 생각해보자. 시작에서 종료까지 도착하면 한 에피소드가 끝나며, 스텝마다 -1의 보상을 받는 상황이다. 따라서 누적 보상을 최대화하고자 한다면 최단 경로를 지나 종료 상태에 도착해야한다.
Prediction 문제에서는 일단 정책 π가 하나 주어져야한다. π는 단순하게 4방향으로 랜덤하게 움직이는 정책이라고 하자.

여기서 s11의 밸류 v_π(s11)는 무엇이 될까? 하는 문제가 Prediction 문제이다. 해당 상태의 밸류를 예측하는 것이 목적이다.
Control의 목적은 최적의 정책을 찾는 것이다. 최적의 정책이란 이 세상에 존재하는 π 중에서 가장 기대 리턴이 큰 π를 뜻한다. 최적정책 π를 따를 때의 가치함수를 최적 가치 함수(optimal value function)이라고 하며 v라고 표기한다.
π와 v를 찾았다면 이 MDP는 풀렸다고 말할 수 있다.
→ 강화학습을 이용해 실생활의 어떤 문제를 MDP 형태로 만들고, 그 MDP의 최적 정책과 최적 가치 함수를 찾아내어 MDP를 푸는 것이 목적이다.
'ML,DL' 카테고리의 다른 글
| [바닥부터 배우는 강화학습] Chapter 4 MDP를 알 때의 플래닝 (0) | 2026.03.09 |
|---|---|
| [바닥부터 배우는 강화학습] Chapter 3 벨만 방정식 (0) | 2026.02.21 |
| [바닥부터 배우는 강화학습] Chapter 1 강화 학습이란 (0) | 2026.02.10 |
| [cs231n] 컨볼루션 신경망 : 구조, Convolution / Pooling 레이어들 (0) | 2026.02.06 |
| [cs231n] 신경망 파트 3 : 학습 및 평가 (0) | 2026.02.05 |