数学实验9整数规划.docx

上传人:b****6 文档编号:8464788 上传时间:2023-01-31 格式:DOCX 页数:9 大小:34.58KB
下载 相关 举报
数学实验9整数规划.docx_第1页
第1页 / 共9页
数学实验9整数规划.docx_第2页
第2页 / 共9页
数学实验9整数规划.docx_第3页
第3页 / 共9页
数学实验9整数规划.docx_第4页
第4页 / 共9页
数学实验9整数规划.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

数学实验9整数规划.docx

《数学实验9整数规划.docx》由会员分享,可在线阅读,更多相关《数学实验9整数规划.docx(9页珍藏版)》请在冰豆网上搜索。

数学实验9整数规划.docx

数学实验9整数规划

数学实验-9:

整数规划

实验9:

整数规划

习题9:

(原油采购与加工)某公司用两种原油(A和B)混合加工成两种汽油(甲和乙),甲、乙两种汽油含原油A的最低比例分别为50%和60%,每吨售价分别为4800元和5600元。

该公司现有原油A和B的库存量分别为500t和1000t,还可以从市场上买到不超过1500T的原油A。

原油A的市场价为:

购买量不超过500t时单价为10000元/t;购买量超过500t但是不超过1000t时,超过500t的部分8000元/t;购买量超过1000t时,超过1000t的部分6000元/t。

该公司应该如何安排原油的采购和加工?

用连续规划和证书规划分别求解这个问题。

1.模型建立

研究该公司原油的采购和加工过程,需要对两个过程中的各个参数设置变量:

a1,a2A原油分别用来制造甲、乙两种产品的质量(t)

b1,b2B原油分别用来制造甲、乙两种产品的质量(t)

y1,y2,y3购买的A原油质量:

y1为<500t部分,y2为>500t且<1000t部分,y3为>1000t部分(t)

cost购买原油A所需要的总花销(元)

问如何规划投资和生产,实际上就是问如何将利润最大化,根据题目中给出的约束条件建立优化模型的基本形式:

其中,约束条件的1、2行为对两种产品含原油A比例的最低限定条件;3、4行的意义是用来制造产品的原料不能大于库存和购买来的原料总量;Cost为总花销;6、7、8行实现了y1、y2、y3的意义。

2.程序设计:

应用Lingo软件实现以上的程序:

max=(a1+b1)*4800+(a2+b2)*5600-cost;

0.5*a1-0.5*b1>0;

0.4*a2-0.6*b2>0;!

注意此处需要写成乘法的形势

a1+a2-(y1+y2+y3)<500;

b1+b2<1000;

cost=10000*y1+8000*y2+6000*y3;

(y1-500)*y2=0;

(y2-500)*y3=0;

y1<500;

y2<500;

y3<500;

@gin(y1);!

整数规划约束,连续规划时不需要

@gin(y2);@gin(y3);@gin(a1);@gin(a2);@gin(b1);@gin(b2);@gin(cost);

end

3.运行结果:

1)连续规划:

Globaloptimalsolutionfoundatiteration:

178

Objectivevalue:

5000000.

 

VariableValueReducedCost

A10.000000900.0000

B10.0000000.000000

A21500.0000.000000

B21000.0000.000000

COST9000000.0.000000

Y1500.00000.000000

Y2500.00000.000000

Y30.1490116E-040.000000

RowSlackorSurplusDualPrice

15000000.1.000000

20.000000-2600.000

30.000000-3500.000

40.0000007000.000

50.0000003500.000

60.000000-1.000000

70.000000-6.000000

80.000000-0.6710886E+08

90.0000000.000000

100.1490116E-040.000000

11500.00000.000000

2)整数规划:

Globaloptimalsolutionfoundatiteration:

682

Objectivevalue:

5000000.

 

VariableValueReducedCost

A10.000000800.0000

B10.000000800.0000

A21500.0000.000000

B21000.0000.000000

COST9000000.0.3000000

Y1500.00000.000000

Y2500.00000.000000

Y30.000000-1400.000

RowSlackorSurplusDualPrice

15000000.1.000000

20.0000000.000000

30.0000000.000000

40.0000005600.000

50.0000005600.000

60.000000-0.7000000

70.000000-2.800000

