Trình tạo số ngẫu nhiên Weibull Excel

Các số ngẫu nhiên được rút ra từ một phân phối xác suất cụ thể (i. e. , biến thiên ngẫu nhiên) thường xuyên cần thiết trong nhiều lĩnh vực, đặc biệt là cho mô phỏng. Có nhiều thuật toán để tạo các biến ngẫu nhiên, nhưng tôi sẽ tập trung vào một kỹ thuật đơn giản có thể được sử dụng với một số hàm Excel tích hợp. Kỹ thuật này được gọi là Phương pháp biến đổi nghịch đảo. Vì mục đích của chúng tôi, chúng tôi muốn tránh sử dụng bất kỳ chương trình VBA nào hoặc bất kỳ thuật toán nhiều bước nào có thể gây khó khăn khi triển khai trong bảng tính, vì vậy chúng tôi sẽ chỉ sử dụng các hàm tích hợp sẵn. Ưu điểm, ngoài sự đơn giản, là bạn có thể tạo bao nhiêu biến ngẫu nhiên tùy ý chỉ bằng cách sao chép một công thức

Hàm phân phối tích lũy (CDF) là gì?

Hàm phân phối tích lũy (CDF) là một hàm cho chúng ta biết xác suất mà một số ngẫu nhiên được rút ra từ phân phối xác suất sẽ nhỏ hơn hoặc bằng một số giá trị. Chính thức hơn, CDF là tích phân của hàm mật độ xác suất (PDF) từ vô cực âm đến vô cực dương

Ví dụ: hãy nghĩ về phân phối chuẩn chuẩn, có giá trị trung bình là 0 và độ lệch chuẩn là 1. Bởi vì phân phối này đối xứng xung quanh giá trị trung bình, nên rõ ràng là xác suất rút ra một số ngẫu nhiên từ phân phối này nhỏ hơn 0 sẽ là 50%. Biểu đồ sau đây của CDF bình thường tiêu chuẩn cho thấy kết quả này

Trình tạo số ngẫu nhiên Weibull Excel

Bạn có thể thấy trong biểu đồ trên rằng bạn có thể chọn một số trên trục x và sau đó đọc xác suất rút ra một giá trị nhỏ hơn hoặc bằng giá trị đó từ trục y. Đường màu đỏ đậm cho biết xác suất rút được giá trị nhỏ hơn hoặc bằng 0. Tôi cũng đã thêm một đường màu đỏ nhạt hơn để hiển thị xác suất rút được giá trị nhỏ hơn hoặc bằng 1 (khoảng 84%)

Tất nhiên, CDF của một phân phối xác suất khác sẽ cho kết quả khác. Excel có các hàm tích hợp để hỗ trợ các phân phối xác suất sau

Các Hàm Phân Phối Xác Suất Tích Hợp Trong ExcelChức NăngDistributionExcelChuẩn Bình ThườngNorm. S. Dist(x, tích luỹ)NormalNorm. Dist(x, mean, standard_dev, tích lũy)BetaBeta. Dist(x, alpha, beta, tích lũy, [A], )BinomialBinom. Dist(số_s, phép thử, xác suất_s, tích lũy)Chi SquareChiSq. Dist(x, deg_freedom, tích lũy)FF. Tdist(x, deg_freedom 1, deg_freedom 2, tích lũy)Gamma Gamma. Dist(x, alpha, beta, tích lũy)LognormalLogNorm. Dist(x, mean, standard_dev, tích lũy)Sinh viên TT. Dist(x, deg_freedom, tích lũy)

Có một vài cái khác, nhưng tôi bỏ qua chúng vì chúng không có hàm nghịch đảo tương ứng

Phương pháp biến đổi nghịch đảo

Mục tiêu của bài viết này là trình bày cách sử dụng một số hàm tích hợp để tạo số ngẫu nhiên (biến số) từ các phân phối xác suất nhất định. Phương pháp biến đổi nghịch đảo là một cách để thực hiện điều này bằng cách đảo ngược những gì chúng ta đã thấy trong biểu đồ trên. Lưu ý rằng có sự tương ứng một đối một giữa các giá trị trên trục y và các giá trị trên trục x. Hơn nữa, lưu ý rằng các giá trị trên trục y là xác suất, do đó chúng đều nằm trong khoảng từ 0 đến 1. Do đó, nếu chúng ta có thể chọn ngẫu nhiên một xác suất (i. e. , một giá trị từ 0 đến 1) thì chúng ta có thể tìm thấy giá trị x được liên kết. Giá trị x này sau đó sẽ là một biến ngẫu nhiên được rút ra từ phân phối xác suất đã chọn

Trình tạo số ngẫu nhiên Weibull Excel

Phương pháp biến đổi nghịch đảo hoạt động như sau

  1. Tạo một biến ngẫu nhiên phân phối đồng đều (gọi nó là u) trong phạm vi từ 0 đến 1
  2. Cắm u vào hàm phân phối tích lũy nghịch đảo (CDF nghịch đảo, còn được gọi là hàm lượng tử của phân phối) của phân phối xác suất phù hợp (e. g. , phân phối chuẩn, phân phối gamma, v.v. ). Giá trị kết quả (gọi nó là x) là một biến ngẫu nhiên được rút ra từ phân phối xác suất đã chọn

Đối với bước 1, chúng ta có thể sử dụng hàm Rand. Điều này tạo ra một biến ngẫu nhiên được phân phối đồng đều giữa 0 và 1, đó chính xác là những gì chúng ta cần. Lưu ý rằng hàm này không ổn định, vì vậy số ngẫu nhiên mà hàm tạo ra sẽ thay đổi mỗi khi bảng tính được tính toán lại

