이 글은 서강대 가상융합 전문대학원(구 메타버스 전문대학원) 강화학습 자료를 기반으로 작성되었습니다.
MDP와 벨만 방정식: 강화학습을 지탱하는 수학적 뼈대
강화학습(Reinforcement Learning)의 이론적 근간은 마르코프 의사결정 과정(Markov Decision Process, MDP)이다. MDP는 “에이전트가 환경과 상호작용하며 시간에 따라 최적의 의사결정을 학습하는 과정”을 확률적 수식으로 모델링한 체계다. 이때 에이전트는 현재의 상태(State)를 관찰하고, 가능한 행동(Action) 중 하나를 선택하여 수행한다. 그 결과로 환경은 새로운 상태와 보상(Reward)을 반환하며, 이 상호작용이 시간의 흐름에 따라 연속적으로 반복된다.
MDP는 다섯 가지 요소로 정의된다: 상태공간(S), 행동공간(A), 전이확률(P), 보상함수(r), 감쇠계수(γ). 이 중 핵심은 마르코프 성질(Markov Property)이다. 즉, “미래는 과거에 의존하지 않고 현재 상태와 행동에 의해서만 결정된다.” 이 단순하지만 강력한 가정 덕분에, 복잡한 연속 의사결정 문제를 단계별 확률 모델로 단순화할 수 있다. 이를 시각적으로 표현한 대표적인 환경이 GridWorld이다. 에이전트는 격자 위를 이동하며, 벽은 피하고 목표 지점에 도달해야 한다. 매 이동마다 -0.04의 비용이 부여되고, 목표에 도달하면 +1의 보상을 받으며, 구덩이에 빠지면 -1의 보상을 받는다. 감쇠율 0.99는 “미래의 보상일수록 현재 가치가 약간 줄어든다”는 의미를 지닌다. 이 예시는 단순하지만, 실제로는 MDP의 모든 수학적 원리가 이 안에 녹아 있다. 에이전트가 어떤 방향으로 이동하더라도 항상 확률적으로 결과가 결정되며, 그 확률적 불확실성을 고려해 기대 보상(expected return)을 극대화하는 정책을 학습하는 것이 목표이다.
강화학습의 핵심 질문은 “이 상태는 얼마나 좋은가?”이다. 이를 정량화한 것이 상태가치 함수 $v_\pi$ 이며, “특정 상태에서 시작해 정책 π를 따를 때 얻게 될 누적 기대 보상”을 의미한다. 반면 행동가치 함수$q_\pi$는 “특정 상태에서 특정 행동을 했을 때의 기대 보상”을 계산한다. 이 두 함수는 서로 긴밀하게 연결된다. 상태가치는 모든 행동의 행동가치를 정책이 선택할 확률로 평균낸 값이고, 행동가치는 즉시 보상과 다음 상태의 기대가치를 더한 값으로 표현된다. 즉, 두 함수는 동일한 개념을 다른 시점에서 바라본 “쌍둥이 관계”이다. 이 관계를 수학적으로 표현한 것이 Bellman 기대 방정식(Bellman Expectation Equation)이다. 이는 “현재의 가치는 즉시 보상과 미래의 기대 가치의 합으로 표현된다”는 재귀적 정의를 공식화한 것이다. 이 방정식 덕분에 강화학습은 ‘과거 전체의 기록’을 기억할 필요 없이, 현재 상태의 기대값만으로도 학습을 진행할 수 있게 된다.(즉 벨만 방정식을 통해 각 상태나 행동의 가치를 계산하고, 이렇게 계산된 가치를 기반으로 정책을 결정한다)
Bellman 방정식의 가장 중요한 철학은 자기 일관성(self-consistency)이다. 즉, “현재의 가치 추정은 미래의 가치 추정과 모순되지 않아야 한다.” 이 원리를 기반으로 한 Bellman 연산자 $T_\pi$는 현재의 가치함수를 입력으로 받아 즉시 보상과 감쇠된 미래가치를 결합해 새로운 가치 추정값을 산출한다. 이 연산자는 감쇠율 γ에 의해 수축성(contraction)을 갖는다. 즉, 서로 다른 두 가치함수의 차이는 반복할수록 γ배씩 줄어들며, 결국 하나의 고정점(유일한 해)으로 수렴한다. 이 현상은 Banach 고정점 정리로 수학적으로 증명된다. 이를 통해 Bellman 연산자는 “아무 값에서 시작하더라도 올바른 상태가치로 수렴한다”는 정확성과 안정성을 보장한다. 즉, 강화학습의 ‘학습 과정이 반드시 수렴한다’는 사실의 수학적 근거가 되는 셈이다.
MDP에서의 궁극적 목표는 “모든 상태에서 기대 보상을 최대화하는 정책(π*)”을 찾는 것이다. 이를 위해 정의되는 것이 최적 상태가치 함수(v)와 최적 행동가치 함수(q)이다. 각각 모든 가능한 정책 중에서 가장 높은 기대 보상을 제공하는 함수이다. Bellman 최적 방정식(Bellman Optimality Equation)은 “한 상태의 최적 가치는, 가능한 모든 행동 중 즉시 보상과 미래 기대 가치의 합이 가장 큰 경우로 정의된다.” 즉, 기대값 대신 ‘최댓값’을 취하는 형태로 정의되며, 이 때문에 비선형적이고 해석적으로 풀기가 어렵다. 하지만 이 방정식은 “최적정책의 존재”를 이론적으로 보장한다는 점에서 결정적인 의미를 가진다. 최적 행동가치 역시 같은 원리를 따른다. 어떤 행동을 선택했을 때의 즉시 보상과, 그 결과 도달할 다음 상태에서의 가장 높은 행동가치의 합으로 표현된다. 이때 최적정책은 각 상태에서 행동가치가 최대가 되는 행동을 선택함으로써 자연스럽게 도출된다.
Bellman 방정식이 수학적 토대라면, 이를 실제로 푸는 절차적 방법이 동적 프로그래밍(Dynamic Programming, DP)이다. DP는 환경의 전이확률과 보상함수가 알려져 있을 때 사용할 수 있으며, 정책 반복(Policy Iteration, PI)과 가치 반복(Value Iteration, VI)의 두 가지 접근법이 존재한다. 정책 반복(PI)은 정책평가와 정책개선을 번갈아 수행한다. 먼저 주어진 정책이 얼마나 좋은지를 평가한 뒤, 더 나은 정책으로 갱신한다. 이 과정을 반복하다 보면 정책이 더 이상 변하지 않고, 그 시점의 정책이 최적정책이 된다. 가치 반복(VI)은 평가와 개선을 동시에 수행한다. 각 상태에서 즉시 보상과 다음 상태의 최대 기대가치를 직접 이용하여 가치함수를 갱신한다. 계산은 간결하지만 반복 횟수가 많고, 반대로 정책 반복은 계산이 복잡하지만 적은 횟수로 수렴한다. 이 두 방법은 서로 다른 계산 효율을 가지지만, 결국 모두 최적정책으로 수렴한다는 점에서 동일한 목표를 가진다.
Bellman 연산자는 수축성을 갖기 때문에, 가치 반복에서의 오차는 반복할수록 지수적으로 감소한다. 즉, 매 반복마다 오차가 감쇠율(γ)만큼 줄어들며, 충분히 많은 반복 후에는 임의의 초기값에서도 최적가치에 매우 근접하게 된다. 이 과정에서 “오차의 상한(error bound)”을 이용하면 학습을 언제 중단해야 하는지도 판단할 수 있다. 즉, 변화량이 충분히 작아져 더 이상 개선 여지가 없을 때 그 시점을 “ε-최적해(ε-optimal solution)”로 간주한다. 이는 현실적인 계산 효율을 확보하면서도 근사적으로 최적에 가까운 결과를 보장하는 실용적 기준이다. 다만 상태공간과 행동공간이 커질수록 계산량은 기하급수적으로 증가한다. 정책 반복과 가치 반복 모두 상태와 행동의 수에 따라 복잡도가 제곱 이상으로 증가하며, γ가 1에 가까워질수록 수렴 속도가 느려진다. 이로 인해 실제 대규모 문제에서는 근사기법(approximation methods)이나 샘플 기반 학습(예: Monte Carlo, Temporal Difference)을 사용하게 된다.
Bellman 방정식의 위대함은 “복잡한 미래를 단 하나의 현재 식으로 요약할 수 있다”는 데 있다. 즉, 강화학습의 모든 계산은 결국 ‘지금의 보상 + 미래 가치의 기대값’이라는 하나의 재귀 구조로 환원된다. 이 단순한 관계식이 수학적으로는 수축사상 정리를 통해 수렴성을 보장하고, 컴퓨터 알고리즘으로는 반복 계산을 통해 최적정책을 산출하게 한다. Bellman의 통찰은 단순한 수식이 아니라, “지능형 의사결정의 원리” 그 자체다. 현재의 선택이 미래의 결과를 바꾸며, 그 미래는 다시 현재의 선택을 평가한다. 이 자기 일관적 순환의 논리가 바로 강화학습의 본질이자 AI가 스스로 학습할 수 있는 이론적 기반이다
'Reinforcement learning' 카테고리의 다른 글
| [강화학습 정복하기] 6강: DQN의 탄생-딥러닝이 강화학습을 만났을 때 (Replay Buffer & Target Network) (0) | 2025.12.22 |
|---|---|
| [강화학습 정복하기] 5강: Q-learning vs SARSA: 지도 없이 길을 찾는 방법 (0) | 2025.12.22 |
| [강화학습 정복하기] 3강: 첫 번째 실습 CartPole: 엡실론-그리디(ε-greedy)로 균형 잡기 (0) | 2025.12.22 |
| [강화학습 정복하기] 2강: 강화학습을 위한 PyTorch 기초: 텐서부터 오토그라드까지 (0) | 2025.12.22 |
| [강화학습 정복하기] 1강: 인공지능은 어떻게 걷는 법을 배우나? (0) | 2025.12.22 |