80.0000000.000000

90.0000000.000000

100.0000000.000000

11500.00000.000000

两种方法最终得到的都是同样的最优解,即:

购买1000tA原油,将全部的原料按A:

B=3:

2

的比例混合制造乙产品,最终可以获得最大利润(全局最优解)五百万元。

由影子价格DualPrice的数值可以看出约束条件a1+a2-(y1+y2+y3)<500;

b1+b2<1000;对结果的影响很大,即原料供应量增长1个单位,理论上可以使得利润增加5600元,实际上,如果把L5约束改为b1+b2<1001,目标函数的最大值增加为5004800,并不完全符合影子价格,但是其仍然可以很好的反应目标函数对于各个约束条件的敏感性;;SlackorSurplus给出了松弛(或剩余)变量的值,当该值为0时,表示该约束其作用,可以看到本题的约束条件基本上都是有作用的。

比较两种规划方式的区别,可以看到整数规划得到全局最优解所需的迭代次数明显的多于连续规划,这是由整数规划的复杂性决定的。

 

习题11:

钢管下料问题:

某零售商从钢管厂进货,将钢管按照顾客的要求切割后出售,从钢管厂进货时得到的原料钢管长度是1850mm.现有一客户要15根290mm、28根315mm、21根350mm和30根455mm的钢管。

为了简化生产过程,规定所使用的切割模式种类不能超过4种,使用频率最高的一种切割模式按照一个原料钢管价值的1/10增加费用,使用频率次之的切割模式按照一个原料钢管价值的2/10增加费用,以此类推,且每种切割模式下最多生产5根产品。

此外,为了减少余料浪费,每种切割模式下的余料浪费不能超过100mm,为了使得总费用最小,应该如何下料。

1.模型建立

钢管下料问题,本题由于可能用到的切割模式很多,若采用枚举法工作量很大,因此按照书上9.1.2的普遍性方法建模

设采用了四种模式切割钢管,第j种模式可以制造第i种钢管(按题目顺序)的数量为rij,xi表示采用第i种模式切割的原料钢管数。

以总费用最小为目标,由于没有给出每中方案的具体花费,所以将使用原料钢管总根数等价于花费,并且需要考虑切割模式的花费:

minx1+x2+x3+x4+0.1*y1+0.2*y2+0.3*y3+0.4*y4

(1)

不妨设,x1>=x2>=x3>=x4,yi为第i种方案是否被采用的零一变量,满足:

(2)

制造的各种钢管应该至少满足客户的需求:

x1*r11+x2*r12+x3*r13+x4*r14>15;(3)

x1*r21+x2*r22+x3*r23+x4*r24>28;

x1*r31+x2*r32+x3*r33+x4*r34>21;

x1*r41+x2*r42+x3*r43+x4*r44>30;

每一种切割模式必须可行、合理,按题目要求,钢管成品必然不能超过1850mm,且余量不能大于100mm,于是有:

1750<290*r1i+315*r2i+350*r3i+455*r4i<1850;i=1,2,3,4(4)

本题还规定了所使用的每种切割模式下最多生产5根产品,有:

r1i+r2i+r3i+r4i<5;i=1,2,3,4(5)

最后,需要对之前用到的所有参数进行非负整数约束。

综合1到5式便得到了本题完整的规划模型。

2.程序设计

min=x1+0.1+x2+0.2*y2+x3+0.3*y3+x4+0.4*y4;

@bin(y2);@bin(y3);@bin(y4);!

设置0-1变量(x1必然>0,不需要)

m=999999;!

给出一个充分大的数m

x2

实现约束条件

(2)

x3

x4

x2

x3

x4

r11+r21+r31+r41<5;!

实现约束条件(5)

r12+r22+r32+r42<5;

r13+r23+r33+r43<5;

r14+r24+r34+r44<5;

290*r11+315*r21+350*r31+455*r41<1850;!

实现约束条件(4),要分开写两个不等式

1750<290*r11+315*r21+350*r31+455*r41;

290*r12+315*r22+350*r32+455*r42<1850;

1750<290*r12+315*r22+350*r32+455*r42;

290*r13+315*r23+350*r33+455*r43<1850;

1750<290*r13+315*r23+350*r33+455*r43;

