검색
← 모듈 로드맵

중간 점검: 강화학습 기초 15문제

강의 · 입문자 · KAITABASE 정리

원제 · Checkpoint Quiz: Reinforcement Learning Basics (KAITABASE 강화학습 수업 · CS 285 구성 참고)

MDP부터 PPO · GAE · PUCT까지 강화학습 기초 수업 8개를 15문제로 점검하는 중간 점검

먼저 알아야 할 것

MDP와 벨만 방정식TD · Q-러닝 · SARSA정책 경사와 PPOMCTS와 PUCT

다루는 내용

강화학습 트랙 앞쪽 수업 8개를 계산 11문제 · 개념 4문제로 점검합니다. 할인 반환 · 벨만 · 가치 반복, UCB · 톰슨 샘플링, TD · Q-러닝 · SARSA · 반경사 TD, 정책 경사 · PPO 클리핑 · GAE · PUCT를 풀이와 함께 다룹니다. 문제마다 돌아갈 수업과 절을 적었습니다.

해설

중간 점검: 강화학습 기초 15문제

강화학습 트랙의 앞쪽 수업 8개(MDP · 벨만 → 탐험 → TD · Q-러닝 → 실습 → 함수 근사 → 정책 경사 → PPO · GAE → 모델 기반)를 15문제로 점검합니다. 계산 문제는 숫자를 바꿔 다시 풀 수 있게 풀이 과정을 모두 적었고, 개념 문제는 "왜"를 한두 문장으로 답하게 했습니다. 먼저 답을 가리고 풀어 본 뒤, 틀린 문제의 수업으로 돌아가세요.

항목내용
범위강화학습 입문 (Sutton · Barto) · 탐험 심화 · Hugging Face 딥 RL 강좌 · 그리드월드 실습 · 함수 근사 · Spinning Up 정책 경사 · 정책 최적화 실전 · 모델 기반 RL
트랙 · 수준강화학습 · 기초 (점검)
구성계산 11문제 + 개념 4문제, 문제마다 풀이와 '돌아갈 수업'
걸리는 시간40~60분 (계산기 사용 권장)

들어가기 전에

  • 위 범위의 수업을 한 번씩 읽었다면 바로 풀 수 있습니다. 모든 숫자는 이 점검을 위해 만든 해설용이며, 풀이는 python으로 검산했습니다.
  • 기호: γ\gamma 할인율, α\alpha 걸음 크기, ε\varepsilon 탐험 확률, A^\hat A 어드밴티지.

한눈에 보기

  • 할인 반환 · 벨만 방정식 · 가치 반복 한 칸을 계산할 수 있는지 확인합니다.
  • UCB · 톰슨 샘플링으로 탐험 선택을 계산합니다.
  • TD · Q-러닝 · SARSA · 반경사 선형 TD 갱신을 한 걸음씩 계산합니다.
  • 정책 경사 · PPO 클리핑 · GAE · PUCT 계산을 확인합니다.
  • 치명적 삼중주, 온폴리시/오프폴리시 차이 같은 개념을 말로 설명합니다.
mermaid
flowchart LR
  A[82 MDP · 벨만] --> B[206 탐험]
  B --> C[84 TD · Q · SARSA]
  C --> D[215 실습]
  D --> E[217 함수 근사]
  E --> F[83 정책 경사]
  F --> G[219 PPO · GAE]
  G --> H[223 모델 기반]
  H --> Q[중간 점검]

1부. MDP와 벨만 방정식

문제 1 (계산). 보상이 차례로 1, 0, 2이고 γ=0.9\gamma=0.9 일 때 처음 시점의 할인 반환 G0G_0 는?

  • 풀이: G0=1+0.9×0+0.92×2=1+0+1.62=2.62G_0 = 1 + 0.9\times0 + 0.9^2\times2 = 1 + 0 + 1.62 = 2.62.
  • 돌아갈 수업: 82 3절.

문제 2 (계산). 상태 ss 에서 행동이 둘이고 정책이 각각 0.5로 고릅니다. 행동 1은 보상 1을 받고 가치 4인 상태로, 행동 2는 보상 0을 받고 가치 10인 상태로 갑니다(결정적). γ=0.9\gamma=0.9 일 때 벨만 기대 방정식으로 vπ(s)v_\pi(s) 는?

  • 풀이: vπ(s)=0.5 (1+0.9×4)+0.5 (0+0.9×10)=0.5×4.6+0.5×9=2.3+4.5=6.8v_\pi(s)=0.5\,(1+0.9\times4)+0.5\,(0+0.9\times10)=0.5\times4.6+0.5\times9=2.3+4.5=6.8.
  • 돌아갈 수업: 82 4절.

