로봇 학습이라는 말을 들으면 처음에는 조금 막연하게 느껴질 수 있습니다.
지도학습처럼 정답을 바로 주는 것도 아니고, 비지도학습처럼 데이터의 구조만 찾는 것도 아닙니다.
그렇다면 로봇은 무엇을 기준으로, 어떻게 더 나은 행동을 배우게 될까요?
강화학습은 이 질문에 대한 가장 대표적인 답 중 하나입니다.
아주 단순하게 말하면, 잘한 행동에는 보상을 주고, 좋지 않은 행동에는 낮은 보상을 주면서 점점 더 나은 행동을 배우는 방식입니다.
다만 여기서 중요한 것은 단순히 “보상을 준다”는 말이 아닙니다.
강화학습의 핵심은 지금 당장의 이득만 보는 것이 아니라, 앞으로 더 큰 보상을 얻기 위해 현재 어떤 행동을 해야 하는지 배우는 것에 있습니다.
이번 글에서는 강화학습이 무엇인지, 에이전트와 환경은 무엇인지, 밴디트 문제와 MDP는 왜 중요한지, 그리고 벨만 방정식이 왜 계속 등장하는지까지 차근차근 정리해보겠습니다.
강화학습은 무엇일까
머신러닝을 처음 배울 때는 보통 지도학습부터 접하게 됩니다.
예를 들어 고양이 사진과 강아지 사진을 많이 보여주고 정답 라벨을 함께 주면, 모델은 점점 둘을 구분하는 법을 배우게 됩니다.
그런데 로봇이 현실 세계에서 움직이는 문제는 이렇게 단순하지 않습니다.
로봇에게는 항상 정답 행동이 딱 주어져 있지 않을 수 있고, 현재 행동의 결과가 몇 초 뒤 혹은 몇십 단계 뒤에 나타날 수도 있습니다.
예를 들어 로봇이 미로를 탈출하는 상황을 생각해보겠습니다.
- 지금 왼쪽으로 가는 행동이 당장은 별 의미 없어 보일 수 있습니다.
- 하지만 그 선택이 나중에 올바른 경로로 이어질 수도 있습니다.
- 반대로 지금 당장은 괜찮아 보이는 행동이 나중에 막다른 길로 이어질 수도 있습니다.
즉 강화학습은
행동 하나하나를 정답과 비교하는 방식이라기보다,
행동의 결과로 쌓이는 보상의 흐름을 보고 더 좋은 정책을 찾는 방식이라고 볼 수 있습니다.
에이전트와 환경
강화학습을 이해할 때 가장 먼저 알아야 하는 두 단어가 있습니다.
에이전트
행동을 선택하는 주체입니다.
로봇 문제에서는 보통 로봇 자체가 에이전트라고 생각하면 됩니다.
환경
에이전트가 상호작용하는 바깥 세계입니다.
시뮬레이터 속 공간일 수도 있고, 실제 공장이나 실내 환경일 수도 있습니다.
강화학습은 결국 이 둘의 반복적인 상호작용으로 설명됩니다.
- 에이전트가 현재 상태를 관찰합니다.
- 그 상태에서 어떤 행동을 할지 선택합니다.
- 환경이 그 행동에 반응해 다음 상태로 바뀝니다.
- 에이전트는 보상을 받습니다.
- 이 과정을 반복하면서 점점 더 나은 행동 전략을 배웁니다.
이 구조는 생각보다 중요합니다.
왜냐하면 강화학습에서는 데이터셋이 미리 완성되어 있는 것이 아니라,
에이전트가 행동하면서 스스로 데이터를 만들어낸다는 특징이 있기 때문입니다.

