Skip to content

문제 9 · 거부 표집법 ​

문제 9 [5점]

0⩽x⩽1 구간에서 분포 f(x)=32(1−x2)에 거부 표집법rejection sampling을 적용하기 위해 제안 분포를 g(x)=1로 설정하였다. 이 때 거부 표집 상수 k를 구하고, x=0.25, u=0.8이 표집되었을 때 채택/거부 여부를 판단하시오. 또한, 한 번의 채택을 얻기 위해 평균적으로 몇 번의 표집이 필요한지 계산하시오.

풀이 및 해설

거부 상수 — 모든 x에서 f(x)⩽kg(x)를 만족하는 최소 k는

k=maxx∈[0,1]f(x)g(x)=maxx32(1−x2)

f(x)=32(1−x2)은 x=0에서 최대이므로

k=32(1−0)=1.5

채택/거부 — 후보 x=0.25의 채택 임계는 f(x)kg(x)이다.

f(0.25)=32(1−0.0625)=1.40625,f(0.25)kg(0.25)=1.406251.5=0.9375

u=0.8이 0.9375 이하이므로

u=0.8⩽0.9375 ⟹ 채택(accept)

평균 표집 횟수 — f와 g가 모두 정규화되어 있으므로 채택 확률은 1k=11.5=23이고, 평균 표집 횟수는

E[시도 횟수]=k=1.5 회

👉 실습(Python)에서 계산하기

PDF