문제 3 (계산). 문제 2와 같은 상황에서 가치 반복(최적 벨만 방정식) 한 번의 갱신값은?

  • 풀이: 평균 대신 최댓값을 씁니다. max⁡(4.6, 9)=9\max(4.6,\ 9)=9.
  • 돌아갈 수업: 82 5절.

2부. 탐험

문제 4 (계산). t=20t=20, 손잡이 A는 Q=0.5Q=0.5 · N=15N=15, B는 Q=0.4Q=0.4 · N=5N=5. UCB(c=1c=1)는 어느 손잡이를 고르나요? (ln⁡20≈2.996\ln20\approx2.996)

  • 풀이: A =0.5+2.996/15=0.5+0.447=0.947=0.5+\sqrt{2.996/15}=0.5+0.447=0.947, B =0.4+2.996/5=0.4+0.774=1.174=0.4+\sqrt{2.996/5}=0.4+0.774=1.174. B 를 고릅니다. 덜 시도한 쪽의 불확실성 몫이 평균 차이(0.1)를 넘었습니다.
  • 돌아갈 수업: 206 3절.

문제 5 (계산). 사전 분포 Beta(1,1)\mathrm{Beta}(1,1) 에서 시작한 손잡이가 성공 7번 · 실패 3번을 겪었습니다. 톰슨 샘플링이 쓰는 지금 분포와 그 평균은?

  • 풀이: Beta(1+7, 1+3)=Beta(8,4)\mathrm{Beta}(1+7,\ 1+3)=\mathrm{Beta}(8,4), 평균 8/12≈0.6678/12\approx0.667.
  • 돌아갈 수업: 206 6절.

3부. TD · Q-러닝 · SARSA

