Danh mục các kí hiệu, chữ viết tắtE[X] Kì vọng của biến X Var[X] Phương sai của biến X dTV Biến phân toàn phần ƯCLN Ước chung lớn nhất MCMC Phương pháp xích Markov Monte Carlo... Lý do c
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
—————————————-HOÀNG THỊ ANH SANG
PHƯƠNG PHÁP XÍCH MARKOV MONTE CARLO VÀ ỨNG DỤNG
LUẬN VĂN THẠC SĨ TOÁN HỌC
HÀ NỘI, 2017
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
LUẬN VĂN THẠC SĨ TOÁN HỌC
Người hướng dẫn khoa học: TS NGÔ HOÀNG LONG
HÀ NỘI, 2017
Trang 3Lời cảm ơn
Tôi xin bày tỏ lòng biết ơn sâu sắc tới thầy Ngô Hoàng Long, giảng viên khoaToán-Tin, trường Đại học Sư phạm Hà Nội đã hướng dẫn tôi tận tình, cho tôi nhữngkiến thức và kinh nghiệm quý báu, tạo điều kiện thuận lợi cho tôi trong quá trình thựchiện và hoàn thành Luận văn này
Tôi cũng xin bày tỏ lòng biết ơn chân thành tới toàn thể các thầy cô giáo trongkhoa Toán, trường Đại học sư phạm Hà Nội 2 đã dạy bảo tôi tận tình trong suốt quátrình học tập tại khoa
Nhân dịp này tôi cũng xin được gửi lời cảm ơn chân thành tới gia đình, bạn bè đãluôn bên tôi, cổ vũ, động viên, giúp đỡ tôi trong suốt quá trình học tập và thực hiệnLuận văn tốt nghiệp
Hà Nội, ngày 12 tháng 06 năm 2017
Học viên cao học
Hoàng Thị Anh Sang
Trang 4Lời cam đoan
Tôi xin cam đoan Luận văn thạc sĩ "Phương pháp xích Markov Monte Carlo
và ứng dụng" là nghiên cứu của riêng tôi và được sự hướng dẫn khoa học của TS.Ngô Hoàng Long Các số liệu, kết quả nêu trong Luận văn là trung thực và chưa từngđược công bố dưới bất kì hình thức nào trước đây
Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm về nộidung Luận văn của mình
Hà Nội, ngày 12 tháng 06 năm 2017
Học viên cao học
Hoàng Thị Anh Sang
Trang 5Mục lục
1.1 Một số khái niệm cơ bản của lý thuyết xác suất 1
1.2 Xích Markov 5
1.2.1 Định nghĩa 5
1.2.2 Mô phỏng Xích Markov 7
1.2.3 Xích Markov tối giản và phi tuần hoàn 12
1.2.4 Phân phối dừng 13
1.2.5 Xích Markov khả nghịch 15
2 Phương pháp Monte-Carlo 16 2.1 Số ngẫu nhiên và phương pháp sinh số ngẫu nhiên 16
2.1.1 Bài toán tổng quát 16
Trang 62.1.2 Sinh số giả ngẫu nhiên 17
2.1.3 Sinh ra các đại lượng ngẫu nhiên với phân phối không đều 19
2.1.4 Các phân phối đặc biệt 22
2.2 Phương pháp Monte-Carlo 24
2.2.1 Phương pháp lấy mẫu phân tầng 24
2.2.2 Chọn mẫu quan trọng 27
2.2.3 Các số ngẫu nhiên chung 28
3 Xích Markov Monte Carlo 32 3.1 Phương pháp Xích Markov Monte Carlo 32
3.2 Một số phương pháp cải tiến 40
3.2.1 Các phương pháp tăng tốc cho thuật toán 40
3.2.2 Xấp xỉ ngẫu nhiên 48
3.3 Mô phỏng 56
Trang 7Danh mục các kí hiệu, chữ viết tắt
E[X] Kì vọng của biến X
Var[X] Phương sai của biến X
dTV Biến phân toàn phần
ƯCLN Ước chung lớn nhất
MCMC Phương pháp xích Markov Monte Carlo
Trang 8Danh sách bảng
3.1 Kết quả với đồ thị 4 đỉnh 573.2 Kết quả với đồ thị 5 đỉnh 58
Trang 9Danh sách hình vẽ
3.1 Một cấu hình thực hiện được (lựa chọn bất kì theo độ đo xác suất µG) 333.2 Đồ thị G với 4 đỉnh 573.3 Đồ thị G với 5 đỉnh 58
Trang 10MỞ ĐẦU
1 Lý do chọn đề tài
Trong nhiều ứng dụng thực tế, bài toán thường được quy về việc xác định kì vọngcủa hàm của một đại lượng ngẫu nhiên theo phân phối nhất định Khi đó, người tathường tìm cách xây dựng dãy biến ngẫu nhiên độc lập có phân phối này trên máy tính
và sử dụng luật số lớn để xấp xỉ kì vọng cần tính Tuy nhiên, trong nhiều trường hợp,việc mô phỏng chính xác một phân phối nào đó là hết sức khó khăn Phương pháp xíchMarkov Monte Carlo ra đời nhằm khắc phục khó khăn này Theo đó, ta sẽ xây dựngmột xích Markov có phân phối dừng là phân phối đã cho và áp dụng định lý ergodic
để xấp xỉ kì vọng
Ngày nay phương pháp xích Markov Monte Carlo đã được phát triển và sử dụngrộng rãi trong rất nhiều lĩnh vực, từ vật lý cho đến sinh vật, tài chính, khoa học máytính
Với mong muốn tìm hiểu sâu về phương pháp xích Markov Monte Carlo và các ứngdụng của nó, tôi lựa chọn đề tài nghiên cứu: “Phương pháp xích Markov MonteCarlo và ứng dụng” cho luận văn thạc sĩ của mình
Tài liệu tham khảo chính của luận văn là các chuyên khảo [3] và [4]
2 Mục đích nghiên cứu
Cơ sở lý thuyết của phương pháp xích Markov Monte Carlo
Mô phỏng phương pháp xích Markov Monte Carlo
Trang 113 Nhiệm vụ nghiên cứu
Nghiên cứu các phương pháp sinh số ngẫu nhiên theo phân phối cho trước
Phương pháp Monte-Carlo
Phương pháp xích Markov Monte Carlo và các phương pháp cải tiến
Mô phỏng phương pháp Monte Carlo và xích Markov Monte Carlo trên máy tính
để giải quyết một vấn đề cụ thể
4 Đối tượng và phạm vi nghiên cứu
Xích Markov
Phương pháp xích Markov Monte Carlo
5 Phương pháp nghiên cứu
Nghiên cứu lý thuyết
Nghiên cứu thực nghiệm mô phỏng trên máy tính
6 Dự kiến đóng góp mới
Luận văn hệ thống hoá và làm rõ cơ sở lý thuyết của phương pháp xích MarkovMonte Carlo và ứng dụng phương pháp này trong một vấn đề thực tiễn
NỘI DUNG
Luận văn tốt nghiệp sẽ được chia làm ba chương cộng với phần Mở đầu, Kết luận
và Tài liệu tham khảo Nội dung cụ thể trong Chương 1, Chương 2, Chương 3 của luậnvăn dự kiến sẽ được phân bổ như sau:
Chương 1: Xích Markov
1.1 Một số khái niệm cơ bản của lý thuyết xác suất
Trang 121.2 Xích Markov
Chương 2: Phương pháp Monte-Carlo
2.1 Số ngẫu nhiên và phương pháp sinh số ngẫu nhiên2.2 Phương pháp Monte-Carlo
Chương 3: Xích Markov Monte Carlo
3.1 Phương pháp xích Markov Monte Carlo
3.2 Một số phương pháp cải tiến
3.3 Mô phỏng
Trang 13Chương 1
Xích Markov
1.1 Một số khái niệm cơ bản của lý thuyết xác suất
Cho Ω là một tập hợp khác rỗng và Σ là một σ-đại số các tập con của Ω Mỗi phần
tử của Σ được gọi là một biến cố Cho A ⊆ Ω, ta viết Ac là phần bù của A trong Ω,nghĩa là:
Ac= {s ∈ Ω : s /∈ A}
Một độ đo xác suất trên Ω là một hàm P : Σ → [0, 1], thỏa mãn
(i) P(∅) = 0, P(Ω) = 1
(ii) Nếu A1, A2, là dãy gồm đếm được các biến cố đôi một rời nhau, (tức là Ai∩Aj =
∅ với mọi i 6= j), khi đó P(
đã biết biến cố B đã xảy ra
Hai biến cố A và B được gọi là độc lập nếu P(A ∩ B) = P(A)P(B)
Tổng quát hơn, các biến cố A1, A2, , Ak được gọi là độc lập nếu với mỗi l ≤ k và
Trang 14Chú ý rằng nếu P(B) > 0, A và B độc lập thì ta có P(A|B) = P(A), nghĩa là sự xảy
ra của biến cố B không làm ảnh hưởng đến khả năng xảy ra của biến cố A
Biến ngẫu nhiên là đại lượng mà giá trị của nó phụ thuộc vào kết quả ngẫu nhiêncủa phép thử Thông thường, một biến ngẫu nhiên là một giá trị thực, trong trườnghợp này nó là một hàm X : Ω → R Tuy nhiên, xem xét các biến ngẫu nhiên trongmột ý nghĩa tổng quát hơn, đó là những hàm X : Ω → S, S là tập bất kì
Biến cố A được xác định dưới dạng biến ngẫu nhiên X nếu ta có thể có hoặckhông có A xảy ra từ giá trị của X Ví dụ các biến cố được xác định dưới dạng biếnngẫu nhiên X là
là hàm phân phối FX : R → [0, 1] được xác định bởi FX(x) = P(X ≤ x) với mọi
Trang 15(i) là độc lập,
(ii) có cùng phân phối, tức là P(Xi ≤ x) = P(Xj ≤ x) với mọi i, j và x
Thông thường, dãy (X1, X2, ) thể hiện sự phát triển theo thời gian của đại lượngngẫu nhiên: Xn là đại lượng tại thời điểm n Một dãy như vậy được gọi là một quátrình ngẫu nhiên (hoặc quá trình mang tính ngẫu nhiên) Xích Markov trongphần tiếp theo là một lớp đặc biệt của quá trình ngẫu nhiên
Ta xét hai loại biến ngẫu nhiên giá trị thực: biến ngẫu nhiên rời rạc và biến ngẫunhiên liên tục Biến ngẫu nhiên rời rạc thì các giá trị của chúng là tập con hữu hạnhoặc đếm được của R
Biến ngẫu nhiên liên tục X là một biến ngẫu nhiên mà tồn tại một hàm mật
Trang 16khoảng I có độ dài a trong đoạn [0, 1], ta có: P(X ∈ I) = a.
Kì vọng (hoặc giá trị kì vọng, hoặc trung bình) E[X] của một biến ngẫu nhiêngiá trị thực X là, trong một nghĩa nào đó, giá trị "trung bình" mong đợi từ x Nếu X
là một biến ngẫu nhiên liên tục với hàm mật độ fX(x), khi đó kì vọng được xác địnhnhư sau
Var[X] = E[(x − µ)2] ở đây µ = E[X] (1.2)
Do đó, phương sai là kì vọng của bình phương độ lệch của X so với kì vọng của nó Phương sai có thể tính toán bằng cách sử dụng công thức (1.2) hoặc bởi đẳng thức
được gọi là công thức Steiner
Đối với các kì vọng ta có:
E[X1+ X2+ · · · + Xn] = E[X1] + E[X2] + · · · + E[Xn]
Nếu c là một hằng số thì
E[cX] = cE[X]
Trang 17Đối với các phương sai ta có
Var[cX] = c2Var[X]
Khi X1, X2, , Xn độc lập
Var[X1+ X2+ · · · + Xn] = Var[X1] + Var[X2] + · · · + Var[Xn]
Định lý 1.1 (Bất đẳng thức Chebyshev) Cho X là một biến ngẫu nhiên với kìvọng µ và phương sai σ2 Cho a > 0 bất kì, ta có xác suất P[|X − µ| ≥ a] của độ lệchtrung bình nhỏ nhất, thỏa mãn
P(|X − µ| ≥ a) ≤ σ
2
a2.Định lý 1.2 (Luật Số Lớn) Cho X1, X2, là các biến ngẫu nhiên độc lập khả tích
và có cùng phân phối với trung bình µ Cho Mn biểu thị giá trị trung bình của n biến
Xi đầu tiên, có nghĩa là:
Mn = 1
n(X1+ X2+ · · · + Xn).
Khi đó, Mn hội tụ hầu chắc chắn tới µ
Định lý 1.3 (Định lí giới hạn trung tâm) Cho X1, X2, là dãy biến ngẫunhiên độc lập và có cùng phân phối Đặt µ = EXn và σ2 = DXn < +∞ Đặt
1.2 Xích Markov
Định nghĩa 1.4 Cho P là một ma trận cỡ k × k với các phần tử {Pi,j : i, j =
1, 2, , k} Một quá trình ngẫu nhiên (X0, X1, ) với không gian trạng thái hữu hạn
Trang 18S = {s1, s2, , sk} là một xích Markov (thuần nhất) với ma trận chuyển P ,nếu với tất cả n, tất cả i, j ∈ {1, 2, , k} và với mọi i0, i1, , in−1 ∈ {1, 2, , k} tacó
P(Xn+1 = sj|X0 = si0, X1 = si1, , Xn−1= sin−1, Xn= si)
= P(Xn+1= sj|Xn = si)
= Pi,j.Mỗi phần tử của ma trận chuyển P được gọi là xác suất chuyển Xác suất chuyển
Pi,j là xác suất hệ sẽ ở trạng thái sj vào "ngày mai" với điều kiện hệ đang trong trạngthái si vào "ngày hôm nay"
Mỗi ma trận chuyển thỏa mãn
Pi,j ≥ 0 với mọi i, j ∈ {1, 2, , k}, (1.4)
Trang 19Định lý 1.5 Cho xích Markov (X0, X1, ) với không gian trạng thái S = {s1, s2, , sk},phân phối ban đầu µ(0) và ma trận chuyển P , với n bất kì thì phân phối µ(n) tại thờiđiểm n thỏa mãn
ma trận chuyển P(1), P(2), nếu với mọi n, với mọi i, j ∈ {1, 2, , k} và tất cả
i0, i1, , in−1 ∈ {1, 2, , k} ta có
P(Xn+1 = sj|X0 = si0, X1 = si1, , Xn−1= sin−1, Xn= si)
= P(Xn+1 = sj|Xn = si)
= Pi,j(n+1).Định lý 1.7 Giả sử (X0, X1, ) là một xích Markov không thuần nhất với không giantrạng thái {s1, s2, , sk}, phân phối ban đầu µ(0) và các ma trận chuyển P(1), P(2), Với n bất kì, ta có:
µ(n) = µ(0)P(1)P(2) P(n)
Một vấn đề chính của ứng dụng thực hành của lý thuyết Markov là mô phỏng xíchMarkov trên máy tính Trong phần này chúng ta sẽ mô tả phương pháp mô phỏng này.Trước tiên chúng ta giả sử rằng: Trong hầu hết các ngôn ngữ lập trình cấp cao, ta cóthể sinh ra một dãy gồm vô hạn các số ngẫu nhiên U0, U1, của các biến độc lập và
có cùng phân phối đều trên khoảng đơn vị [0, 1]
Điều trên là một giả thiết lí tưởng vì hai lí do sau:
(A) các số U0, U1, thu được từ thuật toán sinh số ngẫu nhiên này có phân phốikhông đều trên [0, 1] Thông thường, chúng có khai triển nhị phân (hoặc thậpphân) và do đó nó là hữu tỉ Ngược lại, mỗi số ngẫu nhiên phân bố đều trên [0, 1]
là số vô tỉ với xác suất bằng 1
Trang 20(B) U0, U1, là không ngẫu nhiên! Thực tế nó sinh ra bởi phương thức tất định Vì
lí do này, thuật toán sinh số ngẫu nhiên được gọi là thuật toán sinh số giả ngẫunhiên
Ở chương sau ta sẽ tiếp tục thảo luận về vấn đề này Sau đây ta chuyển vào vấn đềchính là xây dựng phương pháp mô phỏng một xích Markov (X0, X1, ) với không giantrạng thái S = {s1, s2, , sk}, phân phối ban đầu µ(0) và ma trận chuyển P Các sốngẫu nhiên U0, U1 là thành phần chính Các thành phần chính khác là hai hàm, tagọi là hàm khởi tạo và hàm cập nhật
Hàm khởi tạo ψ : [0, 1] → S là một hàm từ khoảng đơn vị tới không gian trạngthái S mà chúng ta sử dụng để tạo ra các giá trị X0 ban đầu Giả sử
(i) ψ là hàm hằng từng khúc (tức là [0, 1] có thể chia thành hữu hạn những khoảngcon sao cho ψ là hằng số trên mỗi khoảng con),
(ii) với mỗi s ∈ S, tổng độ dài của các khoảng con thoả mãn ψ(x) = s bằng µ(0)(s).Một cách diễn đạt khác của (ii) đó là
1
Z
0
I{ψ(x)=s}dx = µ(0)(s), (1.7)với mỗi s ∈ S; ở đây I{ψ(x)=s} được gọi là hàm chỉ tiêu của {ψ(x) = s}, nghĩa là
Trang 21Hàm khởi tạo hợp lí thì dễ dàng xây dựng: với S = {s1, s2, , sk} và phân phốiban đầu µ(0), ta có thể thiết lập
Ta đã biết cách tạo ra X0 và bây giờ ta nghiên cứu cách tạo ra Xn+1 từ Xn với mọi
n, sau đó ta có thể dùng quy trình này để sinh ra xích (X0, X1, ) Ta sẽ dùng số ngẫunhiên Un+1 và hàm cập nhật φ : S × [0, 1] → S, đầu vào là trạng thái s ∈ S và một
số nằm giữa 0 và 1 sẽ tạo ra một trạng thái khác s0 ∈ S là đầu ra Tương tự như hàm
ψ thì hàm φ cần thỏa mãn:
(i) với si cố định, hàm φ(si, x) hằng từng khúc theo biến x,
(ii) với mỗi si, sj ∈ S cố định, tổng độ dài các khoảng mà trên đó φ(si, x) = sj làbằng Pi,j
Giống như hàm khởi tạo thì tính chất (ii) có thể được viết lại là
1
Z
0
I{φ(si,x)=s j }dx = Pi,j (1.9)
Trang 22với mọi si, sj ∈ S Nếu hàm cập nhật φ thỏa mãn (1.9), khi đó
ta lấy trên cả dãy các giá trị (X0, X1, , Xn−1) Do đó, vậy điều này cho ta một môphỏng chính xác của xích Markov Hàm φ thỏa mãn (1.9) được gọi là hàm cập nhậthợp lí cho xích Markov X0, X1,
Trang 23Ta chỉ ra làm thế nào phương pháp trên có thể khái quát với mô phỏng xích Markovkhông thuần nhất Cho X0, X1, là một xích Markov không thuần nhất với không giantrạng thái S = {s1, , sk}, phân phối ban đầu µ(0)và các ma trận chuyển P(0), P(1),
Ta có được hàm khởi tạo ψ và bắt đầu với giá trị X0 như trong trường hợp thần nhất.Việc cập nhật thực hiện giống như trong trường hợp thuần nhất, từ xích không thuầnnhất ta cần một số hàm cập nhật khác nhau: φ(0), φ(1), và từ đó ta có:
1
Z
0
I{φ(n) (s i ,x)=s j }dx = Pi,j(n),với mỗi n và mỗi si, sj ∈ S Ta có hàm khái quát của (1.11)
(1.12)
Trang 24Xích Markov không thuần nhất được mô phỏng bằng cách thiết lập
1.2.3 Xích Markov tối giản và phi tuần hoàn
Một xích Markov là tối giản khi tất cả các trạng thái của xích Markov có thể đạtđược từ tất cả xích khác Cụ thể, xét xích Markov (X0, X1, ) với không gian trạngthái S = {s1, s2, , sk} và ma trận chuyển P Ta nói trạng thái si thông với trạngthái sj, kí hiệu si → sj, nếu tồn tại n ≥ 0 sao cho
Trang 25Định lý 1.10 Giả sử ta có một xích Markov không tuần hoàn (X0, X1, ) với khônggian trạng thái S = {s1, s2, , sk} và ma trận chuyển P Khi đó tồn tại N < ∞
sao cho:
(Pn)i,i > 0,với i ∈ {1, 2, , k} và với mọi n ≥ N
Hệ quả 1.11 Cho (X0, X1, ) là một xích Markov tối giản và phi tuần hoàn với khônggian trạng thái S = {s1, s2, , sk} và ma trận chuyển P Khi đó tồn tại M < ∞ saocho
(Pn)i,j > 0,với mọi i, j ∈ {1, 2, , k} và mọi n ≥ M
Định nghĩa 1.12 Cho (X0, X1, ) là một xích Markov với không gian trạng thái
S = {s1, s2, , sk} và ma trận chuyển P Một vectơ dòng π = (π1, π2 , πk) được gọi
là phân phối dừng của xích Markov, nếu nó thỏa mãn
(i) πi ≥ 0 với i = 1, 2, , k vàPk
1
πi = 1,(ii) πP = π, nghĩa là
µ(1) = µ(0)P = πP = π
Và bằng cách lặp lại như vậy ta có µ(n) = π với mỗi n
Từ đó định nghĩa phân phối dừng chỉ phụ thuộc ma trận chuyển P , đôi khi ta nóiphân phối π thỏa mãn (i) và (ii) trong định nghĩa trên là dừng với ma trận P (đúnghơn là cho xích Markov)
Ta xét 3 vấn đề: sự tồn tại của phân phối dừng, tính duy nhất của phân phốidừng và sự hội tụ tới dừng bắt đầu từ phân phối ban đầu bất kì
Trang 26Định lý 1.13 (Sự tồn tại của phân phối dừng) Xích Markov tối giản và phituần hoàn bất kì có tồn tại ít nhất một phân phối dừng.
Nếu một xích Markov (X0, X1, ) với không gian trạng thái {s1, s2, , sk} và matrận chuyển P bắt đầu trong trạng thái si, khi đó ta có thể định nghĩa thời gianchạm
Ti,j = min{n ≥ 1 : Xn= sj}với quy ước rằng Ti,j = ∞ nếu xích Markov không bao giờ tới sj Ta cũng có địnhnghĩa thời gian chạm trung bình
τi,j = E[Ti,j]
Điều này có nghĩa τi,j là kì vọng cho thời gian cho tới khi ta đến trạng thái sj, bắt đầu
từ trạng thái si Trong trường hợp i = j, ta gọi τi,i là thời gian trở lại trung bìnhcho trạng thái si Ta nhấn mạnh rằng với thời gian chạm Ti,j thì nó luôn bao hàm giảthuyết X0 = si
Bổ đề 1.14 Cho xích Markov tối giản và phi tuần hoàn bất kì với không gian trạngthái S = {s1, s2, , sk} và ma trận chuyển P , ta có với hai trạng thái si, sj ∈ S mànếu như xích bắt đầu ở trạng thái si, khi đó: P(Ti,j < ∞) = 1
Hơn thế, thời gian chạm trung bình τi,j là hữu hạn, tức là E[Ti,j] < ∞
Ta đi xét dáng điệu tiệm cận của xích Markov µ(n) với phân phối ban đầu bất kì
µ(0) Ta cần định nghĩa một dãy các phân phối xác suất ν(1), ν(2), hội tụ tới phânphối xác suất khác ν, nó rất hữu ích có một metric trên phân phối xác suất Ta có cácmetric khác nhau; một metric hữu ích ở đây được gọi là biến phân toàn phần.Định nghĩa 1.15 Nếu ν(1) = (ν1(1), ν2(1), , νk(1)) và ν(2) = (ν1(2), ν2(2), , νk(2)) là phânphối xác suất trên S = {s1, s2, , sk}, khi đó ta định nghĩa biến phân toàn phần giữa
lim
n→∞dTV(ν(n), ν) = 0
Trang 27dTV(ν(1), ν(2)) = max
A⊆S
ν(1)(A) − ν(2)(A)
Bây giờ ta bắt đầu đến với kết quả hội tụ đến dừng
Định lý 1.16 (Định lý xích Markov hội tụ) Cho (X0, X1, ) là một xích Markovtối giản và phi tuần hoàn với không gian trạng thái S = {s1, s2, , sk}, ma trận chuyển
P và phân phối ban đầu tùy ý µ(0) Khi đó, cho π là một phân phối dừng bất kì của matrận chuyển P Ta có
µ(n) TV−→ π
Định lý 1.17 (Tính duy nhất của phân phối dừng) Xích Markov tối giản vàphi tuần hoàn bất kì có chính xác một phân phối dừng
Định nghĩa 1.18 Cho (X0, X1, ) là một xích Markov với không gian trạng thái
S = {s1, s2, , sk} và ma trận chuyển P Một phân phối xác suất π trên S gọi là khảnghịch của xích (hoặc của ma trận chuyển P ) nếu với tất cả i, j ∈ {1, 2, , k} ta có
Trang 28Chương 2
Phương pháp Monte-Carlo
2.1 Số ngẫu nhiên và phương pháp sinh số ngẫu
nhiên
Trong phần này ta trình bày phương pháp sinh các biến và các vectơ ngẫu nhiêntheo phân phối cho trước Khi ta nói "sinh ra" một đối tượng là ta đề cập đến mộtthuật toán (một chương trình máy tính trong thực hành) có đầu ra là một đối tượng
có kiểu ta mong muốn Ta sẽ tập trung vào hai nhiệm vụ chính sau:
(A) Sinh ra một dãy các số ngẫu nhiên U1, U2, độc lập và có cùng phân phối U [0, 1],(B) Cho một dãy độc lập cùng phân phối U1, U2, và phân phối mục tiêu F trong Rk,tìm m ≥ k, xác định một hàm h : [0, 1]m → Rk sao cho h(U1, U2, , Um) ∼ F Nói cách khác, sinh ra một biến ngẫu nhiên hoặc một vectơ có phân phối F Khi hàm phân phối F : R → [0, 1] liên tục và tăng nghiêm ngặt, thì F−1 : [0, 1] → Rcũng liên tục và tăng nghiêm ngặt Nói chung, F liên tục phải và không giảm; khi đó
F−1 được định nghĩa bởi
F−1 = inf{z ∈ R : F (z) ≥ u}, u ∈ [0, 1] (2.1)Trong thống kê, F−1 được gọi là hàm phân vị của F
Trang 29Mệnh đề 2.1 Cho F là một hàm phân phối tích lũy của một biến ngẫu nhiên, và cho U
là một biến ngẫu nhiên với phân phối U [0, 1] Khi đó, F−1(U ) ∼ F và F−1(1 − U ) ∼ F Chứng minh Với z ∈ R, sử dụng tính chất liên tục phải của F ta có:
với a, c và m là các số nguyên không âm; a, m 6= 0, m lớn; Un= Xn/m Phương phápnày hiệu quả khi số các số ngẫu nhiên ta cần không quá lớn Ta cần kiểm tra điều kiệncác giá trị a, c và m cẩn thận trong các trường hợp
Theo định nghĩa, mọi phương pháp sinh số giả ngẫu nhiên cuối cùng sẽ phải lặplại Tức là, tồn tại số nguyên dương P sao cho
Xi = Xi+P với mọi i đủ lớn
Giá trị nhỏ nhất của P được gọi là độ dài vòng lặp hoặc chu kì của phương pháp sinh
số giả ngẫu nhiên
Trang 30Định lý 2.2 (Knuth 1981) Chu kì của phương pháp đồng dư tuyến tính là m nếu vàchỉ nếu các điều kiện sau thỏa mãn:
1 c và m là các số nguyên tố cùng nhau,
2 mỗi ước nguyên tố của m cũng là ước của a − 1,
3 nếu 4 là ước của m thì 4 là ước của a − 1
Ví dụ, Xi+1= (aXi+ c) mod 231 có chu kì là 231nếu và chỉ nếu c là lẻ và a = 4k + 1với k ≥ 1
Khi hạt nhân đầu tiên là số nguyên lẻ, điều đó chứng minh rằng thuật toán sinh số giảngẫu nhiên bằng phương pháp đồng dư tuyến tính với
Xi+1= 65539Xi mod 231,
có chu kì 229(> 5 × 108)
Vì 65539 = 216+ 3, ta có thể viết
Xi+1= (216Xi+ 2Xi+ Xi) mod 231.Bây giờ ta có:
Xi+2= (216+ 3)Xi+1 mod 231
Mặc dù các mô hình siêu phẳng như vậy là đặc tính của phương pháp đồng dư tuyếntính, các lựa chọn cẩn thận có thể giảm thiểu vấn đề Về điểm này, so sánh định lượng
Trang 31có thể được thực hiện thông qua kiểm tra phổ.
Ngày nay phần lớn các máy tính hoặc phần mềm tính toán đều được trang bị mộtthuật toán sinh số giả ngẫu nhiên có phân phối đều hiệu quả và đáp ứng được nhữngtính toán, mô phỏng ngẫu nhiên có khối lượng lớn
đềuTrong phần này ta sẽ trở lại nhiệm vụ (B), giả sử ta biết cách tạo ra một dãy cácbiến ngẫu nhiên Un độc lập cùng phân phối U [0, 1]
Trong khi mô tả thuật toán ta thường viết 00A ← B00 nghĩa là "gán giá trị hiện tạicủa biểu thức B cho biến A"
Ta bắt đầu với trường hợp đơn giản Giả sử hàm mật độ xác suất mục tiêu f bịchặn và nó bằng 0 ngoài đoạn [a, b] Đặt
c = sup{f (x) : x ∈ [a, b]}
Sinh ra X ∼ f bởi phương pháp chấp nhận-bác bỏ đơn giản:
Bước 1: Sinh ra Q ∼ U [a, b] (ví dụ Q ← (b − a)U1+ a ở đó U1 ∼ U [0, 1]).
Bước 2: Sinh ra Y ∼ U [0, c]
Trang 32Bước 3: Nếu Y ≤ f (Q), khi đó chấp nhận: X ← Q và dừng lại.
Nếu Y > f (Q), khi đó bác bỏ: trở lại bước 1
Mỗi vectơ ngẫu nhiên (Q, Y ) sinh ra có phân phối đều trên hình chữ nhật [a, b] × [0, c]
Do đó cặp được chấp nhận (Q, Y ) có phân phối đều trong vùng bị chặn phía dưới của
đồ thị f Phân phối biên Q chấp nhận có hàm mật độ xác suất f Tức là, X ∼ f Tổng quát hơn, giả sử ta muốn sinh ra một vectơ ~X ngẫu nhiên d-chiều từ mộthàm mật độ xác suất mục tiêu f (~x) trên Rd Giả sử g(~x) là một hàm mật độ xác suấtkhác trên Rd thỏa mãn hai điều kiện:
(i) Ta đã biết cách sinh ra vectơ ngẫu nhiên ~V như thế nào từ g(~x)
(ii) Tồn tại hằng số α sao cho f (~x) ≤ αg(~x) với mọi ~x ∈ Rd
Sau đó ta áp dụng phương pháp nghịch đảo tổng quát :
Bước 1: Sinh ra ~V ∼ g
Bước 2: Sinh ra Y ∼ U [0, αg(~V )]
Bước 3: Nếu Y ≤ f (~V ), khi đó chấp nhận: ~X ← ~V và dừng lại
Nếu Y > f (~V ), khi đó bác bỏ : trở lại bước 1
Ta gọi g là hàm mật độ xác suất đề xuất
Định lý 2.3 Nếu −→
X được tạo thành từ bước 1 − 3 của phương pháp chấp nhận-bác bỏtổng quát, khi đó −→
X ∼ f Chứng minh Hai tập con của Rd× R :
S = {(~x, y) : 0 ≤ y ≤ αg(~x)} và B = {(~x, y) : 0 ≤ y ≤ f (~x)},
là các vùng phía dưới của các đồ thị αg và f tương ứng
Bước 1 và 2 tạo ra một điểm ngẫu nhiên (~V , Y ) có phân phối đều trên S Để thấyđiều này, cho h(~x, y) biểu thị mật độ chung của (~V , Y ), và h(y|~x) biểu thị hàm mật độxác suất của Y với điều kiện ~V = ~x Khi đó ta có thể viết
h(~x, y) =
g(~x)h(y|~x) nếu (~x, y) ∈ S
Trang 33Bước 2 cho ta h(y|~x) = (αg(~x))−1 với y ∈ [0, αg(~x)] Do đó h(~x, y) = α−1 với mọi(~x, y) ∈ S (chú ý là α bằng diện tích của S).
Giả sử (~V∗, Y∗) là điểm chấp nhận, tức là, cặp (~V , Y ) đầu tiên thuộc B Phân phốicủa (~V∗, Y∗) là phân phối đều trên B, tức là, nó có hàm mật độ xác suất bằng 1 trên
B Vì vậy hàm mật độ xác suất biên của ~X = ~V∗ là k(~x) =
f (~ x)
R
0
1dy = f (x)
Sự hiệu quả của phương pháp chấp nhận-bác bỏ tổng quát
Với mỗi đề xuất (~V , Y ) thu được từ các bước 1, 2; xác suất để cặp (~V , Y ) được chấpnhận là
diện tích (B)diện tích (S) =
1
α.
Do đó, kì vọng của số lần đề xuất cần là α (cụ thể, số đề xuất cần thiết có phân phốihình học với tham số 1/α) Ta chọn g để a nhỏ (tức là, gần tới 1) Đối với sự lựa chọn
f và g, yêu cầu αg(x) ≥ f (x) với mỗi x, nghĩa là ta phải có α ≥ sup f (x)/g(x) với tất
cả x sao cho g(x) 6= 0 Rõ ràng, α = sup f (x)/g(x) là tối ưu cho f và g
Phương pháp chấp nhận-bác bỏ cho phân phối rời rạc
Giả sử ta mong muốn sinh ra X theo một phân phối rời rạc đã biết p = (pi : i ∈ S)trên tập S hữu hạn hoặc đếm được Nếu ta biết cách sinh ra V như thế nào từ hàmphân phối xác suất đề xuất q = (qi : i ∈ S) và nếu có hằng số α sao cho pi ≤ αqi vớimỗi i, khi đó ta có thuật toán sinh ra phân phối p như sau:
Bước 1: Sinh ra V với phân phối q
Bước 2: Sinh ra Y ∼ U [0, αqV]
Bước 3: Nếu Y ≤ pV, khi đó chấp nhận: X ← V và dừng lại
Trái lại, bác bỏ: trở lại bước 1
Lại một lần nữa, hiệu quả trực tiếp liên quan đến độ lớn của α
Trang 341 Sinh ra I ∈ {1, , M } với hàm phân phối xác suất (α1, , αM).
2 Sinh ra (V, M ) đều trên SI
Phân phối hình học
Nếu U ∼ U [0, 1], khi đó
−λ−1log U ∼ Exp(λ)
Hơn nữa, không khó để chứng minh rằng nếu Q ∼ Exp(λ) khi đó
dQe ∼ Phân phối hình học (1 − e−λ)
Do đó, để sinh ra X ∼ Phân phối hình học(p), trong đó p ∈ (0, 1), áp dụng ở trên với
λ sao cho 1 − e−λ = p, tức là, λ = − log(1 − p) Điều đó nghĩa là sinh ra U ∼ U [0, 1]
và khi đó ta đặt
X ← d log U
log(1 − p)e
Phân phối Gamma
Để sinh ra X ∼ Gamma(n, b) với n ∈ N, b > 0 ta có thể xây dựng như sau:
1 Sinh ra U1, U2, , Un độc lập, cùng phân phối ∼ U [0, 1]
2 Đặt Xi ← −b−1log Ui với mỗi i
Trang 35Đặc biệt, vì phân phối Gamma(n, 1/2) chính là phân phối χ2
2n, điều này cho phép tasinh ra phân phối χ2 với bậc tự do
Phân phối chuẩn
Phương pháp Box-Muller là phương pháp sinh ra hai biến ngẫu nhiên độc lập, cùngphân phối N (0, 1) từ hai biến ngẫu nhiên, độc lập cùng phân phối U [0, 1] Để sử dụngthuật toán trước hết ta sẽ nói về một số lý thuyết phân phối
Đầu tiên, giả sử X1, X2 là độc lập, cùng phân phối N (0, 1) Hàm mật độ xác suấtđồng thời của vectơ ngẫu nhiên (X1, X2) là
là phương pháp Box-Muller: Sinh ra U1, U2 ∼ U [0, 1] và đặt
X1 ←p−2 log U1cos(2πU2)
X2 ←p−2 log U1sin(2πU2)
Khi đó, X1 và X2 là độc lập, cùng phân phối N (0, 1)
Trang 36I ≈ 1n
sẽ trình bày một vài phương pháp giảm phương sai cho các bài toán cụ thể
Giả sử ta muốn tính tích phân I =RSk(~x)f (~x)d(~x) trong đó S ⊆ Rd, f là hàm mật
độ xác suất trên S, và k là hàm thực Giả sử rằng ta muốn sinh ra n mẫu từ S.Cho X là biến ngẫu nhiên với hàm mật độ xác suất f Đặt
ˆ
In = 1n
S (i)
f (~x)d(~x) = P(X ∈ S(i))
Trang 37Ta thấy a1+ · · · + aM = 1 Cố định các số nguyên n1, , nM sao cho n1+ · · · + nM = n.Với mỗi i sinh ra ni mẫu X1(i), , Xn(i)i từ S(i) có hàm mật độ xác suất điều kiện của
X cho X ∈ S(i); tức là, mỗi Xj(i) có hàm mật độ xác suất
Trang 38Định lý 2.5 Cho trước n và S(1), , S(M ) Khi đó, phương sai của ước lượng phântầng T giảm dần bởi cách chọn ni tỉ lệ với căn bậc hai của a2
... data-page="28">Chương 2
Phương pháp Monte- Carlo< /h2>
2.1 Số ngẫu nhiên phương pháp sinh số ngẫu
nhiên
Trong phần ta trình bày phương pháp sinh biến vectơ ngẫu...
Định lý 1.17 (Tính phân phối dừng) Xích Markov tối giản vàphi tuần hồn có xác phân phối dừng
Định nghĩa 1.18 Cho (X0, X1, ) xích Markov với khơng gian trạng thái
S...
Phân phối chuẩn
Phương pháp Box-Muller phương pháp sinh hai biến ngẫu nhiên độc lập, cùngphân phối N (0, 1) từ hai biến ngẫu nhiên, độc lập phân phối U [0, 1] Để sử dụngthuật tốn trước hết