思想海洋的远航分享 http://blog.sciencenet.cn/u/xying 系统科学与数学水手札记

博文

等邮件的数学模型 精选

已有 10007 次阅读 2013-8-30 08:01 |个人分类:科普|系统分类:科普集锦|关键词:学者| 数学, 贝叶斯, 模型

董明提出一个很有意思的数学模型问题,说网购了几本书,收到发货通知后,儿子天天问“今天书会不会到”。刚开始他回答:“可能,机会比昨天大一点。”心中想的是每一天到货的概率分布,这概率密度是类似于正态分布的曲线。按照这个模型,前几天没收到书,今天收到书的概率会越来越大,最后儿子问:“要是一直不来,那十年后,可能性是不是就大得不得了?”他回答:“那书可能就再也来不了,寄丢了。”

问题是:什么样的数学模型可以用来描述这个现象?

这显然可以用一个概率的模型来回答,但它的挑战不在于如何得出准确的曲线,这不难通过统计实验来得到。真正的问题应该是:怎样通过分析,用已有的知识来构造这个数学模型?它首先能定性地解答心中的疑惑,需要时可以细化,定量地给出预测。这功力在于对数学概念的理解和演绎推理的应用,而不是把整个问题不加分析地推给实验来解答。

问题的核心是怎样把正常邮递和丢失情况综合起来,用数学模型反映出,还没收到邮件等待时,对当天收到邮件的预测。

这可以由两个概率子模型组成,一个是在正常邮递时(事件A),从得到通知之日起,至今n天没有收到邮件(事件n),但今天(第n+1天)收到了邮件(事件$D_n$)的概率$P(D_n|A,n)$;另一个是,前n天没有收到邮件,还是正常邮递的可能性$P(A|n)$;因为寄丢了情况(事件B)是不可能收到邮件的,$P(D_n|B)=0$,那么前n天没有收到邮件,今天收到的概率则是:$P(D_n|n)=P(D_n|A,n)P(A|n)$。它就是这个问题模型的公式了。

对于正常邮递情况下,哪一天收到邮件的概率,是以通知中的预测到达日期为峰值,类似于正态分布离散的钟形曲线$f(D_n)$。由此不难得知$P(D_n|A,n)$是随着n增大趋近于1的曲线。$P(A|n)$的含义是前n天没有收到邮件,不是寄丢了的概率,凭经验就可以知道这是个随n增加而趋近于0的曲线。综合这两者,不需要进一步的研究,就可以定性地解答等待邮件的问题了。

有人说,这只不过把常识藏在数学式子里,没什么意义!

这是没学好数学的人,对于数学应用的理解。数学模型首先是平凡的,必须符合实践中的事实,它把实践中的问题分解成数学上已知的问题,需要时可以进一步细化求解。

比如说这不是个人邮购等书了,而是重大事件或者是商业运行环节,值得细化研究其定量结果。我们来看怎么用这个数学模型进行细化计算。

对于正常邮递,邮件到达的概率分布已经有很多的研究,这不是关注的重点。函数$f(D_n)$是可以从其他地方可以抄来,或自己推算的先验概率,按定义有$P(D_n|A)=f(D_n)$,从已知的事件从这个先验的概率算出后验的概率,用贝叶斯公式来计算,注意到事件$D_n$n的含义,有$ P(n|D_i)=0$ if $i<n$ otherwise $ P(n|D_i)=1$,得到公式

$P(D_n|A,n)=P(D_n|A)P(n|D_n)/\sum_{i=0}^{\infty}P(D_i|A)P(n|D_i)=f(D_n)/\sum_{i=n}^{\infty}f(D_i)$

从估计会正常邮递到丢失了的认知过程,是由概率$P(A|n)$来反映,我们知道$P(A|n)$的含义是:前n天没有收到邮件,还是正常邮递情况的可能性。从贝叶斯公式:

$P(A|n)= P(n|A)P(A)/ (P(n|A)P(A)+ P(n|B)P(B))$

$P(A)$是正常邮递的先验概率,比如说0.99,$P(B)=1-P(A)$ $P(n|B)=1$,我们有:

