강화학습
Q-LearningQ-러닝
Q-러닝(Q-Learning)은 환경 모델 없이 최적 행동-가치 함수 Q*(s, a)를 학습하는 모델 프리(model-free) 강화학습 알고리즘이다. 1989년 Watkins가 제안했으며, 딥러닝과 결합한 DQN(Deep Q-Network)으로 Atari 게임에서 인간 수준을 달성했다.
핵심 요소
| 요소 | 설명 |
|---|---|
| 상태 (State, s) | 에이전트가 처한 현재 상황·위치 |
| 행동 (Action, a) | 에이전트가 선택할 수 있는 행동 집합 |
| 보상 (Reward, r) | 행동 결과로 환경이 돌려주는 스칼라 신호 |
| Q값 (Action-Value) | 상태 s에서 행동 a를 취했을 때의 기대 누적 보상 |
| Q-테이블 | 모든 (s, a) 쌍의 Q값을 저장하는 2차원 룩업 테이블 |
| 정책 (Policy, π) | 각 상태에서 행동을 선택하는 규칙. Q-러닝의 목표는 최적 정책 π* 도출 |
벨만 방정식
$$Q^(s, a) = \mathbb{E}\left[r + \gamma \max_{a'} Q^(s', a')\right]$$
Q값 업데이트: $$Q(s,a) \leftarrow Q(s,a) + \alpha \left[r + \gamma \max_{a'} Q(s',a') - Q(s,a)\right]$$
파라미터 의미
| 기호 | 명칭 | 의미 | 범위 |
|---|---|---|---|
| α | 학습률 (Learning Rate) | 새 정보를 기존 Q값에 얼마나 반영할지 결정 | 0 ~ 1 |
| γ | 감가율 (Discount Factor) | 미래 보상의 현재 가치 비중. 1에 가까울수록 장기 보상 중시 | 0 ~ 1 |
| r | 즉각 보상 (Reward) | 행동 직후 환경으로부터 받은 보상 | — |
| max Q(s', a') | 최대 미래 Q값 | 다음 상태에서 선택 가능한 행동 중 가장 높은 Q값 | — |
TD 오차 (Temporal Difference Error):
r + γ max Q(s', a') - Q(s, a)실제로 받은 보상과 예상했던 보상의 차이. 이 오차를 0으로 좁히는 방향으로 학습이 진행된다.
탐색과 활용 (Exploration vs Exploitation)
Q-러닝에서 핵심 딜레마다. ε-greedy 전략으로 균형을 맞춘다.
| 전략 | 조건 | 행동 | 목적 |
|---|---|---|---|
| 탐색 (Exploration) | 확률 ε | 무작위 행동 선택 | 미방문 상태·행동 쌍 발견 |
| 활용 (Exploitation) | 확률 1-ε | Q값 최대 행동 선택 | 현재까지 학습한 최적 행동 수행 |
학습 초기에는 ε를 높게 설정해 다양한 경험을 수집하고, 에피소드가 진행될수록 ε를 감소시켜 학습된 정책을 활용하는 비중을 높인다.
기본 Q-러닝 구현
DQN (Deep Q-Network)
파라미터 설정 가이드
| 파라미터 | 권장값 | 너무 높을 때 | 너무 낮을 때 |
|---|---|---|---|
| α (학습률) | 0.1 ~ 0.5 | 학습 불안정, 발산 위험 | 수렴 속도 느림 |
| γ (감가율) | 0.9 ~ 0.99 | 먼 미래 과대평가, 불안정 | 근시안적 정책, 장기 보상 무시 |
| ε 초기값 | 0.1 ~ 1.0 | 탐색 과다, 수렴 지연 | 국소 최적 수렴 위험 |
| ε 감소율 | 0.995 ~ 0.999 | 탐색 단계 짧음 | 탐색이 너무 오래 지속됨 |
일반적으로 α는 작게, γ는 크게 설정하는 것이 안정적이다. 환경이 결정론적일수록 α를 높여도 안전하고, 보상이 지연될수록 γ를 1에 가깝게 설정한다.
장점과 한계
장점
- •환경 모델(전이 확률, 보상 함수)이 없어도 학습 가능 — 모델 프리(model-free)
- •구현이 단순하고 수학적 수렴 보장 (적절한 학습률 조건 하에서)
- •Off-policy 학습: 탐색 정책과 학습 정책이 달라도 됨 (e.g., ε-greedy로 탐색하면서 greedy 정책 학습)
한계
- •상태 공간이 크면 Q-테이블 크기가 폭증 → 메모리·계산 한계
- •연속적인 상태·행동 공간 직접 처리 불가 (DQN 등 함수 근사 필요)
- •수렴 속도가 느리고 하이퍼파라미터에 민감
- •행동-가치 추정의 과대평가(maximization bias) 경향 → Double Q-Learning으로 보완
응용 분야
| 분야 | 활용 예 |
|---|---|
| 게임 AI | NPC 행동 학습, Atari 게임 (DQN), 보드게임 |
| 자율주행 | 장애물 회피, 경로 최적화, 신호 대기 판단 |
| 로봇공학 | 로봇팔 경로 계획, 보행 로봇 균형 학습 |
| 추천 시스템 | 광고·콘텐츠 노출 순서 최적화 |
| 자원 관리 | 데이터센터 냉각 에너지 최적화 (Google DeepMind) |
| 재고·물류 | 주문량 자동 결정, 창고 로봇 경로 배정 |
| 금융 | 트레이딩 전략 자동화, 포트폴리오 리밸런싱 |
Q-러닝 변형
| 알고리즘 | 개선점 | 복잡도 |
|---|---|---|
| Q-Learning | 기본 | O( |
| DQN | 신경망 함수 근사 | - |
| Double DQN | 과대평가 방지 | - |
| Dueling DQN | V, A 분리 | - |
| Rainbow | 6가지 개선 통합 | - |
관련 개념
참고문헌
- 1.Watkins, C. J. C. H., & Dayan, P. (1992). Q-learning. Machine Learning, 8(3–4), 279–292
- 2.Mnih, V., Kavukcuoglu, K., Silver, D., et al. (2015). Human-level control through deep reinforcement learning. Nature, 518, 529–533
- 3.van Hasselt, H., Guez, A., & Silver, D. (2016). Deep Reinforcement Learning with Double Q-learning. AAAI 2016
- 4.LearningFlix. (2024). Q-Learning 완전 정복. Tistory