人固有一死,就是說,人不能死兩次。道理簡單,但許多人還是在這上面犯錯誤。我們還是用人口模型。假如我們把死亡分為正常死亡和非正常死亡,總人數M在N年內,前者為M1,後者為M2,問正常死亡和非正常死亡的平均死亡率m1和m2各為多少。 這是別人做的模型,我的任務是寫程序,文件中的公式是這樣的 m1 = 1 – [ (M – M1) / M] ** (1/N) m2 = 1 – [ (M – M2) / M] ** (1/N) 看上去也象模象樣,但其實不用去推演, 就發現這是錯的. m1 和m2 怎麼可能只M1和M2相關呢。 我們以正常死亡為例來解釋這公式為什麼錯了。先看第1年,在上面的公式里,在總人口M中,m1M人離開,好像沒什麼不對。再看第二年,初始人口為M(1-m1),毛病就出在這兒。因為還有非正常死亡,所以實際初始人口為M(1-m1- m2)。那些非正常死亡的,其中一部分因為這個公式又正常死亡了一次。以非正常死亡為例討論也是一樣。 假定我們找到了正確的m1和m2,看看情況時怎樣的。先計算總存活率,這我們已經很有經驗了 r = [1 -(M1 + M2)/ M]1/N = 1 - m1 - m2 現在逐年計算死亡人數。 | 年份 | 初始人數 | 正常死亡 | 非正常死亡 | | 1 | M | M m1 | M m1 | | 2 | M r | M m1 r | M m2 r | | 3 | M r2 | M m1 r2 | M m2 r2 | | 。。。 | 。。。 | 。。。 | 。。。 | | N | M rN-1 | M m1 rN-1 | M m2 rN-1 | 正常與非正常死亡總人數為M1和M2。 M1 = M m1 (1 - rN) / (1 - r) M2 = M m2 (1 - rN) / (1 - r) 公式的簡潔程度遠超出預料。公式告訴我們,m1和m2就是把就是把總死亡率按照M1和M2進行分配。 m1 = M1 (1 - r) / (M1 + M2) m2 = M2 (1 - r) / (M1 + M2) 公司的一位同事在航空公司工作過,他告訴我,航空公司決定各種折扣的機票各賣多少以達到盈利最大化,用的也是這個模型。 這個錯誤模型是很高層的主管部門要我們做的。看懂我這兒的推導解釋,大約一碗水的功底就夠了。能看出這問題並找出正確答案,一桶水大概也就夠了。但敢於指出這上司的N次方錯了,就不是多少水的問題了,一缸水是至少要的,更重要的是對自己要有極大的自信,知道這一缸水是貨真價實沒有水分的!!! |