Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Xác suất - Thống kê] Ước lượng kỳ vọng bằng lấy mẫu quan trọng (Importance Sampling)

    Lấy mẫu quan trọng (Importance Sampling) là kỹ thuật Monte Carlo nâng cao để ước lượng Ep[f(X)]E_p[f(X)]Ep​[f(X)] khi việc lấy mẫu trực tiếp từ phân phối mục tiêu ppp khó khăn: thay vào đó, ta lấy NNN mẫu x1,…,xNx_1,\dots,x_Nx1​,…,xN​ từ một phân phối đề xuất qqq (dễ lấy mẫu hơn), rồi hiệu chỉnh bằng trọng số wi=p(xi)/q(xi)w_i = p(x_i)/q(x_i)wi​=p(xi​)/q(xi​).

    Với mỗi mẫu, đầu vào cho sẵn ba giá trị pi=p(xi)p_i=p(x_i)pi​=p(xi​), qi=q(xi)>0q_i=q(x_i)>0qi​=q(xi​)>0, fi=f(xi)f_i=f(x_i)fi​=f(xi​). Ước lượng tự chuẩn hoá (self-normalized):

    μ^=∑iwifi∑iwi\hat\mu = \dfrac{\sum_i w_i f_i}{\sum_i w_i}μ^​=∑i​wi​∑i​wi​fi​​

    và kích thước mẫu hiệu dụng (Effective Sample Size):

    ESS=(∑iwi)2∑iwi2ESS = \dfrac{\left(\sum_i w_i\right)^2}{\sum_i w_i^2}ESS=∑i​wi2​(∑i​wi​)2​

    Ví dụ: N=3N=3N=3, các bộ (p,q,f)(p,q,f)(p,q,f): (1,1,2),(1,1,4),(1,1,6)(1,1,2), (1,1,4), (1,1,6)(1,1,2),(1,1,4),(1,1,6) — trọng số đều bằng 1 nên μ^=(2+4+6)/3=4\hat\mu = (2+4+6)/3 = 4μ^​=(2+4+6)/3=4 và ESS=32/3=3.000000ESS = 3^2/3 = 3.000000ESS=32/3=3.000000.

    • Định dạng đầu vào:

      Dòng 1: số nguyên NNN (1≤N≤1051 \le N \le 10^51≤N≤105). Tiếp theo NNN dòng, mỗi dòng ba số thực pi qi fip_i\ q_i\ f_ipi​ qi​ fi​ với pi≥0p_i \ge 0pi​≥0, qi>0q_i > 0qi​>0.

    • Định dạng đầu ra:

      In ra một dòng gồm hai số cách nhau một khoảng trắng: μ^\hat\muμ^​ và ESSESSESS, mỗi số làm tròn đến đúng 6 chữ số thập phân (%.6f). Nếu tổng trọng số ∑iwi=0\sum_i w_i = 0∑i​wi​=0 (mọi pi=0p_i=0pi​=0), in ra undefined.

    Ví dụ:

    Đầu vào:

    1
    1.0 1.0 5.0
    

    Đầu ra:

    5.000000 1.000000
    

    Đầu vào:

    3
    1.0 1.0 2.0
    1.0 1.0 4.0
    1.0 1.0 6.0
    

    Đầu ra:

    4.000000 3.000000
    

    Đang tải editor...