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

博文

等邮件的数学模型 精选

已有 9963 次阅读 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://blog.sciencenet.cn/blog-826653-720837.html

上一篇:理解数学——模型(3)
下一篇:国外问路乘车记
收藏 IP: 50.161.63.*| 热度|

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

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

数据加载中...

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

GMT+8, 2024-4-25 05:21

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部