상태, 행동, 보상
이제 강화학습의 가장 기본적인 세 가지 요소를 보겠습니다.
상태(State)
현재 상황을 나타내는 정보입니다.
예를 들어 CartPole 문제에서는 카트의 위치, 속도, 막대의 각도, 각속도 같은 값이 상태가 됩니다.
로봇 팔이라면 관절 각도, 관절 속도, 말단 위치 등이 상태가 될 수 있습니다.
쉽게 말하면 상태는
에이전트가 지금 어떤 상황에 놓여 있는지를 표현한 정보입니다.
행동(Action)
에이전트가 선택할 수 있는 조작입니다.
왼쪽으로 이동, 오른쪽으로 이동처럼 이산적인 행동일 수도 있고,
관절 토크를 얼마 줄지처럼 연속적인 행동일 수도 있습니다.
즉 행동은
현재 상태에서 에이전트가 환경에 가할 수 있는 선택입니다.
보상(Reward)
에이전트가 지금 한 행동이 얼마나 좋았는지를 알려주는 신호입니다.
목표에 가까워지면 플러스, 충돌하면 마이너스, 넘어지면 큰 패널티처럼 설계할 수 있습니다.
여기서 중요한 점은 보상이 “정답”은 아니라는 것입니다.
보상은 그저 학습 방향을 알려주는 점수에 가깝습니다.
강화학습이 어려운 이유
겉으로 보면 강화학습은 단순해 보일 수 있습니다.
좋은 행동에는 점수를 주고, 나쁜 행동에는 점수를 덜 주면 될 것 같기 때문입니다.
그런데 실제로는 몇 가지 어려운 문제가 있습니다.
지금 행동의 결과가 나중에 나타난다
어떤 행동이 정말 좋았는지는 바로 알기 어려운 경우가 많습니다.
예를 들어 지금 오른쪽으로 한 칸 움직인 것이 좋은 선택이었는지는, 몇 단계 뒤에 목표에 도달했을 때 비로소 알 수 있을 수 있습니다.
이 문제를 흔히 credit assignment problem이라고 생각하면 됩니다.
즉, 나중에 얻은 좋은 결과를 과거의 어떤 행동 덕분이라고 봐야 하는지 정하는 것이 어렵습니다.
탐험과 활용의 균형이 필요하다
지금까지 잘 된 행동만 계속 반복하면 당장은 안정적일 수 있습니다.
하지만 더 좋은 행동이 있을 가능성을 영영 놓칠 수도 있습니다.
반대로 새로운 행동을 너무 많이 시도하면 학습이 불안정해집니다.
즉 강화학습은 항상
이미 괜찮아 보이는 행동을 활용할 것인가,
아니면
더 나은 선택을 찾기 위해 탐험할 것인가
사이에서 균형을 잡아야 합니다.
밴디트 문제
강화학습 기초를 설명할 때 자주 등장하는 예제가 바로 밴디트 문제입니다.
처음 보면 이름이 낯설지만 직관은 꽤 단순합니다.
여러 개의 슬롯머신이 있다고 가정해보겠습니다.
각 슬롯머신은 보상을 줄 확률이 다릅니다.
그런데 우리는 처음에는 어떤 슬롯머신이 가장 좋은지 모릅니다.
이때 해야 할 일은 두 가지입니다.
- 이것저것 눌러보며 좋은 기계를 찾아보기
- 어느 정도 판단이 서면 가장 좋은 기계를 계속 활용하기
이것이 바로 강화학습에서 자주 말하는 탐험과 활용의 가장 단순한 형태입니다.
밴디트 문제는 상태 변화가 없기 때문에 강화학습 전체로 보면 아주 단순한 버전입니다.
하지만 왜 강화학습이 어려운지, 왜 “잘 되는 것만 계속 하면 안 되는지”를 설명하기에는 매우 좋은 예시입니다.
탐험과 활용
이 개념은 강화학습 전체를 이해하는 데 정말 중요합니다.
활용(Exploitation)
지금까지 경험한 결과를 바탕으로 가장 좋아 보이는 행동을 선택하는 것입니다.
탐험(Exploration)
아직 충분히 시도해보지 않은 행동도 선택해보는 것입니다.
예를 들어 로봇이 특정 방향으로만 자꾸 움직이는 정책을 익혔다고 해보겠습니다.
초반에는 그 방법이 꽤 괜찮아 보여서 보상을 조금씩 얻을 수 있습니다.
하지만 다른 방향으로 갔을 때 훨씬 더 좋은 결과가 나올 가능성도 있습니다.
그래서 강화학습에서는 종종 ε-greedy 같은 단순한 전략을 씁니다.
대부분의 시간에는 현재 가장 좋아 보이는 행동을 선택하되,
일정 확률로는 일부러 다른 행동도 시도해보는 방식입니다.
이 개념은 단순하지만 매우 강력합니다.
왜냐하면 학습 초반에는 어느 행동이 좋은지 모르기 때문에,
조금 어설프더라도 다양한 경험을 모아야 하기 때문입니다.
마르코프 결정 과정, MDP
이제 강화학습을 조금 더 체계적으로 설명할 때 꼭 등장하는 개념이 있습니다.
바로 마르코프 결정 과정, 영어로는 Markov Decision Process, 줄여서 MDP입니다.
이 이름은 처음 보면 어렵게 느껴지지만, 실제 의미는 생각보다 명확합니다.
강화학습 문제를 수학적으로 표현하기 위한 기본 틀이라고 생각하면 됩니다.
즉,
- 지금 어떤 상태에 있고
- 어떤 행동을 선택할 수 있으며
- 그 행동을 하면 다음 상태가 어떻게 바뀌고
- 어떤 보상을 받는가
를 하나의 구조로 정리한 것이 MDP입니다.
왜 MDP가 필요할까
밴디트 문제와 다르게, 대부분의 로봇 문제는 행동에 따라 상태가 바뀝니다.
로봇이 왼쪽으로 이동하면 위치가 바뀌고, 팔을 뻗으면 관절 상태가 바뀌고, 물체를 집으면 주변 환경도 달라집니다.
즉 로봇 문제는 “지금 한 번 뭘 선택할까”가 아니라
행동이 미래 상태에 영향을 미치는 연속적인 의사결정 문제입니다.
MDP는 바로 이 구조를 설명하기 위한 틀입니다.
마르코프 성질
여기서 마르코프라는 말도 한 번 짚고 넘어가야 합니다.
마르코프 성질은 간단히 말하면
미래를 결정하는 데 필요한 정보가 현재 상태 안에 충분히 들어 있다는 가정입니다.
즉 다음 상태가 어떻게 될지는
“예전에 무슨 일이 있었는지 전부”가 아니라
“지금 상태가 어떤지”와 “지금 어떤 행동을 하는지”만 알면 된다는 뜻입니다.
물론 현실의 로봇 문제에서는 이 가정이 완벽하게 맞지 않는 경우도 많습니다.
센서가 일부 정보만 주거나, 과거 정보가 필요한 경우도 있기 때문입니다.
그래서 실제 문제는 부분관찰 문제처럼 더 복잡해질 수 있습니다.
다만 입문 단계에서는
강화학습을 정리하는 가장 기본적인 출발점이 바로 이 마르코프 성질이라고 이해하면 충분합니다.
수익(Return)과 할인율
보상 하나만 보면 강화학습이 너무 단기적인 문제처럼 느껴질 수 있습니다.
그래서 강화학습에서는 보상 하나가 아니라 미래 보상까지 포함한 누적값을 더 중요하게 봅니다.
이 누적된 미래 보상을 보통 수익(Return) 이라고 부릅니다.
예를 들어 지금 시점에서 앞으로 받을 보상을 모두 더한다고 생각해보겠습니다.
그런데 아주 먼 미래의 보상까지 현재와 똑같은 중요도로 취급하면 계산도 불안정해지고, 학습 방향도 모호해질 수 있습니다.
그래서 보통은 할인율을 둡니다.
가까운 미래의 보상은 크게 보고, 먼 미래의 보상은 조금 줄여서 보는 방식입니다.
이 개념은 직관적으로도 자연스럽습니다.
- 지금 당장 충돌을 피하는 것은 매우 중요합니다.
- 100단계 뒤의 작은 이득은 상대적으로 덜 중요할 수 있습니다.
즉 할인율은
로봇이 미래를 얼마나 멀리 내다볼 것인지 정하는 값이라고 생각할 수 있습니다.

