lingo 指派问题 联系客服

发布时间 : 星期一 文章lingo 指派问题更新完毕开始阅读ecfe8221a5e9856a561260cd

s.t.:

4x1?3x4?2x5?x6?x7??503x2?x4?x6?2x7??202x3?x5?x6??15四、模型求解

I:切下来的钢管根数最少 Lingo输入框:

min=x1+x2+x3+x4+x5+x6+x7; 4*x1+3*x4+2*x5+x6+x7>=50; 3*x2+x4+x6+2*x7>=20; 2*x3+x5+x6>=15;

Lingo输出(结果)框:

Global optimal solution found.

Objective value: 25.00000 Total solver iterations: 4

Variable Value Reduced Cost X1 0.000000 0.000000 X2 0.000000 0.2500000 X3 5.000000 0.000000 X4 15.00000 0.000000 X5 0.000000 0.000000 X6 5.000000 0.000000 X7 0.000000 0.2500000

Row Slack or Surplus Dual Price 1 25.00000 -1.000000 2 0.000000 -0.2500000 3 0.000000 -0.2500000 4 0.000000 -0.5000000

II:切下来的钢管余料最少 Lingo输入框:

min=3*x1+x2+3*x3+x4+3*x5+x6+3*x7; 4*x1+3*x4+2*x5+x6+x7>=50; 3*x2+x4+x6+2*x7>=20; 2*x3+x5+x6>=15;

@gin(x1);@gin(x2);@gin(x3);@gin(x4);@gin(x5);@gin(x6);@gin(x7);

Lingo输出(结果)框:

Global optimal solution found.

Objective value: 27.00000 Extended solver steps: 0 Total solver iterations: 5

Variable Value Reduced Cost X1 0.000000 3.000000 X2 0.000000 1.000000 X3 0.000000 3.000000 X4 12.00000 1.000000 X5 0.000000 3.000000 X6 15.00000 1.000000 X7 0.000000 3.000000

Row Slack or Surplus Dual Price 1 27.00000 -1.000000 2 1.000000 0.000000 3 7.000000 0.000000 4 0.000000 0.000000

五、模型结果

I:切下来的钢管根数最少

根据lingo输出语句转化成简单语句得:

根据情况3取5根钢管,根据情况4取15根钢管,根据情况6取5根钢管。总计取25根钢管。余料为35m。 II:切下来的钢管余料最少

根据lingo输出语句转化成简单语句得:

根据情况4取12根钢管,根据情况6取15根钢管。总计取27根钢管。余料为27m。

经过二者比较,选择“I:切下来的钢管根数最少”。 (2)

一、问题分析

根据第二题第二问的题意我们可以知道,此题的最终目标是让我们建立一种数学模型来解决这个实际生活中的问题。

通过第一问我们了解到,切钢管的余料不能大于4m,即1m、2m、3m都可以。故每根钢管的长度不能大于19m(题目要求,同时也不能少于16m(前面提到)。而其目中提到:采用的不同切割模式不能超过3种,故选择与第一问不同的变量。

此题属于下料最省问题,与常见的线性问题极为类似。因此,使用Lingo软件。

由于题中所叙述的“需要(1)中的三种钢管外,还需要10根5m的钢管”

50*410*520*6?15*8??故此客户得到的钢管数不得少于26根(?25.789?26,

19此处取整,钢管数不能为分数),同时(做最简单的考虑),假设此客户只要50

根4m的钢管,且每一根钢管能切4根4m的,则12.5次能切完,取整,为13根;同理。其他情况也一样,只生产5m、6m的钢管,需要10根;只生产8m的管需要8根8m的钢管。根据以上叙述,应满足一个最基本的条件即:

26<=x1+x2+x3<=31。 二、符号说明

Xi表示第i种情况切钢管的根数,与第一问不同的是i的取值范围为1,2,3。

由于列举法较烦,我们采用如下方法:设切割4m,5m,6m,8m的钢管数为

r1i、r2i、r3i、r4i。 三、建立模型 Minz=x1+x2+x3 S.t.:

16??4r11?5r21?6r31?8r41>=1916??4r12?5r22?6r32?8r42>=1916??4r13?5r23?6r33?8r43>=19r11x1+r12x2+r13x3>=50r21x1+r22x2+r23x3>=10r31x1+r32x2+r33x3>=20r41x1+r42x2+r43x3>=1526<=x1+x2+x3<=31四、模型求解 Lingo输入框: min=x1+x2+x3;

r11*x1+r12*x2+r13*x3>=50; r21*x1+r22*x2+r23*x3>=10; r31*x1+r32*x2+r33*x3>=20; r41*x1+r42*x2+r43*x3>=15; 4*r11+5*r21+6*r31+8*r41<=19; 4*r11+5*r21+6*r31+8*r41>=16; 4*r12+5*r22+6*r32+8*r42<=19; 4*r12+5*r22+6*r32+8*r42>=16; 4*r13+5*r23+6*r33+8*r43<=19; 4*r13+5*r23+6*r33+8*r43>=16; @gin(x1);@gin(x2);@gin(x3); @gin(r11);@gin(r12);@gin(r13); @gin(r21);@gin(r22);@gin(r23); @gin(r31);@gin(r32);@gin(r33); @gin(r41);@gin(r42);@gin(r43);

x1+x2+x3>=26; x1+x2+x3<=31;

Lingo输出(结果)框:

Local optimal solution found.

Objective value: 28.00000 Extended solver steps: 412 Total solver iterations: 10551

Variable Cost

X1 1.000000

X2 1.000000

X3 1.000000

R11 0.000000

R12 0.000000

R13 0.000000

R21 0.000000

R22 0.000000

R23 0.000000

R31 0.000000

R32 0.000000

R33 0.000000

R41 0.000000

R42 0.000000

R43 0.000000

Row Slack Value or Surplus Dual Reduced 10.00000 8.000000 10.00000 3.000000 0.000000 2.000000 0.000000 0.000000 1.000000 1.000000 0.000000 1.000000 0.000000 2.000000 0.000000 Price