数学建模教材(第四章)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章数学规划模型
本章研究数学规划模型,其中包括:线性规划、整数规划、非线性规划、多目标规划与动态规划等内容.
线性规划模型
线性规划是运筹学的一个重要分支,随着计算机技术的发展,线性规划不仅在理论上已趋向成熟,而且在实际应用中也日益广泛与深入.本节将借助Lingo数学软件对线性规划模型进行求解.
4.1.1问题的提出
在生产管理和经营活动中经常提出一类问题,即如何合理地利用有限的人力、物力、财力等资源,以便得到最好的经济效果.
引例1 普通生产计划安排问题
某工厂在计划期内要安排生产Ⅰ、Ⅱ两种产品,已知生产单位产品所需的设备台时及A、B两种原材料的消耗,如表4-1所示.该工厂每生产一件产品Ⅰ可获利2元,每生产一件产品Ⅱ可获利3元,问应该如何安排计划使该工厂获利最多
表普通生产计划安排问题
ⅠⅡ
设备原材料A 原材料B
利润1
4
2
2
4
3
8台时
16kg
12kg
引例2 奶制品的生产计划问题
一奶品加工厂用牛奶生产A、B两种奶制品,1桶牛奶可以在甲类设备上用12小时加工成3公斤A,或者在乙类设备上用8小时加工成4公斤B,根据市场需求,生产的A、B全部能售出,且每公斤A获利24元,每公斤B获利16元.现在加工厂每天能得到50桶牛奶的供应,每天正式工人总的劳动时间为480小时,并且甲类设备每天最多能加工100公斤A,乙类设备的加工能力没有限制.试为该厂制定一个生产计划,使每天获利最大,并进一步讨论以下3个附加问题:
⑴若用35元可以买到1桶牛奶,应否做这项投资若投资,每天最多购买多少桶牛奶
⑵若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时几元
⑶由于市场需求变化,每公斤A的获利增加到30元,应否改变生产计划
4.1.2模型建立
1.引例1普通生产计划安排问题的模型建立
对于引例1,可以设x、y分别表示在计划期内产品Ⅰ、Ⅱ的产量.若用z表示
利润,这时,23z x y =+.因为设备的有效台时为8,因此应有限制条件:28x y +≤;同理考虑原材料的不同限制,可得如下限制条件:416x ≤,412y ≤.综上所述,该计划问题可用数学模型表示为:
目标函数:max 23z x y =+
约束条件:28
416412x y x y +≤⎧⎪≤⎨⎪≤⎩
0,0x y ≥≥
2.引例2奶制品生产计划问题的模型建立
对于引例2,可以设每天用1x 桶牛奶生产A ,用2x 桶牛奶生产B .类似引例1可得奶制品生产计划问题的数学模型:
目标函数:12max 7264z x x =+
约束条件:1212150
1284803100x x x x x +≤⎧⎪+≤⎨⎪≤⎩
120,0x x ≥≥
从以上两例可以看出,他们都属于同一类优化问题,他们的共同特征: ⑴每一个问题都用一组决策变量12(,,
,)n x x x 表示某一方案;这组决策变量的值
就代表一个具体方案,一般这些变量取值都是非负的;
⑵存在一定的约束条件,这些约束条件可以用一组线性等式或线性不等式来表示;
⑶都有一个要求达到的目标,它可用决策变量的线性函数来表示,这个函数称为目标函数.
满足以上三个条件的数学模型称为线性规划数学模型.其一般形式为:
目标函数:1122max(min)n n z c x c x c x =++
+
约束条件:11112211
211222
221122(,)(,)(,)n n n n m m mn n m
a x a x a x
b a x a x a x b a x a x a x b ++≤=≥⎧⎪++≤=≥⎪⎨
⎪⎪++
≤=≥⎩
120,0,0n x x x ≥≥≥
4.1.3模型求解
1.引例1普通生产计划安排问题的模型求解
使用Lingo 数学软件对引例1进行求解,编写程序如下:
max =2*x+3*y; x+2*y<8; 4*x<16; 4*y<12; end
求解结果为:目标函数的最大值14z =,即可获得最大利润14元;最优生产计划方案是:生产产品Ⅰ4件,生产产品Ⅱ2件.
2.引例2奶制品生产计划问题的模型求解
使用Lingo 数学软件对引例2进行求解,编写程序如下:
max =72*x1+64*x2;
x1+x2<50;
12*x1+8*x2<480; 3*x1<100; end
求解结果为:每天用20桶牛奶生产A ,用30桶牛奶生产B ,最大利润是3360元.下面来回答三个附加问题:
⑴针对附加问题1,可假设应投资购买x 桶牛奶,目标函数应修改为:
12max 726435*z x x x =+-
关于牛奶的约束条件也应作相应的修改:
1250x x x +<+
通过编程求解得:最大利润增加到3490元,因此,应作该项投资,每天最多购买10桶牛奶.
⑵针对附加问题2,首先将劳动时间480小时增加1个小时,对原问题进行求解,可得最大利润由3360元增加到3362元,其中增加的2元就是劳动时间的影子价格.因此,若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时2元.其次,若还想知道以低于每小时2元的价格增加劳动时间,最多可购买多少劳动时间可以对目标函数以及关于劳动时间的约束条件作类似的修改,然后进行求解.例如,若以每小时元的价格聘用临时工人,最多可购买小时.
⑶针对附加问题3,只需改变目标函数中的系数即可.将原来的目标函数改为:
12max 9064z x x =+,约束条件不变.通过求解可得:最大利润有所增加,由原来的
3360元增加到3720元,但生产计划没有改变,仍然是每天用20桶牛奶生产A ,用30桶牛奶生产B . 4.1.4应用实例
例1一个家庭有625英亩的土地可以用来种植农作物,这个家庭考虑种植的农作物有玉米、小麦和燕麦,预计可以有1000英亩-英尺的灌溉用水,农场工人每周可以