《数学建模例题_之_饮酒驾驶模型.doc》由会员分享,可在线阅读,更多相关《数学建模例题_之_饮酒驾驶模型.doc(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、. .饮酒驾驶模型摘要本文针对酒后驾车造成交通事故死亡率高,以及根据国家质量检验检疫局发布的饮酒后驾车新标准,建立了饮酒后血液中酒精含量的数学模型。通过了解酒精在体内吸收,分布和排除的动态过程,及这些过程与人体内酒精反应的定量关系建立微分方程,运用药物动力学原理建立单室和双室模型。得出血液中的酒精含量,与进入体内总酒量、时间的函数关系式:单室模型:双室模型:本文还运用了 Wagner-Nelson法(待吸收的百分数对时间作图法),与题中给出的参考数据在计算机运行的结果作对比。本文还解决了如下问题:1、从模型分析了大李第二次被判为饮酒驾车是因为二次饮酒,而使血液中酒精含量累积而超标。2、对喝了低
2、度酒多长时间驾车违反规则作了量化分析;3、从单室模型得出了一个血液中酒精含量峰值计算公式:4、用本文的模型对天天喝酒能否开车作了讨论。本文最后对模型的优点和不足作了评价。一、问题提出据报载,2003年全国道路交通事故死亡人数为10.4372万,其中因饮酒驾车造成的占有相当的比例。大李在中午12点喝了一瓶啤酒,下午6点检查时符合新的驾车标准,紧接着他在吃晚饭时又喝了一瓶啤酒,为了保险起见他呆到凌晨2点才驾车回家,又一次遭遇检查时却被定为饮酒驾车,这让他既懊恼又困惑,为什么喝同样多的酒,两次检查结果会不一样呢?请你参考下面给出的数据(或自己收集资料)建立饮酒后血液中酒精含量的数学模型,并讨论以下问
3、题:1. 对大李碰到的情况做出解释;2. 在喝了3瓶啤酒或者半斤低度白酒后多长时间内驾车就会违反上述标准,在以下情况下回答:1) 酒是在很短时间内喝的;2) 酒是在较长一段时间(比如2小时)内喝的。3. 怎样估计血液中的酒精含量在什么时间最高。4. 根据你的模型论证:如果天天喝酒,是否还能开车?5.根据你做的模型并结合新的国家标准写一篇短文,给想喝一点酒的司机如何驾车提出忠告。二、问题假设1、 机体分为中心室(I室)和周边室(II室),两个室的容积(即血液体积或药物分布容积)的过程中保持不变1。2、 药物从一室向另一室的转移速率,及向体外的排除速率,与该室的血药浓度成正比。3、 酒精含量的变化
4、基本只受消除速度常数支配。4、 假定消除只发生在中心室,两个房室内酒精初始量都为零(即没有喝酒)。5、 酒在体内运动的配置和消除都是药物动力学过程。6、 人都是在精神状态正常情况下喝酒。7、 酒精可在整个机体内以同速度达到平衡。三、符号定义:房室表观分布容积;:酒精消除速度常数;:酒精吸收速度常数;:酒精转移速度常数();:时刻体内吸收酒精的速度;:血酒浓度的最高峰值;:血液中酒精含量;:进入体内的总酒量;:一次喝下的酒量;:时刻体内吸收的酒精量;:时刻中心室内的酒精量;:时刻周边室内的酒精量;:第次喝酒的时刻;:血液浓度达到最高峰值的时刻;:已经代谢排泄酒物总量;:一次喝酒后的吸收总量;四、
5、模型建立(一)、单室模型将人的机理作为一个房室处理的模型,人喝酒后,酒精需要一定的吸收过程,可建立模型图(1): 图(1)依条件及示意图,得到单室模型;(1)(2)酒精逐渐进入血液循环后;(3)得到:(4)将(2)式代入(3)得(5)根据动力学原理的有关计算方法,总结出的血液中酒精含量最大峰值和达到最大峰值时间计算公式2 (6)(7)(二)、双室模型3二室模型假设酒精进入体内后在两个房室内配置,一个中心室,另一个是外周室,酒精在体内的配置和消除都是一级动力学过程,但酒精的吸收可以是任意的,见图(2):图(2)按照质量平衡原理,时间X围内吸收进入体内的总酒量为(8)其中(9)代入式(5) 并在等
6、号两边同时除以表观分布容积得到(10)其中血液中酒精含量=。 根据式(7), 当时,计算酒精吸收分数的公式为:(11)我们运用Wagner-Nelson方法求解,对此,我们在算法作如下基本假设:在时间和之间外周室酒精量可以用线性插值近似逼近,因此曲线下的面积可用梯形法进行运算(12)则 (13)为了叙述方便,令则有(14)这是一个递推公式,。当时t0=0,则根据上述递推公式(15)外周室的药物量变化微分方程为(16)在时间X围内,对式(10)等号两边积分,得到(17)在上式等号两边同时除以,得到(18)整理上式后(19)2、递推计算过程用数学不完全归纳法,对式(15)和式(11)进行递推计算,
7、 计算过程为:时时时如此递推计算可得到: (20)根据题中所给出的数据和(20)式作出图(3):图(3)由以上各推导公式我们可以计算人在一次饮酒的量,以及多次饮酒的量后体内酒精含量随时间的变化。五、模型结果分析及验证1、对大李的问题给予解释:通过双室模型可以看出,第一次饮酒时,虽然,也就是但是第二次饮酒后,由于他第一次饮酒时血液中还残留有一定酒精,有如下关系式即时,就违反了国家的新标准。2、对喝了3瓶啤酒的在多长时间内驾车就会违反标准。A、酒是在短时间内喝的:只要,即内开车,就会违反国家的新标准。按照题中给出的参考数据,70的人在短时间内喝下的2瓶酒后,得到的数据代入,同样体重的人喝3瓶啤酒,
8、解得约在11小时内,就会违反国家新标准。B、酒是较长时间内喝。我们对上述问题定性地假设长时间内喝了 n次(每次都是在短时间内喝),因为则有 即 内开车就会违反国家的新标准。 3、怎样估计血液中的酒精含量在什么时间最高;方法一、根据题目给出的参考数据:时间(小时)0.250.50.7511.522.533.544.55酒精含量306875828277686858515041时间小时678910111213141516酒精含量3835282518151210774用Matlab作出图像:根据图表数据和图像的变化规律,我们可以粗略统计出:当时,人体内的酒精含量最高。方法二、根据我建立的单室模型,和参
9、考药物动力学有关知识,总结出如下关系式计算出人喝酒后的酒精含量峰值的时间4、验证如果人天天喝酒还能否开车?如果人天天喝酒,存在下面关系式,假若算出 小时,就能开车;假若算出 小时,就会违反规定。六、模型评价与改进优点:(1)、本文有明确的求解方向,以药物动力学的有关原理为参考资料和理论基础。模型具有科学性和普遍的适用性。(2)、本模型参考药物动力学,建立饮酒后酒精在血液中的含量的数学模型,并对单次饮酒和多次饮酒后的情况进行讨论,具有较强的稳定性。(3)、本模型以生活的事例为检验资料,所得出的结论基本吻合,并易于推广。缺点:(1)、由于变量参数大多,即使将原问题线性化,计算依然相当繁杂。(2)、
10、由于时间和知识的有限,在求解实际问题时,对人体的机理简单的分为单室模型和双室模型。模型改进:基于本模型的参数多,可以通过一些仪器实验算出参数的具体值。基于我们只建立单室模型和双室模型,可以进一步考虑多室模型的方向,使酒在人体内消化反应出来,使结果更加切合实际。七、给爱好喝酒的朋友一封信亲爱的酒友:首先,我们不是一帮酒鬼,但通过数模竞赛我们对酒有一定的了解:酒对人脑的作用与人体血液中酒精浓度有着密切的关系,它将影响人体思想、行为,少喝固然能促进消化,有益身心健康。但是,多喝的后果是不堪设想的:伤及他人;对人体大脑的伤害;更可怕的是在交通事故中它所扮演的恶性角色。正所谓“多喝”无性,“少喝”怡情。
11、在生活节奏紧X而又繁忙的司机们,想得到一份精神的解脱和轻松,“小喝”怡情,倒也无妨。只是“大喝”无性者,将会失去理性,终将害人害己(见附录一)。看吧,不要因为一时的酒瘾,而失去美好的一切。参考文献1姜启源数学模型 :高等教育 1993年8月第二版2 魏树礼 生物药剂与药物动力学 :医科大学 1997年3 陆瑜X家壁梁秉文二室模型药物体内吸收计算方法的改进.454pharm./esmxywtnxsjs.doc 访问时间:2004.9.19附录一:酒后血中浓度与行为表现的关系血中酒精浓度(mg/dl)行为表现大于30驾车有障碍3050驾驶能力变坏50100多话、大笑、感觉障碍100150说话含糊、
12、脚步不稳、可能会恶心150200明显酒醉、恶心、步履踌躇附录二:Matlab6.1程序清单(1)x=0.25,0.5,0.75,1,1.5,2.0,2.5,3,3.5,4,4.5,5,6,7,8,9,10,11,12,13,14,15,16;y=30,68,75,82,82,77,68,68,58,51,50,41,38,35,28,25,18,15,12,10,7,7,4;plot(x,y,*)plot(x,y,*,x,y)(2)x=0.25,0.5,0.75,1,1.5,2.0,2.5,3,3.5,4,4.5,5,6,7,8,9,10,11,12,13,14,15,16;y=3.75,17
13、,28.125,41,61.5,77,85,102,101.9,102,112.5,102.5,114,122.5,112,112.5,90,82.5,72,65,49,52.5,32;plot(x,y,*) plot(x,y) x1=0.25,0.5,0.75,1,1.5,2.0,2.5,3;y1=3.75,17,28.125,41,61.5,77,85,102; a=polyfit(x1,y1,2)a = -6.4863 55.7627 -9.2847 x2=0.25:0.5:3; y2=-6.4863*x2.2+55.7627*x-9.2847;? Error using = +Matr
14、ix dimensions must agree. x2=0.25:0.5:3;y2=-6.4863*x2.2+55.7627*x2-9.2847; plot(x,y,*,x2,y2) polyfit(x1,x2,3)? Error using = polyfitX and Y vectors must be the same size. polyfit(x1,y1,3)ans = 2.1562 -16.9706 69.6712 -13.6200 y2=2.1562*x2.3-16.9706*x2.2+69.6712*x2-13.6200; plot(x,y,*,x2,y2) x=0.25,0
15、.5,0.75,1,1.5,2.0,2.5,3,3.5,4,4.5,5,6,7,8,9,10,11,12,13,14,15,16;y=3.75,17,28.125,41,61.5,77,85,102,101.9,102,112.5,102.5,114,122.5,112,112.5,90,82.5,72,65,49,52.5,32;plot(x,y,*) plot(x,y) x1=0.25,0.5,0.75,1,1.5,2.0,2.5,3,3.5,4;y1=3.75,17,28.125,41,61.5,77,85,102,101.9,102; a=polyfit(x1,y1,2)a = -7.
16、7319 59.3789 -10.9764 x2=0.25:0.5:4; y2=-7.7319*x2.2+59.3789*x2.-10.9764;? y2=-7.7319*x2.2+59.3789*x2.-10.9764; |Error: identifier expected, - found. x2=0.25:0.5:4;y2=-7.7319*x2.2+59.3789*x2-10.9764; plot(x,y,*,x2,y2) polyfit(x1,y1,3)ans = -0.2926 -5.8683 56.1772 -9.7604 y2=-0.2926*x2.3-5.8683*x2.2+
17、56.1772*x2-9.7604; plot(x,y,*,x2,y2) x3=4.5,5,6,7; y3=102,102.5,114,122.5; b=polyfit(x3,y3,2)b = 0.9347 -1.9849 90.9799 x3=4:0.5:7; y3=0.9347*x3.2-1.9849*x3+90.9799; plot(x,y,*,x2,y2,x3,y3) polyfit(x3,y3,3)ans = 0.0000 0.9347 -1.9849 90.9799 x4=4:0.5:7; y4=0.0000*x4.3+0.9347*x4.2-1.9849*x4+90.9799;
18、plot(x,y,*,x2,y2,x4,y4) x5=7,8,9,10,11,12,13,14,15,16; y5=122.5,112,112.5,90,82.5,72,65,49,52.5,16; c=polyfit(x5,y5,2)c = -0.3201 -3.4140 161.6318 x6=7:0.5:16; y6=-0.3201*x6.2-3.4140*x6+161.6318; plot(x,y,*,x2,y2,x4,y4,x6,y6) polyfit(x6,y6,3)ans = 0.0000 -0.3201 -3.4140 161.6318 x6=7:0.5:16; y6=0.0000*x6.3-0.3201*x6.2-3.4140*x6+161.6318; plot(x,y,*,x2,y2,x4,y4,x6,y6). .word.