Answer

问题及解答

[Ex3.4-8]

Posted by haifeng on 2019-03-22 14:12:21 last update 2019-03-22 16:21:17 | Edit | Answers (3)

已知某工厂计划生产 I、II、III 三种产品, 各产品需要在 $A, B, C$ 设备上加工, 有关数据如下:

 

设备\产品 I II III 每月设备有效台时
A 8(台时/件) 2(台时/件) 10(台时/件) 300(台时)
B 10(台时/件) 5(台时/件) 8(台时/件) 400(台时)
C 2(台时/件) 13(台时/件) 10(台时/件) 420(台时)
单位产品利润(千元) 3 2 2.9  

 

试回答:

(1) 如何发挥生产能力, 使每月的生产盈利最大?

(2) 若为了增加产量, 可借用别的工厂设备 $B$, 每月可借用 $60$ 台时, 租金 $1.8$ 万元, 借用设备 $B$ 是否合算?

(3) 若另有两种新产品 IV、V, 其中

  • 新产品 IV 需用设备 $A$ 12 台时、 $B$ 5 台时、$C$ 10 台时, 单位产品盈利 $2.1$ 千元;
  • 新产品 V 需用设备 $A$ 4 台时、 $B$ 5 台时、$C$ 12 台时, 单位产品盈利 $1.87$ 千元;

     如 $A,B,C$ 的设备台时不增加, 这两种新产品投产在经济上是否合算?

(4) 对产品工艺重新进行设计, 改进结构. 改进后生产每件产品 I 需要设备 $A$ 9 台时、设备 $B$ 12 台时、设备 $C$ 4 台时, 单位产品盈利 $4.5$ 千元, 这时对原计划有何影响?

 

1

Posted by haifeng on 2019-03-22 16:58:14

Step1. 决策变量的确定

问题(1) 问如何发挥生产能力, 使得生产盈利最大?

已知 I,II,III三种产品的单位产品的利润为 3千元, 那么我们可以设

产品 I 在设备 $A,B,C$ 上分别生产 $x_1,x_2,x_3$ 件;

产品 II 在设备 $A,B,C$ 上分别生产 $y_1,y_2,y_3$ 件;

产品 III 在设备 $A,B,C$ 上分别生产 $z_1,z_2,z_3$ 件;

Step2. 目标函数可以写为

\[
\max P=3(x_1+x_2+x_3)+2(y_1+y_2+y_3)+2.9(z_1+z_2+z_3)
\]

 

Step3. 约束条件为

\[
\begin{aligned}
8x_1+2y_1+10z_1&\leqslant 300,\\
10x_2+5y_2+8z_2&\leqslant 400,\\
2x_3+13y_3+10z_3&\leqslant 420.\\
x_i,y_i,z_i &\geqslant 0,\quad i=1,2,3
\end{aligned}
\]


使用 Lingo 解决

首先写出 Lingo 的 model 代码.


model:
max=3*(x1+x2+x3)+2*(y1+y2+y3)+2.9*(z1+z2+z3);
[TimeLimitOfA] 8*x1+2*y1+10*z1<=300;
[TimeLimitOfB] 10*x2+5*y2+8*z2<=400;
[TimeLimitOfC] 2*x3+13*y3+10*z3<=420;
end

然后点击 [Solver|Solve] 或快捷键 Ctrl+U, 得

 

  Global optimal solution found.
  Objective value:                              1090.000
  Infeasibilities:                              0.000000
  Total solver iterations:                             0
  Elapsed runtime seconds:                          0.07

  Model Class:                                        LP

  Total variables:                      9
  Nonlinear variables:                  0
  Integer variables:                    0

  Total constraints:                    4
  Nonlinear constraints:                0

  Total nonzeros:                      18
  Nonlinear nonzeros:                   0

 

                                Variable           Value        Reduced Cost
                                      X1        0.000000            5.000000
                                      X2        0.000000            1.000000
                                      X3        210.0000            0.000000
                                      Y1        150.0000            0.000000
                                      Y2        80.00000            0.000000
                                      Y3        0.000000            17.50000
                                      Z1        0.000000            7.100000
                                      Z2        0.000000           0.3000000
                                      Z3        0.000000            12.10000

                                     Row    Slack or Surplus      Dual Price
                                       1        1090.000            1.000000
                            TIMELIMITOFA        0.000000            1.000000
                            TIMELIMITOFB        0.000000           0.4000000
                            TIMELIMITOFC        0.000000            1.500000

 

这里设备 $B$ 的资源的影子价格是 0.4千元.

第二题问, 若可以借用别的工厂的设备 $B$ 用于生产, 每月可借 60 台, 租金 1.8 万元, 是否合算?

这个问题需要考虑影子价格以及影子价格的适用范围.

 

 

2

Posted by haifeng on 2019-03-22 17:02:41

