heavenalan 发表于 2010-5-14 10:17

牛人来帮我看看这个模型

本帖最后由 heavenalan 于 2010-5-14 10:40 编辑

模型:
model:
max=(b2+b3+b5+b7+b9+b12+b14+b17+b19)/x1;!目标函数;
x1>1;
x1<914;!约束条件;
x2=@if(x1#ge#a021+a022+a023,x1-a021-a022-a023,@if(x1#ge#a021+a022,x1-a021-a022,@if(x1#ge#a023,x1-a023,@if(x1#ge#a022,x1-a022,@if(x1#ge#a021,x1-a021,x1)))));            
y4=@if(x1#ge#a021+a022+a023,a021+a022+a023,@if(x1#ge#a021+a022,a021+a022,@if(x1#ge#a023,a023,@if(x1#ge#a022,a022,@if(x1#ge#a021,a021,0)))));
b2=@if(x1#ge#a021+a022+a023,b021+b022+b023,@if(x1#ge#a021+a022,b021+b022,@if(x1#ge#a023,b023,@if(x1#ge#a022,b022,@if(x1#ge#a021,b021,0)))));
c2=@if(x1#ge#a021+a022+a023,5,@if(x1#ge#a021+a022,4,@if(x1#ge#a023,3,@if(x1#ge#a022,2,@if(x1#ge#a021,1,0)))));
x3=@if(x2#ge#a031+a032+a033,x2-a031-a032-a033,@if(x2#ge#a031+a032,x2-a031-a032,@if(x2#ge#a033,x2-a033,@if(x2#ge#a032,x2-a032,@if(x2#ge#a031,x2-a031,x2)))));            
y5=@if(x2#ge#a031+a032+a033,a031+a032+a033,@if(x2#ge#a031+a032,a031+a032,@if(x2#ge#a033,a033,@if(x2#ge#a032,a032,@if(x2#ge#a031,a031,0)))));
b3=@if(x2#ge#a031+a032+a033,b031+b032+b033,@if(x2#ge#a031+a032,b031+b032,@if(x2#ge#a033,b033,@if(x2#ge#a032,b032,@if(x2#ge#a031,b031,0)))));
c3=@if(x2#ge#a031+a032+a033,5,@if(x2#ge#a031+a032,4,@if(x2#ge#a033,3,@if(x2#ge#a032,2,@if(x2#ge#a031,1,0)))));      
x4=x3+y4;                     
x5=@if(x4#ge#a051+a052+a053+a054+a055+ao56+a057+ao58,x4-a051-a052-a053-a054-a055-a056-a057-a058+y5,@if(x4#ge#a051+a052+a053+a054+a055+ao56+a057,x4-a051-a052-a053-a054-a055-a056-a057+y5,
@if(x4#ge#a051+a052+a053+a054+a055+ao56,x4-a051-a052-a053-a054-a055-a056+y5,@if(x4#ge#a051+a052+a053+a054+a055,x4-a051-a052-a053-a054-a055+y5,@if(x4#ge#a051+a052+a053+a054,x4-a051-a052-a053-a054+y5,
@if(x4#ge#a051+a052+a053,x4-a051-a052-a053+y5,@if(x4#ge#a051+a052,x4-a051-a052+y5,@if(x4#ge#a058,x4-a058+y5,@if(x4#ge#a057,x4-a057+y5,@if(x4#ge#a056,x4-a056+y5,@if(x4#ge#a055,x4-a055+y5,@if(x4#ge#a054,x4-a054+y5,
@if(x4#ge#a053,x4-a053+y5,@if(x4#ge#a052,x4-a052+y5,@if(x4#ge#a051,x4-a051+y5,x4+y5)))))))))))))));
y7=@if(x4#ge#a051+a052+a053+a054+a055+ao56+a057+ao58,a051+a052+a053+a054+a055+ao56+a057+ao58,@if(x4#ge#a051+a052+a053+a054+a055+ao56+a057,a051+a052+a053+a054+a055+ao56+a057,@if(x4#ge#a051+a052+a053+a054+a055+ao56,a051+a052+a053+a054+a055+ao56,
@if(x4#ge#a051+a052+a053+a054+a055,a051+a052+a053+a054+a055,@if(x4#ge#a051+a052+a053+a054,a051+a052+a053+a054,@if(x4#ge#a051+a052+a053,a051+a052+a053,@if(x4#ge#a051+a052,a051+a052,@if(x4#ge#a058,a058,@if(x4#ge#a057,a057,@if(x4#ge#a056,a056,
@if(x4#ge#a055,a055,@if(x4#ge#a054,a054,@if(x4#ge#a053,a053,@if(x4#ge#a052,a052,@if(x4#ge#a051,a051,0)))))))))))))));
b5=@if(x4#ge#a051+a052+a053+a054+a055+ao56+a057+ao58,b051+b052+b053+b054+b055+bo56+b057+bo58,@if(x4#ge#a051+a052+a053+a054+a055+ao56+a057,b051+b052+b053+b054+b055+bo56+b057,@if(x4#ge#a051+a052+a053+a054+a055+ao56,b051+b052+b053+b054+b055+bo56,
@if(x4#ge#a051+a052+a053+a054+a055,b051+b052+b053+b054+b055,@if(x4#ge#a051+a052+a053+a054,b051+b052+b053+b054,@if(x4#ge#a051+a052+a053,b051+b052+b053,@if(x4#ge#a051+a052,b051+b052,@if(x4#ge#a058,bo58,@if(x4#ge#a057,b057,@if(x4#ge#a056,bo56,
@if(x4#ge#a055,b055,@if(x4#ge#a054,b054,@if(x4#ge#a053,b053,@if(x4#ge#a052,b052,@if(x4#ge#a051,b051,0)))))))))))))));
c5=@if(x4#ge#a051+a052+a053+a054+a055+ao56+a057+ao58,15,@if(x4#ge#a051+a052+a053+a054+a055+ao56+a057,14,@if(x4#ge#a051+a052+a053+a054+a055+ao56,13,@if(x4#ge#a051+a052+a053+a054+a055,12,@if(x4#ge#a051+a052+a053+a054,11,@if(x4#ge#a051+a052+a053,10,
@if(x4#ge#a051+a052,9,@if(x4#ge#a058,8,@if(x4#ge#a057,7,@if(x4#ge#a056,6,@if(x4#ge#a055,5,@if(x4#ge#a054,4,@if(x4#ge#a053,3,@if(x4#ge#a052,2,@if(x4#ge#a051,1,0)))))))))))))));
x6=x5;                     
x7=@if(x6#ge#a071+a072+a073+a074,x6-a071-a072-a073-a074+y7,@if(x6#ge#a071+a072+a073,x6-a071-a072-a073+y7,@if(x6#ge#a071+a072,x6-a071-a072+y7,@if(x6#ge#a074,x6-a074+y7,@if(x6#ge#a073,x6-a073+y7,@if(x6#ge#a072,x6-a072+y7,@if(x6#ge#a071,x6-a071+y7,x6+y7)))))));
y9=@if(x6#ge#a071+a072+a073+a074,a071+a072+a073+a074,@if(x6#ge#a071+a072+a073,a071+a072+a073,@if(x6#ge#a071+a072,a071+a072,@if(x6#ge#a074,a074,@if(x6#ge#a073,a073,@if(x6#ge#a072,a072,@if(x6#ge#a071,a071,x6)))))));
b7=@if(x6#ge#(a071+a072+a073+a074),b071+b072+b073+b074,@if(x6#ge#(a071+a072+a073),b071+b072+b073,@if(x6#ge#a071+a072,b071+b072,@if(x6#ge#a074,b074,@if(x6#ge#a073,b073,@if(x6#ge#a072,b072,@if(x6#ge#a071,b071,x6)))))));
c7=@if(x6#ge#a071+a072+a073+a074,7,@if(x6#ge#a071+a072+a073,6,@if(x6#ge#a071+a072,5,@if(x6#ge#a074,4,@if(x6#ge#a073,3,@if(x6#ge#a072,2,@if(x6#ge#a071,1,x6)))))));      
x8=x7;                     
x9=@if(x8#ge#a091+a092+a093,x8-a091-a092-a093+y9,@if(x8#ge#a091+a092,x8-a091-a092+y9,@if(x8#ge#a093,x8-a093+y9,@if(x8#ge#a092,x8-a092+y9,@if(x8#ge#a091,x8-a091+y9,x8+y9)))));
y11=@if(x8#ge#a091+a092+a093,a091+a092+a093,@if(x8#ge#a091+a092,a091+a092,@if(x8#ge#a093,a093,@if(x8#ge#a092,a092,@if(x8#ge#a091,a091,0)))));
b9=@if(x8#ge#a091+a092+a093,b091+b092+b093,@if(x8#ge#a091+a092,b091+b092,@if(x8#ge#a093,b093,@if(x8#ge#a092,b092,@if(x8#ge#a091,b091,0)))));
c9=@if(x8#ge#a091+a092+a093,5,@if(x8#ge#a091+a092,4,@if(x8#ge#a093,3,@if(x8#ge#a092,2,@if(x8#ge#a091,1,0)))));      
x10=x9;                     
x11=x10+y11;                     
x12=@if(x11#ge#a0121+a0122+a0123,x11-a0121-a0122-a0123,@if(x11#ge#a0121+a0122,x11-a0121-a0122,@if(x11#ge#a0123,x11-a0123,@if(x11#ge#a0122,x11-a0122,@if(x11#ge#a0121,x11-a0121,x11)))));
y14=@if(x11#ge#a0121+a0122+a0123,a0121+a0122+a0123,@if(x11#ge#a0121+a0122,a0121+a0122,@if(x11#ge#a0123,a0123,@if(x11#ge#a0122,a0122,@if(x11#ge#a0121,a0121,0)))));            
b12=@if(x11#ge#a0121+a0122+a0123,b0121+b0122+b0123,@if(x11#ge#a0121+a0122,b0121+b0122,@if(x11#ge#a0123,b0123,@if(x11#ge#a0122,b0122,@if(x11#ge#a0121,b0121,0)))));
c12=@if(x11#ge#a0121+a0122+a0123,5,@if(x11#ge#a0121+a0122,4,@if(x11#ge#a0123,3,@if(x11#ge#a0122,2,@if(x11#ge#a0121,1,0)))));
x13=@if(x12#ge#a0131,x12-a0131,x12);
y15=@if(x12#ge#a0131,a0131,0);
b13=@if(x12#ge#a0131,b0131,0);
c13=@if(x12#ge#a0131,1,0);
x14=@if(x13#ge#a0141+a0142+a0143,x13-a0141-a0142-a0143+y14,@if(x13#ge#a0141+a0142,x13-a0141-a0142+y14,@if(x13#ge#a0143,x13-a0143+y14,@if(x13#ge#a0142,x13-a0142+y14,@if(x13#ge#a0141,x13-a0141+y14,x13+y14)))));
y16=@if(x13#ge#a0141+a0142+a0143,a0141+a0142+a0143,@if(x13#ge#a0141+a0142,a0141+a0142,@if(x13#ge#a0143,a0143,@if(x13#ge#a0142,a0142,@if(x13#ge#a0141,a0141,0)))));
b14=@if(x13#ge#a0141+a0142+a0143,b0141+b0142+b0143,@if(x13#ge#a0141+a0142,b0141+b0142,@if(x13#ge#a0143,b0143,@if(x13#ge#a0142,b0142,@if(x13#ge#a0141,b0141,0)))));
c14=@if(x13#ge#a0141+a0142+a0143,5,@if(x13#ge#a0141+a0142,4,@if(x13#ge#a0143,3,@if(x13#ge#a0142,2,@if(x13#ge#a0141,1,0)))));  
x15=x14+y15;                     
x16=@if(x15#ge#a0161,x15-a0161+y16,x15+y16);
y18=@if(x15#ge#a0161,a0161,0);
b16=@if(x15#ge#a0161,b0161,0);
c16=@if(x15#ge#a0161,1,0);
x17=@if(x16#ge#a0171+a0172+a0173,x16-a0171-a0172-a0173,@if(x16#ge#a0171+a0172,x16-a0171-a0172,@if(x13#ge#a0173,x16-a0173,@if(x16#ge#a0172,x16-a0172,@if(x16#ge#a0171,x16-a0171,x16)))));
y19=@if(x16#ge#a0171+a0172+a0173,a0171+a0172+a0173,@if(x16#ge#a0171+a0172,a0171+a0172,@if(x16#ge#a0173,a0173,@if(x16#ge#a0172,a0172,@if(x16#ge#a0171,a0171,0)))));
b17=@if(x16#ge#a0171+a0172+a0173,b0171+b0172+b0173,@if(x16#ge#a0171+a0172,b0171+b0172,@if(x16#ge#a0173,b0173,@if(x16#ge#a0172,b0172,@if(x16#ge#a0171,b0171,0)))));
c17=@if(x16#ge#a0171+a0172+a0173,5,@if(x16#ge#a0171+a0172,4,@if(x16#ge#a0173,3,@if(x16#ge#a0172,2,@if(x16#ge#a0171,1,0)))));  
x18=x17+y18;                     
x19=@if(x18#ge#a0191+a0192+a0193,x18-a0191-a0192-a0193+y19,@if(x18#ge#a0191+a0192,x18-a0191-a0192+y19,@if(x18#ge#a0193,x18-a0193+y19,@if(x18#ge#a0192,x18-a0192+y19,@if(x18#ge#a0191,x18-a0191+y19,x18+y19)))));
y21=@if(x18#ge#a0191+a0192+a0193,a0191+a0192+a0193,@if(x18#ge#a0191+a0192,a0191+a0192,@if(x18#ge#a0193,a0193,@if(x18#ge#a0192,a0192,@if(x18#ge#a0191,a0191,0)))));
b19=@if(x18#ge#a0191+a0192+a0193,b0191+b0192+b0193,@if(x18#ge#a0191+a0192,b0191+b0192,@if(x18#ge#a0193,b0193,@if(x18#ge#a0192,b0192,@if(x18#ge#a0191,b0191,0)))));
c19=@if(x18#ge#a0191+a0192+a0193,5,@if(x18#ge#a0191+a0192,4,@if(x18#ge#a0193,3,@if(x18#ge#a0192,2,@if(x18#ge#a0191,1,0)))));
b=b2+b3+b5+b7+b9+b12+b14+b17+b19;
data:
a021=42.39;a022=48;a023=215.84;a031=33;a032=74.4;a033=94.4;a051=30.7;a052=35.2;a053=43.47;a054=43.98;a055=49.56;a056=60;a057=81.98;a058=96.8;a071=34.5;a072=42.5;a073=57.6;a074=191.84;
a091=62;a092=96;a093=112;a0121=39.8;a0122=45;a0123=66;a0131=616.2;a0141=31.68;a0142=48;a0143=65.94;a0161=170;a0171=48;a0172=67;a0173=119;a0191=54.75;a0192=58;a0193=22.81;!参数a取值;
b021=42.39;b022=48;b023=215.84;b031=33;b032=74.4;b033=94.4;b051=30.7;b052=35.2;b053=43.47;b054=43.98;b055=49.56;b056=60;b057=81.98;b058=96.8;b071=34.5;b072=42.5;b073=57.6;b074=191.84;
b091=62;b092=96;b093=112;b0121=39.8;b0122=45;b0123=66;b0131=616.2;b0141=31.68;b0142=48;b0143=65.94;b0161=170;b0171=48;b0172=67;b0173=119;b0191=54.75;b0192=58;b0193=22.81;!参数b取值;
enddata
end


Global optimal solution found.
  Objective value:                             0.1666667E+09
  Objective bound:                             0.1666667E+09
  Infeasibilities:                             0.6252776E-12
  Extended solver steps:                              23
  Total solver iterations:                       1327867

                       Variable           Value        Reduced Cost
                             B2        48.00000            0.000000
                             B3        0.000000            0.000000
                             B5       0.1000000E+11        0.000000
                             B7        0.000000            0.000000
                             B9        0.000000            0.000000
                            B12        45.00000            0.000000
                            B14        0.000000            0.000000
                            B17        48.00000            0.000000
                            B19        0.000000            0.000000
                             X1        60.00000            0.000000
                             X2        12.00000            0.000000
                           A021        42.39000            0.000000
                           A022        48.00000            0.000000
                           A023        215.8400            0.000000
                             Y4        48.00000            0.000000
                           B021        42.39000            0.000000
                           B022        48.00000            0.000000
                           B023        215.8400            0.000000
                             C2        2.000000            0.000000
                             X3        12.00000            0.000000
                           A031        33.00000            0.000000
                           A032        74.40000            0.000000
                           A033        94.40000            0.000000
                             Y5        0.000000            0.000000
                           B031        33.00000            0.000000
                           B032        74.40000            0.000000
                           B033        94.40000            0.000000
                             C3        0.000000            0.000000
                             X4        60.00000            0.000000
                             X5        0.000000            0.000000
                           A051        30.70000            0.000000
                           A052        35.20000            0.000000
                           A053        43.47000            0.000000
                           A054        43.98000            0.000000
                           A055        49.56000            0.000000
                           AO56        0.000000            0.000000
                           A057        81.98000            0.000000
                           AO58        1.234568            0.000000
                           A056        60.00000            0.000000
                           A058        96.80000            0.000000
                             Y7        60.00000            0.000000
                           B051        30.70000            0.000000
                           B052        35.20000            0.000000
                           B053        43.47000            0.000000
                           B054        43.98000            0.000000
                           B055        49.56000            0.000000
                           BO56       0.1000000E+11        0.000000
                           B057        81.98000            0.000000
                           BO58       0.1000000E+11        0.000000
                             C5        6.000000            0.000000
                             X6        0.000000            0.000000
                             X7        60.00000            0.000000
                           A071        34.50000            0.000000
                           A072        42.50000            0.000000
                           A073        57.60000            0.000000
                           A074        191.8400            0.000000
                             Y9        0.000000            0.000000
                           B071        34.50000            0.000000
                           B072        42.50000            0.000000
                           B073        57.60000            0.000000
                           B074        191.8400            0.000000
                             C7        0.000000            0.000000
                             X8        60.00000            0.000000
                             X9        60.00000            0.000000
                           A091        62.00000            0.000000
                           A092        96.00000            0.000000
                           A093        112.0000            0.000000
                            Y11        0.000000            0.000000
                           B091        62.00000            0.000000
                           B092        96.00000            0.000000
                           B093        112.0000            0.000000
                             C9        0.000000            0.000000
                            X10        60.00000            0.000000
                            X11        60.00000            0.000000
                            X12        15.00000            0.000000
                          A0121        39.80000            0.000000
                          A0122        45.00000            0.000000
                          A0123        66.00000            0.000000
                            Y14        45.00000            0.000000
                          B0121        39.80000            0.000000
                          B0122        45.00000            0.000000
                          B0123        66.00000            0.000000
                            C12        2.000000            0.000000
                            X13        15.00000            0.000000
                          A0131        616.2000            0.000000
                            Y15        0.000000            0.000000
                            B13        0.000000            0.000000
                          B0131        616.2000            0.000000
                            C13        0.000000            0.000000
                            X14        60.00000            0.000000
                          A0141        31.68000            0.000000
                          A0142        48.00000            0.000000
                          A0143        65.94000            0.000000
                            Y16        0.000000            0.000000
                          B0141        31.68000            0.000000
                          B0142        48.00000            0.000000
                          B0143        65.94000            0.000000
                            C14        0.000000            0.000000
                            X15        60.00000            0.000000
                            X16        60.00000            0.000000
                          A0161        170.0000            0.000000
                            Y18        0.000000            0.000000
                            B16        0.000000            0.000000
                          B0161        170.0000            0.000000
                            C16        0.000000            0.000000
                            X17        12.00000            0.000000
                          A0171        48.00000            0.000000
                          A0172        67.00000            0.000000
                          A0173        119.0000            0.000000
                            Y19        48.00000            0.000000
                          B0171        48.00000            0.000000
                          B0172        67.00000            0.000000
                          B0173        119.0000            0.000000
                            C17        1.000000            0.000000
                            X18        12.00000            0.000000
                            X19        60.00000            0.000000
                          A0191        54.75000            0.000000
                          A0192        58.00000            0.000000
                          A0193        22.81000            0.000000
                            Y21        0.000000            0.000000
                          B0191        54.75000            0.000000
                          B0192        58.00000            0.000000
                          B0193        22.81000            0.000000
                            C19        0.000000            0.000000
                              B       0.1000000E+11        0.000000
                           B056        60.00000            0.000000
                           B058        96.80000            0.000000






结果老是变成0.1666667E+09这种东西
我查结果里面的运算情况  AO58        1.234568
                           BO56       0.1000000E+11        0.000000
                           BO58       0.1000000E+11        0.000000
这3个参数明明是我赋值了的 结果系统又给我搞成这样了 这是什么问题啊 是不是我Lingo设置的问题啊  牛人解答下下 谢谢了!!!

风云雨哲 发表于 2010-5-15 08:40

?牛人哪里?????????????
页: [1]
查看完整版本: 牛人来帮我看看这个模型