문제 6 (계산). V(s)=2V(s)=2, 보상 r=1r=1, V(s′)=3V(s')=3, γ=0.9\gamma=0.9, α=0.1\alpha=0.1. TD(0) 갱신 뒤 V(s)V(s) 는?

  • 풀이: TD 오차 δ=1+0.9×3−2=1.7\delta=1+0.9\times3-2=1.7, V(s)←2+0.1×1.7=2.17V(s)\leftarrow2+0.1\times1.7=2.17.
  • 돌아갈 수업: 84 2절.

문제 7 (계산). Q(s,a)=0Q(s,a)=0, 보상 −1-1, 다음 상태의 Q값이 (행동 1: −2-2, 행동 2: −5-5)이고, ε-탐욕이 이번에는 탐험으로 행동 2 를 골랐습니다. α=0.5\alpha=0.5, γ=1\gamma=1 일 때 Q-러닝과 SARSA의 갱신 결과는?

  • 풀이: Q-러닝 목표 −1+max⁡(−2,−5)=−3-1+\max(-2,-5)=-3 → 0+0.5(−3−0)=−1.50+0.5(-3-0)=-1.5. SARSA 목표 −1+(−5)=−6-1+(-5)=-6 → 0+0.5(−6−0)=−30+0.5(-6-0)=-3. SARSA는 실제로 고른 (탐험) 행동의 값을 써서 더 비관적인 값을 배웁니다.
  • 돌아갈 수업: 84 3절, 215 2절.

문제 8 (개념). 절벽 걷기 실습에서 ε=0.1로 학습하면 SARSA는 먼 길, Q-러닝은 절벽 옆 최단 경로를 배웁니다. 그런데 학습 중 평균 반환은 SARSA가 더 좋았습니다. 이유는?

  • 답: SARSA는 ε 실수(가끔 절벽으로 떨어짐)까지 포함한 가치를 배워 절벽에서 먼 길을 택합니다(온폴리시). Q-러닝은 '이후 최선만 한다'고 가정한 가치를 배워 최단 경로를 택하지만, 학습 중엔 실제로 ε 무작위 행동을 하므로 절벽 옆에서 종종 −100을 받습니다(오프폴리시).
  • 돌아갈 수업: 215 4절.

4부. 함수 근사

문제 9 (계산). 선형 근사 v^(s)=w⊤x(s)\hat v(s)=\mathbf w^\top\mathbf x(s) 에서 w=(0.5, 0.5)\mathbf w=(0.5,\ 0.5), x(s)=(1, 2)\mathbf x(s)=(1,\ 2), x(s′)=(0, 1)\mathbf x(s')=(0,\ 1), 보상 0, γ=0.9\gamma=0.9, α=0.1\alpha=0.1. 반경사 TD(0) 갱신 뒤 w\mathbf w 는?

  • 풀이: v^(s)=0.5+1=1.5\hat v(s)=0.5+1=1.5, v^(s′)=0.5\hat v(s')=0.5. δ=0+0.9×0.5−1.5=−1.05\delta=0+0.9\times0.5-1.5=-1.05. 기울기는 x(s)\mathbf x(s) 이므로 w←(0.5,0.5)+0.1×(−1.05)×(1,2)=(0.395, 0.29)\mathbf w\leftarrow(0.5,0.5)+0.1\times(-1.05)\times(1,2)=(0.395,\ 0.29).
  • 돌아갈 수업: 217 4절.

문제 10 (개념). 다음 중 치명적 삼중주(함수 근사 · 부트스트래핑 · 오프폴리시)를 모두 가진 것은? (가) 신경망 + 몬테카를로 반환 + 오프폴리시 데이터 (나) DQN (다) 선형 근사 + 반경사 SARSA

  • 답: (나). DQN은 신경망(함수 근사), r+γmax⁡Qr+\gamma\max Q 목표(부트스트래핑), 리플레이 버퍼의 옛 경험(오프폴리시)을 모두 씁니다. (가)는 부트스트래핑이 없고, (다)는 온폴리시입니다. 그래서 DQN에는 타깃 네트워크 같은 안정화 장치가 필요합니다.
  • 돌아갈 수업: 217 7절.

5부. 정책 경사와 PPO

문제 11 (계산). 행동 둘의 소프트맥스 정책, θ=(0,0)\theta=(0,0). 행동 1을 골라 가중치(반환) 2를 얻었습니다. α=0.1\alpha=0.1 로 REINFORCE 한 걸음 뒤 θ\theta 와 π(a1)\pi(a_1) 은?

  • 풀이: ∇log⁡π(a1)=(1−π(a1), −π(a2))=(0.5, −0.5)\nabla\log\pi(a_1)=(1-\pi(a_1),\ -\pi(a_2))=(0.5,\ -0.5). θ←(0,0)+0.1×2×(0.5,−0.5)=(0.1, −0.1)\theta\leftarrow(0,0)+0.1\times2\times(0.5,-0.5)=(0.1,\ -0.1). π(a1)=e0.1/(e0.1+e−0.1)≈0.550\pi(a_1)=e^{0.1}/(e^{0.1}+e^{-0.1})\approx0.550.
  • 돌아갈 수업: 83 3절.

문제 12 (계산). 세 걸음 보상이 2, 0, 1입니다(할인 없음). 각 시점의 reward-to-go와, 모든 상태의 기준값이 1일 때의 가중치는?

  • 풀이: reward-to-go =(3, 1, 1)=(3,\ 1,\ 1). 기준값 1을 빼면 (2, 0, 0)(2,\ 0,\ 0). 뒤 두 행동은 '평소만큼'이라 확률을 거의 바꾸지 않습니다.
  • 돌아갈 수업: 83 4~5절.

문제 13 (계산). PPO-Clip, ϵ=0.2\epsilon=0.2. (ㄱ) A^=+3\hat A=+3, r=1.4r=1.4 (ㄴ) A^=−1\hat A=-1, r=0.7r=0.7 에서 목표값과 기울기가 흐르는지 답하세요.

  • 풀이: (ㄱ) min⁡(3×1.4, 3×1.2)=min⁡(4.2, 3.6)=3.6\min(3\times1.4,\ 3\times1.2)=\min(4.2,\ 3.6)=3.6 — 잘림, 기울기 0. (ㄴ) min⁡(−1×0.7, −1×0.8)=min⁡(−0.7, −0.8)=−0.8\min(-1\times0.7,\ -1\times0.8)=\min(-0.7,\ -0.8)=-0.8 — 잘림, 기울기 0. 둘 다 "이미 충분히 바꿨으니 더 밀지 않는" 경우입니다.
  • 돌아갈 수업: 219 3절.

문제 14 (계산). 두 걸음 조각의 TD 오차가 δ0=0.5\delta_0=0.5, δ1=−0.2\delta_1=-0.2 이고 두 번째 걸음 뒤 판이 끝납니다. γλ=0.9\gamma\lambda=0.9 일 때 GAE A^0\hat A_0, A^1\hat A_1 은?

  • 풀이: 거꾸로 계산합니다. A^1=δ1=−0.2\hat A_1=\delta_1=-0.2, A^0=δ0+0.9×A^1=0.5−0.18=0.32\hat A_0=\delta_0+0.9\times\hat A_1=0.5-0.18=0.32.
  • 돌아갈 수업: 219 4절.

6부. 모델 기반과 계획

문제 15 (계산 + 개념). MCTS 뿌리의 총 방문이 16입니다. 수 A: P=0.5P=0.5, N=7N=7, Q=0.3Q=0.3. 수 B: P=0.2P=0.2, N=0N=0, Q=0Q=0. PUCT(cpuct=1c_{\text{puct}}=1)는 어느 수를 탐색하나요? 그리고 Dyna-Q의 계획 단계와 MCTS가 다른 점을 한 문장으로 말하세요.

  • 풀이: 16=4\sqrt{16}=4. A: U=0.5×4/8=0.25U=0.5\times4/8=0.25 → 0.550.55. B: U=0.2×4/1=0.8U=0.2\times4/1=0.8 → 0.80.8. B 를 탐색합니다. 한 번도 안 가 본 수는 사전 확률이 낮아도 보너스가 커서 한 번은 시험됩니다.
  • 개념: Dyna는 배경에서 모델의 경험을 재생해 가치 함수 전체를 꾸준히 개선하고, MCTS는 행동 직전에 현재 상태에서만 앞을 탐색해 이번 행동을 고릅니다.
  • 돌아갈 수업: 223 2 · 4절.

점수 해석

맞힌 수다음 할 일
13~15논문 해설로 넘어가도 좋습니다: DQN → PPO → AlphaGo
9~12틀린 문제의 '돌아갈 수업' 절만 다시 읽고, 숫자를 바꿔 한 번 더 풀어 보세요
8 이하1~3부(82 · 206 · 84)를 다시 읽고 그리드월드 실습 코드를 직접 돌려 보세요

스스로 점검

  1. 문제 2와 3의 차이(평균 vs 최댓값)는 각각 무엇을 계산하나요?
    • 답: 평균은 주어진 정책 π\pi 의 가치(정책 평가), 최댓값은 최적 가치(가치 반복 · 제어)를 계산합니다.
  2. 문제 9에서 다른 상태의 값도 바뀌나요?
    • 답: 네. w2w_2 가 줄었으므로 두 번째 특징을 가진 s′s' 의 값도 0.5→0.290.5\to0.29 로 함께 바뀝니다. 이것이 함수 근사의 일반화입니다.
  3. 문제 13에서 기울기가 0이 된다는 것은 학습이 멈춘다는 뜻인가요?
    • 답: 그 표본에 대해서만 더 밀지 않는다는 뜻입니다. 다른 표본(울타리 안의 표본, 잘못된 방향으로 간 표본)은 계속 기울기를 줍니다.

용어 정리

용어쉬운 뜻
할인 반환미래 보상을 γ\gamma 의 거듭제곱으로 줄여 더한 합
벨만 기대 방정식정책 평균으로 가치를 이웃 상태 가치와 잇는 식
가치 반복최댓값 벨만 방정식을 되풀이해 최적 가치를 구하는 방법
UCB평균 + 불확실성 몫으로 고르는 탐험 규칙
TD 오차"보상 + 다음 가치 추정 − 지금 가치 추정"
반경사 TD목표 쪽 기울기를 버리고 예측 쪽 기울기만 쓰는 갱신
reward-to-go그 시점부터 받은 보상의 합
PPO-Clip확률비를 울타리 안으로 잘라 정책 변화를 제한하는 목표
GAETD 오차를 (γλ)l(\gamma\lambda)^l 로 가중합한 어드밴티지
PUCT사전 확률로 탐험 보너스를 조절하는 MCTS 선택 규칙

더 깊이 보려면

  • Sutton · Barto 2판 각 장 끝의 연습 문제 — 이 점검과 같은 계산을 더 많이 풀 수 있습니다.
  • OpenAI Spinning Up의 「Exercises」 문서 — 정책 경사 구현 문제.

다음에 볼 것

라이선스

문제와 풀이는 KAITABASE가 이 점검을 위해 직접 만든 것입니다. 숫자는 모두 해설용이며 python으로 검산했습니다.

출처

AI 원리부터 이해하기 · 강화학습 모듈

강화학습 모듈 학습

이 글은 강화학습 모듈의 학습 자료입니다. 전체 31개 자료 중 9번째입니다.

AI 기초 과정은 현재 진도 저장을 지원하지 않습니다.

출처·원문

원문 보기

요약만

문제 · 풀이 자체 작성 · 구성 참고 UC Berkeley CS 285 강의 목록