第(2)题解答

=======

 

点击 [Solver|Options] 或 Ctrl+I, 弹出 Lingo Options 对话框, 找到 General Options 选项卡,

然后在其中找到 Dual Computations, 将值 Prices 改为 Prices & Ranges.  保存.

 

然后点击 [Solver|Range] 或 Ctrl+R, 得到关于目标函数中决策变量系数的范围, 资源变动的范围等灵敏性分析.


 Ranges in which the basis is unchanged:

                                       Objective Coefficient Ranges:

                                        Current        Allowable        Allowable
                      Variable      Coefficient         Increase         Decrease
                            X1         3.000000         5.000000         INFINITY
                            X2         3.000000         1.000000         INFINITY
                            X3         3.000000         INFINITY         2.420000
                            Y1         2.000000         INFINITY         1.250000
                            Y2         2.000000         INFINITY        0.1875000
                            Y3         2.000000         17.50000         INFINITY
                            Z1         2.900000         7.100000         INFINITY
                            Z2         2.900000        0.3000000         INFINITY
                            Z3         2.900000         12.10000         INFINITY

                                           Righthand Side Ranges:

                                        Current        Allowable        Allowable
                           Row              RHS         Increase         Decrease
                  TIMELIMITOFA         300.0000         INFINITY         300.0000
                  TIMELIMITOFB         400.0000         INFINITY         400.0000
                  TIMELIMITOFC         420.0000         INFINITY         420.0000

 

回到上面的第(2)个问题, 由于这里设备 $B$ 的资源可增长上限为 INFINITY, 所以, 不用担心范围的问题.

\[
60*0.4*1000=24000\ \text{(元)}\ > 18000\ \text{(元)}
\]

故这样做是合算的.

3

Posted by haifeng on 2019-03-22 17:17:56

假设将新产品 IV 和 V 进行投产, 它们在设备 $A,B,C$ 上分别生产 $u_1,u_2,u_3$ 件和 $v_1,v_2,v_3$ 件.

于是目标函数变为

\[
\max P=3(x_1+x_2+x_3)+2(y_1+y_2+y_3)+2.9(z_1+z_2+z_3)+2.1(u_1+u_2+u_3)+1.87(v_1+v_2+v_3)
\]

注意到设备 $A,B,C$ 的资源(台时数)不变, 此时约束条件变为

\[
\begin{aligned}
8x_1+2y_1+10z_1+12u_1+4v_1&\leqslant 300,\\
10x_2+5y_2+8z_2+5u_2+4v_2&\leqslant 400,\\
2x_3+13y_3+10z_3+10u_3+12v_3&\leqslant 420.\\
x_i,y_i,z_i &\geqslant 0,\quad i=1,2,3
\end{aligned}
\]
 

Lingo 的 model 代码修改为.


model:
max=3*(x1+x2+x3)+2*(y1+y2+y3)+2.9*(z1+z2+z3)+2.1*(u1+u2+u3)+1.87*(v1+v2+v3);
[TimeLimitOfA] 8*x1+2*y1+10*z1+12*u1+4*v1<=300;
[TimeLimitOfB] 10*x2+5*y2+8*z2+5*u2+4*v2<=400;
[TimeLimitOfC] 2*x3+13*y3+10*z3+10*u3+12*v3<=420;
end

 

点击[Solver|Solve] 或按快捷键 Ctrl+U 计算得到

  Global optimal solution found.
  Objective value:                              1117.000
  Infeasibilities:                              0.000000
  Total solver iterations:                             0
  Elapsed runtime seconds:                          0.08

  Model Class:                                        LP

  Total variables:                     15
  Nonlinear variables:                  0
  Integer variables:                    0

  Total constraints:                    4
  Nonlinear constraints:                0

  Total nonzeros:                      30
  Nonlinear nonzeros:                   0

 

                                Variable           Value        Reduced Cost
                                      X1        0.000000            5.000000
                                      X2        0.000000            1.675000
                                      X3        210.0000            0.000000
                                      Y1        150.0000            0.000000
                                      Y2        0.000000           0.3375000
                                      Y3        0.000000            17.50000
                                      Z1        0.000000            7.100000
                                      Z2        0.000000           0.8400000
                                      Z3        0.000000            12.10000
                                      U1        0.000000            9.900000
                                      U2        0.000000           0.2375000
                                      U3        0.000000            12.90000
                                      V1        0.000000            2.130000
                                      V2        100.0000            0.000000
                                      V3        0.000000            16.13000

                                     Row    Slack or Surplus      Dual Price
                                       1        1117.000            1.000000
                            TIMELIMITOFA        0.000000            1.000000
                            TIMELIMITOFB        0.000000           0.4675000
                            TIMELIMITOFC        0.000000            1.500000

 

结论: 1117元> 1090 元.  合算.