상태 가치 함수와 행동 가치 함수
강화학습을 배우다 보면 value라는 표현이 자주 나옵니다.
여기서 말하는 가치는 단순한 가격이 아니라,
어떤 상태나 행동이 장기적으로 얼마나 좋은지에 대한 기대값입니다.
상태 가치 함수
어떤 상태에 들어갔을 때, 앞으로 얼마나 좋은 보상을 받을 것으로 기대되는지를 나타냅니다.
즉 “이 상태는 좋은 상태인가?”를 평가하는 함수입니다.
행동 가치 함수, Q 함수
어떤 상태에서 특정 행동을 했을 때, 앞으로 얼마나 좋은 보상을 받을 것으로 기대되는지를 나타냅니다.
즉 “이 상태에서 이 행동은 좋은 선택인가?”를 평가하는 함수입니다.
이 둘의 차이는 생각보다 중요합니다.
- 상태 가치 함수는 현재 상황 자체가 얼마나 좋은지 봅니다.
- 행동 가치 함수는 현재 상황에서 특정 행동이 얼마나 좋은지까지 봅니다.
예를 들어 로봇이 문 앞에 서 있는 상태는 꽤 괜찮은 상태일 수 있습니다.
하지만 그 상태에서 “문 쪽으로 전진”하는 행동과 “반대로 돌아가기” 행동의 가치는 전혀 다를 수 있습니다.
이 차이를 표현하는 것이 Q 함수입니다.
벨만 방정식은 왜 중요한가

