用Octave计算全概率公式
广告
{{v.name}}
全概率公式是概率论中用于计算复杂事件概率的核心公式,它的本质是“化整为零、分情况讨论”:将一个复杂事件拆分成多个互斥的 “子情况”,分别计算每个子情况下该事件的概率,再求和得到最终结果。
公式的前提条件
设样本空间 \(Ω\) 可以被划分为一组两两互斥且完备的事件 \(B_1, B_2, ..., B_n\) (称为样本空间的一个划分),满足:
1. 两两互斥: \(B_i \cap B_j = ∅, i\neq j\) ,即任意两个事件不能同时发生;
2. 完备性: \(B_1 \cup B_2 \cup ... \cup B_n = Ω\) ,即至少有一个事件会发生。
3. 此外,要求每个事件 \(B_i\) 的概率均大于零:
\(P(B_i) > 0, i=1,2,...,n\)
全概率公式表达式
对于任意事件 \(A\) ,全概率公式表示为:
\(P(A) = P(A \cap B_1) + P(A \cap B_2) + ... + P(A \cap B_n) = P(A|B_1)P(B_1) + P(A|B_2)P(B_2) + ... + P(A|B_n)P(B_n)\)
其中,\(P(B_i)\) 表示第 \(i\) 个子情况发生的概率(先验概率); \(P(A|B_i)\) 表示在事件 \(B_i\) 发生的条件下,事件 \(A\) 发生的概率。
例如:一个仓库有 3 箱零件,第 1 箱有 50 个(次品率 5%),第 2 箱有 30 个(次品率 10%),第 3 箱有 20 个(次品率 15%)。随机抽一箱,再从中随机抽一个零件,求抽到次品的概率。
样本空间划分: \(B_1\)=“抽第 1 箱”, \(B_2\)=“抽第 2 箱”, \(B_3\)=“抽第 3 箱”;
先验概率: \(P(B_1)= \frac{50}{100}=0.5\) , \(P(B_2)= \frac{30}{100}=0.3\) , \(P(B_3)= \frac{20}{100}=0.2\) ;
条件概率: \(P(A∣B_1)=0.05\) , \(P(A∣B_2)=0.1\) , \(P(A∣B_3)=0.15\) ;
计算: \( P(A) =P(A∣B_1)P(B_1)+P(A∣B_2)P(B_2)+P(A∣B_3)P(B_3) =0.05×0.5+0.1×0.3+0.15×0.2 =0.025+0.03+0.03 =0.085\)
程序代码如下
function ret = get_total_probability(prob_list, conditional_prob_list)
    ret = 0;
    for i = 1:length(prob_list)
        ret += prob_list(i) * conditional_prob_list(i);
    endfor
endfunction

>> get_total_probability([0.5, 0.3, 0.2], [0.05, 0.1, 0.15])
ans = 0.085
友链