我想計算兩個三角形隨機變量之和,計算兩個三角形的隨機變量(Matlab的)
P(X1 + X2 < Y)的總和
是否有一個在Matlab中快速實現兩個三角形隨機變量的總和?提前致謝!
編輯:它似乎有可能是一個更簡單的方法,如此minitab示範中所示。所以這不是不可能的。它不能解釋PDF是如何計算的,遺憾的是。仍在研究如何在matlab中做到這一點。
EDIT2:以下建議,我使用Matlab中conv
功能開發兩個隨機變量之和的PDF:
clear all;
clc;
pd1 = makedist('Triangular','a',85,'b',90,'c',100);
pd2 = makedist('Triangular','a',90,'b',100,'c',110);
x = linspace(85,290,200);
x1 = linspace(85,100,200);
x2 = linspace(90,110,200);
pdf1 = pdf(pd1,x1);
pdf2 = pdf(pd2,x2);
z = median(diff(x))*conv(pdf1,pdf2,'same');
p1 = trapz(x1,pdf1) %probability P(x1<y)
p2 = trapz(x2,pdf2) %probability P(x2<y)
p12 = trapz(x,z) %probability P(x1+x2 <y)
hold on;
plot(x1,pdf1) %plot pdf of dist. x1
plot(x2,pdf2) %plot pdf of dist. x2
plot(x,z) %plot pdf of x1+x2
hold off;
然而這段代碼有兩個問題:
- PDF X1 + X2的積分遠高於1.
- X1 + X2的PDF根據x的範圍而變化很大。直觀地說,如果X1 + X2大於210(兩個獨立三角分佈的上限「c」之和,100 + 110),則不應該P(X1 + X2 < 210)等於1?此外,由於下限「a」是85和90,所以P(X1 + X2 <85)= 0?
要執行元素明智乘法,您需要在兩個pdf之間使用'。*'。所以'fun = @(x)pdf(pd2,x)。* pdf(pd1,yx);' – schvaba986
關於術語,您定義的概率函數取決於一個參數,所以我不會稱之爲'聯合'可能性。 –
因主題錯誤理解而編輯。抱歉!這個問題現在恰當地表達了。 –