问题一 血样的分组检验
摘 要: 本文以血样分组检验为原型,通过建立数学模型,利用概率统计,数学期望值等知识对如何分组检验以及什么情况下需要进行分组检验作出了合理的解释。 关键词:血样分组检验,数学模型,概率统计, 数学期望值
具体问题
在一个很大的人群中通过血样检测普查某种疾病,假定血样为阳性的先验概率为p(通常p很小)。为减少检验次数,将人群分组,一组人的血样混合在一起化验。当某组的混合血样为阴性时,即可不经检验就判断该组每个人的血样都为阴性;而当某组的混合血样为阳性时,则可判断该组至少有一人血样为阳性,于是需要对该组的每个人在做化验。
(1)
当p固定时(0.1%,…,1%,…)如何分组,即多少人一组,可使平均总检验数最少,与不分组的情况比较。
(2) (3)
当p多大时不应分组检验。
当p固定时如何进行二次分组(即把混合血样呈阳性的组再分成小组检验,重复一次分组时的程序)。
(4)
讨论其他分组方式,如二分法(人群一分为二,阳性组在一分为二,继续下去),三分法等。
分析问题
本文对血样分组检验建立数学模型,目的就是要找到一种最佳的分组方案,对于一个数量固定的人群(假定人群数量为n 人),我们在决定哪一种分组方案最好或者需不需要分组时,可以引入数学平均值。
如果不分组,每个人都参加检验,则总共需要检验n次,每个人平均需要检验一次,如果分组后计算出每个人的平均检验次数小于1次,则认为分组比不分组好,需要分组,
反之,则不需要分组;在众多组合的分组中,哪一种分组计算出来的每个人的平均检验次数最小,则认为这种分组时最优的分组方案。这也是数学概率模型的基本思路。
在人群(数量很大)中进行血样检验,已知先验阳性率为p, 为减少检验次数将人群分组。若k人一组,当k份血样混在一起时,只要一份呈阳性,这组血样就呈阳性,则该组需人人检验;若一组血样呈阴性,则该组不需检验。
模型假设
结合本问题的实际情况,对该模型作出如下合理的假设: 1.人群数量总数为n人;
2.先验概率P在检验中为一常量,保持不变;
3.每个人检验一次是否阳性的概率相互独立,即每个人接受检验是互相独立事件,互不影响;
4.每次分组时都能达到平均分配,能分成m组,即m=n/k,m为正整数。
变量说明
根据提出的问题和模型假设,给出如下变量:
n---- 被检验人群的总数; m----人群被分成的组数;
k----每组的人数;
k1----第二次分组时每组的人数;
p---- 先验阳性概率;
----先验阴性概率;
q=1- p?----每个人需要检验的次数,为一随机变量;
E?----?的期望值,每个人需要检验的平均次数。
模型建立
利用概率统计知识建立数学概率模型,由期望值知道,如果不分组,每个人都参加检验,每个人平均需要检验一次;如果分组,分组后计算出每个人的平均检验次数小于1次,则认为分组比不分组好,需要分组,反之,则不需要分组。
在众多组合的分组中,比较哪一种分组计算出来的每个人的平均检验次数最小,平
均检验次数最小的那种分组则认为这种分组时最优的分组方案。
模型求解
问题二:当p多大时,就不需要分组。
在分组情况下,由模型假设知每组的人数为k(2?k?n);变量?表示每人的检验次数;阳性的先验概率为p;阴性的先验概率q?1?p。
如果一组检验为阴性,则表明该组中的每个人均不是病毒的感染者,又因为每个人是否是感染是相互独立的(模型假设),所以可以求得一组检验为阴性的概率为qk,即该组中的每个人平均检验次数为
1k次(该组总共只检验了一次)。
如果一组检验为阳性,则表明该组中有病毒感染者,因为一组检验为阴性的概率为
qk,所以一组检验为阳性的概率为1?qk(一组检验要么为阴性,要么为阳性),即该组
1k中的每个人平均检验次数为1?检验一次)。
次(除了该组检验了一次外,该组中的每个人又被逐个
所以可以得到?的分布律为:
次数? 概率P
由上表可求得?的期望值E?:
E??1k?q?(1?k1k k1?1kk q 1?q1k)?(1?q)?1?q?1kkk1k
即每个人的平均检验次数为1?qk?n?E??n?(1?qk次,人群(总共n个人)的平均检验次数为
?1k)次。
由概率模型知,只有当E??1时才需要分组,即分组检验要满足E??1这个约束条件:
由E??1?qk?1k?1?q?1kk?1?p?1kk?p?1?1kk 即只有当满足约束条件p?1?1k1kk才需要分组检验。
因为k只能取整数,所以1?1kk是一个离散型变量,为了更形象地讨论问题,故引1x入与1?k变化趋势相同的连续性函数p(x)?1?1xx,(2?x?n)
对p(x)?1?x'进行求导,求导过程如下:
1xp(x)?(1?x)??('1xx)'
设y?1xx
1x)??y''则p'(x)??(x对y?1x
xx两边求对数有:
1xxlny?ln ,
1x1x对lny?ln(lny)?(ln'两边求导有:
'11'')?(ln()x)?(ln)
xxxx1x?1xx(?1x)??21x211即
'yy'??1x2lnln1x?1x2
1x12y?(?'1x2ln1x?1x1x2)y?(?''1x2ln1xx?121xln2)1x1xx1?(?1ln1x1?1)()xxx2111
所以p(x)??(x')??y??(??1xx)()?()??(1?lnx)22xxxx即 p(x)?()x?x111x2?(1?lnx)
1x由此可以看出,当x?e时,p'(x)?0,函数p(x)?1?x单调递减,而2?x?e时
1x'(分组时每组至少要有2人,故有x?2),函数p(x)?1?p()x0?,
x单调递增,在x?e时(自然对数e约等于2.71828),p'()x0?,函数p(x)?1?1xx取得最大值,此时最大
值p(e)?1?1e?1?()e?0.3078,做出函数p(x)的图像,见下图:
eep(x)与x的变化关系曲线110.350.30.25p(x)0.20.150.10.05002468x10121416
由于实际检验分组时每组的人数k只能取整数,不可能取自然对数e(自然对数e 约等于2.71828),故算出接近最大值p(e)的两个实际值:
p(2)?0.292893 p(3)?0.306639
1所以, p(k)?1?kk的最大值为0.306639,即只有当p?0.306639时,通过调整k1k可以满足分组检验的约束条件p?1?1kk,而当p?0.306639时,无论怎么调整k都不能
满足分组检验的约束条件p?1?k,所以,当p?0.306639时,就不需要分组。
问题一:当p固定时,k多大可使检验次数最小
情况一:
当p固定时(0.1%,…,1%,…),并且当p?0.306639时,此时不需要分组,即k=1时可使检验次数最小。
情况二:
当p固定时(0.1%,…,1%,…),并且当p?0.306639时,此时需要分组,要使人群总的检验次数最小,只要使每个人检验次数的期望值:
E??1k?q?(1?k1k)?(1?q)?1?q?kk1k最小即可,因为k只能取整数,所以E?是一个离
1k散型变量,为了更形象地讨论问题,故引入与E??1?qk?数连续性函数f(x)?1?qx?f(x)?1?q?x变化趋势相同的连续性函
1x,
1x,(2?x?n,0?p?1)注:分组时每组人数至少为2人,故x?2
1x?1?(1?p)?1x1xx对函数f(x)?1?(1?p)x?f(x)?(1?(1?p)?'x,(2?x?n,0?p?1),求导可得: )?(1?p)ln(1?p)?'x1x2
因为此时p是给定的固定值,故ln(1?p)?0且ln(1?p)为定值, 1?p<0,由上式分析知,当x增大时,(1?p)x减小,(1?p)xln(1?p)增大,?即f'(x)?(1?p)xln(1?p)?1x21x2也增大,
为增函数,即f(x)的极值就是f(x)的最小值
1x2所以f'(x)?(1?p)xln(1?p)??0的实数解x,就是函数f(x)?1?(1?p)?x1x取的
最小值时对应的x值,由数值解法(利用计算机编程迭代,让x从小到大依次代入等式,当误差在允许的范围内所取得的x值)可解出每一个给定的p所对应的
f(x)?(1?p)ln(1?p)?'x1x2?0时的实数解x,由于实际检验中每组的人数k只能为整数,
所以要对计算出来的x取整(去掉后面的小数部分),取整后记作[x],再比较一下f([x])和f([x]?1),若f([x])
k值即为每一个给定的p所对应的可使总检验总次数最少的每组人数。下面给出数值解
法解出的对于不同的先验概率,相对应的最小检验次数的每组人数:
p 32 23 19 16 k p 8 6 6 5 k 0.001 0.002 0.003 0.004 0.020 0.030 0.040 0.050