강화학습이란?
강화학습(Reinforcement Learning)은 스스로 행동하면서 보상을 최대화하는 방법을 배우는 알고리즘입니다.
딥러닝이나 지도학습처럼 ‘정답’(라벨링 등)을 주지 않고, 행동 → 결과 → 보상만으로 학습합니다.
- 주요 구성 요소
- Agent(행위자): 학습을 수행하는 주체 (예: 로봇 청소기, 게임 캐릭터)
- Environment(환경): 에이전트가 상호작용하는 세계
- State(상태): 현재 상황 정보
- Action(행동): 선택 가능한 움직임
- Reward(보상): 행동의 즉각적인 피드백
강화학습 예시 - 미로를 탈출하는 로봇 청소기
로봇 청소기가 미로를 탈출한다고 가정해봅시다.
- 에이전트: 로봇 청소기
- 환경: 미로
- 상태: 현재 위치
- 행동: 상하좌우 이동
- 보상: 출구에 가까워지면 +1, 막다른 길이면 -1
로봇은 수없이 미로를 돌아다니면서 어떻게 움직여야 가장 빨리 출구를 찾을지 스스로 학습합니다.
이때 중요한 게 ‘이 행동이 장기적으로 어떤 이득을 줄까?’를 계산하는 가치 함수(Value Function)입니다.
벨만 방정식이란?
벨만 방정식(Bellman Equation)은 이 가치 함수를 수학적으로 표현한 핵심 식입니다.
즉, 현재 상태에서 최선의 선택을 하려면 미래의 기대 보상까지 고려해야 한다는 원리입니다.
가치 함수 V(s)는 상태 s에서 받을 수 있는 최대 기대 보상을 나타냅니다.
벨만 방정식 (Value Function)
- R(s): 현재 상태의 즉시 보상
- \gamma: 할인율 (0~1) 미래 보상의 현재 가치 반영
- P(s’|s,a): 행동 a를 했을 때 상태 s’로 갈 확률
미로 게임에서 벨만 방정식은 이렇게 해석할 수 있습니다.
현재 위치의 가치는? = 지금 당장 받는 보상 + (다음 위치들의 가치 × 확률 × 할인율)
즉, 로봇은 한 번의 이동으로 끝나는 게 아니라, 앞으로도 계속 움직이며 받을 보상까지 모두 고려해 현재 행동을 결정합니다.
요약
- 강화학습은 스스로 시행착오(행동 -> 보상)로 배우는 학습 방법이다.
- 벨만 방정식은 가치 함수의 자기참조식으로, 현재 가치 = 즉시 보상 + 미래 가치로 표현된다.
- 이 식 덕분에 Q-Learning, DQN 같은 다양한 강화학습 알고리즘이 발전했다.
참고
- Sutton & Barto, Reinforcement Learning: An Introduction(1998)
- Richard Bellman, The Theory of Dynamic Programming(1954) q