Bước 2 thường khó hơn vì nhiều hàm phân phối tích lũy không có hàm nghịch đảo dạng đóng (e. g. , phân phối chuẩn). Tuy nhiên, Excel có sẵn các hàm nghịch đảo của một số phân phối xác suất mà chúng ta có thể sử dụng

Các hàm CDF nghịch đảo tích hợp sẵn của ExcelDistributionHàm ExcelChuẩn Bình thườngNorm. S. Inv(xác suất)NormalNorm. Inv(xác suất, trung bình, standard_dev)BetaBeta. Inv(xác suất, alpha, beta, [A], )BinomialBinom. Inv(thử nghiệm, xác suất_s, alpha)Chi SquareChiSq. Inv(xác suất, deg_freedom)FF. Inv(xác suất, deg_freedom 1, deg_freedom 2)Gamma Gamma. Inv(xác suất, alpha, beta)LognormalLogNorm. Inv(xác suất, trung bình, standard_dev)Student TT. Inv(xác suất, deg_freedom)

Bảng trên cho thấy các hàm CDF nghịch đảo mà chúng ta có thể sử dụng để tạo các biến ngẫu nhiên. "Mẹo" rất đơn giản mà chúng ta sẽ sử dụng là chèn hàm Rand() cho đối số xác suất. Ngoại lệ duy nhất là với Binom. Hàm Inv(), trong đó Rand() sẽ thay thế đối số alpha

Ví dụ về vẽ các biến thể ngẫu nhiên

Trong phần này, tôi sẽ trình bày một số ví dụ về việc tạo các biến ngẫu nhiên bằng cách sử dụng các hàm tích hợp sẵn của Excel cho các hàm phân phối tích lũy nghịch đảo. Một khi bạn hiểu ý tưởng, bạn sẽ thấy nó dễ dàng như thế nào. Trong mọi trường hợp, bạn có thể tạo bao nhiêu số ngẫu nhiên tùy thích bằng cách sao chép hàm vào các ô bổ sung. Ngoài ra còn có một bảng tính ví dụ chứa tất cả các ví dụ này, bao gồm cả đồ họa. Trong bảng tính, tôi đã tạo một mẫu gồm 500 biến ngẫu nhiên từ mỗi bản phân phối. Các hình ảnh hiển thị CDF cho từng phân phối và CDF theo kinh nghiệm cho các biến ngẫu nhiên. Trong mọi trường hợp, mức độ phù hợp có vẻ khá tốt (nhiều biến thể ngẫu nhiên hơn sẽ cải thiện mức độ phù hợp)

Phân phối chuẩn chuẩn

Vẽ một biến ngẫu nhiên từ một phân phối bình thường tiêu chuẩn

= Tiêu chuẩn. S. Đầu tư(Rand())

Hoặc, tương đương

= Tiêu chuẩn. Đầu vào(Rand(), 0, 1)

Trình tạo số ngẫu nhiên Weibull Excel

Phân phối bình thường

Vẽ một biến ngẫu nhiên từ phân phối chuẩn với giá trị trung bình là 20 và độ lệch chuẩn là 5

= Tiêu chuẩn. Đầu vào(Rand(), 20, 5)

Trình tạo số ngẫu nhiên Weibull Excel

Bản phân phối Beta

Chọn một biến ngẫu nhiên từ phân phối beta với alpha = 2, beta = 0. 25, giới hạn dưới là 0 và giới hạn trên là 1. Lưu ý rằng đây là giới hạn trên và dưới mặc định, vì vậy chúng có thể bị bỏ qua

=THỬ NGHIỆM. INV(Rand(), 2, 0. 25, 0, 1)

Trình tạo số ngẫu nhiên Weibull Excel

Phân phối nhị thức

Chọn một số ngẫu nhiên từ phân phối nhị thức với 40 lần thử và xác suất thành công là 20%

=BINOM. INV(40, 0. 20, Rand())

Trình tạo số ngẫu nhiên Weibull Excel

Phân phối Chi vuông

Chọn một số ngẫu nhiên từ phân phối Chi Square với 2 bậc tự do

=CHISQ. INV(Rand(), 2)

Trình tạo số ngẫu nhiên Weibull Excel

Phân phối F

Chọn một biến ngẫu nhiên từ phân phối F với 3 và 7 bậc tự do

=F. INV(Rand(), 3, 7)

Trình tạo số ngẫu nhiên Weibull Excel

Phân phối Gamma

Vẽ một biến ngẫu nhiên từ phân phối gamma với tham số hình dạng là 2 và tham số tỷ lệ là 1

=Gamma. Đầu vào(Rand(), 2, 1)

Trình tạo số ngẫu nhiên Weibull Excel

Phân phối logic chuẩn

Vẽ một biến ngẫu nhiên từ phân phối logic chuẩn với giá trị trung bình bằng 0. 10 và độ lệch chuẩn là 0. 20

Đăng nhậpNorm. Đầu vào(Rand(), 0. 10, 0. 20)

Trình tạo số ngẫu nhiên Weibull Excel

Phân phối T của sinh viên

Tạo một biến ngẫu nhiên từ phân phối Student T với 3 bậc tự do

=T. INV(Rand(), 3)

Trình tạo số ngẫu nhiên Weibull Excel

Tôi hy vọng rằng bạn đã tìm thấy hướng dẫn này là hữu ích. Vui lòng tải xuống bảng tính mẫu có chứa tất cả các ví dụ này. Nếu bạn có bất kỳ câu hỏi nào, xin vui lòng liên hệ với tôi