$ P(A|n)= P(n|A)P(A)/(P(n|A))P(A)+1-P(A))$ 

这里 $P(n|A)=\prod_{i=0}^{n-1}(1-f(D_i))$ (注:这个等式不精确,见【后记】)

可以看出正常邮递的概率是随着没收到邮件的日子增加趋近于0的曲线。

这样得出了公式。前n天没有收到邮件,今天收到的概率是:(注:纠错后这公式可以化简,见【后记】)

$P(D_n|n)=(f(D_n)/\sum_{i=n}^{\infty}f(D_i))\prod_{i=0}^{n-1}(1-f(D_i))P(A)/(\prod_{i=0}^{n-1}(1-f(D_i))P(A)+1-P(A))$

这是随着时间先上升,过了通知中的预测到达日期后不久下滑趋近于0的曲线。你在等待的过程中,可以用它来估算当天收到包裹的概率。

你也许会问:这个概率的密度曲线是什么?这能有吗?想不通的,查一下定义。

 

【后记】贴于评论12,点击2284

写这篇博文意在于例示建立数学模型的思路、细化和用途。贴出后,徐晓指出计算$P(n|A)=\prod_{i=0}^{n-1}(1-f(D_i))$有问题,这里$(1-f(D_i))$不是独立的,不能用在连乘,正确的计算应该是$P(n|A)=1-\sum_{i=0}^{n-1}f(D_i)$,也即是博文在计算$P(D_n|A,n)$的式子中的$\sum_{i=n}^{\infty}f(D_i)$,这也可以从$P(D_n|A,n)=P(D_n|A)/P(n|A)$中看到。将这个纠错后的式子代入综合的公式后,约减后的结果与徐晓的结果一样,它是:

$P(D_n|n)=f(D_n)P(A)/(1- P(A)(\sum_{i=0}^{n-1}f(D_i))$

徐晓推算这个式子时,直接应用形式推理,非常简洁漂亮,建议对这问题有兴趣的读者,看他的博文《与应行仁老师探讨:邮件问题》

对于正确建立数学模型,合理的抽象是个关键,在这里是事件An$D_n$的定义,有了它们后$P(D_n|n)$便是描述问题的数学模型,后面的只是数学计算。把它分解成$P(D_n|A,n)P(A|n)$能让这模型的结构更直观,也针对董明的疑惑,借用常规的概率问题的结果,不需要深入研究它们的细节就可以定性地解答。如果不加分解直接对这个数学模型计算,注意到事件$D_n$蕴含着事件An,就有:

$P(D_n|n)=P(D_n,n)/P(n)=P(D_n)/P(n)=P(D_nA)/P(n)=P(D_n|A)P(A)/P(n)$

这个思路和徐晓的一样,代入$P(D_n|A)=f(D_n)$$P(n)=P(A)P(n|A)+1-P(A)$的表达式就能得出上述的结果。

为什么分解式$P(D_n|n)=P(D_n|A,n)P(A|n)$也会得出一样的结果呢?

这分解式是直接从概率的概念出发在n约束环境下的条件概率式子,在形式推理里:

$P(D_n|n)=P(D_n,n)/P(n)=P(D_n,A,n)/P(n)=P(D_n|A,n)P(A,n)/P(n)=P(D_n|A,n)P(A|n)$

学习数学时,掌握概念和推理是同等的重要,当你数学概念的想象和形式推理一致时,才算正确地掌握了概念,能够同时应用概念的想象和形式推理就是到达了自由王国。

谢谢徐晓纠正$P(n|A)$式子的错误!

 



https://m.sciencenet.cn/blog-826653-720837.html

上一篇:理解数学——模型(3)
下一篇:国外问路乘车记

22 鲍海飞 李伟钢 徐晓 魏东平 马萧萧 梁进 陈飞 杨正瓴 曹聪 林涛 王刚 陈冬生 温世正 宁利中 董明 李宇斌 赵序茅 丁大勇 陈筝 田云川 强涛 rosejump

该博文允许注册用户评论 请点击登录 评论 (26 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-21 21:06

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部