建模饲料问题说课讲解.docx
- 文档编号:27125291
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:9
- 大小:136.46KB
建模饲料问题说课讲解.docx
《建模饲料问题说课讲解.docx》由会员分享,可在线阅读,更多相关《建模饲料问题说课讲解.docx(9页珍藏版)》请在冰豆网上搜索。
建模饲料问题说课讲解
建模饲料问题
摘要:
饲料是畜牧业生产的物质基础,饲料配方的优劣,直接关系到养殖企业经济效益的高低。
虽然饲料配方的设计方法很多,但各种不同的设计方法各自有其不同的优缺点。
传统的饲料配方设计方法计算量大而繁琐,同时结果的准确性差,也不易控制配方的成本;使用计算机软件的配方系统,虽然使计算的工作量大幅度降低、准确性提高,也易于控制成本,但是往往设计出的配方脱离实际,要进行应用还必须进行手工调整。
因此,在配方设计过程中找出一种既计算、调整简便、准确,又符合生产实际,还易于控制成本的方法为大家所共同关注。
在此笔者探讨以数学建模为基础,进行配方设计。
本文从一个众所周知的问题出发,那就是:
效益是我们社会生产,个人学习以及生活都很讲究的一个话题。
在人们的生产实践中,经常会遇到如何利用现有资源来安排生产,以便取得最大的经济效益的问题。
此类问题构成了运筹学的一个重要分支——数学规划。
通过我们对数据的分析,我们建立了求解该问题的数学模型,并通过这个模型,我们求解出问题的最佳解。
饲料的调配问题,其实就是如何选用的题目中给出的5种饲料,不仅需要对饲料的品种进行选取,而且还许多要对所选饲料的量以及价格进行分析,通过分析,然后再建立求解该问题的数学模型。
该问题的出发点很明显,在饲料达到需要的量的情况下,然后再求最小的价格。
为解决该问题,我们建立的数学模型其实是一个线行规划问题的求解。
线性规划求解方法有多种,例如:
图解法,单纯形法,Matlab解法等。
图解法的优点在于简单直观,但是,它也存在一定的缺陷,由于图解法是建立在画图的基础上实现解题的,所以,当所要描绘的图过于复杂时,这和图解法的优点便产生了冲突,图解法显然是不适合选用于解复杂图形题目。
单纯形法是求解线性规划问题的最常用,最有效的算法之一。
单纯形法由于有如下结论:
若线性规划温暖体有有限最优解,则一定有某个最优解是可行区域的一个极点。
基于此,单纯形法的基本思路是:
先找出可行域的一个极点,据一定规则判断其是否最优;若否,则转换到与之相邻的另一个极点,并使目标函数更优;如此下去,直到找到某一最优解为止。
通过对此问题进行分析,考虑对饲料的选取情况种数为31种,图解法以及单纯形法显然不适合我们们选用,于是,我们就选用了Matlab法来计算我们需要求的最佳方案。
我们用数学建模的方法建立了饲料配方设计的数学模型,为节约生产资料、实现动物饲养的最大利润提供了一个科学、简便、实用的设计方法。
一.问题的重述
某饲养场饲养动物出售,设每头动物每天至少需700g蛋白质、30g矿物质、100mg维生素。
现有五种饲料可供选用,各种饲料每kg营养成分含量及单价如下表
饲料
蛋白质/g
矿物质量/g
维生素/mg
价格/元/kg
1
3
1
0.5
0.2
2
2
0.5
1.0
0.7
3
1
0.2
0.2
0.4
4
6
2
2
0.3
5
18
0.5
0.8
0.8
要求确定既满足动物生长的营养需要,又使费用最省的选用饲料的方案。
饲料配方是根据动物的营养需要、饲料的营养价值、原料的现状及价格等条件合理地确定各种饲料的配合比例,它必须满足动物的营养,充分发挥动物的生产性能,获得数量多、品质好、成本低的产品。
所以设计饲料配方时必须了解动物对各种营养物质的需要量和各种饲料原料的特性,只有在此基础上才能进行合理科学的饲料配合。
选择不同的饲料的组合作为未喂养动物的一般想法使:
以最小费用满足对基本营养的需求。
当然,这类实际问题是相当复杂的,我们必须知道这种动物所必需的营养物质(可能因动物的不同而异),另外,应考虑动物是否喜欢吃这种饲料。
按题目要求,饲养动物至少每天需700g蛋白质,30g矿物质,100mg维生素。
为简单起见,我们只考虑题目中给出的五种饲料。
二.符号说明
变量a,b,c,d,e表示五中饲料的数量,要最小化的目标函数是总费用函数(以人民币元计算,其中系数为5种食物每kg的价格)。
三.数据分析
要使所配制的饲料达到营养标准,必须使配合比中各饲料所含营养成份之和等于配方中该营养成份要求满足的预定值。
按题目要求,饲养动物至少每天需700g但报纸,30g矿物质,100mg维生素。
为简单起见,我们只考虑题目中给出的五种饲料。
现在用这些数据建立一个现行规则。
变量a,b,c,d,e表示五中饲料的数量,要最小化的目标函数是总费用函数(以人民币元计算,其中系数为5种食物每kg的价格)。
Y=0.2a+0.7b+0.4c+0.3d+0.8e
约束是什么?
显然a,b,c,d,e≥0(非负约束)
由于提供的蛋白质总数须满足每天的最低需要量700,故应有:
3×10-3a+2×10-3b+10-3c+6×10-3d+18×10-3e≥0(非负约束)
同理,考虑对矿物质和维生素的最低需求量分别为30g和100mg
a+0.5+0.2c+2d+0.5e≥30
0.5a+1.0b+0.2c+2d+0.8e≥100
其中对于第一个约束,第一项3a表示第一种饲料种蛋白质的含量乘以饲料中第一种饲料的数量,第二项2b表示第二种饲料中蛋白质的质量乘以饲料中第二种饲料的数量,依此类推。
注意,第一个约束里的各项以g计,第二个约束里的各项以g计,第三个约束里的各项以mg计。
所以饲料比分配问题是一个线性规划模型
(目标函数)minY=0.2a+0.7b+0.4c+0.3d+0.8e
3a+2b+c+6d+18e≥700
(约束条件)s.t.a+0.5b+0.2c+2d+0.5e≥30
0.5a+b+0.2c+2d+0.8e≥100
a,b,c,d,e≥0
我们知道,求解这个线性规划需要寻求一个最优值和一个最优解。
让我们用反复实验的方法寻找这个问题的解。
1.因为第一种饲料最便宜,先只选用第一种饲料,3个约束化简为
3a≥700
a≥30
0.5a≥100
∴当a=7003时,蛋白质刚好满足,维生素和矿物质都超过,费用是140/3≈46.67元
2.第4种饲养个物质的需求量比重较大,故只选第四种饲料,约束简化为
6d≥700
2d≥30
2d≥100
当d=700/6时,蛋白质刚好满足,维生素和蛋白质则超过,费用为35元。
3.由于蛋白质需求很大,我们尝试将第一种饲料与第五种饲料混合,约束简化为
3a+18e≥700
a+0.5e≥30
0.5a+0.8e≥100
当a=11.52,e=36.97时,费用为31.88元。
4.我们再尝试将第四种与第五种饲料混合,约束简化为
6d+18e≥700
2d+0.5e≥30
2d+0.8e≥100
当d=11.52,e=36.97时,费用为33.03元。
四.模型的建立与检验
以上数据分析:
我们不难建立起适合解决给问题的模型。
(目标函数)MinZ=0.2X1+0.7X2+0.4X3+0.3X4+0.8X5
3a+2b+c+6d+18e≥700
a+0.5b+0.2c+2d+0.5e≥300
s.t.(约束条件):
0.5a+b+0.2c+2d+0.8e≥100
a,b,c,d,e≥0
编写Matlab程序求解:
输入代码:
>>c=[0.2;0.7;0.4;0.3;0.8];
a=[3,2,1,6,18;1,0.5,0.2,2,0.5;0.5,1,0.2,2,0.8];
b=[700;30;100];[x,y]=linprog(c,-a,-b,[],[],zeros(5,1))
Optimizationterminatedsuccessfully.
运行结果:
x=
0.0000
0.0000
0.0000
39.7436
25.6410
y=
32.4359
>>
虽然反复试验的办法帮我们作出了一些分析,但是并没有对其他组合以进一步降低费用给出指导,在此我们借助Matlab软件,通过计算机求得结果,程序、运行结果如下:
我们用数学建模的方法建立了饲料配方设计的数学模型,为节约生产资料、实现动物饲养的最大利润提供了一个科学、简便、实用的设计方法。
这样不仅成本低、操作简便,而且设计灵活多变,约束条件不受限制,可由用户根据实际情况设置,适用范围广,运算速度快。
可供有计算机的饲料厂及畜禽养殖户进行优化饲料配方计算。
虽然有时运算时会出现“找不到最优解”的情形,原因大多是受输入约束条件限制所致。
此时,可根据运算值,与约束值情况,对约束上下限进行适当的修改。
五.心得体会
本次数学建模是我们大学以来第一次参加,所以,在很多方面都显得经验不足,不足之处还请老师批评、指导、见谅。
通过我们这段时间对数学建模的了解,我们发现,数学建模其实就是把生活生产中遇到的问题,把它转化成数学的模型来求解,也可以说是数学在其他领域的实际推广与应用,比如说,物理,化学,生物等领域,几乎只要有问题存在的领域都可以转化成数学问题来求解,也就是说,都可以通过建立数学模型然后求解模型的方法来求解。
数学建模给我们的体会比较深的地方是,它能够比较系统全面的分析问题,把复杂的问题的求解转化成简单问题的求解,对问题求解结果的预测进行了全面系统的分析,把没有实质性的问题放到一边,对可能影响到预测结果的问题进行重点分析和讨论。
对于我们这个饲料调配问题,其实是一个整体求解的问题,每一种饲料都要考虑进去,这就体现了数学建模分析全面的特点,但是真正求解时,又只要对那些可能影响到结果的部分进行分析,这又体现了数学建模着重重点的特点。
数学建模的方法多种多样,建立的数学模型不同,其求解方法也不同,21世纪,是个现代化,电子自动化的世纪,数学与电子技术结合,解决起问题来好比如虎添翼,所以,用程序设计的方法求解数学模型是一个非常值得考虑的方法,
另外,由于我们是软件工程的学生,数学思想在软件工程中的地位原本就比较高,所以,数学与软件工程相结合,也算是一种跨学科学习方式。
考虑到数学求解软件Matlab功能强大,尤其是对线性规划问题的求解比较方便,所以我们把Matlab程序设计方法与数学建模思想结合起来,实现了智能化求解最忧值的问题。
本次数学建模能够圆满完成,是我们整个建模小组共同努力和老师悉心指导的结果,在一起学习的同时,虽然我们个人的智慧和力量是很有限的,但是,作为一个团队,我们感到一个团队的力量和智慧是非常伟大的。
最后,感谢我们的老师对我们的辛勤指导,以及给我们其他方面的帮助。
参考文献:
【1】LeonidNisonVaserstein,ChristopherCattelierByrne等.线性规划导论.机械工业出版社
【2】湖北省大学生数学建模竞赛专家组.数学建模(本科册).华中科技大学出版社
【3】任善强,雷鸣.数学建模.重庆大学出版社
【4】瞿亮.基于Matlab的控制系统计算机仿真.清华大学出版社,北京交通大学出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 建模 饲料 问题 讲解