Q러닝 (Q-learning)
쉽게 풀면
미로를 처음 걷는 쥐를 생각해 보세요. 쥐는 처음에는 어느 길이 좋은지 모르지만, 여러 번 시도하면서 "이 갈림길에서 왼쪽으로 가면 나중에 치즈를 얻을 가능성이 높다"는 식으로 각 갈림길-방향 조합에 점수(Q값)를 매겨 나갑니다. 시행착오를 반복할수록 이 점수표가 점점 정교해지고, 결국 쥐는 각 지점에서 가장 점수가 높은 방향으로만 움직이면 최단 경로로 치즈에 도달하게 됩니다. Q러닝은 바로 이 "상태-행동 점수표"를 스스로 채워나가는 알고리즘입니다.
왜 중요한가
Q러닝은 환경 모델을 미리 알지 못해도 시행착오만으로 최적 행동을 학습할 수 있는 대표적인 모델-프리 강화학습 기법이기 때문에, 로보틱스, 자원 관리, 게임 인공지능 등 다양한 응용 연구의 기본 알고리즘으로 자주 인용됩니다. 특히 심층신경망과 결합된 딥 Q네트워크(DQN)로 확장되면서 고차원 상태공간을 다루는 최신 강화학습 연구의 출발점 역할을 하고 있습니다. 이 때문에 새로운 강화학습 기법을 제안하는 논문에서 성능 비교의 기준선(baseline)으로도 흔히 사용됩니다.
논문에서는 이렇게 쓰입니다
이 문장은 "매 순간 네트워크 상태를 보고 어떤 자원 할당이 가장 좋은 결과를 내는지를, 시행착오를 통해 Q값 표로 학습시켰다"는 뜻입니다. 상태와 행동의 경우의 수가 아주 많아지면 표 대신 신경망으로 Q값을 근사하는 딥 Q네트워크(DQN)로 확장됩니다.
로봇이 스스로 시행착오를 겪으며 장애물을 피하는 최적 경로를 찾도록 학습시켰다는 뜻으로, 로보틱스 분야에서 흔히 나타나는 표현이다.
전력 시스템에서 상황에 따라 언제 충전하고 방전할지를 스스로 학습하도록 한 에너지 관리 연구의 예시이다.
조금 더 깊게 보면
Q러닝은 벨만 방정식을 이용해 현재 Q값을 실제 받은 보상과 다음 상태에서의 최댓값 추정치로 점진적으로 갱신하는 방식이며, 이때 학습률과 할인율(discount factor)이 수렴 속도와 최종 정책의 품질에 영향을 미칩니다. 탐험(exploration)과 활용(exploitation) 사이의 균형을 맞추기 위해 흔히 ε-그리디 전략이 함께 사용되며, 이 균형을 어떻게 조절하는지가 학습 성능에 큰 영향을 줍니다. 상태공간이 매우 커지는 경우에는 표 대신 신경망으로 Q함수를 근사하는 DQN, 그리고 이를 개선한 더블 DQN, 우선순위 경험재생 등의 변형이 함께 다뤄지는 경우가 많습니다.
주의할 점
Q러닝은 정책 경사법과 달리 행동의 가치를 먼저 계산한 뒤 그중 최댓값을 고르는 방식이라, 행동의 종류가 연속적인 값(예: 로봇 관절 각도)일 때는 그대로 적용하기 어렵습니다. 또한 상태·행동 공간이 커지면 표를 그대로 쓰는 방식은 비현실적이라 함수 근사가 필요합니다.