강화학습에서 가장 자주 등장하는 수식 중 하나가 벨만 방정식입니다.
처음에는 조금 intimidating하게 느껴질 수 있지만, 사실 핵심 아이디어는 매우 직관적입니다.
벨만 방정식이 말하는 것은 아주 단순합니다.
현재 상태의 가치는, 지금 받을 보상과 다음 상태의 가치로 표현할 수 있다.
이 말이 왜 중요할까요?
강화학습에서는 미래 보상을 전부 직접 계산하기가 어렵습니다.
그런데 벨만 방정식은 긴 미래를 한 번에 보지 않고,
한 단계 앞의 보상 + 그다음 상태의 가치로 나눠서 생각할 수 있게 해줍니다.
즉 복잡한 장기 문제를
짧은 단계들의 재귀적인 관계로 바꿔주는 것입니다.
조금 쉽게 말하면 이런 느낌입니다.
- 지금 이 행동이 좋으려면
- 당장 보상도 어느 정도 괜찮아야 하고
- 그 결과 도달한 다음 상태도 좋아야 합니다
강화학습 알고리즘 대부분은 결국 이 아이디어를 다양한 방식으로 활용합니다.

벨만 방정식을 직관으로 이해해보기
예를 들어 두 갈래 길이 있다고 해보겠습니다.
- 왼쪽 길은 당장은 사탕 하나를 주지만, 곧바로 막다른 길입니다.
- 오른쪽 길은 지금은 아무것도 주지 않지만, 조금 더 가면 큰 보상이 있습니다.
이때 지금 당장의 보상만 보면 왼쪽이 좋아 보일 수 있습니다.
하지만 장기적으로는 오른쪽이 더 좋은 선택일 수 있습니다.
벨만 방정식 관점에서는 현재 상태의 가치를
“지금 얻는 것”만으로 보지 않고
“다음에 어디로 이어지는가”까지 포함해서 평가합니다.
그래서 강화학습은 단순 반사적인 선택이 아니라,
현재와 미래를 연결해서 보는 학습이라고 할 수 있습니다.
강화학습은 결국 무엇을 찾는 걸까
지금까지 상태, 행동, 보상, 수익, 가치 함수까지 봤습니다.
그렇다면 강화학습이 최종적으로 찾으려는 것은 무엇일까요?
정답은 최적 정책(Optimal Policy) 입니다.
정책은 상태를 보고 행동을 선택하는 규칙입니다.
즉 로봇이 어떤 상황에서 어떻게 반응할지를 정하는 전체 전략입니다.
강화학습의 목표는 결국
각 상태에서 가장 큰 장기 보상을 얻을 수 있도록
이 정책을 점점 더 좋은 방향으로 바꾸는 것입니다.
즉 강화학습은
보상을 직접 모으는 기술이라기보다,
좋은 행동 전략을 만들어가는 과정이라고 보는 편이 맞습니다.
마무리
강화학습은 처음 접하면 수식이 많고 낯선 용어도 많아서 어렵게 느껴질 수 있습니다.
그런데 중심 개념만 붙잡고 보면 의외로 단순한 질문에서 출발합니다.
지금 어떤 행동을 해야 앞으로 더 큰 보상을 얻을 수 있을까.
로봇은 이 질문에 스스로 답하기 위해,
환경과 상호작용하면서 상태를 관찰하고, 행동을 시도하고, 보상을 받으며 점점 더 나은 전략을 학습합니다.
그래서 강화학습은 단순히 보상을 최대로 만드는 계산법이 아니라,
시행착오를 통해 행동 전략을 익히는 학습 방식이라고 이해하는 것이 훨씬 자연스럽습니다.
이번 글에서는 강화학습의 뼈대를 이루는 개념들,
즉 에이전트와 환경, 상태와 행동, 보상과 수익, 밴디트 문제, MDP, 가치 함수, 벨만 방정식까지 전체 흐름을 먼저 잡아봤습니다.
다음 글에서는 이 기초 위에서 실제로 자주 등장하는 강화학습 알고리즘들,
예를 들어 DQN, REINFORCE, Actor-Critic이 어떤 차이를 가지고 발전해왔는지 조금 더 구체적으로 이어서 정리해보겠습니다.
'Study Archives > Robotics' 카테고리의 다른 글
| [로봇 학습의 이해 ⑤] 로봇 비전과 파지 (0) | 2026.04.10 |
|---|---|
| [로봇 학습의 이해 ④] DQN과 Actor-Critic (0) | 2026.04.10 |
| [로봇 학습의 이해 ②] 시뮬레이션과 Sim-to-Real (0) | 2026.04.10 |
| [로봇 학습의 이해 ①] 로봇 제어와 행동 생성 (0) | 2026.04.10 |
| Nav2(Path Planning) (1) | 2026.04.10 |