290*r14+315*r24+350*r34+455*r44<1850;

1750<290*r14+315*r24+350*r34+455*r44;

x1*r11+x2*r12+x3*r13+x4*r14>15;!

实现约束条件(3)

x1*r21+x2*r22+x3*r23+x4*r24>28;

x1*r31+x2*r32+x3*r33+x4*r34>21;

x1*r41+x2*r42+x3*r43+x4*r44>30;

@gin(x1);@gin(x2);@gin(x3);@gin(x4);!

非负整数约束

@gin(r11);@gin(r21);@gin(r31);@gin(r41);

@gin(r12);@gin(r22);@gin(r32);@gin(r42);

@gin(r13);@gin(r23);@gin(r33);@gin(r43);

@gin(r14);@gin(r24);@gin(r34);@gin(r44);

end

3.运行结果

局部最优解:

Localoptimalsolutionfoundatiteration:

138258

Objectivevalue:

19.60000

 

VariableValueReducedCost

X19.0000001.000000

X27.0000001.000000

Y21.0000000.2000000

X33.0000001.000000

Y31.0000000.3000000

X40.0000001.004000

Y40.0000000.000000

M100.00000.000000

R111.0000000.000000

R212.0000000.000000

R310.0000000.000000

R412.0000000.000000

R120.0000000.000000

R221.0000000.000000

R323.0000000.000000

R421.0000000.000000

R132.0000000.000000

R231.0000000.000000

R330.0000000.000000

R432.0000000.000000

R142.0000000.000000

R240.0000000.000000

R341.0000000.000000

R442.0000000.000000

RowSlackorSurplusDualPrice

119.60000-1.000000

20.0000000.000000

393.000000.000000

497.000000.000000

50.0000000.4000000E-02

62.0000000.000000

74.0000000.000000

83.0000000.000000

90.0000000.000000

100.0000000.000000

110.0000000.000000

120.0000000.000000

1320.000000.000000

1480.000000.000000

1530.000000.000000

1670.000000.000000

1745.000000.000000

1855.000000.000000

1910.000000.000000

2090.000000.000000

210.0000000.000000

220.0000000.000000

230.0000000.000000

241.0000000.000000

以上解的实际意义如下:

采用三种切割方案,分别为:

方案一:

切割290mm、315mm、350mm和455mm种钢管的根数分别为:

1,2,0,2

方案二:

切割四种钢管的根数分别为:

0,1,3,1

方案三:

切割四种钢管的根数分别为:

2,1,0,2

9根原料钢管采用方案一切割,7根采用方案二,3根采用方案三,最终可以使得总花销最小为19.6。

计算全局最优解所需时间较长,而实际上从计算的过程可以看出,每一步得到的局部最优解都是19.6,因此可以认为以上得到的局部解就是本题的全局最优解。

问题:

本题设置的0-1变量y2,y3,y4,是通过一个充分大的数M实现和x2,x3,x4之间的关系的。

理论上讲,只要M取得足够大,就可以保证:

式成立。

但事实上,M的取值是会影响到的局部最优解的,比如,M取到900000,得到如下解:

Localoptimalsolutionfoundatiteration:

167527

Objectivevalue:

19.60000

VariableValueReducedCost

X114.000000.3999998

X23.0000000.000000

Y21.0000000.2000000

X31.0000000.1999998

Y31.0000000.3000000

X41.0000000.4450831E-06

Y40.1111111E-050.000000

M900000.00.000000

R111.0000000.000000

R212.0000002.800000

R310.0000000.000000

R412.0000000.000000

R120.0000000.000000

R220.0000000.5999999

R325.0000000.000000

R420.0000000.000000

R130.0000000.000000

R231.0000000.1999998

R333.0000000.000000

R431.0000000.000000

R141.0000000.000000

R240.0000000.1999998

R343.0000000.000000

R441.0000000.000000

最终得到的解仍然是19.6,但是对应的取值办法已经改变,采用了4种切割方案,具体结果不再重复。

注意到红色标记的Y4并不满足0-1变量,而是一个非零的微小量,可以看出这个结果最终对结果没有影响,仍然按0计算,但是不理解为什么会得到不满足约束的0-1变量。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 自然景观

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1