Đảo ngược kỹ thuật Box-Mueller : từ mỗi cặp normals , hai đồng phục độc lập có thể được xây dựng như (trên khoảng ) và (trên khoảng ).atan2 ( Y , X ) [ - π , π ] exp ( - ( X 2 + Y 2 ) / 2 ) [ 0 , 1 ](X,Y)atan2(Y,X)[−π,π]exp(−(X2+Y2)/2)[0,1]
Lấy các quy tắc theo nhóm hai và tính tổng bình phương của chúng để có được một chuỗi thay đổi . Các biểu thức thu được từ các cặp Y 1 , Y 2 ,χ22Y1,Y2,…,Yi,…
Xi=Y2iY2i−1+Y2i
sẽ có phân phối , thống nhất.Beta(1,1)
Rằng điều này chỉ đòi hỏi số học cơ bản, đơn giản nên rõ ràng.
Bởi vì phân phối chính xác của hệ số tương quan Pearson của mẫu bốn cặp từ phân phối chuẩn bivariate Phân phối chuẩn được phân phối đồng đều trên , chúng tôi có thể chỉ cần lấy các giá trị theo nhóm bốn cặp (nghĩa là tám giá trị trong mỗi bộ) và trả về hệ số tương quan của các cặp này. (Điều này liên quan đến số học đơn giản cộng với hai phép toán căn bậc hai.)[−1,1]
Từ thời cổ đại, người ta đã biết rằng hình chiếu hình trụ của hình cầu (một bề mặt trong ba không gian) có diện tích bằng nhau . Điều này ngụ ý rằng trong phép chiếu phân bố đồng đều trên mặt cầu, cả tọa độ ngang (tương ứng với kinh độ) và tọa độ dọc (tương ứng với vĩ độ) sẽ có phân bố đồng đều. Bởi vì phân phối chuẩn của trivariate là đối xứng hình cầu, nên hình chiếu của nó lên quả cầu là đồng nhất. Lấy kinh độ về cơ bản là tính toán tương tự như góc trong phương pháp Box-Mueller ( qv ), nhưng vĩ độ dự kiến là mới. Phép chiếu lên quả cầu chỉ đơn giản hóa một bộ ba tọa độ và tại điểm đóz X 3 i - 2 , X 3 i -(x,y,z)zlà vĩ độ dự kiến. Vì vậy, đi bình thường variates trong nhóm của ba, và máy tínhX3i−2,X3i−1,X3i
X3iX23i−2+X23i−1+X23i−−−−−−−−−−−−−−−−√
cho .i=1,2,3,…
Bởi vì hầu hết các hệ thống máy tính đại diện cho các số ở dạng nhị phân , việc tạo số thống nhất thường bắt đầu bằng cách tạo ra các số nguyên phân bố đồng đều trong khoảng từ đến (hoặc một số công suất cao liên quan đến độ dài từ máy tính) và định cỡ lại chúng khi cần. Các số nguyên như vậy được biểu diễn bên trong dưới dạng chuỗi gồm chữ số nhị phân. Chúng ta có thể thu được các bit ngẫu nhiên độc lập bằng cách so sánh một biến Bình thường với trung vị của nó. Do đó, nó đủ để chia các biến Bình thường thành các nhóm có kích thước bằng số bit mong muốn, so sánh từng biến với giá trị trung bình của nó và tập hợp các chuỗi kết quả của kết quả đúng / sai thành một số nhị phân. Viết2 32 - 1 2 32 k H H ( x ) = 1 x > 0 H ( x ) = 0 [0232−1232kđối với số bit và cho dấu (nghĩa là khi và nếu không) chúng ta có thể biểu thị giá trị đồng nhất chuẩn hóa trong với công thứcHH(x)=1x>0H(x)=0[0,1)
∑j=0k−1H(Xki−j)2−j−1.
Các biến thiên có thể được rút ra từ bất kỳ phân phối liên tục nào có trung vị bằng (chẳng hạn như Bình thường tiêu chuẩn); chúng được xử lý theo nhóm với mỗi nhóm tạo ra một giá trị đồng nhất giả như vậy.Xnk0k
Lấy mẫu từ chối là một cách tiêu chuẩn, linh hoạt, mạnh mẽ để rút ra các biến thiên ngẫu nhiên từ các phân phối tùy ý. Giả sử phân phối mục tiêu có PDF . Giá trị được vẽ theo phân phối khác với PDF . Trong bước từ chối, giá trị đồng nhất nằm giữa và được rút ra độc lập với và so với : nếu nó nhỏ hơn, được giữ lại nhưng nếu không thì quá trình được lặp lại. Tuy nhiên, cách tiếp cận này có vẻ như hình tròn: làm thế nào để chúng ta tạo ra một phương sai đồng nhất với một quy trình cần một phương sai thống nhất để bắt đầu?Y g U 0 g ( Y ) Y ffYgU0g(Y)YYf(Y)Y
Câu trả lời là chúng ta không thực sự cần một phương sai thống nhất để thực hiện bước từ chối. Thay vào đó (giả sử ), chúng ta có thể lật một đồng xu công bằng để lấy ngẫu nhiên hoặc . Điều này sẽ được hiểu là bit đầu tiên trong biểu diễn nhị phân của một biến thiên thống nhất trong khoảng . Khi kết quả là , điều đó có nghĩa là ; mặt khác, . Một nửa thời gian, điều này là đủ để quyết định bước từ chối: nếu nhưng đồng xu là , nên chấp nhận ; nếu0 1 U [ 0 , 1 ) 0 0 ≤ U < 1 / 2 1 / 2 ≤ U < 1 f ( Y ) / g ( Y ) ≥ 1 / 2 0 Y f ( Y ) / g ( Y ) < 1 / 2 1 Y U fg(Y)≠001U[0,1)00≤U<1/21/2≤U<1f(Y)/g(Y)≥1/20Yf(Y)/g(Y)<1/2 nhưng đồng xu là , nên bị từ chối; mặt khác, chúng ta cần lật lại đồng xu để có được bit tiếp theo . Bởi vì - cho dù giá trị có là bao nhiêu - vẫn có cơ hội dừng lại sau mỗi lần lật, số lần lật dự kiến chỉ là .1YU1 / 2 1 / 2 ( 1 ) +f(Y)/g(Y)1/21/2(1)+1/4(2)+1/8(3)+⋯+2−n(n)+⋯=2
Lấy mẫu từ chối có thể có giá trị (và hiệu quả) với điều kiện số lượng từ chối dự kiến là nhỏ. Chúng ta có thể thực hiện điều này bằng cách khớp hình chữ nhật lớn nhất có thể (đại diện cho phân phối đồng đều) bên dưới PDF thông thường.
Sử dụng Giải tích để tối ưu hóa diện tích của hình chữ nhật, bạn sẽ thấy rằng các điểm cuối của nó sẽ nằm ở , trong đó chiều cao của nó bằng , làm cho diện tích của nó hơi nhỏ lớn hơn . Bằng cách sử dụng mật độ Bình thường tiêu chuẩn này dưới dạng và từ chối tất cả các giá trị bên ngoài khoảng , và nếu không áp dụng quy trình loại bỏ, chúng tôi sẽ thu được các biến thiên thống nhất trong cách hiệu quả:exp ( - 1 / 2 ) / √±10,48g[-1,1][exp(−1/2)/2π−−√≈0.2419710.48g[−1,1][−1,1]
Trong một phần thời gian, phương sai Bình thường nằm ngoài và ngay lập tức bị từ chối. ( là CDF bình thường tiêu chuẩn.)[ - 1 , 1 ] Φ2Φ(−1)≈0.317[−1,1]Φ
Trong phần còn lại của thời gian, thủ tục từ chối nhị phân phải được tuân theo, trung bình cần thêm hai biến thể Bình thường.
Quy trình tổng thể yêu cầu trung bình bước.1/(2exp(−1/2)/2π−−√)≈2.07
Số lượng biến thiên Bình thường dự kiến cần thiết để tạo ra mỗi kết quả thống nhất tính ra
2eπ−−−√(1−2Φ(−1))≈2.82137.
Mặc dù điều đó khá hiệu quả, lưu ý rằng (1) tính toán của PDF thông thường yêu cầu tính toán theo cấp số nhân và (2) giá trị phải được tính toán trước một lần và mãi mãi. Đó vẫn là một phép tính ít hơn một chút so với phương pháp Box-Mueller ( qv ).Φ(−1)
Số liệu thống kê thứ tự của một phân phối thống nhất có khoảng cách theo cấp số nhân. Do tổng bình phương của hai Normals (không có nghĩa là 0) theo cấp số nhân, nên chúng tôi có thể tạo ra một nhận thức về đồng phục độc lập bằng cách tính tổng bình phương của các cặp Normals đó, tính tổng của các số này, tính lại kết quả để giảm trong khoảng và bỏ cái cuối cùng (sẽ luôn bằng ). Đây là một cách tiếp cận vừa lòng vì nó chỉ yêu cầu bình phương, tính tổng và (ở cuối) một bộ phận duy nhất.[ 0 , 1n1[0,1]1
Các giá trị sẽ tự động theo thứ tự tăng dần. Nếu sắp xếp như vậy là mong muốn, phương pháp này vượt trội hơn so với tất cả các cách khác vì nó tránh được chi phí của một loại. Tuy nhiên, nếu cần một chuỗi các đồng phục độc lập, thì việc sắp xếp ngẫu nhiên các giá trị này sẽ thực hiện thủ thuật. Vì (như đã thấy trong phương pháp Box-Mueller, qv ) các tỷ lệ của mỗi cặp Định mức không phụ thuộc vào tổng bình phương của mỗi cặp, nên chúng ta đã có phương tiện để có được hoán vị ngẫu nhiên đó: sắp xếp các tổng tích lũy theo tỷ lệ tương ứng . (Nếu rất lớn, quá trình này có thể được thực hiện trong các nhóm nhỏ hơnO ( n log ( n ) ) n n knO(nlog(n))nnkvới ít mất hiệu quả, vì mỗi nhóm chỉ cần mức để tạo giá trị đồng nhất. Đối với cố định , do đó chi phí tính toán tiệm cận là = , cần Biến đổi bình thường để tạo ra giá trị đồng nhất.)k k O ( n log ( k ) ) O ( n ) 2 n ( 1 + 1 / k ) n2(k+1)kkO(nlog(k))O(n)2n(1+1/k)n
Với một xấp xỉ tuyệt vời, bất kỳ phương sai Bình thường nào có độ lệch chuẩn lớn đều trông đồng nhất trên các phạm vi của các giá trị nhỏ hơn nhiều. Khi đưa phân phối này vào phạm vi (bằng cách chỉ lấy các phần phân số của các giá trị), do đó chúng tôi có được phân phối đồng nhất cho tất cả các mục đích thực tế. Điều này cực kỳ hiệu quả, đòi hỏi một trong những phép toán số học đơn giản nhất: chỉ cần làm tròn mỗi biến số Bình thường xuống số nguyên gần nhất và giữ lại số thừa. Sự đơn giản của phương pháp này trở nên hấp dẫn khi chúng ta kiểm tra một triển khai thực tế :[0,1]R
rnorm(n, sd=10) %% 1
đáng tin cậy tạo ra n
các giá trị đồng nhất trong phạm vi với chi phí chỉ là các biến thiên Bình thường và hầu như không tính toán.[0,1]n
(Ngay cả khi độ lệch chuẩn là , PDF xấp xỉ này thay đổi từ PDF thống nhất, như thể hiện trong hình sau, bởi ít hơn một phần trong ! Để phát hiện nó đáng tin cậy sẽ đòi hỏi một mẫu của các giá trị - đã vượt quá khả năng của bất kỳ thử nghiệm ngẫu nhiên tiêu chuẩn nào. Với độ lệch chuẩn lớn hơn, độ không đồng đều rất nhỏ, thậm chí không thể tính được. Ví dụ, với SD là như trong mã, mức tối đa độ lệch so với PDF đồng nhất chỉ là .)10 8 10 16 10 10 - 857110810161010−857
Trong mọi trường hợp, các biến thông thường "với các tham số đã biết" có thể dễ dàng được truy xuất và định cỡ lại thành các Tiêu chuẩn được giả định ở trên. Sau đó, các giá trị phân phối đồng đều có thể được lấy lại và định cỡ lại để bao gồm bất kỳ khoảng mong muốn nào. Chúng chỉ yêu cầu các phép toán số học cơ bản.