一.奶制品的销售
一、实验目的
学会利用LINGO进行实验,熟练运用LINGO求解简单的线性规划问题以及能够完成
对其灵敏度的分析。
二、实验要求
按如下步骤操作
1.打开lingo
2.修改“选项”(Options)
在出现的选项框架中,选择GeneralSolver(通用求解器)选项卡,修改2个参数;
DualComputations(对偶计算)设置为PricesandRanges,即计算对偶价格并分析敏感性。
ModelRegeneration(模型的重新生成)设置为:Always(每当有需要时)点击OK退出。
3.在模型窗口输入模型
Model:
max=72*x1+64*x2;
[milk]x1+x2<50;
[time]12*x1+8*x2<480;
[cpct]3*x1<100;
End
保存为:sy4-1.lg4
LINGO 语法:
1. 程序以“model:”开始,每行最后加“;”,并以“end”结束;
2. 非负约束可以省略;
3. 乘号 * 不能省略;
4. 式中可有括号;
5. 右端可有数学符号。
4.求解模型
运行菜单LINGO/Solve。
选择LINGO/Solve
5.灵敏性分析
点击模型窗口。选择LINGO/Ranges进行分析
三、实验内容
奶制品加工厂用牛奶生产A1、A2两种奶制品,1桶牛奶可以在设备甲上用12小时加工成3公斤A1,或者在设备乙上用8小时加工成4公斤A2。根据市场需求,生产的A1、A2能全部售出,且每公斤A1获利24元,每公斤A2获利16元。现在加工厂每天能得到50桶牛奶的供应,每天正式工人总的劳动时间为480小时,并且设备甲每天至多能加工100公斤A1,设备乙的加工能力没有限制。试为该厂制定一个生产计划,使每天获利最大。
假设:
每天生产A1的桶数为x1
每天生产A2的桶数为x2
每天生产B1的桶数为x3
每天生产B2的桶数为x4
每天的利润为z
综上可得线性规划:
max z=72x+64x2
s.t. x1+x2<50
12x1+8x2<480
3x1<100
LINGO模型如下:
model:
max=72*x1+64*x2;
[milk]x1+x2<50;
[time]12*x1+8*x2<480;
[cpct]3*x1<100;
End;
四、实验结果及其分析
从结果我们可以获得最优解 x1=20,x2=30最优值z=3360,即每天销售168kgA1和19.2kgB1可获净利润3460.8元,为此,需用8桶牛奶加工成A1,42桶牛奶加工成A2,并将得到的24kgA1全部加工成B1。
- 实验的心得体会
LINGO对数学模型数据分析所得到的灵敏性分析的数据和模型求解得到的数据可以直接在表中体现出,也可以从表中得到关于模型的所有数据。
实验二:奶制品的生产销售计划
一、实验目的
学会利用LINGO进行实验熟练掌握用LINGO求解简单的线性规划问题以及能够完成
对其灵敏度的分析。
二、实验要求
按以下步骤操作:
(1)打开菜单“File”/“New”,新建模型文件。
(2)在模型编辑窗口输入模型,要求用简单编程和集合的高级编程两种方式完成;
(3)将文件存储并命名。
(4)求解模型。
(5)灵敏性分析。
检查输出结果与教材 p102-104 的标准答案是否相同。
结果分析可参阅教材 p104。
三、实验内容
要求制定生产销售计划,决策变量可以像例1那样,取作每天用多少桶牛奶生产A1,A2,在添上用多少千克A1加工B1,用多少千克A2加工B2,但是由于问题要分析B1,B2的获利对生产销售计划的影响,所以决策变量取作A1,A2,B1,B2每天的销售量更方便。目标函数是工厂每天的净利润——A1,A2,B1,B2的获利之和扣除深加工费用。约束条件基本不变,只是要添上A1,A2深加工时间的约束。在与例1类似的假定下用线性规划模型解决这个问题。
Max z=24x1+16x2+44x3+32x4-3x5-3x6
s.t. 4x1+3x2+4x5+3x6≤600
4x1+2x2+6x5+4x6≤480
x1+x5≤100 x3-0.8x5=0 x4-0.75x6=0
x1,x2,…,x6≥0
用 LINDO 求解以上线性规划问题。
四、实验结果及其分析
检查输出结果与标准解,得到最优解为X1=0,X2=168,X3=19.2,X4=0,X5=24,X6=0,最优值为Z=3460.8,即每天销售168kgA1和19.2kgB1可获净利润3460.8元,所以需用8桶牛奶加工成A1,42桶牛奶加工成A2,并将得到的24kgA1全部加工成B1。
五.实验的心得体会
学习并使用LINGO对数学模型进行求解线性规划问题,让我更加熟悉了对LINGO的使用。