Hackrank 統計十日通(第五天) 泊松分布

來源

對今天挑戰有用的條目都高亮如下:

泊松隨機變量 Poisson Random Variables

現在我們已經知道, 我們可以把許多問題分解成n, x和p來套以下二項分布公式:



如果我們不能用這個公式計算p(x)的時候咋辦? 請看泊松隨機變量

泊松實驗 Poisson Experiment

一個泊松實驗是一個有以下性質的統計實驗

  • 每次測試的結果不是成功(s)就是失敗(f).
  • 一個范圍(時間上或空間上)內發生成功的平均次數是已知的.
  • 成功的概率和范圍的大小是成比例的.
  • 在一個極小范圍里發生成功的概率可以認為是0.

注: 不是很理解, 需要例子.... >:(

泊松分布 Poisson Distribution

一個泊松隨機變量是一個泊松實驗中成功的次數. 一個泊松隨機變量的概率分布就稱為一個泊松分布:



其中:

  • e = 2.71828
  • λ是在特定范圍里測試成功的平均次數
  • k是在特定范圍里測試成功的實際次數
  • P(k, λ)是泊松概率, 即當平均成功次數是λ的情況下, 取得正好(不多不少)k次成功的概率.

例子

頂點房地產公司平均每天賣2套房. 那么明天就能賣第三套房的概率是多少?


套公式, λ=2且k=3,則
P(k=3, λ=2) = λke / k!
= 23e-2 / 3!
= 0.180

例子

假設在非洲大草原上, 游客一天平均能看到5只獅子. 那么游客在第二天會看到少于4只獅子的概率是多少?


特殊情況

考慮到某些泊松隨機變量, X, 設E[X]為X的期望, 求值E[X2]

令Var(X)為X的方差, 如果一個隨機變量有泊松分布,那么

  • E[X] = λ
  • Var[X] = λ

這個懵逼的推導請戳這里
那么, 我們可以對任意隨機變量X的期望和方差有以下性質:
Var[X] = E[X2] - (E[X])2
E[X2] = Var(X) + (E[X])2
如果這是泊松隨機變量,就可以
E[X2] = λ + λ2

題目(很坑爹,沒明白)

如果一個工廠的經理打算買A和B兩種機器中其一, 對于每天的生產來說:
機器A需要的修理次數X是一個泊松隨機變量,平均值是0.88,每天的生產成本是CA=160 + 40 × X2
機器B需要的修理次數Y是一個泊松隨機變量,平均值是1.55,每天的生產成本是CB=128 + 40 × Y2
假設每次修理的時間都可以忽略不計,且每晚都維護,保證每天開始機器都跟新的一樣. 求每天生產成本的期望值.

囧rz,我直接看答案

exp-var-poisson.png

這個不是很理解
題目里說, mean是0.88,其實是X的期望是0.88
E(X) = 0.88

然后因為泊松隨機變量的性質
Var(X) = E(X2) - (E(X))2
Var(X)是X的方差,每個樣本值減去平均值的差的平方,求和 (總之就是套公式?)

那第二個就好理解一點

python

from math import factorial, e

a, b = [float(x) for x in input().split()]

def poisson(mean, value):
    return (mean**value * e**-mean) / factorial(value)

def cost_a(x):
    return 160 + 40 * x**2

def cost_b(y):
    return 128 + 40 * y**2

def avg_cost(rate, cost_func):
    avg = 0
    for repairs in range(11): #為什么是11,原作者表示這是蒙的,越大越精確.....
        avg += poisson(rate, repairs) * cost_func(repairs) 
    return avg

print('{:0.3f}'.format(avg_cost(a, cost_a)))
print('{:0.3f}'.format(avg_cost(b, cost_b)))
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容